SlideShare a Scribd company logo
1 of 38
Requirements Engineering @ Agile
Opportunities for getting requirements right in Agile
Take Aways From This Session
Quick Refresher < 5 minutes
• Agile Basics
• Fundamentals of Requirements Engineering (RE)
RE Practices in the Agile World (Scrum)
Comparison of RE Practices – Classic vs. Agile
Assessment of RE @ Agile
Version 5.1 | 2
Why Agile?
Version 5.1 | 3
Flexibility
 New and changed requirements are welcome
Time to Market
 Turn requirements fast into functional software and deliver it
Feedback
 Make sure that requirements and deliverables meet the needs of the customer
Productivity
 Concentrate on action, that will …
• Create value
• Facilitate team work and efficiency
Agile Basics
We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:
What is agile ? – Values of the “Agile Manifesto”
That is, while there is value in the items on
the right, we value the items on the left more.
4Version 5.1 |
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
Agile Basics
Principles behind the “Agile Manifesto”
Source: http://agileManifesto.org/
5Version 5.1 |
• Our highest priority is to satisfy the customer through early and continuous delivery
of valuable software.
• Welcome change, even late in development. Agile processes harness change for the
customer's competitive advantage.
• Deliver working software frequently, from a couple of weeks to a couple of months,
with a preference to the shorter timescale.
• Business people and developers must work together daily throughout the project.
Build projects around motivated individuals. Give them the environment and support
they need, and trust them to get the job done. The most efficient and effective method
of conveying information to and within a development team is face-to-face
conversation.
• Simplicity--the art of maximizing the amount of work not done--is essential.
• The best architectures, requirements, and designs emerge from self-organizing
teams. At regular intervals, the team reflects on how to become more effective, then
tunes and adjusts its behavior accordingly.
Agile Basics
Big Bang = Big Risk
6Version 5.1 |
Just one delivery to the customer
First shot has to meet the aim
No feedback about the Usability
for a long time
Risk: Customer is in the end
Source:
Agile Basics
Agile Approach: Continued Integration/Delivery and Feedback
7Version 5.1 |
Customer feedback
about usability
Product-
increments
Source:
Agile Basics
What is a requirement?
Version 5.1 | 8
IEEE Standard Glossary of Software Engineering Terminology. IEEE Std 610.12-1990
Fundamentals of Requirements Engineering
A requirement is ...
• (1) ... a condition or capability, needed by a user (person or system) to solve a
problem or to achieve an objective.
• (2) ... a condition or capability, that must be met or possessed by a system or system
component to satisfy a contract, standard, specification or other formally imposed
documents.
• (3) ... a documented representation of a condition or capability as in (1) or (2).
Three Requirement Types
Version 5.1 | 9
• Functional Requirements define functions
to be provided by the system
• Quality Requirements define quality characteristics,
which the system or its functions shall possess.
• Constraints are organizational or technical guidelines to be
followed during design and implementation of the system.
Non-Functional
Requirements
Fundamentals of Requirements Engineering
Requirements Engineering consists of four activities
Version 5.1 | 10
Elicitation Documentation Management
Validation and
Negotiation
Requirements Engineering
• Elicitation: Requirements from stakeholders and other sources are identified, detailed
and refined.
• Documentation: The compiled requirements are described adequately.
• Validation and Negotiation: Documented requirements are validated and negotiated
at an early stage in order to comply with the required quality criteria.
• Management: Requirements management includes all measures to structure
requirements, to prepare them for different roles and to change and implement
requirements in a consistent way.
Fundamentals of Requirements Engineering
11Version 5.1 |
RE Practices in the Agile World (Scrum)
Take Aways From This Session
Quick Refresher
RE Practices in the Agile World (Scrum)
• Scrum Process
• User Stories
• Product Backlog
• Sprint Planning
• Definition of Done
Comparison of RE Practices – Classic vs. Agile
Assessment of RE @ Agile
Version 5.1 | 12
Scrum Process
Version 5.1 | 13
Source: https://commons.wikimedia.org/wiki/File:Scrum_process-de.svg#filelinks/
RE Practices in the Agile World (Scrum)
Development team
• Discusses and
improves Stories with
the Product Owner
• Delivers for each
Iteration ( Sprint)
Increments, that
implement the
planned User-Stories
Scrum Master
• Coach for the Scrum Team
• Establishes Scrum Rules
• Removes Obstacles and
disturbances for the Team
Product Owner
• Is held responsible
for the Value of the
Product
• Manages Sources of
Requirements and
Stakeholders
• Monitors the Product
Backlog: Which
Requirements ( Stories)
have to be done first ?
Roles in Scrum Processes
Version 5.1 | 14
RE Practices in the Agile World (Scrum)
Maturing of Requirements with Scrum
Version 5.1 | 15
Product Discovery
• General objectives of the product in connection with business value
• Target groups and their needs e.g. as fictitional person ( Personas)
Epics
• High-Level Requirements for overall product features
User Stories
• Represent Requirements
• Sound Stories comply with the INVEST- Principles:
I ndependent
N egotiable
V aluable
E stimatable
S mall
T estable
RE Practices in the Agile World (Scrum)
Why Stories?
Version 5.1 | 16
Small and focused contains  easy to plan and realize
Will improve communications and interaction with the customer  more precise
Will focus on business value and costs of the requirements (Stories)
Stories will reduce waste.
• They’ll be written when needed
• The way they are compiled they’ll stay useful and relevant.
• They’ll delay decisions to the last possible moment.
• They are placeholders, to keep the detailed descriptions till later
Stories (and their acceptance criteria, tests) describe the relevant requirements.
They can be split and joined with little effort.
RE Practices in the Agile World (Scrum)
3 C’s of a User Story
Version 5.1 | 17
Card: A sentence representing the story:
As a <role> I want <wish>, so that <purpose>
Conversation:
Team and Product Owner agree on a common understanding of the Story
Confirmation: Acceptance criteria …
… define, when a Story is done (Definition of Done)
… should be SMART :
Specific Measurable Acceptable Realistic Timed
Acceptance Test Driven Development  Test cases are part of the requirements:
• Realistic examples / Scenarios ( Specification by Example)
• Expected results ( Given <context>, when <event>, then <result>)
RE Practices in the Agile World (Scrum)
Agile Requirements Management
Version 5.1 | 18
Product Backlog
• Sorted sist of stories, to develop the product
• Contains epics and user stories
• Stories clustered by technically related subjects
• Sorted according to value, risk, priority and necessity
• Keeps continuously evolving and changing over time
Task of RE: The Product Backlog has to be “DEEP“ :
D etailed appropriately
E stimated
E mergent
P rioritized
Detailed Stories
ready for the next Sprint
Stories with less detail, to be
improved for future Sprints
Rough Stories
e.g. Epics or Ideas
RE Practices in the Agile World (Scrum)
Working the Product Backlog
Version 5.1 | 19
Backlog Refinement (Grooming)
• Development Team and Product Owner discuss Stories in order to get a better
understanding of the stories
• Details (e.g. Acceptance criteria) are added and effort (Story Points) estimated
• The Team splits big Stories ( Epics) into smaller ones
• The Product Owner prioritizes the Stories
Definition of Ready  When is a Story ready for a Sprint?
Example:
• Story has been estimated for Functionality / Complexity / Testability
• Functional and nonfunctional Requirements are defined
• Test cases for each Story are defined (are often added while planning the Sprint)
• Constraints and Dependencies for each Story have been defined
• Acceptance criteria for each Story are known and defined
• Functionality is drafted (Mockup, Prototype, Design Briefing...)
• Tasks for Implementing und Testing the Story have been identified and estimated
RE Practices in the Agile World (Scrum)
What is “done”? – Definition of Done (DoD)
Version 5.1 | 20
Definition of Done  Criteria of what it means that a Product has been completely
implemented
Examples:
• All Acceptance Criteria are met
• Code has been delivered and checked into the Versioning Tool
• Documentation / Update was done
• Release Documentation has been updated
• Code Review has been performed or the coding was done by Pair Programming
• Coding Guidelines and Standards have been observed
• Unit Tests executed and "Green"
• No critical Bugs unsolved
• "Functional Tests" have been successful on all levels
The criteria for “done” are applied to each single User Story (Story Level), that
means, they have to be met, so that the stories can be regarded as delivered
and approved
RE Practices in the Agile World (Scrum)
Other Levels of the Definition of Done
Version 5.1 | 21
Sprint Level Criteria …
 … have to be met, so that the artifacts (systems or components) of a sprint could be
