SlideShare a Scribd company logo
1 of 11
Requirements Engineering: A Continuous Process ShlomoArgamon, PhD Illinois Institute of Technology Chicago, IL and Center for Advanced Defense Studies Washington, DC 20002 Presented at the Military Operations Research Society 20 September, 2011
Requirements Engineering (RE) Requirements Engineering is a subfield of: Software Engineering  Systems Engineering Goal: Solve key step in problem solving: Identify the Problem! With complex projects, Requirements Engineering must be dynamic and continuous.
Cost of Delay in Fixing Requirements Errors Data: Boehm & Papaccio (1988) IEEE Trans. Software Eng. 20-fold increase during development Nominal unit cost 200-fold increase after delivery
Components of Requirements Engineering Specification Elicitation Analysis Processes are: ,[object Object]
Dynamic
 IterativeManagement Verification Elicitation: Discover requirements – user interviews, workshops, storyboarding, use cases, prototyping, brainstorming, … Also explore trade space to ensure customer satisfaction. Specification: Define readily understood and complete requirements to ensure design integration. May involve integrating Key Performance Parameters (KPPs). Analysis: Ensure specification is unambiguous, complete, verifiable, consistent, modifiable, traceable, usable , necessary and prioritized. Management: Establish traceability to track changes status, effort and funds expended, and identify the impact of changes with links to design and architecture plans. Verification: Establish methods to ensure that requirements have been met in implementation: observation, testing, prototyping, etc.
Tacit Requirements 1985: Matsushita Electric developing a new bread machine, but the crust was overdone, while the inside was raw No progress by usual engineering analyses, including interviewing bakers and x-ray comparisons Finally, one engineer apprenticed with a master baker, discovering need to twist the dough Result: New technical requirements which resulted in a working product with record sales Nonaka 2007; Harvard Business Review
Context is King User World Participation Causal effects Interface System World Representation Process Subject World Development World after (Jarke & Pohl 1993)
Recursion in Development Traditional Waterfall Engineering (Plan-Driven) Modified Modular, with coordination points Iterative development models (spiral, agile, etc.) are more context-driven…  but still maturing for large-scale projects Requirements Design Implementation Verification Maintenance
Spiral Development (Boehm 1988)
Spiral Strengths & Weaknesses Strengths: Highest risks can be dealt with first, lowering overall costs Each iteration can be tailored for project needs as they evolve Tacit requirements uncovered at each iteration Weaknesses: More complex project organization – issues with scale Requires attentive and expert management General Recommendation: To reduce project risk, when possible: run risk-reduction iterations followed by  waterfall or other non-risk-based lifecycle, once things are clear Depends on CONTEXT!!

More Related Content

What's hot

System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)
fentrekin
 
JD Senior Production Engineer
JD Senior Production EngineerJD Senior Production Engineer
JD Senior Production Engineer
Tobiashuynh
 

What's hot (20)

Checkpoints of the Process
Checkpoints of the ProcessCheckpoints of the Process
Checkpoints of the Process
 
1 sdlc model
1 sdlc model1 sdlc model
1 sdlc model
 
Workflows of the Process
Workflows of the ProcessWorkflows of the Process
Workflows of the Process
 
Architecture Review
Architecture ReviewArchitecture Review
Architecture Review
 
Unit4 Proof of Correctness, Statistical Tools, Clean Room Process and Quality...
Unit4 Proof of Correctness, Statistical Tools, Clean Room Process and Quality...Unit4 Proof of Correctness, Statistical Tools, Clean Room Process and Quality...
Unit4 Proof of Correctness, Statistical Tools, Clean Room Process and Quality...
 
Agile- To Infinity and Beyond
Agile- To Infinity and BeyondAgile- To Infinity and Beyond
Agile- To Infinity and Beyond
 
Software engineering layers
Software engineering layersSoftware engineering layers
Software engineering layers
 
Phased life cycle model
Phased life cycle modelPhased life cycle model
Phased life cycle model
 
System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)System Development Life Cycle (SDLC)
System Development Life Cycle (SDLC)
 
Software Process
Software ProcessSoftware Process
Software Process
 
Software development process & methodologies
Software development process & methodologiesSoftware development process & methodologies
Software development process & methodologies
 
Importance of Product Engineering
Importance of Product EngineeringImportance of Product Engineering
Importance of Product Engineering
 
DFIM - Design for Innovation in Manufacturing - crib sheet
DFIM - Design for Innovation in Manufacturing - crib sheetDFIM - Design for Innovation in Manufacturing - crib sheet
DFIM - Design for Innovation in Manufacturing - crib sheet
 
Electrical Engineer
Electrical EngineerElectrical Engineer
Electrical Engineer
 
JD Senior Production Engineer
JD Senior Production EngineerJD Senior Production Engineer
JD Senior Production Engineer
 
Defining the Problem - Goals and requirements
Defining the Problem - Goals and requirementsDefining the Problem - Goals and requirements
Defining the Problem - Goals and requirements
 
Software Engineering Introduction
Software Engineering IntroductionSoftware Engineering Introduction
Software Engineering Introduction
 
Microsoft Project
Microsoft ProjectMicrosoft Project
Microsoft Project
 
A generic view of software engineering
A generic view of software engineeringA generic view of software engineering
A generic view of software engineering
 
Saam
SaamSaam
Saam
 

Similar to Requirements Engineering: Contextual and Dynamic

Chapter1 conventional softwaremanagement (1)
Chapter1 conventional softwaremanagement (1)Chapter1 conventional softwaremanagement (1)
Chapter1 conventional softwaremanagement (1)
Jkumararaja
 
Using Doors® And Taug2® To Support A Simplified
Using Doors® And Taug2® To Support A SimplifiedUsing Doors® And Taug2® To Support A Simplified
Using Doors® And Taug2® To Support A Simplified
cbb010
 
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
WrushabhShirsat3
 
software engineering (spiral process model)
software engineering (spiral process model)software engineering (spiral process model)
software engineering (spiral process model)
Khushbu SaLeem
 

Similar to Requirements Engineering: Contextual and Dynamic (20)

Sdlc cource in_mumbai
Sdlc cource in_mumbaiSdlc cource in_mumbai
Sdlc cource in_mumbai
 
Chapter 8.ppt
Chapter 8.pptChapter 8.ppt
Chapter 8.ppt
 
Chapter1 conventional softwaremanagement (1)
Chapter1 conventional softwaremanagement (1)Chapter1 conventional softwaremanagement (1)
Chapter1 conventional softwaremanagement (1)
 
Using Doors® And Taug2® To Support A Simplified
Using Doors® And Taug2® To Support A SimplifiedUsing Doors® And Taug2® To Support A Simplified
Using Doors® And Taug2® To Support A Simplified
 
Phase gate review development model august 8 2017 - dave litwiller
Phase gate review development model   august 8 2017 - dave litwillerPhase gate review development model   august 8 2017 - dave litwiller
Phase gate review development model august 8 2017 - dave litwiller
 
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
chapter1-convehisudhiusdiudiudsiusdiuddsdshdibsdiubdsjxkjxjntionalsoftwareman...
 
2-models.pptx
2-models.pptx2-models.pptx
2-models.pptx
 
Software Development Life Cycle Model
Software Development Life Cycle ModelSoftware Development Life Cycle Model
Software Development Life Cycle Model
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 
Innovation framework
Innovation frameworkInnovation framework
Innovation framework
 
Resume (Oct 2012)
Resume (Oct 2012)Resume (Oct 2012)
Resume (Oct 2012)
 
Sdlc
SdlcSdlc
Sdlc
 
System Development
System  DevelopmentSystem  Development
System Development
 
Software Engineering Methodology
Software Engineering MethodologySoftware Engineering Methodology
Software Engineering Methodology
 
software engineering (spiral process model)
software engineering (spiral process model)software engineering (spiral process model)
software engineering (spiral process model)
 
Software Development Life Cycle Part II
Software Development Life Cycle Part IISoftware Development Life Cycle Part II
Software Development Life Cycle Part II
 
Software Development Lifecycle: What works for you?
Software Development Lifecycle: What works for you?Software Development Lifecycle: What works for you?
Software Development Lifecycle: What works for you?
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.
 
Software engineering fundamental
Software engineering fundamentalSoftware engineering fundamental
Software engineering fundamental
 
Pm soln9416141129710
Pm soln9416141129710Pm soln9416141129710
Pm soln9416141129710
 

Recently uploaded

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 

Requirements Engineering: Contextual and Dynamic

  • 1. Requirements Engineering: A Continuous Process ShlomoArgamon, PhD Illinois Institute of Technology Chicago, IL and Center for Advanced Defense Studies Washington, DC 20002 Presented at the Military Operations Research Society 20 September, 2011
  • 2. Requirements Engineering (RE) Requirements Engineering is a subfield of: Software Engineering Systems Engineering Goal: Solve key step in problem solving: Identify the Problem! With complex projects, Requirements Engineering must be dynamic and continuous.
  • 3. Cost of Delay in Fixing Requirements Errors Data: Boehm & Papaccio (1988) IEEE Trans. Software Eng. 20-fold increase during development Nominal unit cost 200-fold increase after delivery
  • 4.
  • 6. IterativeManagement Verification Elicitation: Discover requirements – user interviews, workshops, storyboarding, use cases, prototyping, brainstorming, … Also explore trade space to ensure customer satisfaction. Specification: Define readily understood and complete requirements to ensure design integration. May involve integrating Key Performance Parameters (KPPs). Analysis: Ensure specification is unambiguous, complete, verifiable, consistent, modifiable, traceable, usable , necessary and prioritized. Management: Establish traceability to track changes status, effort and funds expended, and identify the impact of changes with links to design and architecture plans. Verification: Establish methods to ensure that requirements have been met in implementation: observation, testing, prototyping, etc.
  • 7. Tacit Requirements 1985: Matsushita Electric developing a new bread machine, but the crust was overdone, while the inside was raw No progress by usual engineering analyses, including interviewing bakers and x-ray comparisons Finally, one engineer apprenticed with a master baker, discovering need to twist the dough Result: New technical requirements which resulted in a working product with record sales Nonaka 2007; Harvard Business Review
  • 8. Context is King User World Participation Causal effects Interface System World Representation Process Subject World Development World after (Jarke & Pohl 1993)
  • 9. Recursion in Development Traditional Waterfall Engineering (Plan-Driven) Modified Modular, with coordination points Iterative development models (spiral, agile, etc.) are more context-driven… but still maturing for large-scale projects Requirements Design Implementation Verification Maintenance
  • 11. Spiral Strengths & Weaknesses Strengths: Highest risks can be dealt with first, lowering overall costs Each iteration can be tailored for project needs as they evolve Tacit requirements uncovered at each iteration Weaknesses: More complex project organization – issues with scale Requires attentive and expert management General Recommendation: To reduce project risk, when possible: run risk-reduction iterations followed by waterfall or other non-risk-based lifecycle, once things are clear Depends on CONTEXT!!
  • 12. Requirements Management Challenge Requirements Engineering challenges: Scope Understanding Volatility Agility is required to: Adapt to a moving target Enable engineering time to achieve objectives
  • 13. The Bottom Line(s) Requirements are never known up front Requirements engineering should be interleaved in an iterative development process End-users must be involved in the development process

Editor's Notes

  1. Getting this process right is vital. As you can see by this chart from the GA Tech CS department (2002) , poor requirements engineering resulted in a 200 fold increase in costs.
  2. This is one of the more recent models for context-driven requirements elicitation from the Center for Informatics Research (CRI) at the Sorbonne in Paris. There are many others. First, The subject world—our environment has an impact on our requirements. The market and target customer may change because of economics, for example. In the usage world, our usage cases and mis-use cases can gain fidelity or be discovered. In the system world, interfaces may change. In the Design world, we may change approach because of technology maturity. In each case, there is a trade space associated with the requirements choices. The objective is to determine, when the customer cannot explicitly identify all requirements, the nuances in the perceived utility, desirability or necessity of various specifications for the customer. Like military missions, because of the changeable context, we hope to accomplish the customers intent.
  3. The traditional approach is to waterfall activities in a linear approach from specified requirements. Because of the dynamic nature of context, this frequently approximates the customers objectives less and less, the longer it takes to accomplish.So, the modified approach is to create a series of smaller waterfalls by generating specified elicitation points. This also has its failings. The customer’s objectives are continually evolving. Understanding where these objectives come from becomes important when the customer is not present in the engineering process.More recently, software development has examined Agile approaches including Scrum, Extreme Programming, and the Dynamic Systems Development Method, among others. The difficulty with these approaches lies in managing very large projects where teams are distributed. Agile Development requires senior developers and thrives in an environment where requirements change often, there are fewer developers to coordinate, and the culture embraces chaos.
  4. In conclusion, poor requirements engineering is guaranteed to increase time delays and costs. Requirements traceability is not separable from the other requirements processes. There are a wide variety of Requirements approaches and associated tools. The overall objective of any approach should be to ensure continuous recursion and context awareness.