Monday, February 25, 2019
Software Requirements Specification Template
Softw are Requirements judicial admission template CptS 322 package system Engineering 9 February 2005 The chase an nonated template shall be apply to complete the Software Requirements Specification (SRS) subsidisation of WSU-TC CptS 322. The instructor must approve whatever modifications to the overall structure of this document. Template Usage Text exacted at bottom angle brackets () shall be replaced by your project-specific entropy and/or details.For example, will be replaced with either Smart Home or Sensor Network. Italicized text is included to briefly annotate the utilization of each partition within this template. This text should not appear in the final version of your submitted SRS. This cover page is not a vocalism of the final template and should be removed before your SRS is submitted. Acknowledgements offices of this document are based upon the IEEE contain on to Software Requirements Specification (ANSI/IEEE Std. 30-1984). The SRS templates of Dr. Or est Pilskalns (WSU, Vancover) and Jack Hagemeister (WSU, Pullman) have in like manner be used as guides in developing this template for the WSU-TC confine 2005 CptS 322 course. Software Requirements Specification Lead Software Engineer Prepared for WSU-TC CptS 322Software Engineering Principles I Instructor A. David McKinnon, Ph. D. Spring 2005 Revision History employment description Author Comments scroll Approval The pursuit Software Requirements Specification has been accepted and approved by the following Signature Printed Name backup Date Lead Software Eng. A.David McKinnon Instructor, CptS 322 Table of Contents Revision Historyii Document Approvalii 1. Introduction1 1. 1 Purpose1 1. 2 Scope1 1. 3 Definitions, Acronyms, and Abbreviations1 1. 4 References1 1. 5 Overview1 2. world(a) Description2 2. 1 Product Perspective2 2. 2 Product Functions2 2. 3 user Characteristics2 2. 4 General Constraints2 2. 5 Assumptions and Dependencies2 3. Sp ecific Requirements2 3. 1 External Interface Requirements3 3. 1. 1 habitr Interfaces3 3. 1. 2 Hardware Interfaces3 3. 1. 3 Software Interfaces3 3. 1. 4 Communications Interfaces3 3. 2 Functional Requirements3 3. 2. 1 3 3. 2. 2 3 3. 3 Use incidents3 3. 3. 1 Use result 13 3. 3. 2 Use Case 23 3. Classes / Objects3 3. 4. 1 3 3. 4. 2 3 3. 5 Non-Functional Requirements4 3. 5. 1 Performance4 3. 5. 2 dependableness4 3. 5. 3 Availability4 3. 5. 4 Security4 3. 5. 5 Maintainability4 3. 5. 6 Portability4 3. 6 inverse Requirements4 3. 7 Design Constraints4 3. 8 Logical Database Requirements4 3. 9 Other Requirements4 4. analytic thinking Models4 4. 1 Sequence Diagrams5 4. 3 Data take to the woods Diagrams (DFD)5 4. 2 State-Transition Diagrams (STD)5 5. variegate Management Process5 A. Appendices5 A. 1 Appendix 15 A. 2 Appendix 25 1. Introduction The introduction to the Software Requirement Specification (SRS) document should go out an overview of the complete SRS document.While writing th is document please remember that this document should contain all of the selective information needed by a software technologist to adequately design and implement the software product advertd by the requirements listed in this document. (Note the following subsection annotates are largely taken from the IEEE claim to SRS). 1. 1 Purpose What is the purpose of this SRS and the (intended) audience for which it is written. 1. 2 Scope This subsection should (1) Identify the software product(s) to be produced by name for example, Host DBMS, describe Generator, etcetera(2)Explain what the software product(s) will, and, if necessary, will not do (3)Describe the application of the software be specified. As a portion of this, it should (a) Describe all relevant benefits, objectives, and goals as precisely as possible.For example, to say that one goal is to provide telling reporting capabilities is not as good as saying parameter-driven, user-definable reports with a 2 h turnaround an d on-line entry of user parameters. (b) Be consistent with similar statements in higher-level specifications (for example, the System Requirement Specification) , if they exist. What is the scope of this software product. 1. 3 Definitions, Acronyms, and Abbreviations This subsection should provide the definitions of all terms, acronyms, and abbreviations required to properly experience the SRS. This information may be provided by reference to one or more appendixes in the SRS or by reference to other documents. 1.4 References This subsection should (1)Provide a complete list of all documents referenced elsewhere in the SRS, or in a separate, specified document. 2)Identify each document by title, report number if applicable date, and publishing organization. (3) fasten the sources from which the references ass be obtained. This information may be provided by reference to an appendix or to other document. 1. 5 Overview This subsection should (1) Describe what the rest of the SRS contains (2) Explain how the SRS is organized. 2. General Description This section of the SRS should describe the general factors that affect the product and its requirements. It should be make clear that this section does not state specific requirements it only makes those requirements easier to understand. 2. 1 Product PerspectiveThis subsection of the SRS puts the product into perspective with other related products or projects. (See the IEEE Guide to SRS for more details). 2. 2 Product Functions This subsection of the SRS should provide a summary of the functions that the software will perform. 2. 3 user Characteristics This subsection of the SRS should describe those general characteristics of the eventual users of the product that will affect the specific requirements. (See the IEEE Guide to SRS for more details).2. 4 General Constraints This subsection of the SRS should provide a general description of all other items that will limit the developers options for pattern the system. See the IEEE Guide to SRS for a partial list of possible general constraints). 2. 5 Assumptions and Dependencies This subsection of the SRS should list each of the factors that affect the requirements stated in the SRS. These factors are not design constraints on the software but are, quite an, any changes to them that can affect the requirements in the SRS. For example, an assumption might be that a specific operating system will be available on the hardware designated for the software product. If, in fact, the operating system is not available, the SRS would wherefore have to change accordingly. 3. Specific Requirements This will be the largest and most all important(p) section of the SRS.The customer requirements will be embodied within Section 2, but this section will give the D-requirements that are used to guide the projects software design, implementation, and testing. Each requirement in this section should be Correct Traceable (both forward and backward to prio r/ coming(prenominal) artifacts) Unambiguous Verifiable (i. e. , testable) Prioritized (with respect to importance and/or stability) Complete reconciled Uniquely identifiable (usually via numbering like 3. 4. 5. 6) Attention should be compensable to the carefuly organize the requirements presented in this section so that they may easily accessed and understood.Furthermore, this SRS is not the software design document, and then one should avoid the tendency to over-constrain (and therefore design) the software project within this SRS. 3. External Interface Requirements 3. 1. 1 User Interfaces 3. 1. 2 Hardware Interfaces 3. 1. 3 Software Interfaces 3. 1. 4 Communications Interfaces 3. 2 Functional Requirements This section describes specific features of the software project. If desired, some requirements may be specified in the use-case format and listed in the Use Cases Section. 3. 2. 1 3. 2. 1. 1 Introduction 3. 2. 1. 2 Inputs 3. 2. 1. 3 Processing 3. 2. 1. 4 Outputs 3. 2. 1. 5 geological fault Handling 3. 2. 2 3. 3 Use Cases 3. 3. 1 Use Case 1 3. 3. 2 Use Case 2 3. 4 Classes / Objects 3. 4. 1 3. 4. 1. 1 Attributes 3. 4. 1. 2 Functions 3. 4. 2 3. 5 Non-Functional RequirementsNon-functional requirements may exist for the following attributes. Often these requirements must be achieved at a system-wide level rather than at a unit level. State the requirements in the following sections in measurable terms (e. g. , 95% of transaction shall be processed in less than a second, system downtime may not exceed 1 minute per day, gt 30 day MTBF value, etc). 3. 5. 1 Performance 3. 5. 2 Reliability 3. 5. 3 Availability 3. 5. 4 Security3. 5. 5 Maintainability 3. 5. 6 Portability 3. 6 opposite Requirements State any *useful* inverse requirements. 3. 7 Design Constraints Specify design constrains imposed by other standards, company policies, hardware limitation, etc. hat will impact this software project. 3. 8 Logical Database Requirements allow for a database b e used? If so, what logical requirements exist for data formats, storage capabilities, data retention, data integrity, etc. 3. 9 Other Requirements Catchall section for any additional requirements. 4. Analysis Models List all analysis beats used in developing specific requirements previously given in this SRS. Each model should include an introduction and a narrative description. Furthermore, each model should be traceable the SRSs requirements. 4. 1 Sequence Diagrams 4. 3 Data Flow Diagrams (DFD) 4. 2 State-Transition Diagrams (STD) 5. Change Management ProcessIdentify and describe the process that will be used to update the SRS, as needed, when project scope or requirements change. Who can submit changes and by what means, and how will these changes be approved. A. Appendices Appendices may be used to provide additional (and hopefully helpful) information. If present, the SRS should explicitly state whether the information contained within an appendix is to be considered as a pa rt of the SRSs overall set of requirements. Example Appendices could include (initial) conceptual documents for the software project, marketing materials, minutes of meetings with the customer(s), etc. A. 1 Appendix 1 A. 2 Appendix 2
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.