0% found this document useful (0 votes)
48 views17 pages

Introduction to Requirements Engineering

Requirement Engineering (RE) is the process of defining, documenting, and managing stakeholder needs for a software system, focusing on what the system should do rather than how it should be done. It involves activities such as feasibility studies, requirements elicitation, specification, validation, and documentation, which collectively help reduce project risks and improve communication and software quality. A complete and consistent set of requirements is essential to avoid confusion and minimize costly changes during the software development lifecycle.

Uploaded by

bella.shine7799
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views17 pages

Introduction to Requirements Engineering

Requirement Engineering (RE) is the process of defining, documenting, and managing stakeholder needs for a software system, focusing on what the system should do rather than how it should be done. It involves activities such as feasibility studies, requirements elicitation, specification, validation, and documentation, which collectively help reduce project risks and improve communication and software quality. A complete and consistent set of requirements is essential to avoid confusion and minimize costly changes during the software development lifecycle.

Uploaded by

bella.shine7799
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

Introduction to requirement

engineering
Lecture 01
What is requirement?

• Requirements are about WHAT not about HOW.


• Requirements are the descriptions of the services provided
by a system and its operational constraints
Definition
• Software Requirements Engineering (RE) is the process of defining,
documenting, and managing the needs and expectations of
stakeholders for a software system, ensuring the final product meets
their requirements.
• Requirement engineering provides the appropriate mechanism to
understand what the customer desires, analyzing the need, and
assessing feasibility, negotiating a reasonable solution, specifying the
solution clearly, validating the specifications and managing the
requirements as they are transformed into a working system.
Importance
• Reduces project risks and cost overruns.
• Improves communication between stakeholders.
• Enhances software quality and user satisfaction.
• Ensures alignment with business goals.
Why requirement?
• Advantages of a complete set of documented requirements:
1. Helps avoiding confusion
2. Helps minimizing the changes
• Changes in requirements are expensive:
• 3 x as much during the design phase
• 5-10 x as much during implementation
• 10-100 x as much after release
Completeness and Consistency
• In principle requirements should be both complete and
consistent
• Complete: should include descriptions of all functionalities
required
• Consistent: There should be no conflicts or contradictions in
the descriptions of the system functionalities
• In practice, it is very difficult to produce a complete and
consistent requirements document.
Requirement Engineering
• 5 important activities:
1. Feasibility study
2. Requirements elicitation and analysis
3. Requirements specification
4. Requirements validation
5. Requirements documentation
Requirement Engineering cont.

Feasibility study
• Feasibility study used to decide “is project worthwhile?”
• Information collected through (interviews, surveys,
questionnaires…)
• Consult information resources: managers, Software
Engineers, end users, etc.
• Look at different issues: Financial, schedule, technical, legal,
risks.
• It may serve as the basis for a bid of contract
• Or the basis for the contract itself
Elicitation & Analysis
• Also called requirements discovery. A people-intensive
process.
• Technical staff involves customers to find out the
application domain, the services and the system’s operational
constraints.
• May involve all stakeholders: End-users, managers,
maintenance engineers, domain experts, etc.
Elicitation & Analysis (Issues)
• Stakeholders don’t know what they really want, and express
requirements in their own terms.
• Different stakeholders may have conflicting requirements.
• Organizational and political factors may influence the
system requirements.
• The requirements change during the analysis process.
Requirements Specification
• It describes the functions and performance of a computer-
based system and the constraints that will govern its
development.
• It formalizes the informational, functional, and non-
functional (behavioral) requirements of the proposed
software in both a graphical and textual format.
Requirements Specification
Requirements validation
• Concerned with demonstrating that the requirements define
the system that the customer really wants.
• Requirements error costs are high so validation is very
important
Requirements Document
• At the end of Requirement Engineering process
“Requirement Document” is prepared.
• This document is duly signed by developers as well as
customer.
• On the other hand if any change request comes from
customer he has to pay for that.
Requirement engineering role in
system development
• Requirement engineering plays a crucial role in system
development by ensuring that the final product meets
stakeholder needs through activities like elicitation,
analysis, specification, and verification, ultimately leading
to a successful and aligned project.
.

Thank u!

You might also like