The content and qualities of a good software requirements specification (SRS) are described and several sample SRS outlines are presented. This recommended practice is aimed at specifying requirements of software to be developed but also can be applied to assist in the selection of in-house and commercial software products. Guidelines for compliance with IEEE/EIA 1207.1-1997 are also provided.
In the Guide to the Software Engineering Body of Knowledge (SWEBOK(R) Guide), the IEEE Computer Society establishes a baseline for the body of knowledge for the field of software engineering, and the work supports the Society's responsibility to promote the advancement of both theory and practice in this field. It should be noted that the Guide does not purport to define the body of knowledge but rather to serve as a compendium and guide to the knowledge that has been developing and evolving over the past four decades. Now in Version 3.0, the Guide's 15 knowledge areas summarize generally accepted topics and list references for detailed information. The editors for Version 3.0 of the SWEBOK(R) Guide are Pierre Bourque (Ecole de technologie superieure (ETS), Universite du Quebec) and Richard E. (Dick) Fairley (Software and Systems Engineering Associates (S2EA)).
A thorough analysis of basic electrical-systems considerations is presented. Guidance is provided in design, construction, and continuity of an overall system to achieve safety of life and preservation of property; reliability; simplicity of operation; voltage regulation in the utilization of equipment within the tolerance limits under all load conditions; care and maintenance; and flexibility to permit development and expansion. Recommendations are made regarding system planning; voltage considerations; surge voltage protection; system protective devices; fault calculations; grounding; power switching, transformation, and motor-control apparatus; instruments and meters; cable systems; busways; electrical energy conservation; and cost estimation.
Since its inception in 1968, software engineering has undergone numerous changes. In the early years, software development was organized using the waterfall model, where the focus of requirements engineering was on a frozen requirements document, which formed the basis of the subsequent design and implementation process. Since then, a lot has changed: software has to be developed faster, in larger and distributed teams, for pervasive as well as large-scale applications, with more flexibility, and with ongoing maintenance and quick release cycles. What do these ongoing developments and changes imply for the future of requirements engineering and software design? Now is the time to rethink the role of requirements and design for software intensive systems in transportation, life sciences, banking, e-government and other areas. Past assumptions need to be questioned, research and education need to be rethought. This book is based on the Design Requirements Workshop, held June 3-6, 2007, in Cleveland, OH, USA, where leading researchers met to assess the current state of affairs and define new directions. The papers included were carefully reviewed and selected to give an overview of the current state of the art as well as an outlook on probable future challenges and priorities. After a general introduction to the workshop and the related NSF-funded project, the contributions are organized in topical sections on fundamental concepts of design; evolution and the fluidity of design; quality and value-based requirements; requirements intertwining; and adapting requirements practices in different domains.
In Software Requirements, you'll discover practical, effective techniques for managing the requirements engineering process all the way through the development cycle--including tools to facilitate that all-important communication between users, developers, and management. Use them to: Book jacket.
Learn proven, real-world techniques for specifying software requirements with this practical reference. It details 30 requirement “patterns” offering realistic examples for situation-specific guidance for building effective software requirements. Each pattern explains what a requirement needs to convey, offers potential questions to ask, points out potential pitfalls, suggests extra requirements, and other advice. This book also provides guidance on how to write other kinds of information that belong in a requirements specification, such as assumptions, a glossary, and document history and references, and how to structure a requirements specification. A disturbing proportion of computer systems are judged to be inadequate; many are not even delivered; more are late or over budget. Studies consistently show one of the single biggest causes is poorly defined requirements: not properly defining what a system is for and what it’s supposed to do. Even a modest contribution to improving requirements offers the prospect of saving businesses part of a large sum of wasted investment. This guide emphasizes this important requirement need—determining what a software system needs to do before spending time on development. Expertly written, this book details solutions that have worked in the past, with guidance for modifying patterns to fit individual needs—giving developers the valuable advice they need for building effective software requirements
By following the techniques in this book, it is possible to write requirements and specifications that customers, testers, programmers and technical writers will actually read, understand and use. These pages provide precise, practical instructions on how to distinguish requirements from design to produce clear solutions.