7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 1/13
Lecture 01 – 02
Mon, Jan 30 / Feb 06 2012 – 1800 : 2100
FAST – NU, Karachi
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 2/13
Course Outline Software Requirements Engineering Overview
Business Value of Better Requirements
Good Practices for Requirements Engineering
The Role of Requirements Analyst
Documenting Software Requirements
Quality Aspect of Requirements Engineering
Requirements Management Principles and Practices
Improving Requirements Processes
Use Cases
Risk Management & Software Requirements
2
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 3/13
Course Material Software Requirements
Karl E. Wiegers
Microsoft Press; 2nd Edition; 2003 More About Software Requirements
Thorny Issues and Practical Advice
Karl E. Wiegers
Microsoft Press; 2006
3
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 4/13
Marks Distribution
50%
20%
10%
15%
5%
Final
Midterm
Quiz
Presentation / Report
Class Participation
4
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 5/13
Objective of the Course To know what Software Requirements Engineering is
To understand the need of Requirements Engineering
How to understand your customers and how to interact
with them How to develop Software Requirements
How to manage Software Requirements
How to document Software Requirements
How to improve the process of managing the SoftwareRequirements
How to define Project Scope
How to reduce Risks while managing the Requirements
5
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 6/13
What is Requirements Engineering Requirements engineering is primarily a
communication activity – not a technical activity
Requirements engineering is one of the mostchallenging aspects of software development
It is also the most important aspect, as it lays thefoundation for all the subsequent project work
6
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 7/13
Requirements According to Ian Sommerville and Pete Sawyer
A specification of what should be implemented
They are descriptions of how the system should behave,or of a system property or attribute
They may be a constraint on the development process of the system
7
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 8/13
Requirements According to IEEE Standard Glossary of Software
Engineering Terminology
1. A condition or capability needed by a user to solve aproblem or achieve an objective
2. A condition or capability that must be met orpossessed by a system or system component to satisfy acontract, standard, specification, or other formally
imposed document
3. A documented representation of a condition orcapability as in 1 or 2
8
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 9/13
Levels of Requirements A project needs to address three levels of
requirements, which come from different sources atdifferent project stages
Business Requirements
Describe why the product is being built and identify thebenefits both customers and the business will reap
User Requirements
Captured in the form of use cases, describe the tasks orbusiness processes a user will be able to perform with theproduct
9
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 10/13
Levels of Requirements Functional Requirements
Describe the specific system behaviors that must beimplemented
The functional requirements are the traditional “shall”statements found in a software requirements specification(SRS)
System Requirements
The term system requirements describes the top level
requirements for a product that contains multiple subsystems A system can be all software or it can include both software
and hardware subsystems
People are a part of a system, too, so certain system functionsmight be allocated to human beings
10
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 11/13
Types of Requirements
11
Business
Requirements
Vision and Scope Document
User
Requirements
System
Requirements
Functional
Requirements
Business
Rules
Quality
Attributes
External
Interfaces
Constraints
Use Case Document
Software RequirementsSpecification
Functional Non Functional
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 12/13
Non Functional Requirements Business Rules
Business rules include corporate policies, governmentregulations, industry standards (such as accounting
practices), and computational algorithms Quality Attributes
Quality attributes describe the product’s characteristics in various dimensions that are important either to users or todevelopers and maintainers. These characteristics include
availability, performance, usability, portability, integrity,efficiency, robustness, and many others
Sometimes these characteristics are called quality factors orquality of service requirements
12
7/31/2019 RE Lecture 01 - 02
http://slidepdf.com/reader/full/re-lecture-01-02 13/13
Non Functional Requirements External Interfaces
External interfaces between the system and the outside world constitute another class of nonfunctionalrequirements
Constraints
These are restrictions imposed on the choices availableto the developer for some legitimate reason
Some people consider all requirements to be constraints,but this broad generalization isn’t very helpful
13