SlideShare a Scribd company logo
Understanding Requirements
PRESENTED BY
DR.S.VIJAYASANKARI
DEPT OF MCA,
E.M.G YADAVA WOMEN’S COLLEGE,
MADURAI
Requirements Engineering
Requirements engineering is a systematic process for defining,
documenting, and maintaining requirements in the engineering design
process
Requirement engineering consists of seven different tasks as follow:
Inception. Inception is a task where the requirement engineering asks a
set of questions to establish a software process. ...
•Elicitation. ...
•Elaboration. ...
•Negotiation. ...
•Specification. ...
•Validation. ...
•Requirement management.
Diagram for Requirements
Engineering
Requirements Engineering
Inception is a task where the requirement engineering
asks a set of questions to establish a software process.
In this task, it understands the problem and evaluates
with the proper solution. It collaborates with the
relationship between the customer and the developer.
Inception—ask a set of questions that establish …
◦ basic understanding of the problem
◦ the people who want a solution
◦ the nature of the solution that is desired, and
◦ the effectiveness of preliminary communication and
collaboration between the customer and the developer
Inception
Identify stakeholders
◦ “who else do you think I should talk to?”
Recognize multiple points of view
Work toward collaboration
The first questions
◦ Who is behind the request for this work?
◦ Who will use the solution?
◦ What will be the economic benefit of a successful
solution
◦ Is there another source for the solution that you need?
Elicitation
Elicitation—elicit requirements from all stakeholders
Elicitation in requirements engineering is the process
of gathering and discovering the requirements of a
system from users, customers, and other
stakeholders.
In requirements engineering, requirements
elicitation is the practice of researching and
discovering the requirements of a system from users,
customers, and other stakeholders.
Eliciting Requirements
•meetings are conducted and attended by both software engineers
and customers
•rules for preparation and participation are established
•an agenda is suggested
•a "facilitator" (can be a customer, a developer, or an outsider)
controls the meeting
•a "definition mechanism" (can be work sheets, flip charts, or wall
stickers or an electronic bulletin board, chat room or virtual forum)
is used
•the goal is
• to identify the problem
• propose elements of the solution
• negotiate different approaches, and
• specify a preliminary set of solution requirements
Elaboration and Negotiation
Elaboration—create an analysis model that identifies data,
function and behavioral requirements
In this task, the information taken from user during inception and
elaboration and are expanded and refined in elaboration. Its main
task is developing pure model of software using functions,
feature and constraints of a software.
Negotiation—agree on a deliverable system that is realistic for
developers and customers
Requirement negotiation is a part of the requirements engineering
(RE) process, which is used in software development life-cycle
models. It involves discussing and resolving conflicts between
stakeholders to reach a compromise that satisfies everyone. The
goal is to create a set of requirements that meet predetermined
quality criteria, such as correctness and agreement.
Specification
In requirement engineering, a specification is a document that
outlines the requirements for a product or process. It's a critical part
of the requirements engineering process, and is usually created after
requirements capture and analysis.
A requirement specification, which is a set of documented
requirements to be satisfied by a material, design, product, or service.
Specification—can be any one (or more) of the following:
◦ A written document
◦ A set of models
◦ A formal mathematical
◦ A collection of user scenarios (use-cases)
◦ A prototype
Validation
In requirement engineering, validation is the process of confirming that the
documented requirements match the needs of the stakeholders. It's a phase in the
software development life cycle that ensures the requirements are suitable for the
product.
Validation—a review mechanism that looks for
◦ errors in content or interpretation
◦ areas where clarification may be required
◦ missing information
◦ inconsistencies (a major problem when large products or systems are engineered)
◦ conflicting or unrealistic (unachievable) requirements.
◦ Requirements management conflicting or unrealistic (unachievable) requirements.
◦ The primary goal of systems engineering (SE) is to develop a solution that meets the
needs and requirements of stakeholders. Validation is the process by which
engineers ensure that the system will meet these needs and requirements.
Requirements management
Requirements management
Requirements management is the process of gathering, analyzing,
verifying, and validating the needs and requirements for the given
product or system being developed..
Requirements management process
Collect initial requirements from stakeholders.
Analyze requirements.
Define and record requirements.
Prioritize requirements.
Agree on and approve requirements.
Trace requirements to work items.
Query stakeholders after implementation on needed changes to
requirements.
Building the Analysis Model
Elements of the analysis model
◦ Scenario-based elements
◦ Functional—processing narratives for software functions
◦ Use-case—descriptions of the interaction between an
“actor” and the system
◦ Class-based elements
◦ Implied by scenarios
◦ Behavioral elements
◦ State diagram
◦ Flow-oriented elements
◦ Data flow diagram
Scenario-based elements
Scenarios are brief narratives of expected or anticipated use of a system
from both development and end-user viewpoints.
Scenario modeling typically considers three primary types of
scenarios: worst-case, best-case and average scenarios. The worst-case
scenario explores the outcomes under the most adverse conditions,
helping businesses prepare for the toughest challenges.
A scenario analysis generally considers at least three types of
scenarios:
Base-case scenario: A baseline scenario based on current, commonly
accepted assumptions.
Worst-case scenario: The most negative set of assumptions.
Best-case scenario: The ideal projected scenario to achieve goals and
objectives.
Class – based elements
Class-based elements: Each usage scenario implies a
set of “objects” that are manipulated as an actor
interacts with the system. These objects are
categorized into classes- a collection of things that
have similar attributes and common behaviors.
Class-based elements : A collection of things that
have similar attributes and common behaviors i.e.,
objects are categorized into classes..
The elements of a class-based model include classes
and objects, attributes, operations, class
responsibility- collaborator (CRC) models,
collaboration diagrams, and packages
Diagram for Class-based
Elements
Behavioral elements
Behavioral elements depict how external events change the state
of the system
Behavior elements are the strategic elements course of action and
capability, and behavioral elements, which can be subdivided
into internal behavior elements, external behavior elements (also
called services), and events. or the classes that reside within it.
Two types of behavioral models
There are two types of behavioral models that are used to
describe the system behavior, one is data processing model and
another is state machine models. Data processing models are also
known as DFD (Data Flow Diagram) which is used to show how
data is processed as it moves through the system.
Flow-oriented elements
Flow-oriented elements: Information is transformed as it flows through a
computer-based system. The system accepts input in a variety of forms; applies
functions to transform it; and produces output in a variety of forms.
Flow-oriented modeling represents how data objects are transformed as they
move through a system. A data flow diagram (DFD) is the diagrammatic form
used to depict this approach. DFDs show the flow of data through processes and
external entities of a system using symbols like circles and arrows.
Data Flow Diagram Symbols
External Entity. External entities — which are also known as terminators,
sources, sinks, or actors — are outside systems that send or receive data to and
from the diagrammed system. ...
Process. ...
Data Store. ...
Data Flow.
Diagram for Flow-oriented
Elements
Diagram for Flow-oriented
Elements
Use-Cases
Use cases in software engineering are a user-centric way to
represent how a user interacts with a product or system. They can
be written as documents or created visually using a use case
model. Use cases help with a variety of tasks, including:
A use case defines a goal-oriented set of interactions between
external actors and the system under consideration. A primary
actor triggers the system behavior in order to achieve a certain
goal. A secondary actor interacts with the system but does not
trigger the use case
A collection of user scenarios that describe the thread of usage of
a system
Each scenario is described from the point-of-view of an “actor”—
a person or device that interacts with the software in some way
Use Cases
Each scenario answers the following questions:
◦ Who is the primary actor, the secondary actor (s)?
◦ What are the actor’s goals?
◦ What preconditions should exist before the story begins?
◦ What main tasks or functions are performed by the actor?
◦ What extensions might be considered as the story is described?
◦ What variations in the actor’s interaction are possible?
◦ What system information will the actor acquire, produce, or change?
◦ Will the actor have to inform the system about changes in the external
environment?
◦ What information does the actor desire from the system?
◦ Does the actor wish to be informed about unexpected changes?
Thank You

