SlideShare a Scribd company logo
1 of 50
Requirement management
"My biggest learning has been that people do
not look for features, they look for benefits. In
future versions, i may even remove some
features to make the product less
complex, less expensive".
- Pallav Nadhani - Founder , FusionCharts in
'Times Of India' Jan 5th 2011
http://www.fusioncharts.com/
Overview
Importance of requirement
management
If we got 'perfect' requirements, do you think we
would have
●completed our projects faster,
●better quality and
●lesser cost ?
Benefits of Good Requirements
Excerpted from 'Managing Software Requirements: A Use Case Approach'
by Dean Leffingwell, Don Widrig
Evolution of requirements
documentation
●Verbal requirements
●BRS
●SRS
●FRS
●Use cases
●User stories
●Acceptance tests
Overlap between requirement analysis
and management
In an iterative model they both follow each other
in an endless cycle.
Changing requirements problem
How do we solve it ?
- Is there something intrinsic to software that
makes it so difficult to define upfront ?
- Why do we worry about changes anyway and
how can we get rid of that worry
Implicit requirement problem
How do we solve it ?
Can we have a checklist to ensure we fill in all
the gaps ?
How is this related to the earlier problem of
software churn ?
Implicit requirements
"Bring me a rock" "Yes, but, actually,
what I really wanted
was a small blue
rock."
'The Rock problem' excerpted from 'Managing Software Requirements: A Use
Case Approach' by Dean Leffingwell, Don Widrig
The delivery of a small blue
rock elicits the further request
for a spherical small blue rock.
Business objectives
Should we attach business value to each item
of the requirement ?
Can developers see the larger picture as well
as the trees in the woods ?
Project requirements linked to
Organizational goals
"Why did BBC Agile Project Fail? Tom´s Opinion; deliver value
to stakeholders !"
I notice that, as usual, there is no mention of
consciously trying to deliver real value
to Stakeholders early and at every iteration. This
is the fundamental sickness of Agile Today.
Plenty mention of code, none of value to
stakeholder. Plenty mention of learn only at the
end, none of learning what´s real at each
increment.
Different project life cycle models
How they influence requirements management
- Traditional top down approach
- Iterative, prototype driven, frequent feedback
approach
The cost implication of each model
- In an agile environment, the risk is transferred
to the vendor
- In a top down approach the risk is transferred to
the customer
Requirements Engineering is Iterative
"When projects must deal with conflicts in
stakeholder requirements and changes in
management constraints, an adaptive
process is far more likely to succeed than
traditional methodologies"
- Mary Poppendieck in her blog http://www.leanessays.com/2002/01/wicked-
problems.html
Iterative Requirement Management
"The key to successful agile is to have feedback
loops that are as short as possible. In a larger
organisation, the loop gets longer, but the way to
keep those loops as short as possible is by
ensuring that there is bottom-up involvement
also in product design, and perhaps also vision."
Wouter Lagerweij in leandevelopment@yahoogroups.com
Exit criteria
Does the requirements specify what
constitutes closure of project ?
How do we know we are 'done' ?
Validation
Excerpted from http://softwareandme.wordpress.com/2009/10/20/software-
development-life-cycle/sdlc_v_model/
Testable Requirements
Excerpted from IEEE Recommended Practice
for Software Requirements Specifications 1998
An SRS is verifiable if, and only if, every
requirement stated therein is verifiable.
A requirement is verifiable if, and only if, there
exists some finite cost-effective process with
which a person or machine can check that the
software product meets the requirement.
In general any ambiguous requirement is not
verifiable.
Transferred applications
How do we maintain applications which do
not have updated requirement
documentation
Tools to track, trace, and manage
Can we explain the rational behind the key
architectural decisions of a running application ?
Do we know the key objectives of a system ?
Can we track a Requirement spec to all its
acceptance tests, unit tests , changes ,
enhancements and bugs ? Do we need ?
Does each developer know the exit criteria for
his unit of work ?
Pictures
How can we use pictures to represent
requirements.
Screen shots
UML
If a picture is worth a thousand words, a video is
worth a thousand pictures. How can we use
multimedia technology to represent requirements
?
Cost, quality and time
How can we build in quality into the process to
ensure that the requirements are met in cost,
quality and time ?
SRS Management
Decompose a SRS into units of work
How do we break it into programmable features
?
How do we break it into acceptance tests ?
How do we break it into Unit tests ?
How do we then trace these back and forth from
and to the SRS ?How do we trace changes and
enhancements to the above ?
Value stream mapping
Excerpted from 'Lean Software Development - An Agile
Toolkit' by Mary and Tom Poppendieck
How to map Your Value Stream
●With a pencil and pad in hand, go to the place where a
customer request comes into your organization.
● Working with the people involved in each activity, you sketch
all the process steps necessary to fill the request, as well as
the average amount of time that a request spends in each step.
● At the bottom of the map, draw a timeline that shows how
much time the request spends in value-adding activities, and
how much time it spends in waiting states and non-value
adding activities
Excerpted from 'Lean Software Development - An Agile Toolkit'
by Mary and Tom Poppendieck
The Cost-Quality-Time paradox
How can we improve turn around time of each
requirement without compromising on quality ?
Should we limit the commitment to match
resources ?
Can we identify non value added time ?
Personas and user stories
●An SRS describes the entire target system, a
Use case describes a part of the target system
and a User Story describes a programmer
feature.
●SRS documents and Use cases are sometimes
abstract and generalized. How does one unravel
an SRS into a story ?
●You can use Personas or User stories or
Scenarios.
Requirements in Test Driven
Development environment
Exit criteria in form of Acceptance Tests
Automation of Acceptance tests (FIT for
Business applications and other tools)
Automation of Unit tests
Automation of build including Unit and
Acceptance tests
Embedded - even the hardware
evolves
Excerpted
from http://www.agilerules.com/articles/Taming_Embedded_Tiger
.pdf
Agile Test Techniques for Embedded
Software
●Strong unit testing is the foundation of agile software de
velopment but embedded systems present special proble
ms.Test of embedded software is bound up with test of
hardware,crossing professional and
organizational boundaries.
●Even with evolving hardware in the picture, agile methods
work well provided you use multiple test strategies.
This has powerful implications for improving the quality of
high reliability systems, which commonly have embedded
software at their heart
Excerpted
from http://www.agilerules.com/articles/Taming_Embedded_T
iger.pd
Test Strategy for embedded (TDD)
Excerpted
from http://www.agilerules.com/articles/Taming_Embedded_Tiger
Exercise 1 -Use Case and
User Stories
Convert an SRS in your domain
into Use cases and User Stories
Use case for an embedded system
Who is the primary actor ?
What is the goal ?
What are the main flows and alternative flows ?
What are the preconditions
What are the post-conditions ?
User stories for an embedded system
How do these fare in comparison to the Use
cases ?
Benefits of a SRS as compared
What are the benefits of a SRS as
compared to Use cases and User stories ?
Where would you fit in the Non functional
specs in Use cases / Stories ?
'Misuse' cases
Use cases which miss out on the key
computations or algorithms
Use cases which keep repeating the same steps
which are redundant after the first case
Use cases which do not describe the 'soft'
requirements of the user - performance
constraints, integration to other systems, user
friendliness
Exercise-2 on Issue Tracker
Analysis
Fill the worksheet
Using 'JIRA'
Track root cause and
avoidable / non-avoidable defects/issues.
What can we do to reduce these times and
occurrences ?
Project retrospectives
To improve processes to reduce these churn
rates
Share lessons learned with our peers
Statistics important to a Project
manager
Excerpted from 'Lean Software Development - An Agile Toolkit'
by Mary and Tom Poppendieck
Monthly burndown chart
Excerpted from http://en.wikipedia.org/wiki/Burn_down_chart
Traceability
Tools to achieve it
Requirement Tools
Excerpted from 'Software Requirements' by Karl E Weigers
Manual Tools - Tabular worksheets
●Use Excel to capture the Business
requirements
●separate from the Product requirements
●separate from functional requirements.
●Number all items for backward traceability.
●Track revisions using SharePoint or other
collaboration system
Manual tools - Test case User story
matrix
Number all User stories
Number all Acceptance tests
Use these numbers for cross referencing
across the system
Visual Displays of project status
Excerpted from 'Lean Software Development - An Agile Toolkit'
by Mary and Tom Poppendieck
Elicitation
One to one interviews
Vision document.
Study of current system, competitor systems,
benchmarks
Low cost prototypes and pilots to dove tail to 'real'
requirements
User workshops involving all stakeholders in one
session to nail down needs of all stakeholders.
References
'Lean Software Development - An Agile Toolkit' by Mary and
Tom Poppendieck
'Software Requirements' by Karl E Weigers
'Taming the Embedded Tiger – Agile Test Techniques for
Embedded Software' by Nancy Van Schooenderwoert, Ron
Morsicato Agile Rules, Lexington, MA
'Managing Software Requirements: A Use Case Approach'
by Dean Leffingwell, Don Widrig

