Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS.

Slides:



Advertisements
Similar presentations
Requirements 1. Understand and specifying requirements A problem of scale For small scale: understand and specifying requirements is easy For large scale:
Advertisements

Software Requirements Analysis and Specification
Characteristics of a good SRS
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
Unit 251 Implementation and Integration Implementation Unit Testing Integration Integration Approaches.
Computer Engineering 203 R Smith Requirements Management 6/ Requirements IEEE Standard Glossary A condition or capability needed by a user to solve.
Analysis Stage (Phase I) The goal: understanding the customer's requirements for a software system. n involves technical staff working with customers n.
Software Requirements
Major Exam II Reschedule 5:30 – 7:30 pm in Tue Dec 5 th.
1 SOFTWARE QUALITY ASSURANCE Basic Principles. 2 Requirements System Design Detailed Design Implementation Installation & Testing Maintenance SW Quality:
SE 555 – Software Requirements & Specifications Introduction
1 Software Requirements Specification Lecture 14.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
S R S S ystem R equirements S pecification Specifying the Specifications.
The Software Development Life Cycle: An Overview
SOFTWARE REQUIREMENTS SPECIFICATION (SRS)
Pre-Project Activities Text Chapters 5 and 6. Pre-Project Activities 1.Contract Review 2.Development Plan 3.Quality Plan.
Software Requirements Specification (SRS) Complete description of external behavior of software system Complete description of external behavior.
Typical Software Documents with an emphasis on writing proposals.
Requirements Analysis
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
Based on D. Galin, and R. Patton.  According to D. Galin  Software quality assurance is:  A systematic, planned set of actions necessary to provide.
Software System Engineering: A tutorial
Negotiation and Specification Process
Requirements Engineering How do we keep straight what we are supposed to be building?
 Explain the role of a system analyst.  Identify the important parts of SRS document.  Identify the important problems that an organization would face.
1 Lecture 5.2.b: Requirements Specifications (IEEE 830) Dr. John MacCarthy UMBC CMSC 615 Fall, 2006.
Requirements Engineering CSE-305 Requirements Engineering Process Tasks Lecture-5.
Software Requirements Presented By Dr. Shazzad Hosain.
Requirements Engineering ments_analysis.
Lecture 7: Requirements Engineering
1 15 quality goals for requirements  Justified  Correct  Complete  Consistent  Unambiguous  Feasible  Abstract  Traceable  Delimited  Interfaced.
Requirements Specification. Welcome to Software Engineering: “Requirements Specification” “Requirements Specification”  Verb?  Noun?  “Specification”
1 Software Requirements l Specifying system functionality and constraints l Chapters 5 and 6 ++
CS551 - Lecture 5 1 CS551 Lecture 5: Quality Attributes Yugi Lee FH #555 (816)
IS550: Software requirements engineering Dr. Azeddine Chikh 2. Functional and non-functional requirements.
CMSC 345 Fall 2000 Requirements Overview. Work with customers to elicit requirements by asking questions, demonstrating similar systems, developing prototypes,
Capturing the requirements  Requirement: a feature of the system or a description of something the system is capable of doing in order to fulfill the.
Chapter 4 Software Requirements
Software Requirements: A More Rigorous Look 1. Features and Use Cases at a High Level of Abstraction  Helps to better understand the main characteristics.
Requirements Engineering Lesson 2. Terminologies:  Software Acquisition is where requirement engineering significantly meets business strategy.  Software.
(SRS) SOFTWARE REQUIREMENT SPECIFICATION(SRS) 1. Topics to be discussed.. What is an SRS? Purpose of an SRS Who reads the SRS? Who writes the SRS? Characteristics.
Systems Development Life Cycle
1 Quality Attributes of Requirements Documents Lecture # 25.
Requirements Validation
Requirement Engineering. Recap Elaboration Behavioral Modeling State Diagram Sequence Diagram Negotiation.
Week 3: Requirement Analysis & specification
Software Requirements Specification (SRS)
System Requirements Specification
Requirements Engineering ments_analysis.
Software Requirements
Software Requirements Specification Document (SRS)
Requirements engineering The process of establishing the services that the customer requires from a system and the constraints under which it operates.
Chapter 4 Requirements Engineering (1/3) Yonsei University 2 nd Semester, 2015 Sanghyun Park.
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
Requirements. Outline Definition Requirements Process Requirements Documentation Next Steps 1.
 System Requirement Specification and System Planning.
Classifications of Software Requirements
Chapter 4 – Requirements Engineering
Chapter 4 Requirements Engineering (1/3)
Chapter 4 – Requirements Engineering
Chapter 5 – Requirements Engineering
SYSTEM ANALYSIS AND DESIGN
System Requirements Specification
UNIT II.
Software Requirements Specification Document
Requirement Documentation &
Software Requirements Specification (SRS) Template.
SOFTWARE REQUIREMENT SPECIFICATION
Dr. Jiacun Wang Department of Software Engineering Monmouth University
Presentation transcript:

Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS Characteristics of SRS Characteristics of SRS Components of SRS Components of SRS Behavioral /Non-behavioral requirements Behavioral /Non-behavioral requirements

Software Requirement Specification(SRS) SRS is a set of documents that specify the functional, performance, design and interface requirements of the proposed system. In SRS the external behavior of the problem, user interfaces, erroneous situations, performance and design constraints, standard compliance, recovery etc are included which can not be modeled during problem analysis. Thus an SRS clearly defines:  External interfaces of the system.  Functional and non-functional requirements of the system.

Authors of SRS document- SRS written by customer-> It defines the needs and expectations of the user. SRS written by the developer of the system-> It serves as a contract document between customers and developers.

Need of SRS: A basic purpose of software requirements specification is to bridge the communication gap between the parties involved in the development project. SRS is the medium through which the client and user needs are accurately specified to the developer. Some of the benefits or needs of SRS are as follows:  An SRS establishes the basis for agreement between the client and the supplier on what the software product will do.  An SRS provides a reference for validation of the final product.

 A high quality software is a pre-requisite to high quality software.  A high quality SRS reduces problem of changes and rework.  SRS bridges communication gap between developer and clients.

Characteristics of SRS: To satisfy the basic goals SRS should have certain properties. Some of the desirable properties or characteristics are: - Correct-Consistent -Complete -Ranked for importance and/or stability -Unambiguous -Modifiable -Verifiable -Traceable

Correctness: An SRS is correct if every requirement included in the SRS represents something required in the final system. Correctness basically involves examining each requirement to make sure it represents user requirements. Completeness: An SRS is complete if everything software has to do and the responses of the software to all classes of input data are specified in the SRS.

Unambiguous: An SRS is unambiguous if and only if every requirement stated in it has only one interpretation. Unambiguity can be achieved by using formal specification language. Verifiable: An SRS is verifiable if and only if every stated requirement can be checked whether the final software meets the requirements. Verification of requirements is done through reviews.

Consistent: An SRS is consistent if there is no requirement conflicts with other. Inconsistencies or conflicts in SRS may lead to major problems, so specifications should be consistent. Ranked for importance/stability: In SRS for each requirement the importance and stability of the requirement can be ranked as critical, important, desirable etc. Some requirements have more chances of changes in future but some are not likely to change, accordingly ranking should be done.

Modifiable: An SRS is modifiable if its structure and style could be changed easily while preserving completeness and consistency. Traceable: An SRS is traceable if the origin of each of its requirements is clear and it facilitates the referencing of each requirement in future. Traceability aids verification and validation.

Components of SRS: 1) Functional requirements: Functional requirements specify which outputs should be produced from the given inputs, relationship between the input & output of the system, source of data input, range of valid inputs etc. 2) Performance requirements: This component of an SRS specifies the performance constraints on the software. It is of 2 types: a) Static Requirements b) Dynamic Requirements

a) Static requirements: are one which do not impose the constraints on execution behavior of the system. These include number of terminals to be supported, number of simultaneous users & the number of files to be processed & their sizes. b) Dynamic requirements: are one which specify constraints on execution behavior of the system. These include response time and throughput constraints. These requirements should be stated in measurable units.

3) Design constraints: An SRS should specify all constraints related to design such as standards to be followed, resource limits, operating environment, reliability, security requirements & policies. 4) External interface requirements: All the interactions of the s/w with people, h/w & other s/w should be clearly specified. A user manual should be created with all user commands, screen formats, feedbacks, error messages. The h/w interface requirements like memory restrictions, current use & load of the h/w should be given. The s/w interface includes interface with OS & other applications.

Behavioral/Non-behavioral requirements 1) Behavioral requirements: These define precisely what inputs are expected, what outputs will be generated & details of relationship between inputs and outputs. 2) Non-behavioral requirements: All applications have additional requirements that define the overall qualities or attributes of the s/w. Some of the attributes which can be specified in SRS are: -Reliability -Efficiency -Testability -Reusability - Usability -Maintainability -Portability -Robustness

Thanks!!