Download presentation
1
Requirements Specification
Section Five Version: 1.0 Mehr 1386 Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
2
What What is SRS? The Software Requirements Specification (SRS) captures the software requirements for the complete system, or a portion of that system. The SRS focuses on the collection and organization of all requirements surrounding your project. The SRS package controls the evolution of the system throughout the development phase of the project, as new features are added or modified to the Vision document, they are elaborated within the SRS Package. Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
3
What What is SRS? The SRS Package is not a frozen tome, it is an active, living artifact. It serves as a basis of communication between all parties - i.e., between the developers themselves, and between the developers and the external groups (users and other stakeholders) with whom they must communicate. Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
4
What SRS Standards Several recommended guides and standards exist to help define the structure of requirements documentation. Include IEEE P1233/D3 IEEE Std. 1233 IEEE Std ISO/IEC IEEE Std Concept of Operations Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
5
SRS Outline (Based on RUP)
What SRS Outline (Based on RUP) Introduction Overall Description Specific Requirements Functionality Usability Reliability Performance Supportability Design Constraints Online User Documentation and Help System Requirements Purchased Components Interfaces Licensing Requirements Legal, Copyright and Other Notices Applicable Standards Supporting Information Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
6
Who Who Uses SRS? The following people use the Software Requirements Specification: The system analyst creates and maintains the Vision and Supplementary Specifications, which serves as input to the SRS and are the communication medium between the system analyst, the customer, and other developers. The requirements specifier creates and maintains the individual use case and other components of the SRS package, Designers use the SRS Package as a reference when defining responsibilities, operations, and attributes on classes, and when adjusting classes to the implementation environment. Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
7
Who Who Uses SRS? (con.) Implementers refer to the SRS Package for input when implementing classes. The Project Manager refers to the SRS Package for input when planning iterations. Testers use the SRS Package to verify system compliance. Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
8
What Vision Defines the stakeholders view of the product to be developed, specified in terms of the stakeholders key needs and features. The Vision provides a high-level, sometimes contractual, basis for the more detailed technical requirements. It captures the "essence" of the envisaged solution in the form of high-level requirements and design constraints that give the reader an overview of the system to be developed from a behavioral requirements perspective. Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
9
Supplementary Specification
What Supplementary Specification The Supplementary Specification artifact capture system requirements that are not readily captured in behavioral requirements artifacts such as use-case specifications. Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
10
How From Vision to SRS The SRS Package is obviously related to the Vision document. Vision document serves as the input to the SRS. But the two artifacts serve different needs and are written by different authors. In SRS the focus of the document moves from the broad statement of user needs, goals and objectives, target markets and features of the system to the details of how these features are going to be implemented in the solution. Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
11
Requirements identification
How It is essential for requirements management that every requirement should have a unique identification The most common approach is requirements numbering based on chapter/section in the requirements document. Problems with this are: Numbers cannot be unambiguously assigned until the document is complete Assigning chapter/section numbers is an implicit classification of the requirement. This can mislead readers of the document into thinking that the most important relationships are with requirements in the same section Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
12
Requirements identification techniques
How Dynamic renumbering Some word processing systems allow for automatic renumbering of paragraphs and the inclusion of cross-references. Database record identification When a requirement is identified it is entered in a requirements database and a database record identifier is assigned. This database identifier is used in all subsequent references to the requirement Symbolic identification Giving each requirement a symbolic name. For example, EFF-1, EFF-2, EFF-3 for system efficiency requirements Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
13
Storing requirements How Requirements have to be stored in such a way that they can be accessed easily and related to other system requirements Possible storage techniques are In one or more word processor files - requirements are stored in the requirements document In a specially designed requirements database Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
14
Word processor documents
How Advantages Requirements are all stored in the same place Requirements may be accessed by anyone with the right word processor It is easy to produce the final requirements document Disadvantages Requirements dependencies must be externally maintained Search facilities are limited Not possible to link requirements with proposed requirements changes Not possible to have version control on individual requirements No automated navigation from one requirement to another Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
15
Requirements database
How Each requirement is represented as one or more database entities Database query language is used to access requirements Advantages Good query and navigation facilities Support for change and version management Disadvantages Readers may not have the software/skills to access the requirements database The link between the database and the requirements document must be maintained Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
16
Object classes for requirements DB
What Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
17
Requirements DB - choice factors
What The statement of requirements If there is a need to store more than just simple text, a database with multimedia capabilities may have to be used. The number of requirements Larger systems usually need a database which is designed to manage a very large volume of data running on a specialised database server. Teamwork, team distribution and computer support If the requirements are developed by a distributed team of people, perhaps from different organisations, you need a database which provides for remote, multi-site access. Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
18
Database choice factors
What CASE tool use The database should be the same as or compatible with CASE tool databases. However, this can be a problem with some CASE tools which use their own proprietary database Existing database usage If a database for software engineering support is already in use, this should be used for requirements management. Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
19
A Sample Documentation Tool
What SoDA is a flexible, powerful documentation tool that can help you publish project documents by retrieving information from your project software tools. SoDA is an acronym for Software Documentation Automation. SoDA is a report generation tool that supports reporting and formal documentation requirements for defining custom reports and documents. The primary function of SoDA is to retrieve information from various sources and use it to generate a document or report according to a template. SoDA comes with several predefined templates, or you can use its template-building component to build templates for your specific needs. Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
20
SoDA for Word What Adds document generation to the capabilities of Microsoft Word Performs incremental document regeneration to reduce turnaround time Preserves data entered directly into the document from generation to generation Enables extraction of data from multiple information sources, such as Rational Rose and Rational RequisitePro, to create a single document Maintains consistency between documents and information sources Amirkabir University of Technology, Computer Engineering Faculty , Intelligent Systems Laboratory
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.