More Related Content

PPTX
unit2.pptx
PPT
PPT
Requirement analysis and specification, software engineering
PPT
Software engg. pressman_ch-6 & 7
PPTX
Requirement Engineering Processes & Eliciting Requirement
PPTX
Requirement Analysis and Modeling in Software Engineering.pptx
PDF
Software engineering Requirements Engineering.pdf
unit2.pptx
Requirement analysis and specification, software engineering
Software engg. pressman_ch-6 & 7
Requirement Engineering Processes & Eliciting Requirement
Requirement Analysis and Modeling in Software Engineering.pptx
Software engineering Requirements Engineering.pdf

Similar to Software Engineering- Understanding Requirements (20)

PPT
Unit-1 object oriented systems(OOSD) .ppt
PDF
System Development Life Cycle (SDLC)
PPT
Requirment Engineering WITH SPECIAL EFFECTS
PPTX
requirement Engineeringggggggggggggggggg
PPT
Slides chapters 6-7
PPT
SE chapters 6-7
PPTX
Soft requirement
PDF
Understanding software requirements chapter 5
PDF
6. ch 5-understanding requirements
PPTX
PPTX
System Analysis and Design Project documentation
PDF
6-180117160306. software engineering concepts
PPTX
Systems-Analysis-Uncovering-Requirements.pptx
PPT
5. Requirement Engineering Process(1).ppt
PDF
Object oriented analysis and design unit- i
PPT
System_Analysis_and_Design_Assignment_New2.ppt
PPTX
Ch 2-RE-process.pptx
PPTX
Software Development Process - REQUIREMENTS ANALYSIS / ANALYSIS OF TECHNICAL...
PPTX
System engineering analysis and design
PDF
SE UNIT-2.pdf
Unit-1 object oriented systems(OOSD) .ppt
System Development Life Cycle (SDLC)
Requirment Engineering WITH SPECIAL EFFECTS
requirement Engineeringggggggggggggggggg
Slides chapters 6-7
SE chapters 6-7
Soft requirement
Understanding software requirements chapter 5
6. ch 5-understanding requirements
System Analysis and Design Project documentation
6-180117160306. software engineering concepts
Systems-Analysis-Uncovering-Requirements.pptx
5. Requirement Engineering Process(1).ppt
Object oriented analysis and design unit- i
System_Analysis_and_Design_Assignment_New2.ppt
Ch 2-RE-process.pptx
Software Development Process - REQUIREMENTS ANALYSIS / ANALYSIS OF TECHNICAL...
System engineering analysis and design
SE UNIT-2.pdf
Ad

More from Alamelu (7)

PPTX
Advanced Machine Learning- Introduction to Machine Learning
PPTX
The Switch Statement,Loops,Array,Functions
PPTX
Introduction to learn and Python Interpreter
PPTX
Line drawing algorithm in Computer Graphics.pptx
PPTX
Line Clipping in Comeputer Graphics.pptx
PPTX
OUTPUT PRIMITIVES.pptx
PPTX
Languages and tools for web programming
Advanced Machine Learning- Introduction to Machine Learning
The Switch Statement,Loops,Array,Functions
Introduction to learn and Python Interpreter
Line drawing algorithm in Computer Graphics.pptx
Line Clipping in Comeputer Graphics.pptx
OUTPUT PRIMITIVES.pptx
Languages and tools for web programming
Ad

Recently uploaded (20)

PDF
CIFDAQ's Market Wrap: Ethereum Leads, Bitcoin Lags, Institutions Shift
PDF
CIFDAQ's Teaching Thursday: Moving Averages Made Simple
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
[발표본] 너의 과제는 클라우드에 있어_KTDS_김동현_20250524.pdf
PDF
Omni-Path Integration Expertise Offered by Nor-Tech
PDF
Advanced Soft Computing BINUS July 2025.pdf
PDF
Sensors and Actuators in IoT Systems using pdf
PDF
Chapter 2 Digital Image Fundamentals.pdf
PDF
cuic standard and advanced reporting.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
How Onsite IT Support Drives Business Efficiency, Security, and Growth.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Smarter Business Operations Powered by IoT Remote Monitoring
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
PPTX
Big Data Technologies - Introduction.pptx
PPTX
Comunidade Salesforce São Paulo - Desmistificando o Omnistudio (Vlocity)
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Modernizing your data center with Dell and AMD
CIFDAQ's Market Wrap: Ethereum Leads, Bitcoin Lags, Institutions Shift
CIFDAQ's Teaching Thursday: Moving Averages Made Simple
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
[발표본] 너의 과제는 클라우드에 있어_KTDS_김동현_20250524.pdf
Omni-Path Integration Expertise Offered by Nor-Tech
Advanced Soft Computing BINUS July 2025.pdf
Sensors and Actuators in IoT Systems using pdf
Chapter 2 Digital Image Fundamentals.pdf
cuic standard and advanced reporting.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
How Onsite IT Support Drives Business Efficiency, Security, and Growth.pdf
Understanding_Digital_Forensics_Presentation.pptx
Smarter Business Operations Powered by IoT Remote Monitoring
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
GDG Cloud Iasi [PUBLIC] Florian Blaga - Unveiling the Evolution of Cybersecur...
Big Data Technologies - Introduction.pptx
Comunidade Salesforce São Paulo - Desmistificando o Omnistudio (Vlocity)
Chapter 3 Spatial Domain Image Processing.pdf
Modernizing your data center with Dell and AMD

Software Engineering- Understanding Requirements

  • 1. Understanding Requirements PRESENTED BY DR.S.VIJAYASANKARI DEPT OF MCA, E.M.G YADAVA WOMEN’S COLLEGE, MADURAI
  • 2. Requirements Engineering Requirements engineering is a systematic process for defining, documenting, and maintaining requirements in the engineering design process Requirement engineering consists of seven different tasks as follow: Inception. Inception is a task where the requirement engineering asks a set of questions to establish a software process. ... •Elicitation. ... •Elaboration. ... •Negotiation. ... •Specification. ... •Validation. ... •Requirement management.
  • 4. Requirements Engineering Inception is a task where the requirement engineering asks a set of questions to establish a software process. In this task, it understands the problem and evaluates with the proper solution. It collaborates with the relationship between the customer and the developer. Inception—ask a set of questions that establish … ◦ basic understanding of the problem ◦ the people who want a solution ◦ the nature of the solution that is desired, and ◦ the effectiveness of preliminary communication and collaboration between the customer and the developer
  • 5. Inception Identify stakeholders ◦ “who else do you think I should talk to?” Recognize multiple points of view Work toward collaboration The first questions ◦ Who is behind the request for this work? ◦ Who will use the solution? ◦ What will be the economic benefit of a successful solution ◦ Is there another source for the solution that you need?
  • 6. Elicitation Elicitation—elicit requirements from all stakeholders Elicitation in requirements engineering is the process of gathering and discovering the requirements of a system from users, customers, and other stakeholders. In requirements engineering, requirements elicitation is the practice of researching and discovering the requirements of a system from users, customers, and other stakeholders.
  • 7. Eliciting Requirements •meetings are conducted and attended by both software engineers and customers •rules for preparation and participation are established •an agenda is suggested •a "facilitator" (can be a customer, a developer, or an outsider) controls the meeting •a "definition mechanism" (can be work sheets, flip charts, or wall stickers or an electronic bulletin board, chat room or virtual forum) is used •the goal is • to identify the problem • propose elements of the solution • negotiate different approaches, and • specify a preliminary set of solution requirements
  • 8. Elaboration and Negotiation Elaboration—create an analysis model that identifies data, function and behavioral requirements In this task, the information taken from user during inception and elaboration and are expanded and refined in elaboration. Its main task is developing pure model of software using functions, feature and constraints of a software. Negotiation—agree on a deliverable system that is realistic for developers and customers Requirement negotiation is a part of the requirements engineering (RE) process, which is used in software development life-cycle models. It involves discussing and resolving conflicts between stakeholders to reach a compromise that satisfies everyone. The goal is to create a set of requirements that meet predetermined quality criteria, such as correctness and agreement.
  • 9. Specification In requirement engineering, a specification is a document that outlines the requirements for a product or process. It's a critical part of the requirements engineering process, and is usually created after requirements capture and analysis. A requirement specification, which is a set of documented requirements to be satisfied by a material, design, product, or service. Specification—can be any one (or more) of the following: ◦ A written document ◦ A set of models ◦ A formal mathematical ◦ A collection of user scenarios (use-cases) ◦ A prototype
  • 10. Validation In requirement engineering, validation is the process of confirming that the documented requirements match the needs of the stakeholders. It's a phase in the software development life cycle that ensures the requirements are suitable for the product. Validation—a review mechanism that looks for ◦ errors in content or interpretation ◦ areas where clarification may be required ◦ missing information ◦ inconsistencies (a major problem when large products or systems are engineered) ◦ conflicting or unrealistic (unachievable) requirements. ◦ Requirements management conflicting or unrealistic (unachievable) requirements. ◦ The primary goal of systems engineering (SE) is to develop a solution that meets the needs and requirements of stakeholders. Validation is the process by which engineers ensure that the system will meet these needs and requirements. Requirements management
  • 11. Requirements management Requirements management is the process of gathering, analyzing, verifying, and validating the needs and requirements for the given product or system being developed.. Requirements management process Collect initial requirements from stakeholders. Analyze requirements. Define and record requirements. Prioritize requirements. Agree on and approve requirements. Trace requirements to work items. Query stakeholders after implementation on needed changes to requirements.
  • 12. Building the Analysis Model Elements of the analysis model ◦ Scenario-based elements ◦ Functional—processing narratives for software functions ◦ Use-case—descriptions of the interaction between an “actor” and the system ◦ Class-based elements ◦ Implied by scenarios ◦ Behavioral elements ◦ State diagram ◦ Flow-oriented elements ◦ Data flow diagram
  • 13. Scenario-based elements Scenarios are brief narratives of expected or anticipated use of a system from both development and end-user viewpoints. Scenario modeling typically considers three primary types of scenarios: worst-case, best-case and average scenarios. The worst-case scenario explores the outcomes under the most adverse conditions, helping businesses prepare for the toughest challenges. A scenario analysis generally considers at least three types of scenarios: Base-case scenario: A baseline scenario based on current, commonly accepted assumptions. Worst-case scenario: The most negative set of assumptions. Best-case scenario: The ideal projected scenario to achieve goals and objectives.
  • 14. Class – based elements Class-based elements: Each usage scenario implies a set of “objects” that are manipulated as an actor interacts with the system. These objects are categorized into classes- a collection of things that have similar attributes and common behaviors. Class-based elements : A collection of things that have similar attributes and common behaviors i.e., objects are categorized into classes.. The elements of a class-based model include classes and objects, attributes, operations, class responsibility- collaborator (CRC) models, collaboration diagrams, and packages
  • 16. Behavioral elements Behavioral elements depict how external events change the state of the system Behavior elements are the strategic elements course of action and capability, and behavioral elements, which can be subdivided into internal behavior elements, external behavior elements (also called services), and events. or the classes that reside within it. Two types of behavioral models There are two types of behavioral models that are used to describe the system behavior, one is data processing model and another is state machine models. Data processing models are also known as DFD (Data Flow Diagram) which is used to show how data is processed as it moves through the system.
  • 17. Flow-oriented elements Flow-oriented elements: Information is transformed as it flows through a computer-based system. The system accepts input in a variety of forms; applies functions to transform it; and produces output in a variety of forms. Flow-oriented modeling represents how data objects are transformed as they move through a system. A data flow diagram (DFD) is the diagrammatic form used to depict this approach. DFDs show the flow of data through processes and external entities of a system using symbols like circles and arrows. Data Flow Diagram Symbols External Entity. External entities — which are also known as terminators, sources, sinks, or actors — are outside systems that send or receive data to and from the diagrammed system. ... Process. ... Data Store. ... Data Flow.
  • 20. Use-Cases Use cases in software engineering are a user-centric way to represent how a user interacts with a product or system. They can be written as documents or created visually using a use case model. Use cases help with a variety of tasks, including: A use case defines a goal-oriented set of interactions between external actors and the system under consideration. A primary actor triggers the system behavior in order to achieve a certain goal. A secondary actor interacts with the system but does not trigger the use case A collection of user scenarios that describe the thread of usage of a system Each scenario is described from the point-of-view of an “actor”— a person or device that interacts with the software in some way
  • 21. Use Cases Each scenario answers the following questions: ◦ Who is the primary actor, the secondary actor (s)? ◦ What are the actor’s goals? ◦ What preconditions should exist before the story begins? ◦ What main tasks or functions are performed by the actor? ◦ What extensions might be considered as the story is described? ◦ What variations in the actor’s interaction are possible? ◦ What system information will the actor acquire, produce, or change? ◦ Will the actor have to inform the system about changes in the external environment? ◦ What information does the actor desire from the system? ◦ Does the actor wish to be informed about unexpected changes?