More Related Content

What's hot

Business Analyst Requirements Management
Business Analyst Requirements Management Business Analyst Requirements Management
Business Analyst Requirements Management Mark Borowski
 
The Business Analyst And The Sdlc
The Business Analyst And The SdlcThe Business Analyst And The Sdlc
The Business Analyst And The SdlcCraig Brown
 
Good Practices For Developing User Requirements
Good Practices For Developing User RequirementsGood Practices For Developing User Requirements
Good Practices For Developing User Requirementsnkaur
 
Other requirements, requirement specification and map
Other requirements, requirement specification and mapOther requirements, requirement specification and map
Other requirements, requirement specification and mapcsk selva
 
Requirements Engineering in an Agile Environment
Requirements Engineering in an Agile EnvironmentRequirements Engineering in an Agile Environment
Requirements Engineering in an Agile Environmentsunil1993
 
Infographic Slide: What is Requirements Management?
Infographic Slide: What is Requirements Management?Infographic Slide: What is Requirements Management?
Infographic Slide: What is Requirements Management?OneDeskApp
 
Business requirements gathering and analysis
Business requirements gathering and analysisBusiness requirements gathering and analysis
Business requirements gathering and analysisMena M. Eissa
 
Project Requriement Management Vs Agile software development
Project Requriement Management Vs  Agile software developmentProject Requriement Management Vs  Agile software development
Project Requriement Management Vs Agile software developmentbizpresenter
 