released (which doesn’t necessarily mean that they will be released for production)
 … should ensure, that all artefacts together with other systems and components will
run properly in the operational environment
Examples:
• Separate deployment on the integrations-(test)-system.
• Stories are tested together with other external systems and components.
Integrations- and Interface tests have been defined and successfully executed
• Performance is as defined
• Tests on business case level have been successful
• No release preventing errors open
• Technical documentation of the system has been done or is updated
• All changes of the system have been documented
RE Practices in the Agile World (Scrum)
Other Levels of the Definition of Done
Version 5.1 | 22
Release- and Product level criteria
 Successful run on the PreLive environment is a precondition for releasing the software
into production
Examples:
• Artefacts are ready for release ( DoD at Sprint Level) and cleared for Deployment
• Binaries are in the Repository with their respective Release numbers
• All Business Case Tests have been defined and the results have been documented
• Release-Notes contain all information regarding configuration
• Known defects and possible effect on operation are documented
• Results of the PreLive Tests are available
• Depending on the release more tests have been performed e.g. Security, Performance
• Tolerated-Online-Time for open defects has been calculated
• Adequate Performance has been proved for performance critical changes
• On Release Level the operation of the system has been tested successfully : start; stop;
restart (functional/ technical), Monitoring
RE Practices in the Agile World (Scrum)
23Version 5.1 |
Comparison of RE Practices - Classic v/s Agile
Take Aways From This Session
Quick Refresher
RE Practices in the Agile World (Scrum)
Comparison of RE Practices – Classic vs. Agile
• Order of Activities
• Roles in the Organization
• Stakeholder Involvement
• Requirements Elicitation
• Requirements Documentation
• Feedback and Rework of Requirements
Assessment of RE @ Agile
Version 5.1 | 24
Order of Activities
Version 5.1 | 25
Classic: RE-Activities are located in an closed first Phase of the Project
 Requirements Engineering happens as a first closed phase in a project.
 At the end of the phase the requirements are complete and in full detail.
 Later Changes (Change Requests) are treated as exceptions.
Agile: RE-Activities will be iterative and parallel to Design, Implementation and Test
 RE-Activities go along side the complete software life cycle.
 Stakeholders will give their feedback for early delivered product-Increments.
 Requirements will be changed and refined following that feedback.
Comparison of RE Practices – Classic vs. Agile
Roles in the Organization
Version 5.1 | 26
Classic: RE- Activities will be performed by predefined Roles
 The RE-Role is often personally and organizational separated from other roles.
 Team members often occupy just one role:
• Product Manager
• Business Analyst
• Software engineer or
• Tester
and belong to their respective organizational unit.
Agile: RE-Activities are performed by interdisciplinary teams
 Each single team member will have multiple roles:
• Requirements Engineer
• Software engineer and
• Tester
And has to develop the necessary skills
Comparison of RE Practices – Classic vs. Agile
Stakeholder Involvement
Version 5.1 | 27
Classic: Including of the Stakeholders happens in specific phases
 Requirements engineering
 Proof of Concept A-Sample (e.g. Prototype)
 Test of B-Sample (Functions operational, Components not completely approved)
 Field test with C-Sample (All Components of a serial production)
 Pre-production with D-Sample (pre-production sample)
Agile: Continuous Collaboration with Stakeholders and Customers
 Identify the functional requirements at business case level
 Improve / split the requirements so that they be “Ready” according to definition
 Discover and consider non-functional requirements
 Confirm that requirements are fulfilled
Comparison of RE Practices – Classic vs. Agile
Requirements Elicitation
Version 5.1 | 28
Classic: Experts predict what the Customer wants
 Marketing Experts …
• analyze the market,
• Create Customer segments,
• define and advertise the product-features.
 Till the product is delivered, customer segments and needs will change.
Agile: Customer feedback will determine the Evolution of the Products
 Fast delivery of a minimalistic, useful product
 Gather real feedback from real customers
 Define customer segments with more detail ( Personas)
 Understand the needs of the customer segments
 Develop intuition for innovations, that will meet the customer segments needs
 Deliver product improvements fast and get feedback etc.
Comparison of RE Practices – Classic vs. Agile
Requirements Documentation
Version 5.1 | 29
Classic: “Complete and detailed” – “as early as possible”
• Lots of assumptions, that will only be validated much later
• Long project duration will make changes of the environments more probable
• Documentation will be outdated and produce a lot of maintenance effort
Agile: “Just Enough” – “Just in Time”
• Documents only, what will produce lasting value for the stakeholders or the team
• … and only up to the necessary depth of detail (that can be rather high)
• Up to date, accurate, useful
• Example: Test cases enhance and detail the requirement documentation
Comparison of RE Practices – Classic vs. Agile
Feedback and Rework of Requirements
Version 5.1 | 30
Classic: Tedious and long-lasting rework
 “First shot has to hit the goal”
 More effort and more defects in the process of adapting of the requirements to…
• Feedback from stakeholders
• New findings from implementation and test
• Changes in the product context
 High Risk, to develop software that won’t meet the stakeholders expectations for a
long time before it can be discovered
Agile: Fast follow up of small, incremental changes and development of the product
 Knowledge gained in one sprint will be considered in the next one
 Continuous, direct feedback will allow a fast adjustment of the requirements
Comparison of RE Practices – Classic vs. Agile
31Version 5.1 |
Assessment of RE @ Agile
Take Aways From This Session
Quick Refresher
RE Practices in the Agile World (Scrum)
Comparison of RE Practices – Classic vs. Agile
Assessment of RE @ Agile
• Advantages
• Disadvantages
• Recommendations
Version 5.1 | 32
Advantages
Version 5.1 | 33
Flexibility:
• Fast and flexible handling of requirement changes
Feedback:
• Stakeholder are actively and continuously involved in the validation of requirements
Productivity:
• Implementation of requirements will timely be demonstrated to the stakeholders
Continuous Improvement of product and cooperation
• Small user stories will be quickly implemented and the value confirmed through
regular feedback
• Lessons Learned is often performed  within each Sprint there is a retrospective
• Concentration on few improvements for each spring will increase the chance to
succeed
Assessment of RE @ Agile
Disadvantages
Version 5.1 | 34
Fuzzy planning for product releases
• No definite commitment, which requirement will be delivered when and at what cost
More Management Resources needed:
• Business analysts and product owner need to invest more time to participate in the RE
Not used to:
• Stakeholders need to change their mindset to adopt agile principles and practices
Challenging
• Small Teams need a larger range of skills and knowledge including RE
No one size fits all
• Big projects and safety critical systems need an appropriate approach
 e.g. Traceability and change control of the requirements have to be guaranteed
Assessment of RE @ Agile
Recommendations – Improve classic RE Skills in Agile Teams
Version 5.1 | 35
Product Owner (PO) needs classic RE Practices
• Stakeholder Management
• Source of Requirements
• Elicitation Techniques
• Use of the Kano Model
• Methods for prioritizing (Kano, Cost/Benefit Analysis)
Project teams need classic RE Practices (together with many other skills)
• Elicitation Techniques (PO can delegate elicitation, but will remain accountable)
• Improve and split the requirements (in Dialog with PO)
• Validation of requirements (through Feedback)
Assessment of RE @ Agile
Recommendations – Structure RE
Version 5.1 | 36
Control the abstraction level of the requirements
• Long-term Planning (3 to 12 months in advance)
 Goals describe the product vision from a business point of view
• Medium-term Planning (1,5 to 6 months in advance)
 Epics describe rough features in the product backlog
 Backlog Refinement: Stories have to be split into easy to handle User Stories
• Short-term Planning (1 to 3 sprints in advance)
 User Stories detailed to a level appropriate to facilitate their implementation
 Stories fulfill the definition of Ready and can be implemented in the next sprint
Story Mapping
• High-Level Use Case Model gives an overall picture of the product
• Each User Story will incrementally increase the functionality of one Use Cases
• Mapping: Refer the stories to the extended Use Cases
Assessment of RE @ Agile
Recommendations – Consider Constraints for RE
Version 5.1 | 37
Industrial norms and process reference models formulate expectations for
• The quality of the requirements documentation
• The quality of the requirements engineering process
Examples:
• IEC 61508 (interbranch)
• ISO 26262 (automotive)
Agile Teams have to know and implement the standards of their respective domain
• How they achieve this remains in their own sovereignty
Approved Practices
• Split User Stories into functional groups ( Story Mapping)
• Add acceptance criteria to the User Stories
• Map Traceability with a tool
Assessment of RE @ Agile
Thank you for your attention.
Girish Khemani
https://www.linkedin.com/in/girishkhemani

More Related Content

What's hot

Agile Roles & responsibilities
Agile Roles & responsibilitiesAgile Roles & responsibilities
Agile Roles & responsibilitiesRavi Tadwalkar
 
Agile Manifesto and Principles
Agile Manifesto and PrinciplesAgile Manifesto and Principles
Agile Manifesto and PrinciplesAryan Rajbhandari
 
Requirements prioritization
Requirements prioritizationRequirements prioritization
Requirements prioritizationSyed Zaid Irshad
 
DevOps - an Agile Perspective (at Scale)
DevOps - an Agile Perspective (at Scale)DevOps - an Agile Perspective (at Scale)
DevOps - an Agile Perspective (at Scale)Brad Appleton
 
Agile 101
Agile 101Agile 101
Agile 101beLithe
 
Scaled agile framework (SAFe) - adopting agile at enterprise scale
Scaled agile framework (SAFe) - adopting agile at enterprise scaleScaled agile framework (SAFe) - adopting agile at enterprise scale
Scaled agile framework (SAFe) - adopting agile at enterprise scaleVadim Mikhnevych
 
Introduction To Agile
Introduction To AgileIntroduction To Agile
Introduction To AgileKnoldus Inc.
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software DevelopmentTathagat Varma
 
Agile Implementation
Agile ImplementationAgile Implementation
Agile ImplementationOlga Sa
 
Max Poliashenko - Enterprise Product Architecture
Max Poliashenko - Enterprise Product ArchitectureMax Poliashenko - Enterprise Product Architecture
Max Poliashenko - Enterprise Product Architectureiasaglobal
 
Introduction to Agile Software Development
Introduction to Agile Software DevelopmentIntroduction to Agile Software Development
Introduction to Agile Software DevelopmentLife Cycle Engineering
 
User Story Maps: Secrets for Better Backlogs and Planning
 User Story Maps: Secrets for Better Backlogs and Planning User Story Maps: Secrets for Better Backlogs and Planning
User Story Maps: Secrets for Better Backlogs and PlanningAaron Sanders
 
107 user story game (poole & lee)
107   user story game (poole & lee)107   user story game (poole & lee)
107 user story game (poole & lee)ProductCamp Boston
 

What's hot (20)

Product Backlog Management
Product Backlog ManagementProduct Backlog Management
Product Backlog Management
 
QA Best Practices in Agile World_new
QA Best Practices in Agile World_newQA Best Practices in Agile World_new
QA Best Practices in Agile World_new
 
Agile Roles & responsibilities
Agile Roles & responsibilitiesAgile Roles & responsibilities
Agile Roles & responsibilities
 
Agile Testing by Example
Agile Testing by ExampleAgile Testing by Example
Agile Testing by Example
 
Agile Manifesto and Principles
Agile Manifesto and PrinciplesAgile Manifesto and Principles
Agile Manifesto and Principles
 
Requirements prioritization
Requirements prioritizationRequirements prioritization
Requirements prioritization
 
Agile Project Management
Agile Project ManagementAgile Project Management
Agile Project Management
 
Scaling agile
Scaling agileScaling agile
Scaling agile
 
Professional Scrum Master I (PSM-I)
Professional Scrum Master I (PSM-I)Professional Scrum Master I (PSM-I)
Professional Scrum Master I (PSM-I)
 
DevOps - an Agile Perspective (at Scale)
DevOps - an Agile Perspective (at Scale)DevOps - an Agile Perspective (at Scale)
DevOps - an Agile Perspective (at Scale)
 
Agile 101
Agile 101Agile 101
Agile 101
 
Scaled agile framework (SAFe) - adopting agile at enterprise scale
Scaled agile framework (SAFe) - adopting agile at enterprise scaleScaled agile framework (SAFe) - adopting agile at enterprise scale
Scaled agile framework (SAFe) - adopting agile at enterprise scale
 
Introduction To Agile
Introduction To AgileIntroduction To Agile
Introduction To Agile
 
Agile modeling
Agile modelingAgile modeling
Agile modeling
 
Agile and Lean Software Development
Agile and Lean Software DevelopmentAgile and Lean Software Development
Agile and Lean Software Development
 
Agile Implementation
Agile ImplementationAgile Implementation
Agile Implementation
 
Max Poliashenko - Enterprise Product Architecture
Max Poliashenko - Enterprise Product ArchitectureMax Poliashenko - Enterprise Product Architecture
Max Poliashenko - Enterprise Product Architecture
 
Introduction to Agile Software Development
Introduction to Agile Software DevelopmentIntroduction to Agile Software Development
Introduction to Agile Software Development
 
User Story Maps: Secrets for Better Backlogs and Planning
 User Story Maps: Secrets for Better Backlogs and Planning User Story Maps: Secrets for Better Backlogs and Planning
User Story Maps: Secrets for Better Backlogs and Planning
 
107 user story game (poole & lee)
107   user story game (poole & lee)107   user story game (poole & lee)
107 user story game (poole & lee)
 

Similar to Get requirements right with Agile

Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development ProcessSoftware Park Thailand
 
Agile for product owners v12
Agile for product owners  v12Agile for product owners  v12
Agile for product owners v12Ravi Tadwalkar
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software EngineeringPurvik Rana
 
Agile project management using scrum
Agile project management using scrumAgile project management using scrum
Agile project management using scrumPrudentialSolutions
 
Agile Development – Why requirements matter by Fariz Saracevic
Agile Development – Why requirements matter by Fariz SaracevicAgile Development – Why requirements matter by Fariz Saracevic
Agile Development – Why requirements matter by Fariz SaracevicAgile ME
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMMubashir Ali
 
An Agile Overview @ ShoreTel Sky
An Agile Overview @ ShoreTel SkyAn Agile Overview @ ShoreTel Sky
An Agile Overview @ ShoreTel Skygirabrent
 
Agile Requirement Development - A Breathtakingly Quick Introduction
Agile Requirement Development - A Breathtakingly Quick IntroductionAgile Requirement Development - A Breathtakingly Quick Introduction
Agile Requirement Development - A Breathtakingly Quick IntroductionTieturi Oy
 
Using Agile In A Quality Driven Environment
Using Agile In A Quality Driven EnvironmentUsing Agile In A Quality Driven Environment
Using Agile In A Quality Driven EnvironmentLeslie Munday
 
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzLecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzAhmadSajjad34
 
Intro agile development methodology abhilash chandran
Intro agile development methodology   abhilash chandranIntro agile development methodology   abhilash chandran
Intro agile development methodology abhilash chandranAbhilash Chandran
 
Scrum Process Overview
Scrum Process OverviewScrum Process Overview
Scrum Process OverviewPaul Nguyen
 
Agile Development – Why requirements matter
Agile Development – Why requirements matterAgile Development – Why requirements matter
Agile Development – Why requirements matterAgile Austria Conference
 
Agile software development
Agile software developmentAgile software development
Agile software developmentSiddharth Sharma
 

Similar to Get requirements right with Agile (20)

Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
 
Agile mODEL
Agile mODELAgile mODEL
Agile mODEL
 
Agile for product owners v12
Agile for product owners  v12Agile for product owners  v12
Agile for product owners v12
 
Software testing
Software testingSoftware testing
Software testing
 
Agile at scale
Agile at scaleAgile at scale
Agile at scale
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
 
Agile project management using scrum
Agile project management using scrumAgile project management using scrum
Agile project management using scrum
 
Agile Development – Why requirements matter by Fariz Saracevic
Agile Development – Why requirements matter by Fariz SaracevicAgile Development – Why requirements matter by Fariz Saracevic
Agile Development – Why requirements matter by Fariz Saracevic
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPM
 
An Agile Overview @ ShoreTel Sky
An Agile Overview @ ShoreTel SkyAn Agile Overview @ ShoreTel Sky
An Agile Overview @ ShoreTel Sky
 
Agile Requirement Development - A Breathtakingly Quick Introduction
Agile Requirement Development - A Breathtakingly Quick IntroductionAgile Requirement Development - A Breathtakingly Quick Introduction
Agile Requirement Development - A Breathtakingly Quick Introduction
 
Software Development
Software DevelopmentSoftware Development
Software Development
 
Using Agile In A Quality Driven Environment
Using Agile In A Quality Driven EnvironmentUsing Agile In A Quality Driven Environment
Using Agile In A Quality Driven Environment
 
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnzLecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
Lecture 5 -6(CSC205).pptx jsksnxbbxjxksnsnz
 
Intro agile development methodology abhilash chandran
Intro agile development methodology   abhilash chandranIntro agile development methodology   abhilash chandran
Intro agile development methodology abhilash chandran
 
Agile Methodologies
Agile MethodologiesAgile Methodologies
Agile Methodologies
 
Scrum Process Overview
Scrum Process OverviewScrum Process Overview
Scrum Process Overview
 
Agile Development – Why requirements matter
Agile Development – Why requirements matterAgile Development – Why requirements matter
Agile Development – Why requirements matter
 
Agile software development
Agile software developmentAgile software development
Agile software development
 
Agile Development Process
Agile Development ProcessAgile Development Process
Agile Development Process
 

Recently uploaded

Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfPrerana Jadhav
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxVanesaIglesias10
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptxmary850239
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxDhatriParmar
 
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...DhatriParmar
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmStan Meyer
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operationalssuser3e220a
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Seán Kennedy
 
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDhatriParmar
 
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnvESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnvRicaMaeCastro1
 
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxDIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxMichelleTuguinay1
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationdeepaannamalai16
 
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQ-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQuiz Club NITW
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptxmary850239
 
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxSayali Powar
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 

Recently uploaded (20)

Narcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdfNarcotic and Non Narcotic Analgesic..pdf
Narcotic and Non Narcotic Analgesic..pdf
 
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptxINCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
INCLUSIVE EDUCATION PRACTICES FOR TEACHERS AND TRAINERS.pptx
 
ROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptxROLES IN A STAGE PRODUCTION in arts.pptx
ROLES IN A STAGE PRODUCTION in arts.pptx
 
4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx4.16.24 21st Century Movements for Black Lives.pptx
4.16.24 21st Century Movements for Black Lives.pptx
 
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptxMan or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
Man or Manufactured_ Redefining Humanity Through Biopunk Narratives.pptx
 
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
Blowin' in the Wind of Caste_ Bob Dylan's Song as a Catalyst for Social Justi...
 
Oppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and FilmOppenheimer Film Discussion for Philosophy and Film
Oppenheimer Film Discussion for Philosophy and Film
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
Expanded definition: technical and operational
Expanded definition: technical and operationalExpanded definition: technical and operational
Expanded definition: technical and operational
 
Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...Student Profile Sample - We help schools to connect the data they have, with ...
Student Profile Sample - We help schools to connect the data they have, with ...
 
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptxDecoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
Decoding the Tweet _ Practical Criticism in the Age of Hashtag.pptx
 
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of EngineeringFaculty Profile prashantha K EEE dept Sri Sairam college of Engineering
Faculty Profile prashantha K EEE dept Sri Sairam college of Engineering
 
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnvESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
ESP 4-EDITED.pdfmmcncncncmcmmnmnmncnmncmnnjvnnv
 
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptxDIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
DIFFERENT BASKETRY IN THE PHILIPPINES PPT.pptx
 
Congestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentationCongestive Cardiac Failure..presentation
Congestive Cardiac Failure..presentation
 
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITWQ-Factor General Quiz-7th April 2024, Quiz Club NITW
Q-Factor General Quiz-7th April 2024, Quiz Club NITW
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx4.11.24 Poverty and Inequality in America.pptx
4.11.24 Poverty and Inequality in America.pptx
 
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptxBIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
BIOCHEMISTRY-CARBOHYDRATE METABOLISM CHAPTER 2.pptx
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 

Get requirements right with Agile

  • 1. Requirements Engineering @ Agile Opportunities for getting requirements right in Agile
  • 2. Take Aways From This Session Quick Refresher < 5 minutes • Agile Basics • Fundamentals of Requirements Engineering (RE) RE Practices in the Agile World (Scrum) Comparison of RE Practices – Classic vs. Agile Assessment of RE @ Agile Version 5.1 | 2
  • 3. Why Agile? Version 5.1 | 3 Flexibility  New and changed requirements are welcome Time to Market  Turn requirements fast into functional software and deliver it Feedback  Make sure that requirements and deliverables meet the needs of the customer Productivity  Concentrate on action, that will … • Create value • Facilitate team work and efficiency Agile Basics
  • 4. We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: What is agile ? – Values of the “Agile Manifesto” That is, while there is value in the items on the right, we value the items on the left more. 4Version 5.1 | Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan Agile Basics
  • 5. Principles behind the “Agile Manifesto” Source: http://agileManifesto.org/ 5Version 5.1 | • Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. • Welcome change, even late in development. Agile processes harness change for the customer's competitive advantage. • Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. • Business people and developers must work together daily throughout the project. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation. • Simplicity--the art of maximizing the amount of work not done--is essential. • The best architectures, requirements, and designs emerge from self-organizing teams. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly. Agile Basics
  • 6. Big Bang = Big Risk 6Version 5.1 | Just one delivery to the customer First shot has to meet the aim No feedback about the Usability for a long time Risk: Customer is in the end Source: Agile Basics
  • 7. Agile Approach: Continued Integration/Delivery and Feedback 7Version 5.1 | Customer feedback about usability Product- increments Source: Agile Basics
  • 8. What is a requirement? Version 5.1 | 8 IEEE Standard Glossary of Software Engineering Terminology. IEEE Std 610.12-1990 Fundamentals of Requirements Engineering A requirement is ... • (1) ... a condition or capability, needed by a user (person or system) to solve a problem or to achieve an objective. • (2) ... a condition or capability, that must be met or possessed by a system or system component to satisfy a contract, standard, specification or other formally imposed documents. • (3) ... a documented representation of a condition or capability as in (1) or (2).
  • 9. Three Requirement Types Version 5.1 | 9 • Functional Requirements define functions to be provided by the system • Quality Requirements define quality characteristics, which the system or its functions shall possess. • Constraints are organizational or technical guidelines to be followed during design and implementation of the system. Non-Functional Requirements Fundamentals of Requirements Engineering
  • 10. Requirements Engineering consists of four activities Version 5.1 | 10 Elicitation Documentation Management Validation and Negotiation Requirements Engineering • Elicitation: Requirements from stakeholders and other sources are identified, detailed and refined. • Documentation: The compiled requirements are described adequately. • Validation and Negotiation: Documented requirements are validated and negotiated at an early stage in order to comply with the required quality criteria. • Management: Requirements management includes all measures to structure requirements, to prepare them for different roles and to change and implement requirements in a consistent way. Fundamentals of Requirements Engineering
  • 11. 11Version 5.1 | RE Practices in the Agile World (Scrum)
  • 12. Take Aways From This Session Quick Refresher RE Practices in the Agile World (Scrum) • Scrum Process • User Stories • Product Backlog • Sprint Planning • Definition of Done Comparison of RE Practices – Classic vs. Agile Assessment of RE @ Agile Version 5.1 | 12
  • 13. Scrum Process Version 5.1 | 13 Source: https://commons.wikimedia.org/wiki/File:Scrum_process-de.svg#filelinks/ RE Practices in the Agile World (Scrum)
  • 14. Development team • Discusses and improves Stories with the Product Owner • Delivers for each Iteration ( Sprint) Increments, that implement the planned User-Stories Scrum Master • Coach for the Scrum Team • Establishes Scrum Rules • Removes Obstacles and disturbances for the Team Product Owner • Is held responsible for the Value of the Product • Manages Sources of Requirements and Stakeholders • Monitors the Product Backlog: Which Requirements ( Stories) have to be done first ? Roles in Scrum Processes Version 5.1 | 14 RE Practices in the Agile World (Scrum)
  • 15. Maturing of Requirements with Scrum Version 5.1 | 15 Product Discovery • General objectives of the product in connection with business value • Target groups and their needs e.g. as fictitional person ( Personas) Epics • High-Level Requirements for overall product features User Stories • Represent Requirements • Sound Stories comply with the INVEST- Principles: I ndependent N egotiable V aluable E stimatable S mall T estable RE Practices in the Agile World (Scrum)
  • 16. Why Stories? Version 5.1 | 16 Small and focused contains  easy to plan and realize Will improve communications and interaction with the customer  more precise Will focus on business value and costs of the requirements (Stories) Stories will reduce waste. • They’ll be written when needed • The way they are compiled they’ll stay useful and relevant. • They’ll delay decisions to the last possible moment. • They are placeholders, to keep the detailed descriptions till later Stories (and their acceptance criteria, tests) describe the relevant requirements. They can be split and joined with little effort. RE Practices in the Agile World (Scrum)
  • 17. 3 C’s of a User Story Version 5.1 | 17 Card: A sentence representing the story: As a <role> I want <wish>, so that <purpose> Conversation: Team and Product Owner agree on a common understanding of the Story Confirmation: Acceptance criteria … … define, when a Story is done (Definition of Done) … should be SMART : Specific Measurable Acceptable Realistic Timed Acceptance Test Driven Development  Test cases are part of the requirements: • Realistic examples / Scenarios ( Specification by Example) • Expected results ( Given <context>, when <event>, then <result>) RE Practices in the Agile World (Scrum)
  • 18. Agile Requirements Management Version 5.1 | 18 Product Backlog • Sorted sist of stories, to develop the product • Contains epics and user stories • Stories clustered by technically related subjects • Sorted according to value, risk, priority and necessity • Keeps continuously evolving and changing over time Task of RE: The Product Backlog has to be “DEEP“ : D etailed appropriately E stimated E mergent P rioritized Detailed Stories ready for the next Sprint Stories with less detail, to be improved for future Sprints Rough Stories e.g. Epics or Ideas RE Practices in the Agile World (Scrum)
  • 19. Working the Product Backlog Version 5.1 | 19 Backlog Refinement (Grooming) • Development Team and Product Owner discuss Stories in order to get a better understanding of the stories • Details (e.g. Acceptance criteria) are added and effort (Story Points) estimated • The Team splits big Stories ( Epics) into smaller ones • The Product Owner prioritizes the Stories Definition of Ready  When is a Story ready for a Sprint? Example: • Story has been estimated for Functionality / Complexity / Testability • Functional and nonfunctional Requirements are defined • Test cases for each Story are defined (are often added while planning the Sprint) • Constraints and Dependencies for each Story have been defined • Acceptance criteria for each Story are known and defined • Functionality is drafted (Mockup, Prototype, Design Briefing...) • Tasks for Implementing und Testing the Story have been identified and estimated RE Practices in the Agile World (Scrum)
  • 20. What is “done”? – Definition of Done (DoD) Version 5.1 | 20 Definition of Done  Criteria of what it means that a Product has been completely implemented Examples: • All Acceptance Criteria are met • Code has been delivered and checked into the Versioning Tool • Documentation / Update was done • Release Documentation has been updated • Code Review has been performed or the coding was done by Pair Programming • Coding Guidelines and Standards have been observed • Unit Tests executed and "Green" • No critical Bugs unsolved • "Functional Tests" have been successful on all levels The criteria for “done” are applied to each single User Story (Story Level), that means, they have to be met, so that the stories can be regarded as delivered and approved RE Practices in the Agile World (Scrum)
  • 21. Other Levels of the Definition of Done Version 5.1 | 21 Sprint Level Criteria …  … have to be met, so that the artifacts (systems or components) of a sprint could be released (which doesn’t necessarily mean that they will be released for production)  … should ensure, that all artefacts together with other systems and components will run properly in the operational environment Examples: • Separate deployment on the integrations-(test)-system. • Stories are tested together with other external systems and components. Integrations- and Interface tests have been defined and successfully executed • Performance is as defined • Tests on business case level have been successful • No release preventing errors open • Technical documentation of the system has been done or is updated • All changes of the system have been documented RE Practices in the Agile World (Scrum)
  • 22. Other Levels of the Definition of Done Version 5.1 | 22 Release- and Product level criteria  Successful run on the PreLive environment is a precondition for releasing the software into production Examples: • Artefacts are ready for release ( DoD at Sprint Level) and cleared for Deployment • Binaries are in the Repository with their respective Release numbers • All Business Case Tests have been defined and the results have been documented • Release-Notes contain all information regarding configuration • Known defects and possible effect on operation are documented • Results of the PreLive Tests are available • Depending on the release more tests have been performed e.g. Security, Performance • Tolerated-Online-Time for open defects has been calculated • Adequate Performance has been proved for performance critical changes • On Release Level the operation of the system has been tested successfully : start; stop; restart (functional/ technical), Monitoring RE Practices in the Agile World (Scrum)
  • 23. 23Version 5.1 | Comparison of RE Practices - Classic v/s Agile
  • 24. Take Aways From This Session Quick Refresher RE Practices in the Agile World (Scrum) Comparison of RE Practices – Classic vs. Agile • Order of Activities • Roles in the Organization • Stakeholder Involvement • Requirements Elicitation • Requirements Documentation • Feedback and Rework of Requirements Assessment of RE @ Agile Version 5.1 | 24
  • 25. Order of Activities Version 5.1 | 25 Classic: RE-Activities are located in an closed first Phase of the Project  Requirements Engineering happens as a first closed phase in a project.  At the end of the phase the requirements are complete and in full detail.  Later Changes (Change Requests) are treated as exceptions. Agile: RE-Activities will be iterative and parallel to Design, Implementation and Test  RE-Activities go along side the complete software life cycle.  Stakeholders will give their feedback for early delivered product-Increments.  Requirements will be changed and refined following that feedback. Comparison of RE Practices – Classic vs. Agile
  • 26. Roles in the Organization Version 5.1 | 26 Classic: RE- Activities will be performed by predefined Roles  The RE-Role is often personally and organizational separated from other roles.  Team members often occupy just one role: • Product Manager • Business Analyst • Software engineer or • Tester and belong to their respective organizational unit. Agile: RE-Activities are performed by interdisciplinary teams  Each single team member will have multiple roles: • Requirements Engineer • Software engineer and • Tester And has to develop the necessary skills Comparison of RE Practices – Classic vs. Agile
  • 27. Stakeholder Involvement Version 5.1 | 27 Classic: Including of the Stakeholders happens in specific phases  Requirements engineering  Proof of Concept A-Sample (e.g. Prototype)  Test of B-Sample (Functions operational, Components not completely approved)  Field test with C-Sample (All Components of a serial production)  Pre-production with D-Sample (pre-production sample) Agile: Continuous Collaboration with Stakeholders and Customers  Identify the functional requirements at business case level  Improve / split the requirements so that they be “Ready” according to definition  Discover and consider non-functional requirements  Confirm that requirements are fulfilled Comparison of RE Practices – Classic vs. Agile
  • 28. Requirements Elicitation Version 5.1 | 28 Classic: Experts predict what the Customer wants  Marketing Experts … • analyze the market, • Create Customer segments, • define and advertise the product-features.  Till the product is delivered, customer segments and needs will change. Agile: Customer feedback will determine the Evolution of the Products  Fast delivery of a minimalistic, useful product  Gather real feedback from real customers  Define customer segments with more detail ( Personas)  Understand the needs of the customer segments  Develop intuition for innovations, that will meet the customer segments needs  Deliver product improvements fast and get feedback etc. Comparison of RE Practices – Classic vs. Agile
  • 29. Requirements Documentation Version 5.1 | 29 Classic: “Complete and detailed” – “as early as possible” • Lots of assumptions, that will only be validated much later • Long project duration will make changes of the environments more probable • Documentation will be outdated and produce a lot of maintenance effort Agile: “Just Enough” – “Just in Time” • Documents only, what will produce lasting value for the stakeholders or the team • … and only up to the necessary depth of detail (that can be rather high) • Up to date, accurate, useful • Example: Test cases enhance and detail the requirement documentation Comparison of RE Practices – Classic vs. Agile
  • 30. Feedback and Rework of Requirements Version 5.1 | 30 Classic: Tedious and long-lasting rework  “First shot has to hit the goal”  More effort and more defects in the process of adapting of the requirements to… • Feedback from stakeholders • New findings from implementation and test • Changes in the product context  High Risk, to develop software that won’t meet the stakeholders expectations for a long time before it can be discovered Agile: Fast follow up of small, incremental changes and development of the product  Knowledge gained in one sprint will be considered in the next one  Continuous, direct feedback will allow a fast adjustment of the requirements Comparison of RE Practices – Classic vs. Agile
  • 31. 31Version 5.1 | Assessment of RE @ Agile
  • 32. Take Aways From This Session Quick Refresher RE Practices in the Agile World (Scrum) Comparison of RE Practices – Classic vs. Agile Assessment of RE @ Agile • Advantages • Disadvantages • Recommendations Version 5.1 | 32
  • 33. Advantages Version 5.1 | 33 Flexibility: • Fast and flexible handling of requirement changes Feedback: • Stakeholder are actively and continuously involved in the validation of requirements Productivity: • Implementation of requirements will timely be demonstrated to the stakeholders Continuous Improvement of product and cooperation • Small user stories will be quickly implemented and the value confirmed through regular feedback • Lessons Learned is often performed  within each Sprint there is a retrospective • Concentration on few improvements for each spring will increase the chance to succeed Assessment of RE @ Agile
  • 34. Disadvantages Version 5.1 | 34 Fuzzy planning for product releases • No definite commitment, which requirement will be delivered when and at what cost More Management Resources needed: • Business analysts and product owner need to invest more time to participate in the RE Not used to: • Stakeholders need to change their mindset to adopt agile principles and practices Challenging • Small Teams need a larger range of skills and knowledge including RE No one size fits all • Big projects and safety critical systems need an appropriate approach  e.g. Traceability and change control of the requirements have to be guaranteed Assessment of RE @ Agile
  • 35. Recommendations – Improve classic RE Skills in Agile Teams Version 5.1 | 35 Product Owner (PO) needs classic RE Practices • Stakeholder Management • Source of Requirements • Elicitation Techniques • Use of the Kano Model • Methods for prioritizing (Kano, Cost/Benefit Analysis) Project teams need classic RE Practices (together with many other skills) • Elicitation Techniques (PO can delegate elicitation, but will remain accountable) • Improve and split the requirements (in Dialog with PO) • Validation of requirements (through Feedback) Assessment of RE @ Agile
  • 36. Recommendations – Structure RE Version 5.1 | 36 Control the abstraction level of the requirements • Long-term Planning (3 to 12 months in advance)  Goals describe the product vision from a business point of view • Medium-term Planning (1,5 to 6 months in advance)  Epics describe rough features in the product backlog  Backlog Refinement: Stories have to be split into easy to handle User Stories • Short-term Planning (1 to 3 sprints in advance)  User Stories detailed to a level appropriate to facilitate their implementation  Stories fulfill the definition of Ready and can be implemented in the next sprint Story Mapping • High-Level Use Case Model gives an overall picture of the product • Each User Story will incrementally increase the functionality of one Use Cases • Mapping: Refer the stories to the extended Use Cases Assessment of RE @ Agile
  • 37. Recommendations – Consider Constraints for RE Version 5.1 | 37 Industrial norms and process reference models formulate expectations for • The quality of the requirements documentation • The quality of the requirements engineering process Examples: • IEC 61508 (interbranch) • ISO 26262 (automotive) Agile Teams have to know and implement the standards of their respective domain • How they achieve this remains in their own sovereignty Approved Practices • Split User Stories into functional groups ( Story Mapping) • Add acceptance criteria to the User Stories • Map Traceability with a tool Assessment of RE @ Agile
  • 38. Thank you for your attention. Girish Khemani https://www.linkedin.com/in/girishkhemani

Editor's Notes

  1. Source: http://agilemanifesto.org/iso/en/manifesto.html