SlideShare a Scribd company logo
1 of 23
IMPROVING OUR
APPROACH TOWARDS
CAPTURING VALUE IN
REQUIREMENTS
SPECIFICATION
Presentation prepared by
Osama Mabrouk Khaled 2016
BY TOM GLIB & LINDSEY BRODIE
HTTP://WWW.REQUIREMENTSNETWORK.COM
Outline
1
• Introduction
2
• Value & Requirement
3
• Key Principles for Successful Requirements
4
• Questions
Introduction
Miss Communication
Value & Requirement
 Value: the whole point of a project is
achieving ‘realized value (also known
as ‘benefit’).
 Requirement: It is a stakeholder-
valued end state
Value & Requirements
Requirement
Function
Requirements
Function
Target
Function
Constraint
Performance
Requirements
Performance
Target
Performance
Constraint
Resource
Requirement
Resource
Target
Resource
Constraint
Design
Constraints
#1: Understand the top level critical
objectives
 Vision: Defines the
desired or intended
future state of an
organization or
enterprise in terms
of its fundamental
objective and/or
strategic direction.
#1: Understand the top level critical
objectives
 Goals: Goals are
high-level statements
that provide the
overall context for
what the project is
trying to accomplish.
Goal statements are
designed to be vague.
#1: Understand the top level critical
objectives
 Objectives: Objectives
are concrete statements
describing what the
project is trying to
achieve. A well-worded
objective will be Specific,
Measurable,
Attainable/Achievable,
Realistic and Time-
bound (SMART).
Example of Initial Weak Top-Level Critical
Objectives
 Central to the corporation’s business strategy is
to be the world’s premier integrated <domain>
service provider
 Will provide a much more efficient user
experience
 Dramatically scale back the time frequently
needed after the last data is acquired to time
align, depth correct, splice, merge, recomputed
and/or do whatever else is needed to generate
the desired products
 Make the system much easier to understand and
use than has been the case with the previous
#1: Understand the top level critical
objectives
Continue …
#2: Think stakeholders: not just users and
customers
 Stakeholders
 A user
 A business owner
 IT development
 IT maintenance
 Senior Management
 Operational Management
 Regulators
 Government
 Why?
 They are expert in their domain
area
 Will add real value
#3: Focus on the required system quality,
not just its functionality
 System qualities include
availability, usability,
portability, and any other
quality that a stakeholder
is interested in, like
intuitiveness or
robustness.
 Sometimes the system
qualities are mis-termed
“non-functional
requirements (NFRs)”
#4: Quantify quality requirements as a basis
for software engineering
 Quantification is
useful to clearly
understand
requirements, and
lay the basis for
measuring and
tracking our
progress in
improvement
towards meeting
them
#4: Quantify quality requirements as a basis
for software engineering (continue …)
Robustness:
Type: Complex Product Quality Requirement.
Includes: {Software Downtime, Restore Speed, Testability, Fault
Prevention Capability,
Fault Isolation Capability, Fault Analysis Capability, Hardware Debugging
Capability}.
Testability:
Type: Software Quality Requirement.
Version: Oct 20, 2006.
Status: Draft.
Stakeholder: {Operator, Tester}.
Ambition: Rapid duration automatic testing of <critical complex tests> with extreme operator
setup and initiation.
Scale: The duration of a defined [Volume] of testing or a defined [Type of Testing] by a defined
[Skill Level] of system operator under defined [Operating Conditions].
Goal [All Customer Use, Volume = 1,000,000 data items, Type of Testing = WireXXXX vs. DXX,
Skill Level = First Time Novice, Operating Conditions = Field]: < 10 minutes.
Design: Tool simulators, reverse cracking tool, generation of simulated telemetry frames
entirely in software, application specific sophistication for drilling – recorded mode simulation by
playing back the dump file, application test harness console <- 6.2.1 HFS.
[All Customer Use, Volume = 1,000,000 data items, Type of Testing =
WireXXXX vs. DXX, Skill Level = First Time Novice, Operating Conditions
= Field]: < 10 minutes.
#5: Don’t mix ends and means
 We specify a solution,
design and/or architecture,
instead of what we really
value – our real
requirements. The reason
may be because solutions
are concrete, while qualities
are more abstract.
 Ask multiple whys to
rationalize the solution (5
times).
 Separate requirements,
including mandatory means,
from optional means.
#5: Don’t mix ends and means (Example)
 Why do you require a ‘password’ ? For Security!
 What kind of security do you want? Against stolen
information.
 What level of strength of security against stolen
information are you willing to pay for? At least a 99%
chance that hackers cannot break in within 1 hour of trying!
Whatever that level costs up to €1 million.
 So that is your real requirement? Yep.
 Can we make that the official requirement, and leave the
security design to both our security experts, and leave it
to proof by measurement to decide what is really the
right design? Of course!
 The aim being that whatever technology we choose, it
gets you the 99%? Sure, thanks for helping me articulate
that!
#6: Capture explicit information about value
 Document where, who,
what and when the
quality level applies.
 Do not deliver a
requirement similar to “
The product will be
user-friendly, using
Windows”
 The Product Owner or
the Marketing
Management is
responsible for
specifying the
#7: Rich Requirements Specification
 Poor attention to
requirements
background.
 Background
Specification includes:
benchmarks, Owner,
Version, stakeholders,
ambition, impacts, and
supports.
 Rationale for
Background (Helps in):
#8: Specification Quality Control (SQC)
 Initial Quality Control of
requirements specification,
where there has been no
previous use of specification
quality control (SQC) (also
known as Inspection).
 Using three simple quality-
checking rules
 Unambiguous to readers
 Testable
 No optional designs presents.
#9:Consider the total lifecycle, systems-
thinking – not just focus on software
 If we do not consider the
total lifecycle of the
system, we risk failing to
think about all the things
that are necessary
prerequisites to actually
delivering full value to
real stakeholders on
time.
 The nature of the system
drivers the suitable
engineering (web app vs.
real time app).
#10: Use feedback and update
requirements as necessary
 Ideally requirements must
be developed based on
ongoing feedback from
stakeholders, as to their
real value. System
development methods, such
as the agile methods,
enable this to occur.
Stakeholders can give
feedback about their
perception of value, based
on the realities of actually
using the system.
Key Principles for successful Requirements
1. Understand the top level critical objectives
2. Think stakeholders: not just users and customers!
3. Focus on the required system quality, not just its functionality
4. Quantify quality requirements as a basis for software
engineering
5. Don’t mix ends and means
6. Capture explicit information about value
7. Ensure there is ‘rich specification’: requirement specifications
need far more information than the requirement itself!
8. Carry out specification quality control (SQC)
9. Consider the total lifecycle and apply systems-thinking - not just
a focus on software
10. Recognize that requirements change: use feedback and update
Osama Mabrouk Khaled, PhD
okhaled@aucegypt.edu

More Related Content

What's hot

Requirement Management 2
Requirement Management 2Requirement Management 2
Requirement Management 2pikuoec
 
QA interview questions and answers
QA interview questions and answersQA interview questions and answers
QA interview questions and answersMehul Chauhan
 
Adressing nonfunctional requirements with agile practices
Adressing nonfunctional requirements with agile practicesAdressing nonfunctional requirements with agile practices
Adressing nonfunctional requirements with agile practicesMario Cardinal
 
Ch4-Software Engineering 9
Ch4-Software Engineering 9Ch4-Software Engineering 9
Ch4-Software Engineering 9Ian Sommerville
 
Manual testing good notes
Manual testing good notesManual testing good notes
Manual testing good notesdkns0906
 
Complete testing@uma
Complete testing@umaComplete testing@uma
Complete testing@umaUma Sapireddy
 
Afrekenen met functiepunten
Afrekenen met functiepuntenAfrekenen met functiepunten
Afrekenen met functiepuntenNesma
 
Software testing Training Syllabus Course
Software testing Training Syllabus CourseSoftware testing Training Syllabus Course
Software testing Training Syllabus CourseTOPS Technologies
 
DevLabs Alliance Top 20 Software Testing Interview Questions for SDET - by De...
DevLabs Alliance Top 20 Software Testing Interview Questions for SDET - by De...DevLabs Alliance Top 20 Software Testing Interview Questions for SDET - by De...
DevLabs Alliance Top 20 Software Testing Interview Questions for SDET - by De...DevLabs Alliance
 
Nitesh...........testing resume (1)
Nitesh...........testing resume (1)Nitesh...........testing resume (1)
Nitesh...........testing resume (1)9036858358
 
Software engineering fundamentals
Software engineering fundamentalsSoftware engineering fundamentals
Software engineering fundamentalsJigyasaAgrawal7
 
White box testing
White box testingWhite box testing
White box testingAbdul Basit
 

What's hot (19)

Requirement Management 2
Requirement Management 2Requirement Management 2
Requirement Management 2
 
Unit ii update
Unit ii updateUnit ii update
Unit ii update
 
QA interview questions and answers
QA interview questions and answersQA interview questions and answers
QA interview questions and answers
 
software quality
software qualitysoftware quality
software quality
 
Adressing nonfunctional requirements with agile practices
Adressing nonfunctional requirements with agile practicesAdressing nonfunctional requirements with agile practices
Adressing nonfunctional requirements with agile practices
 
Ch4-Software Engineering 9
Ch4-Software Engineering 9Ch4-Software Engineering 9
Ch4-Software Engineering 9
 
Unit iv
Unit ivUnit iv
Unit iv
 
Software scope
Software scopeSoftware scope
Software scope
 
Manual testing good notes
Manual testing good notesManual testing good notes
Manual testing good notes
 
Complete testing@uma
Complete testing@umaComplete testing@uma
Complete testing@uma
 
Chapter 14
Chapter 14Chapter 14
Chapter 14
 
sunaina.rohatgi Resume
sunaina.rohatgi Resumesunaina.rohatgi Resume
sunaina.rohatgi Resume
 
Afrekenen met functiepunten
Afrekenen met functiepuntenAfrekenen met functiepunten
Afrekenen met functiepunten
 
Chapter 16
Chapter 16Chapter 16
Chapter 16
 
Software testing Training Syllabus Course
Software testing Training Syllabus CourseSoftware testing Training Syllabus Course
Software testing Training Syllabus Course
 
DevLabs Alliance Top 20 Software Testing Interview Questions for SDET - by De...
DevLabs Alliance Top 20 Software Testing Interview Questions for SDET - by De...DevLabs Alliance Top 20 Software Testing Interview Questions for SDET - by De...
DevLabs Alliance Top 20 Software Testing Interview Questions for SDET - by De...
 
Nitesh...........testing resume (1)
Nitesh...........testing resume (1)Nitesh...........testing resume (1)
Nitesh...........testing resume (1)
 
Software engineering fundamentals
Software engineering fundamentalsSoftware engineering fundamentals
Software engineering fundamentals
 
White box testing
White box testingWhite box testing
White box testing
 

Similar to Improving our Approach Towards Capturing Value in Requirements

STLC & SDLC-ppt-1.pptx
STLC & SDLC-ppt-1.pptxSTLC & SDLC-ppt-1.pptx
STLC & SDLC-ppt-1.pptxssusere4c6aa
 
Analysis concepts and principles
Analysis concepts and principlesAnalysis concepts and principles
Analysis concepts and principlessaurabhshertukde
 
Independent verification & validation presented by Maneat v02
Independent verification & validation presented by Maneat v02Independent verification & validation presented by Maneat v02
Independent verification & validation presented by Maneat v02Dr. Pierpaolo Mangeruga
 
Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software QualityAjeng Savitri
 
Software quality
Software qualitySoftware quality
Software qualityjagadeesan
 
Software Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summarySoftware Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summaryAhmed Kamel Taha
 
An Insider's Guide to Security Review (October 13, 2014)
An Insider's Guide to Security Review (October 13, 2014)An Insider's Guide to Security Review (October 13, 2014)
An Insider's Guide to Security Review (October 13, 2014)Salesforce Partners
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQASymphony
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringMajane Padua
 
Software Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptxSoftware Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptxNikilesh8
 
software testing and quality assurance .pdf
software testing and quality assurance .pdfsoftware testing and quality assurance .pdf
software testing and quality assurance .pdfMUSAIDRIS15
 
Use Cases and Use in Agile world
Use Cases and Use in Agile worldUse Cases and Use in Agile world
Use Cases and Use in Agile worldRavikanth-BA
 

Similar to Improving our Approach Towards Capturing Value in Requirements (20)

LECTURE 1 SQA.ppt
LECTURE 1 SQA.pptLECTURE 1 SQA.ppt
LECTURE 1 SQA.ppt
 
STLC & SDLC-ppt-1.pptx
STLC & SDLC-ppt-1.pptxSTLC & SDLC-ppt-1.pptx
STLC & SDLC-ppt-1.pptx
 
Quality Assurance and Testing services
Quality Assurance and Testing servicesQuality Assurance and Testing services
Quality Assurance and Testing services
 
MOM on BA
MOM on BAMOM on BA
MOM on BA
 
Analysis concepts and principles
Analysis concepts and principlesAnalysis concepts and principles
Analysis concepts and principles
 
Independent verification & validation presented by Maneat v02
Independent verification & validation presented by Maneat v02Independent verification & validation presented by Maneat v02
Independent verification & validation presented by Maneat v02
 
Week_02.pptx
Week_02.pptxWeek_02.pptx
Week_02.pptx
 
Process Models IN software Engineering
Process Models IN software EngineeringProcess Models IN software Engineering
Process Models IN software Engineering
 
Rakesh Resume
Rakesh ResumeRakesh Resume
Rakesh Resume
 
Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software Quality
 
Software quality
Software qualitySoftware quality
Software quality
 
Software Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summarySoftware Requirements (3rd Edition) summary
Software Requirements (3rd Edition) summary
 
An Insider's Guide to Security Review (October 13, 2014)
An Insider's Guide to Security Review (October 13, 2014)An Insider's Guide to Security Review (October 13, 2014)
An Insider's Guide to Security Review (October 13, 2014)
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the Enterprise
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Software Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptxSoftware Engineering Practices and Issues.pptx
Software Engineering Practices and Issues.pptx
 
software testing and quality assurance .pdf
software testing and quality assurance .pdfsoftware testing and quality assurance .pdf
software testing and quality assurance .pdf
 
Use Cases and Use in Agile world
Use Cases and Use in Agile worldUse Cases and Use in Agile world
Use Cases and Use in Agile world
 
CIS512_Topic1.pptx
CIS512_Topic1.pptxCIS512_Topic1.pptx
CIS512_Topic1.pptx
 
Crutial steps in requirement gathering
Crutial steps in requirement gatheringCrutial steps in requirement gathering
Crutial steps in requirement gathering
 

More from Osama M. Khaled

A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...
A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...
A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...Osama M. Khaled
 
A Statistical Approach to Resolve Conflicting Requirements in Pervasive Compu...
A Statistical Approach to Resolve Conflicting Requirements in Pervasive Compu...A Statistical Approach to Resolve Conflicting Requirements in Pervasive Compu...
A Statistical Approach to Resolve Conflicting Requirements in Pervasive Compu...Osama M. Khaled
 
Static Enabler: A Response Enhancer for Dynamic Web Applications
Static Enabler: A Response Enhancer for Dynamic Web ApplicationsStatic Enabler: A Response Enhancer for Dynamic Web Applications
Static Enabler: A Response Enhancer for Dynamic Web ApplicationsOsama M. Khaled
 
A Survey of Building Robust Business Models in Pervasive Computing
A Survey of Building Robust Business Models in Pervasive ComputingA Survey of Building Robust Business Models in Pervasive Computing
A Survey of Building Robust Business Models in Pervasive ComputingOsama M. Khaled
 
Pervasive Computing Reference Architecture from a Software Engineering Perspe...
Pervasive Computing Reference Architecture from a Software Engineering Perspe...Pervasive Computing Reference Architecture from a Software Engineering Perspe...
Pervasive Computing Reference Architecture from a Software Engineering Perspe...Osama M. Khaled
 
Internet of Things (IoT) from a business Perspective
Internet of Things (IoT) from a business PerspectiveInternet of Things (IoT) from a business Perspective
Internet of Things (IoT) from a business PerspectiveOsama M. Khaled
 

More from Osama M. Khaled (8)

A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...
A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...
A SIMULATION APPROACH TO PREDICATE THE RELIABILITY OF A PERVASIVE SOFTWARE SY...
 
A Statistical Approach to Resolve Conflicting Requirements in Pervasive Compu...
A Statistical Approach to Resolve Conflicting Requirements in Pervasive Compu...A Statistical Approach to Resolve Conflicting Requirements in Pervasive Compu...
A Statistical Approach to Resolve Conflicting Requirements in Pervasive Compu...
 
Digital Cash Overview
Digital Cash OverviewDigital Cash Overview
Digital Cash Overview
 
Static Enabler: A Response Enhancer for Dynamic Web Applications
Static Enabler: A Response Enhancer for Dynamic Web ApplicationsStatic Enabler: A Response Enhancer for Dynamic Web Applications
Static Enabler: A Response Enhancer for Dynamic Web Applications
 
A Survey of Building Robust Business Models in Pervasive Computing
A Survey of Building Robust Business Models in Pervasive ComputingA Survey of Building Robust Business Models in Pervasive Computing
A Survey of Building Robust Business Models in Pervasive Computing
 
SQL Statement Template
SQL Statement TemplateSQL Statement Template
SQL Statement Template
 
Pervasive Computing Reference Architecture from a Software Engineering Perspe...
Pervasive Computing Reference Architecture from a Software Engineering Perspe...Pervasive Computing Reference Architecture from a Software Engineering Perspe...
Pervasive Computing Reference Architecture from a Software Engineering Perspe...
 
Internet of Things (IoT) from a business Perspective
Internet of Things (IoT) from a business PerspectiveInternet of Things (IoT) from a business Perspective
Internet of Things (IoT) from a business Perspective
 

Recently uploaded

What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxnada99848
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 

Recently uploaded (20)

What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
software engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptxsoftware engineering Chapter 5 System modeling.pptx
software engineering Chapter 5 System modeling.pptx
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 

Improving our Approach Towards Capturing Value in Requirements

  • 1. IMPROVING OUR APPROACH TOWARDS CAPTURING VALUE IN REQUIREMENTS SPECIFICATION Presentation prepared by Osama Mabrouk Khaled 2016 BY TOM GLIB & LINDSEY BRODIE HTTP://WWW.REQUIREMENTSNETWORK.COM
  • 2. Outline 1 • Introduction 2 • Value & Requirement 3 • Key Principles for Successful Requirements 4 • Questions
  • 5. Value & Requirement  Value: the whole point of a project is achieving ‘realized value (also known as ‘benefit’).  Requirement: It is a stakeholder- valued end state
  • 7. #1: Understand the top level critical objectives  Vision: Defines the desired or intended future state of an organization or enterprise in terms of its fundamental objective and/or strategic direction.
  • 8. #1: Understand the top level critical objectives  Goals: Goals are high-level statements that provide the overall context for what the project is trying to accomplish. Goal statements are designed to be vague.
  • 9. #1: Understand the top level critical objectives  Objectives: Objectives are concrete statements describing what the project is trying to achieve. A well-worded objective will be Specific, Measurable, Attainable/Achievable, Realistic and Time- bound (SMART).
  • 10. Example of Initial Weak Top-Level Critical Objectives  Central to the corporation’s business strategy is to be the world’s premier integrated <domain> service provider  Will provide a much more efficient user experience  Dramatically scale back the time frequently needed after the last data is acquired to time align, depth correct, splice, merge, recomputed and/or do whatever else is needed to generate the desired products  Make the system much easier to understand and use than has been the case with the previous #1: Understand the top level critical objectives Continue …
  • 11. #2: Think stakeholders: not just users and customers  Stakeholders  A user  A business owner  IT development  IT maintenance  Senior Management  Operational Management  Regulators  Government  Why?  They are expert in their domain area  Will add real value
  • 12. #3: Focus on the required system quality, not just its functionality  System qualities include availability, usability, portability, and any other quality that a stakeholder is interested in, like intuitiveness or robustness.  Sometimes the system qualities are mis-termed “non-functional requirements (NFRs)”
  • 13. #4: Quantify quality requirements as a basis for software engineering  Quantification is useful to clearly understand requirements, and lay the basis for measuring and tracking our progress in improvement towards meeting them
  • 14. #4: Quantify quality requirements as a basis for software engineering (continue …) Robustness: Type: Complex Product Quality Requirement. Includes: {Software Downtime, Restore Speed, Testability, Fault Prevention Capability, Fault Isolation Capability, Fault Analysis Capability, Hardware Debugging Capability}. Testability: Type: Software Quality Requirement. Version: Oct 20, 2006. Status: Draft. Stakeholder: {Operator, Tester}. Ambition: Rapid duration automatic testing of <critical complex tests> with extreme operator setup and initiation. Scale: The duration of a defined [Volume] of testing or a defined [Type of Testing] by a defined [Skill Level] of system operator under defined [Operating Conditions]. Goal [All Customer Use, Volume = 1,000,000 data items, Type of Testing = WireXXXX vs. DXX, Skill Level = First Time Novice, Operating Conditions = Field]: < 10 minutes. Design: Tool simulators, reverse cracking tool, generation of simulated telemetry frames entirely in software, application specific sophistication for drilling – recorded mode simulation by playing back the dump file, application test harness console <- 6.2.1 HFS. [All Customer Use, Volume = 1,000,000 data items, Type of Testing = WireXXXX vs. DXX, Skill Level = First Time Novice, Operating Conditions = Field]: < 10 minutes.
  • 15. #5: Don’t mix ends and means  We specify a solution, design and/or architecture, instead of what we really value – our real requirements. The reason may be because solutions are concrete, while qualities are more abstract.  Ask multiple whys to rationalize the solution (5 times).  Separate requirements, including mandatory means, from optional means.
  • 16. #5: Don’t mix ends and means (Example)  Why do you require a ‘password’ ? For Security!  What kind of security do you want? Against stolen information.  What level of strength of security against stolen information are you willing to pay for? At least a 99% chance that hackers cannot break in within 1 hour of trying! Whatever that level costs up to €1 million.  So that is your real requirement? Yep.  Can we make that the official requirement, and leave the security design to both our security experts, and leave it to proof by measurement to decide what is really the right design? Of course!  The aim being that whatever technology we choose, it gets you the 99%? Sure, thanks for helping me articulate that!
  • 17. #6: Capture explicit information about value  Document where, who, what and when the quality level applies.  Do not deliver a requirement similar to “ The product will be user-friendly, using Windows”  The Product Owner or the Marketing Management is responsible for specifying the
  • 18. #7: Rich Requirements Specification  Poor attention to requirements background.  Background Specification includes: benchmarks, Owner, Version, stakeholders, ambition, impacts, and supports.  Rationale for Background (Helps in):
  • 19. #8: Specification Quality Control (SQC)  Initial Quality Control of requirements specification, where there has been no previous use of specification quality control (SQC) (also known as Inspection).  Using three simple quality- checking rules  Unambiguous to readers  Testable  No optional designs presents.
  • 20. #9:Consider the total lifecycle, systems- thinking – not just focus on software  If we do not consider the total lifecycle of the system, we risk failing to think about all the things that are necessary prerequisites to actually delivering full value to real stakeholders on time.  The nature of the system drivers the suitable engineering (web app vs. real time app).
  • 21. #10: Use feedback and update requirements as necessary  Ideally requirements must be developed based on ongoing feedback from stakeholders, as to their real value. System development methods, such as the agile methods, enable this to occur. Stakeholders can give feedback about their perception of value, based on the realities of actually using the system.
  • 22. Key Principles for successful Requirements 1. Understand the top level critical objectives 2. Think stakeholders: not just users and customers! 3. Focus on the required system quality, not just its functionality 4. Quantify quality requirements as a basis for software engineering 5. Don’t mix ends and means 6. Capture explicit information about value 7. Ensure there is ‘rich specification’: requirement specifications need far more information than the requirement itself! 8. Carry out specification quality control (SQC) 9. Consider the total lifecycle and apply systems-thinking - not just a focus on software 10. Recognize that requirements change: use feedback and update
  • 23. Osama Mabrouk Khaled, PhD okhaled@aucegypt.edu

Editor's Notes

  1. Many IT projects fail because of bad or poor requirements