Concepts Of business analyst Practices - Part 1
Concepts Of business analyst Practices - Part 1Concepts Of business analyst Practices - Part 1
Concepts Of business analyst Practices - Part 1Moutasm Tamimi
 
Requirements Engineering @ Agile
Requirements Engineering @ AgileRequirements Engineering @ Agile
Requirements Engineering @ AgileGirish Khemani
 
Business requirements template
Business requirements templateBusiness requirements template
Business requirements templateNageswaraRao k
 
Business analysts and sdlc
Business analysts and sdlcBusiness analysts and sdlc
Business analysts and sdlcAniket Sharma
 
What is our_mission_v0.2
What is our_mission_v0.2What is our_mission_v0.2
What is our_mission_v0.2Trevor Warren
 

What's hot (17)

Business Analyst Requirements Management
Business Analyst Requirements Management Business Analyst Requirements Management
Business Analyst Requirements Management
 
The Business Analyst And The Sdlc
The Business Analyst And The SdlcThe Business Analyst And The Sdlc
The Business Analyst And The Sdlc
 
Good Practices For Developing User Requirements
Good Practices For Developing User RequirementsGood Practices For Developing User Requirements
Good Practices For Developing User Requirements
 
Other requirements, requirement specification and map
Other requirements, requirement specification and mapOther requirements, requirement specification and map
Other requirements, requirement specification and map
 
Requirements Engineering in an Agile Environment
Requirements Engineering in an Agile EnvironmentRequirements Engineering in an Agile Environment
Requirements Engineering in an Agile Environment
 
Infographic Slide: What is Requirements Management?
Infographic Slide: What is Requirements Management?Infographic Slide: What is Requirements Management?
Infographic Slide: What is Requirements Management?
 
