Requirements Engineering Lec1
Requirements Engineering Lec1
• It is the description of what the system does (and not how it is done).
A sample of requirements (abstract level)
• What the system will do and the constraint under which the system will perform.
• For example: A software system for the exam section need to keep record
of all the students evaluation (i.e. mid exam, final exam, assignments etc).
The system can display a student’s semester’s GPA as well as the overall
CGPA.
• At a time, the system should process at least 100 students when gets
online. The system should be built within three months and under the
budget of one million PKR.
Types of Software Requirements (Example: Online Shopping
System)
• Requirements could be easily misunderstood between the clients and analyst and
between the analyst and programmers.
Some examples of requirements
• A functionality for users (e.g. the word processor must include a spell
checking command.)
• A user must be login (users should enter valid id/password to get login)
• In small and simple projects, the software analysts may just go the
customer and get idea of what should be done but,
• Problem of Scope: The requirements given are of unnecessary detail, ill-defined, or not possible to
implement.
• Problem of Understanding: Sometimes the customer might not know what they want or not explicitly
mentioning (they think its obvious)
• Problem of Volatility: Requirements changing over time can lead to loss and wastage of resources and
time.
3. Elaboration
• It describes how the end users are going to interact with the system,
possibly using use-case diagrams.
4. Negotiation
• In this phase, negotiation is between the developer and the customer
about how to go about the project with limited resources.
“Customer might demand that students result should be displayed on computer as well as with all
handheld devices but budget is only allocated for computers”
Written document
Diagrams (e.g. Entity Relationship (ER) diagrams, Data Flow
Diagram (DFD) etc
Some mathematical forms
Or the combination of all these
6. Validation
• In the validation phase, the developer scans the specification document and checks for the
following:
• This phase is called “formal technical review” where all the stakeholders (i.e. software
engineers, customers, users) work together and validate the requirements
7 Requirements Management
• In this phase, the team is responsible for managing any changes that
may occur during the project.
Users of SRS
• What is the purpose of the software system (e.g. students can access
their exams results while setting in home).
• What is the scope and boundaries of the software system (e.g. only for
exam section and no details about fee etc will be covered herer)
• All the software tools should be mentioned that could be used in the
development process (e.g. ASP.net with C#).
Steve McConnell
• A sample SRS document can be found on the web. There are a lot
of SRS documents available you will find easily.
• What repercussions/consequences have companies faced as a result of
bypassing the requirements phase?
Case Study 1: Denver International Airport (DIA) Baggage Handling System
In the 1990s, Denver International Airport rushed the implementation of an automated baggage handling
system to meet aggressive construction deadlines, skipping a thorough requirements phase.
Consequences:
- Operational Failures:
System glitches led to lost, misdirected, or damaged baggage, causing flight delays and passenger
frustration.
- Cost Overruns:
The project's budget skyrocketed from $200 million to over $1 billion due to troubleshooting efforts.
- Reputational Damage:
DIA's image suffered globally, and it took years to recover from the negative publicity.
Case Study 1: Denver International Airport (DIA) Baggage Handling System
In the 1990s, Denver International Airport rushed the implementation of an automated baggage handling
system to meet aggressive construction deadlines, skipping a thorough requirements phase.
Consequences:
- Operational Failures:
System glitches led to lost, misdirected, or damaged baggage, causing flight delays and passenger
frustration.
- Cost Overruns:
The project's budget skyrocketed from $200 million to over $1 billion due to troubleshooting efforts.
- Reputational Damage:
DIA's image suffered globally, and it took years to recover from the negative publicity.
Case Study 2: Healthcare.gov Launch
In 2013, Healthcare.gov was launched without proper requirements gathering, leading to technical glitches,
user confusion, and political controversy.
Consequences:
- Technical Glitches:
System crashes and errors hindered user enrollment, causing widespread frustration.
- Political Backlash:
The botched launch sparked political controversy and debates over government competence.
Other examples include: