Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 1 Requirements Specification Section Five Version: 1.0.

Slides:



Advertisements
Similar presentations
CS 411W - Notes Product Development Documentation.
Advertisements

Requirements wg RUP Materiały na seminarium „Metodyki tworzenia SI” Wykonał Marcin Wiącek Styczeń 2006 Wojskowa Akademia Techniczna Wydział Cybernetyki.
Static Structure: Process Description
Requirements Specification
SE 555 Software Requirements & Specification1 Use-Case Modeling: Overview and Context.
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory1 Requirements Analysis Section Three Version: 1.0 Mehr.
WKES 3202 SOFTWARE REQUIREMENTS ENGINEERING SEMESTER 1 SESSION 2004/2005.
8/28/2005ECEN5543 Req Elicitation1 Targets of Requirements Engineering ECEN 5543 SW Engineering of Standalone Programs University of Colorado, Boulder.
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory1 Requirements Validation Section Four Version: 1.0 Mehr.
Analysis Stage (Phase I) The goal: understanding the customer's requirements for a software system. n involves technical staff working with customers n.
1 Systems V & V, Quality and Standards Dr Sita Ramakrishnan School CSSE Monash University.
Software Requirements
Requirements Management
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Requirements Change Management
Overview of Software Requirements
1 REQUIREMENTS ENGINEERING and SYSTEMS ANALYSIS Elements and Definitions.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 5 Slide 1 Requirements engineering l The process of establishing the services that the.
Gregor v. Bochmann, University of Ottawa Based on Powerpoint slides by Gunter Mussbacher (2009) with material from: IEEE Standard, Daniel Amyot.
Software Requirement Specification(SRS)
Object Oriented Analysis and Design Using the UML
The Vision Document 1. Importance of a Vision Document  It describes the application in general terms, including descriptions of the target market, the.
Jouhayna Al-Ayoubi SWEN 5230 – Software Project Management.
Software Configuration Management
Requirements Engineering
The Software Development Life Cycle: An Overview
RUP Requirements RUP Artifacts and Deliverables
Requirements Management with Use Cases Module 6: Define the System Requirements Management with Use Cases Module 6: Define the System.
CS 4310: Software Engineering Lecture 3 Requirements and Design.
Typical Software Documents with an emphasis on writing proposals.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS.
RUP Implementation and Testing
Rational Unified Process Fundamentals Module 4: Disciplines II.
Software Requirements Engineering CSE 305 Lecture-2.
2/6/01D-1 © 2001 T. Horton CS 494 Object-Oriented Analysis & Design Using PARTS to Illustrate Requirements Concepts.
Software Architecture and Design Dr. Aldo Dagnino ABB, Inc. US Corporate Research Center October 23 rd, 2003.
Chapter 7 Applying UML and Patterns Craig Larman
Requirements Management. Learning outcome Explain why requirements management is important Explain reasons of requirements change.
Lecture 7: Requirements Engineering
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
5 - 1 Copyright © 2006, The McGraw-Hill Companies, Inc. All rights reserved.
® IBM Software Group © 2006 IBM Corporation Writing Good Use Cases Module 1: Introduction to Use-Case Modeling.
1 15 quality goals for requirements  Justified  Correct  Complete  Consistent  Unambiguous  Feasible  Abstract  Traceable  Delimited  Interfaced.
6.1 © 2010 by Prentice Hall 6 Chapter Foundations of Business Intelligence: Databases and Information Management.
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
L To identify the services that the customer requires from a system and the constraints under which it operates and is developed.
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.
Digital Libraries1 David Rashty. Digital Libraries2 “A library is an arsenal of liberty” Anonymous.
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
RequisitePro Software Requirement Management Tool A peresentation by: Mojdeh Jalali-Heravi Maryam Daneshi.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Rational.
System Requirements Specification
Requirements Engineering Requirements Validation and Management Lecture-24.
Requirements Engineering Requirements Management Lecture-25.
Requirement engineering & Requirement tasks/Management. 1Prepared By:Jay A.Dave.
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 1 Overview of Requirements Engineering Section One Version:
Requirement Discipline Spring 2006/1385 Semester 1.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
CASE Tools and their Effect on Software Quality
Requirement Engineering Management Amna Shifia Nisafani Feby Artwodini M. Department of Information Systems Subject : Requirement Engineering.
 System Requirement Specification and System Planning.
1 Requirements Management - II Lecture # Recap of Last Lecture We talked about requirements management and why is it necessary to manage requirements.
Daniel Amyot, University of Ottawa Based on slides by Gunter Mussbacher (2009) and Stéphane Somé (2008) with material from these standards: IEEE ,
Chapter 11: Software Configuration Management
Chapter 11: Software Configuration Management
آزمايشگاه مهندسي نرم افزار
Software Requirements Specification (SRS) Template.
Requirements Document
Presentation transcript:

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 1 Requirements Specification Section Five Version: 1.0 Mehr 1383

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 2 نگاه اجمالي 1.بررسي مفاهيم مرتبط با شناسايي نيازهاي نرم افزار 2.بيان روشهاي مستند سازي، الگوهاي موجود و سرفصل مطالب مورد نياز در مستندات نيازها 3.معرفي نقشهاي موثر در توليد مستندات نيازها و استفاده از آنها 4.بررسي تکنيکهاي مختلف مستندسازي نيازها، مزايا و معايب هر يک از اين تکنيکها 5.معرفي فاکتورهاي مورد توجه در انتخاب تکنيکها و ابزارهاي مستندسازي نيازها

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 3 مجموعه پرسشها 1.چه افرادي در توليد و استفاده از مستندات نيازها نقش دارند؟ 2.روشهاي مختلف ذخيره و بازيابي نيازهاي نرم افزاري چيست؟ 3.چه فاکتورهايي در انتخاب تکنيکهاي مستندسازي درنظر گرفته مي شوند؟

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 4 راهنماي مدرس ( اسلايدهاي 5-15) در اين مجموعه اسلايدها، مفاهيم مرتبط با شناسايي نيازهاي نرم افزار ، نحوه مستند سازي، الگوهاي موجود و سرفصل مطالب مورد نياز در مستندات نيازها بيان مي گردد. نقشهايي که در توليد مستندات و استفاده از آنها نقش دارند، مشخص مي شوند. همچنين مستنداتي که نيازهاي نرم افزار بر مبناي آنها تشخيص داده مي شود، تعيين مي گردد.

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 5 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. What

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 6 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. What

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 7 SRS Standards Several recommended guides and standards exist to help define the structure of requirements documentation. Include IEEE P1233/D3 IEEE Std IEEE Std ISO/IEC IEEE Std Concept of Operations What

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 8 SRS Outline (Based on RUP) Traditional outline: 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 What

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 9 SRS Outline (Based on RUP) SRS with Use Cases outline: Introduction Purpose Scope Definitions, Acronyms and Abbreviations References Overview Overall Description Use-Case Model Survey Assumptions and Dependencies Specific Requirements Use-Case Reports Supplementary Requirements Supporting Information

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 10 Artifacts Relationships in RUP

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 11 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. Who

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 12 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. Who

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 13 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. What

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 14 Supplementary Specification The Supplementary Specification artifact capture system requirements that are not readily captured in behavioral requirements artifacts such as use-case specifications. What

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 15 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. How

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 16 راهنماي مدرس ( اسلايدهاي17 -26) مستندسازي نيازهايي که در طي فرآيند مهندسي نيازها مشخص مي شوند، يکي از فعاليتهايي است که بايد در فرآيند انجام شود. نحوه مستندسازي،تکنيکهاي موجود در سازمان دهي نيازها، تکنيکهاي ذخيره سازي، ابزارهايي که بدين منظور مورد استفاده قرار مي گيرند، مزايا و معايب هر يک ، شرايطي که در انتخاب هر يک از اين ابزارها بايد مورد توجه قرار گيرند، در اين مجموع اسلايدها شرح داده مي شوند. همچنين ابزاري به منظور مستندسازي نيازها معرفي مي شود.

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 17 Other Templates Related to SRS Guideline: Software Requirements Specification Checklist: Software Requirements Specification

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 18 Requirements identification 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 How

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 19 Requirements identification techniques 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 How

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 20 Storing requirements 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 How

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 21 Word processor documents 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 How

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 22 Requirements database 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 How

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 23 Requirements DB - choice factors 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. What

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 24 Database choice factors 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. What

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 25 A Sample Documentation Tool 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. What

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 26 SoDA for Word 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 What

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 27 مجموعه پرسشها 1.چه افرادي در توليد و استفاده از مستندات نيازها نقش دارند؟چه افرادي در توليد و استفاده از مستندات نيازها نقش دارند؟ 2.روشهاي مختلف ذخيره و بازيابي نيازهاي نرم افزاري چيست؟روشهاي مختلف ذخيره و بازيابي نيازهاي نرم افزاري چيست؟ 3.چه فاکتورهايي در انتخاب تکنيکهاي مستندسازي درنظر گرفته مي شوند؟چه فاکتورهايي در انتخاب تکنيکهاي مستندسازي درنظر گرفته مي شوند؟

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 28 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. Who

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 29 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. Who

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 30 مجموعه پرسشها 1.چه افرادي در توليد و استفاده از مستندات نيازها نقش دارند؟چه افرادي در توليد و استفاده از مستندات نيازها نقش دارند؟ 2.روشهاي مختلف ذخيره و بازيابي نيازهاي نرم افزاري چيست؟روشهاي مختلف ذخيره و بازيابي نيازهاي نرم افزاري چيست؟ 3.چه فاکتورهايي در انتخاب تکنيکهاي مستندسازي درنظر گرفته مي شوند؟چه فاکتورهايي در انتخاب تکنيکهاي مستندسازي درنظر گرفته مي شوند؟

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 31 Storing requirements 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 How

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 32 Word processor documents 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 How

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 33 Requirements database 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 How

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 34 مجموعه پرسشها 1.چه افرادي در توليد و استفاده از مستندات نيازها نقش دارند؟چه افرادي در توليد و استفاده از مستندات نيازها نقش دارند؟ 2.روشهاي مختلف ذخيره و بازيابي نيازهاي نرم افزاري چيست؟روشهاي مختلف ذخيره و بازيابي نيازهاي نرم افزاري چيست؟ 3.چه فاکتورهايي در انتخاب تکنيکهاي مستندسازي درنظر گرفته مي شوند؟چه فاکتورهايي در انتخاب تکنيکهاي مستندسازي درنظر گرفته مي شوند؟

Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory 35 Database choice factors 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. What