Business requirements gathering and analysis
Business requirements gathering and analysisBusiness requirements gathering and analysis
Business requirements gathering and analysis
 
Project Requriement Management Vs Agile software development
Project Requriement Management Vs  Agile software developmentProject Requriement Management Vs  Agile software development
Project Requriement Management Vs Agile software development
 
Concepts Of business analyst Practices - Part 1
Concepts Of business analyst Practices - Part 1Concepts Of business analyst Practices - Part 1
Concepts Of business analyst Practices - Part 1
 
Requirements Engineering @ Agile
Requirements Engineering @ AgileRequirements Engineering @ Agile
Requirements Engineering @ Agile
 
Business requirements template
Business requirements templateBusiness requirements template
Business requirements template
 
Business analysts and sdlc
Business analysts and sdlcBusiness analysts and sdlc
Business analysts and sdlc
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 
What is our_mission_v0.2
What is our_mission_v0.2What is our_mission_v0.2
What is our_mission_v0.2
 
3685807
36858073685807
3685807
 
MOM on BA
MOM on BAMOM on BA
MOM on BA
 
SMART Requirements
SMART RequirementsSMART Requirements
SMART Requirements
 

Similar to Requirement management presentation to a software team

Different Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsDifferent Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsNicole Gomez
 
Lecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptxLecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptxSeniorUsama
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSibel Kuzgun AKIN
 
Discussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docxDiscussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docxmadlynplamondon
 
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...ijseajournal
 
The Values and Principles of Agile Software Development
The Values and Principles of Agile Software DevelopmentThe Values and Principles of Agile Software Development
The Values and Principles of Agile Software DevelopmentBrad Appleton
 
Presentation by lavika upadhyay
Presentation by lavika upadhyayPresentation by lavika upadhyay
Presentation by lavika upadhyayPMI_IREP_TP
 
A Basic Introduction to Creating a Software Requirements Specification
A Basic Introduction to Creating a Software Requirements SpecificationA Basic Introduction to Creating a Software Requirements Specification
A Basic Introduction to Creating a Software Requirements SpecificationQuekelsBaro
 
Chapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptChapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptRayonJ1
 
Software Process Model in software engineering
Software Process Model in software engineeringSoftware Process Model in software engineering
Software Process Model in software engineeringMuhammadTalha436
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
 
Agile software development
Agile software development Agile software development
Agile software development saurabh goel
 
Mendix Essentials Presentatie Gerolf Roovers26/08/2011
Mendix Essentials Presentatie Gerolf Roovers26/08/2011Mendix Essentials Presentatie Gerolf Roovers26/08/2011
Mendix Essentials Presentatie Gerolf Roovers26/08/2011Mendix
 

Similar to Requirement management presentation to a software team (20)

Different Methodologies Used By Programming Teams
Different Methodologies Used By Programming TeamsDifferent Methodologies Used By Programming Teams
Different Methodologies Used By Programming Teams
 
Lecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptxLecture 19,20 Software Development Process Models.pptx
Lecture 19,20 Software Development Process Models.pptx
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Chapter 5
Chapter 5Chapter 5
Chapter 5
 
A littlebook about agile
A littlebook about agileA littlebook about agile
A littlebook about agile
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
Presentation on Agile Testing
Presentation on Agile TestingPresentation on Agile Testing
Presentation on Agile Testing
 
Discussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docxDiscussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docx
 
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
A MAPPING MODEL FOR TRANSFORMING TRADITIONAL SOFTWARE DEVELOPMENT METHODS TO ...
 
The Values and Principles of Agile Software Development
The Values and Principles of Agile Software DevelopmentThe Values and Principles of Agile Software Development
The Values and Principles of Agile Software Development
 
Presentation by lavika upadhyay
Presentation by lavika upadhyayPresentation by lavika upadhyay
Presentation by lavika upadhyay
 
A Basic Introduction to Creating a Software Requirements Specification
A Basic Introduction to Creating a Software Requirements SpecificationA Basic Introduction to Creating a Software Requirements Specification
A Basic Introduction to Creating a Software Requirements Specification
 
Chapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.pptChapter 3 Software Process Model.ppt
Chapter 3 Software Process Model.ppt
 
Sdpl1
Sdpl1Sdpl1
Sdpl1
 
Software Process Model in software engineering
Software Process Model in software engineeringSoftware Process Model in software engineering
Software Process Model in software engineering
 
Empathy from Agility
Empathy from AgilityEmpathy from Agility
Empathy from Agility
 
SDLC MODEL
SDLC MODEL SDLC MODEL
SDLC MODEL
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Agile software development
Agile software development Agile software development
Agile software development
 
Mendix Essentials Presentatie Gerolf Roovers26/08/2011
Mendix Essentials Presentatie Gerolf Roovers26/08/2011Mendix Essentials Presentatie Gerolf Roovers26/08/2011
Mendix Essentials Presentatie Gerolf Roovers26/08/2011
 

More from rchakra

Subversion client
Subversion clientSubversion client
Subversion clientrchakra
 
Subversion
SubversionSubversion
Subversionrchakra
 
Sql 2005 the ranking functions
Sql 2005   the ranking functionsSql 2005   the ranking functions
Sql 2005 the ranking functionsrchakra
 
Sql basics 2
Sql basics 2Sql basics 2
Sql basics 2rchakra
 
T-Sql basics
T-Sql basicsT-Sql basics
T-Sql basicsrchakra
 
Sql architecture
Sql architectureSql architecture
Sql architecturerchakra
 
Introduction to ADO.NET
Introduction to ADO.NETIntroduction to ADO.NET
Introduction to ADO.NETrchakra
 
Intro to Microsoft.NET
Intro to Microsoft.NET Intro to Microsoft.NET
Intro to Microsoft.NET rchakra
 
Object oriented programming systems
Object oriented programming systemsObject oriented programming systems
Object oriented programming systemsrchakra
 
Subversion Admin
Subversion AdminSubversion Admin
Subversion Adminrchakra
 
Intro to UML 2
Intro to UML 2Intro to UML 2
Intro to UML 2rchakra
 
Intro To .Net Threads
Intro To .Net ThreadsIntro To .Net Threads
Intro To .Net Threadsrchakra
 

More from rchakra (12)

Subversion client
Subversion clientSubversion client
Subversion client
 
Subversion
SubversionSubversion
Subversion
 
Sql 2005 the ranking functions
Sql 2005   the ranking functionsSql 2005   the ranking functions
Sql 2005 the ranking functions
 
Sql basics 2
Sql basics 2Sql basics 2
Sql basics 2
 
T-Sql basics
T-Sql basicsT-Sql basics
T-Sql basics
 
Sql architecture
Sql architectureSql architecture
Sql architecture
 
Introduction to ADO.NET
Introduction to ADO.NETIntroduction to ADO.NET
Introduction to ADO.NET
 
Intro to Microsoft.NET
Intro to Microsoft.NET Intro to Microsoft.NET
Intro to Microsoft.NET
 
Object oriented programming systems
Object oriented programming systemsObject oriented programming systems
Object oriented programming systems
 
Subversion Admin
Subversion AdminSubversion Admin
Subversion Admin
 
Intro to UML 2
Intro to UML 2Intro to UML 2
Intro to UML 2
 
Intro To .Net Threads
Intro To .Net ThreadsIntro To .Net Threads
Intro To .Net Threads
 

Recently uploaded

SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
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
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
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
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 

Recently uploaded (20)

SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
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
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
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
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 

Requirement management presentation to a software team

  • 2. "My biggest learning has been that people do not look for features, they look for benefits. In future versions, i may even remove some features to make the product less complex, less expensive". - Pallav Nadhani - Founder , FusionCharts in 'Times Of India' Jan 5th 2011 http://www.fusioncharts.com/
  • 4. Importance of requirement management If we got 'perfect' requirements, do you think we would have ●completed our projects faster, ●better quality and ●lesser cost ?
  • 5. Benefits of Good Requirements Excerpted from 'Managing Software Requirements: A Use Case Approach' by Dean Leffingwell, Don Widrig
  • 6. Evolution of requirements documentation ●Verbal requirements ●BRS ●SRS ●FRS ●Use cases ●User stories ●Acceptance tests
  • 7. Overlap between requirement analysis and management In an iterative model they both follow each other in an endless cycle.
  • 8. Changing requirements problem How do we solve it ? - Is there something intrinsic to software that makes it so difficult to define upfront ? - Why do we worry about changes anyway and how can we get rid of that worry
  • 9. Implicit requirement problem How do we solve it ? Can we have a checklist to ensure we fill in all the gaps ? How is this related to the earlier problem of software churn ?
  • 10. Implicit requirements "Bring me a rock" "Yes, but, actually, what I really wanted was a small blue rock." 'The Rock problem' excerpted from 'Managing Software Requirements: A Use Case Approach' by Dean Leffingwell, Don Widrig The delivery of a small blue rock elicits the further request for a spherical small blue rock.
  • 11. Business objectives Should we attach business value to each item of the requirement ? Can developers see the larger picture as well as the trees in the woods ?
  • 12. Project requirements linked to Organizational goals "Why did BBC Agile Project Fail? Tom´s Opinion; deliver value to stakeholders !" I notice that, as usual, there is no mention of consciously trying to deliver real value to Stakeholders early and at every iteration. This is the fundamental sickness of Agile Today. Plenty mention of code, none of value to stakeholder. Plenty mention of learn only at the end, none of learning what´s real at each increment.
  • 13. Different project life cycle models How they influence requirements management - Traditional top down approach - Iterative, prototype driven, frequent feedback approach The cost implication of each model - In an agile environment, the risk is transferred to the vendor - In a top down approach the risk is transferred to the customer
  • 14. Requirements Engineering is Iterative "When projects must deal with conflicts in stakeholder requirements and changes in management constraints, an adaptive process is far more likely to succeed than traditional methodologies" - Mary Poppendieck in her blog http://www.leanessays.com/2002/01/wicked- problems.html
  • 15. Iterative Requirement Management "The key to successful agile is to have feedback loops that are as short as possible. In a larger organisation, the loop gets longer, but the way to keep those loops as short as possible is by ensuring that there is bottom-up involvement also in product design, and perhaps also vision." Wouter Lagerweij in leandevelopment@yahoogroups.com
  • 16. Exit criteria Does the requirements specify what constitutes closure of project ? How do we know we are 'done' ?
  • 18. Testable Requirements Excerpted from IEEE Recommended Practice for Software Requirements Specifications 1998 An SRS is verifiable if, and only if, every requirement stated therein is verifiable. A requirement is verifiable if, and only if, there exists some finite cost-effective process with which a person or machine can check that the software product meets the requirement. In general any ambiguous requirement is not verifiable.
  • 19. Transferred applications How do we maintain applications which do not have updated requirement documentation
  • 20. Tools to track, trace, and manage Can we explain the rational behind the key architectural decisions of a running application ? Do we know the key objectives of a system ? Can we track a Requirement spec to all its acceptance tests, unit tests , changes , enhancements and bugs ? Do we need ? Does each developer know the exit criteria for his unit of work ?
  • 21. Pictures How can we use pictures to represent requirements. Screen shots UML If a picture is worth a thousand words, a video is worth a thousand pictures. How can we use multimedia technology to represent requirements ?
  • 22. Cost, quality and time How can we build in quality into the process to ensure that the requirements are met in cost, quality and time ?
  • 24. Decompose a SRS into units of work How do we break it into programmable features ? How do we break it into acceptance tests ? How do we break it into Unit tests ? How do we then trace these back and forth from and to the SRS ?How do we trace changes and enhancements to the above ?
  • 25. Value stream mapping Excerpted from 'Lean Software Development - An Agile Toolkit' by Mary and Tom Poppendieck
  • 26. How to map Your Value Stream ●With a pencil and pad in hand, go to the place where a customer request comes into your organization. ● Working with the people involved in each activity, you sketch all the process steps necessary to fill the request, as well as the average amount of time that a request spends in each step. ● At the bottom of the map, draw a timeline that shows how much time the request spends in value-adding activities, and how much time it spends in waiting states and non-value adding activities Excerpted from 'Lean Software Development - An Agile Toolkit' by Mary and Tom Poppendieck
  • 27. The Cost-Quality-Time paradox How can we improve turn around time of each requirement without compromising on quality ? Should we limit the commitment to match resources ? Can we identify non value added time ?
  • 28. Personas and user stories ●An SRS describes the entire target system, a Use case describes a part of the target system and a User Story describes a programmer feature. ●SRS documents and Use cases are sometimes abstract and generalized. How does one unravel an SRS into a story ? ●You can use Personas or User stories or Scenarios.
  • 29. Requirements in Test Driven Development environment Exit criteria in form of Acceptance Tests Automation of Acceptance tests (FIT for Business applications and other tools) Automation of Unit tests Automation of build including Unit and Acceptance tests
  • 30. Embedded - even the hardware evolves Excerpted from http://www.agilerules.com/articles/Taming_Embedded_Tiger .pdf
  • 31. Agile Test Techniques for Embedded Software ●Strong unit testing is the foundation of agile software de velopment but embedded systems present special proble ms.Test of embedded software is bound up with test of hardware,crossing professional and organizational boundaries. ●Even with evolving hardware in the picture, agile methods work well provided you use multiple test strategies. This has powerful implications for improving the quality of high reliability systems, which commonly have embedded software at their heart Excerpted from http://www.agilerules.com/articles/Taming_Embedded_T iger.pd
  • 32. Test Strategy for embedded (TDD) Excerpted from http://www.agilerules.com/articles/Taming_Embedded_Tiger
  • 33. Exercise 1 -Use Case and User Stories Convert an SRS in your domain into Use cases and User Stories
  • 34. Use case for an embedded system Who is the primary actor ? What is the goal ? What are the main flows and alternative flows ? What are the preconditions What are the post-conditions ?
  • 35. User stories for an embedded system How do these fare in comparison to the Use cases ?
  • 36. Benefits of a SRS as compared What are the benefits of a SRS as compared to Use cases and User stories ? Where would you fit in the Non functional specs in Use cases / Stories ?
  • 37. 'Misuse' cases Use cases which miss out on the key computations or algorithms Use cases which keep repeating the same steps which are redundant after the first case Use cases which do not describe the 'soft' requirements of the user - performance constraints, integration to other systems, user friendliness
  • 38. Exercise-2 on Issue Tracker Analysis Fill the worksheet
  • 39. Using 'JIRA' Track root cause and avoidable / non-avoidable defects/issues. What can we do to reduce these times and occurrences ?
  • 40. Project retrospectives To improve processes to reduce these churn rates Share lessons learned with our peers
  • 41. Statistics important to a Project manager Excerpted from 'Lean Software Development - An Agile Toolkit' by Mary and Tom Poppendieck
  • 42. Monthly burndown chart Excerpted from http://en.wikipedia.org/wiki/Burn_down_chart
  • 44. Requirement Tools Excerpted from 'Software Requirements' by Karl E Weigers
  • 45. Manual Tools - Tabular worksheets ●Use Excel to capture the Business requirements ●separate from the Product requirements ●separate from functional requirements. ●Number all items for backward traceability. ●Track revisions using SharePoint or other collaboration system
  • 46. Manual tools - Test case User story matrix Number all User stories Number all Acceptance tests Use these numbers for cross referencing across the system
  • 47. Visual Displays of project status Excerpted from 'Lean Software Development - An Agile Toolkit' by Mary and Tom Poppendieck
  • 49. One to one interviews Vision document. Study of current system, competitor systems, benchmarks Low cost prototypes and pilots to dove tail to 'real' requirements User workshops involving all stakeholders in one session to nail down needs of all stakeholders.
  • 50. References 'Lean Software Development - An Agile Toolkit' by Mary and Tom Poppendieck 'Software Requirements' by Karl E Weigers 'Taming the Embedded Tiger – Agile Test Techniques for Embedded Software' by Nancy Van Schooenderwoert, Ron Morsicato Agile Rules, Lexington, MA 'Managing Software Requirements: A Use Case Approach' by Dean Leffingwell, Don Widrig