SlideShare a Scribd company logo
1 of 29
DevConFu, Latvia
November2013

Requirements:
Who’s job are they anyway?
allan kelly
allan@allankelly.net
Twitter: @allankellynet
http://www.allankelly.net
Allan Kelly…
 Consulting on software

development & strategy
 Training for Agile
Author
– Changing Software Development: Learning to be
Agile (2008, Wiley)
– Business Patterns for Software Developers
(2012, Wiley - ISBN: 978-1119999249)
– Xanpan: Reflections on agile (work in progress)
https://leanpub.com/xanpan
Chapters in…
• Business Analysis and Leadership, Pullan & Archer
2013
• 97 Things Every Programmer Should
Know, Henney, 2010
• Context Encapsulation in Pattern Languages of
Program Design, vol#5, 2006
3 Styles of Agile
Evolutionary

•
•
•
•

Incremental

•
•
•
•

Iterative

•
•
•
•

Development team work in short iterations
Regular releases
Requirements emerge as team incorporates
feedback and discovers new opportunities
Cumulative flow diagrams
Development team work in short iterations
Minor releases frequent
Formal requirements document start
development with change request incorporated
Burn-up more than burn-down
Development team work in short iterations
Major releases infrequent
Formal requirements document (Salami Sliced) Formal change request process in place
Burn-down to completion
4
Who does
Requirements where
you work?
Hang on!
What is a Requirement
anyway?

And what’s the
difference between a
Requirement and a
Specification?
Requirement or Specification?
“A requirement is a stakeholderdesired, or needed, target or constraint”

Tom Gilb

“A ‘specification’ communicated
one or more system ideas and/or
descriptions to an intended
audience. A specification is usually
a formal, written means for
communicating information”

Competitive Engineering, 2005, p.400 & p. 418
A requirement is a desired relationship among phenomena
of the environment of a system, to be brought about by the
hardware/software machine that will be constructed and
installed in the environment.
A specification describes machine behaviour sufficient to
achieve the requirement.
A specification is a restricted kind of requirement …
Specifications are derived from requirements by reasoning
about the environment, …
These ideas, and some associated techniques of
description, are illustrated by a simple example.

Michael Jackson & Pamela Zave
Deriving Specifications from Requirements: An Example, ACM Press 1995
Requirements & Specification
• Specifications derive from Requirements
– Requirements come first

• A requirement
– Is the desired outcome

• A specification
– Context specific
– Contains details
Requirements
go In

Dev Team –
Coders,
Testers, etc. …

Blue Cards

Documents, Stories,
User Stories, Cukes,
Product Backlog Item,
Quantum of Value (QoV)
Business Value Increment (BVI)

Working Software
comes out
Requirements
go In

Dev Team –
Coders, Tester
s, etc. …

Team need to know
what is needed

Working Software
comes out

Specifications be
worked out inside if
necessary
Requirements
go In

Working Software
comes out

Stakeholders
don’t always
agree
Things change
An aside: Evaluation
• Who does your
evaluation?
• What criteria do
they use?

Please please
please!
Close the loop!
Keep work flowing!
Every 2 weeks….

Development Team

Working
software

Teams will be more
effective if arteries are clear
Requirements Engineering

The Need Side
Requirements go In

Stakeholders
don’t always
agree

Things change!
Nature Abhors: A Vacuum!
• If you are lucky…
– Someone will quietly come forward
– They will be competent & passionate
– They will double up their existing role

• If you are unlucky…
– Several people will assume the role
– They be be incompetent & passionate
– They will stop doing their existing role
Grass Creative Commons license from
WikiCommons by MarcusObal
Whose job a
Requirements?

It depends…
Business Analysts
Business Partners

Product Managers
Product Analysts

Architects, Developers, Dev Managers, Project
Managers, Testers, SMEs, ….

Well intentioned
amateurs

The Professionals

Requirements Engineering
Requirements?

Professionals

Product Managers &
Business Analysts

Amateurs

Subject Matter Experts
Domain Experts
Developers, Dev Managers,
Project Managers, Testers,
Architects….
Should developers do Reqs?
• Possibly…
– small work effort, small team

•
•
•
•

Are they presentable to customers?
Is it best use of their skills?
Do they have time?
Do they have empathy?
– with users/stakeholders?
Architects?
• Again: Is it the best use of skills?
– Do they have the skills?
– Do they have the time?

• Generally: No
– Architects have empathy with tech not people
– Architects represent tech & code
– Architects should be foil to Requirements people

• Only for systems were technology dominates
And the SME/Domain Expert…
• Sometimes
• Subject Matter Experts are great
for Specs
– Know detail

• But do they…
– Have Big Picture?
– Are they too close emotionally?
Rocket Scientists
• Combine multiple skill sets
– Domain knowledge, probably
spent time in field
– Technology, probably can code
– Probably have a PhD

• Probably have another title
– BA, Product Manager, Architect, …
– Chief Engineer
– Just roll with it - Who cares about
titles?
So who should?
• Requirements Engineers
– Business Analysts
– Product Managers
Requirements Sub-Species
Business Analyst
“The answers are in this
building”
• Works: Corporate
• Lives: Canary Wharf
• Users
• Wants: Happy Stakeholders
• Measured by: Cost
• Professional Proxy

Product Manager
“The answers are not in
this building”
• Works: Product Company
• Lives: Silicon Valley
• Customers
• Wants: Happy Customers
• Measure by: Revenue
• Professional Customer

Note: Plural of Customer is
The Market
Product Owner huh?
• Scrum Product Owner is the Bastard Child of
Business Analyst and Product Managers
– Neither one or other

• Product Owner as defined by Scrum is a pale
imitation of a Product Manager
• Product Owner is the really important role
– (but Scrum Master gets all the attention)

• Product Owner is useful alias for a BA or PM
– And others…
When worlds collide! “What’s the difference
“A customer has a choice
to use another product.
A user doesn’t.”
Allan Kelly

between a user and a
customer? The difference is
a customer has given you
their credit card data.”
FT 28 Jan 2013

Worlds are increasingly overlapping
• BAs need to pay more attention to out there
• Prod Mgrs need to pay more attention to in here
• Everyone needs to start with real customers
Feedback

  
Take-away
1. Who’s job is it?
– Horses for courses
•
•
•
•

Business Analyst
Product Manager
Specialist SME
Rocket Scientist SME

2. Do NOT tolerate vacuums
3. Product Owner is an alias
http://blog.allankelly.net

allan kelly
Software Strategy Ltd.
www.allankelly.net
allan@allankelly.net
Twitter: @allankellynet
Partners:

More Related Content

What's hot

Technical Excellence Doesn't Just Happen - AgileIndy 2016
Technical Excellence Doesn't Just Happen - AgileIndy 2016Technical Excellence Doesn't Just Happen - AgileIndy 2016
Technical Excellence Doesn't Just Happen - AgileIndy 2016Allison Pollard
 
The Perfect Product Owner
The Perfect Product OwnerThe Perfect Product Owner
The Perfect Product OwnerRichard Cheng
 
is TDD Dead? System Nature is the anwser!
is TDD Dead? System Nature is the anwser!is TDD Dead? System Nature is the anwser!
is TDD Dead? System Nature is the anwser!Diego Pacheco
 
Synerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software DevelopmentSynerzip
 
Austin product camp 11 Agile - doing vs being
Austin product camp 11   Agile - doing vs beingAustin product camp 11   Agile - doing vs being
Austin product camp 11 Agile - doing vs beingKelly Looney
 
Agile in the Federal Government
Agile in the Federal Government Agile in the Federal Government
Agile in the Federal Government Richard Cheng
 
"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall
"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall
"Challenges Faced by Testers Working on Agile Teams" by Aldo RallIndigoCube
 
Agile software development slide show
Agile software development slide showAgile software development slide show
Agile software development slide showGirish Nandagopal
 
Dare to Explore: Discover ET!
Dare to Explore: Discover ET!Dare to Explore: Discover ET!
Dare to Explore: Discover ET!Raj Indugula
 
Agile Roles #3 The Product Owner – What is this Mythical Beast?
Agile Roles #3 The Product Owner – What is this Mythical Beast?Agile Roles #3 The Product Owner – What is this Mythical Beast?
Agile Roles #3 The Product Owner – What is this Mythical Beast?Agile Auckland
 
Agile & Lean in Context
Agile & Lean in ContextAgile & Lean in Context
Agile & Lean in ContextChad
 
Building a Software Development Team - MaRS Best Practices
Building a Software Development Team - MaRS Best PracticesBuilding a Software Development Team - MaRS Best Practices
Building a Software Development Team - MaRS Best PracticesMaRS Discovery District
 
6- Agile.engine - Asad safari
6- Agile.engine - Asad safari6- Agile.engine - Asad safari
6- Agile.engine - Asad safariAli Moghadam
 

What's hot (20)

Technical Excellence Doesn't Just Happen - AgileIndy 2016
Technical Excellence Doesn't Just Happen - AgileIndy 2016Technical Excellence Doesn't Just Happen - AgileIndy 2016
Technical Excellence Doesn't Just Happen - AgileIndy 2016
 
Richard Wilburn - Lean Truth
Richard Wilburn - Lean TruthRichard Wilburn - Lean Truth
Richard Wilburn - Lean Truth
 
The Perfect Product Owner
The Perfect Product OwnerThe Perfect Product Owner
The Perfect Product Owner
 
is TDD Dead? System Nature is the anwser!
is TDD Dead? System Nature is the anwser!is TDD Dead? System Nature is the anwser!
is TDD Dead? System Nature is the anwser!
 
Leading agile teams
Leading agile teamsLeading agile teams
Leading agile teams
 
Synerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip Agile Software Development
Synerzip Agile Software Development
 
Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Austin product camp 11 Agile - doing vs being
Austin product camp 11   Agile - doing vs beingAustin product camp 11   Agile - doing vs being
Austin product camp 11 Agile - doing vs being
 
Agile in the Federal Government
Agile in the Federal Government Agile in the Federal Government
Agile in the Federal Government
 
Agile testing
Agile testingAgile testing
Agile testing
 
"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall
"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall
"Challenges Faced by Testers Working on Agile Teams" by Aldo Rall
 
Agile software development slide show
Agile software development slide showAgile software development slide show
Agile software development slide show
 
Dare to Explore: Discover ET!
Dare to Explore: Discover ET!Dare to Explore: Discover ET!
Dare to Explore: Discover ET!
 
Andriy bahlay
Andriy bahlay   Andriy bahlay
Andriy bahlay
 
Lean Mean & Agile 2009
Lean Mean & Agile 2009Lean Mean & Agile 2009
Lean Mean & Agile 2009
 
Value-Driven-Delivery
Value-Driven-DeliveryValue-Driven-Delivery
Value-Driven-Delivery
 
Agile Roles #3 The Product Owner – What is this Mythical Beast?
Agile Roles #3 The Product Owner – What is this Mythical Beast?Agile Roles #3 The Product Owner – What is this Mythical Beast?
Agile Roles #3 The Product Owner – What is this Mythical Beast?
 
Agile & Lean in Context
Agile & Lean in ContextAgile & Lean in Context
Agile & Lean in Context
 
Building a Software Development Team - MaRS Best Practices
Building a Software Development Team - MaRS Best PracticesBuilding a Software Development Team - MaRS Best Practices
Building a Software Development Team - MaRS Best Practices
 
6- Agile.engine - Asad safari
6- Agile.engine - Asad safari6- Agile.engine - Asad safari
6- Agile.engine - Asad safari
 

Similar to Requirements: Whose job are they anyway?

The End of Projects & what to do about it
The End of Projects & what to do about itThe End of Projects & what to do about it
The End of Projects & what to do about itallan kelly
 
Xanpan extended presentation
Xanpan extended presentationXanpan extended presentation
Xanpan extended presentationallan kelly
 
Agile UX Breakfast Briefing Jun13
Agile UX Breakfast Briefing Jun13Agile UX Breakfast Briefing Jun13
Agile UX Breakfast Briefing Jun13User Vision
 
Agile UX Breakfast Briefing jun13
Agile UX Breakfast Briefing jun13Agile UX Breakfast Briefing jun13
Agile UX Breakfast Briefing jun13Ross Philip
 
Is there a role for Project Managers and Business Analysts in Agile?
Is there a role for Project Managers and Business Analysts in Agile?Is there a role for Project Managers and Business Analysts in Agile?
Is there a role for Project Managers and Business Analysts in Agile?allan kelly
 
Agile in Action - Agile Overview for Developers
Agile in Action - Agile Overview for DevelopersAgile in Action - Agile Overview for Developers
Agile in Action - Agile Overview for DevelopersMatt Cowell
 
Getting Agile Right - Rebooting an Agile Organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile Organization in 100 days - Agile Tou...Getting Agile Right - Rebooting an Agile Organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile Organization in 100 days - Agile Tou...Maurizio Mancini
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - UXPA International
 
Machine Learning Vs. Deep Learning – An Example Implementation
Machine Learning Vs. Deep Learning – An Example ImplementationMachine Learning Vs. Deep Learning – An Example Implementation
Machine Learning Vs. Deep Learning – An Example ImplementationSynerzip
 
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...Maurizio Mancini
 
50500113 spiral-model
50500113 spiral-model50500113 spiral-model
50500113 spiral-modelasidharath
 
How to Plan for Hyper Growth Success by Slack Software Engineer
How to Plan for Hyper Growth Success by Slack Software EngineerHow to Plan for Hyper Growth Success by Slack Software Engineer
How to Plan for Hyper Growth Success by Slack Software EngineerProduct School
 
Agile Way to First Iteration
Agile Way to First IterationAgile Way to First Iteration
Agile Way to First IterationMikalai Alimenkou
 
Scrum Project Management with Jira as showcase
Scrum Project Management with Jira as showcaseScrum Project Management with Jira as showcase
Scrum Project Management with Jira as showcasejavadch
 
Fundamentals of agile tntu (2015-04-27)
Fundamentals of agile   tntu (2015-04-27)Fundamentals of agile   tntu (2015-04-27)
Fundamentals of agile tntu (2015-04-27)Oleg Nazarevych
 
Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4Marvin Heery
 
How to get the most from your E-Business Suite Developers
How to get the most from your E-Business Suite DevelopersHow to get the most from your E-Business Suite Developers
How to get the most from your E-Business Suite DevelopersAXIA Consulting Inc.
 
Tips & Tricks for Being a Successful Tech Lead
Tips & Tricks for Being a Successful Tech LeadTips & Tricks for Being a Successful Tech Lead
Tips & Tricks for Being a Successful Tech LeadBen Limmer
 

Similar to Requirements: Whose job are they anyway? (20)

The End of Projects & what to do about it
The End of Projects & what to do about itThe End of Projects & what to do about it
The End of Projects & what to do about it
 
Xanpan extended presentation
Xanpan extended presentationXanpan extended presentation
Xanpan extended presentation
 
Agile UX Breakfast Briefing Jun13
Agile UX Breakfast Briefing Jun13Agile UX Breakfast Briefing Jun13
Agile UX Breakfast Briefing Jun13
 
Agile UX Breakfast Briefing jun13
Agile UX Breakfast Briefing jun13Agile UX Breakfast Briefing jun13
Agile UX Breakfast Briefing jun13
 
Is there a role for Project Managers and Business Analysts in Agile?
Is there a role for Project Managers and Business Analysts in Agile?Is there a role for Project Managers and Business Analysts in Agile?
Is there a role for Project Managers and Business Analysts in Agile?
 
Agile in Action - Agile Overview for Developers
Agile in Action - Agile Overview for DevelopersAgile in Action - Agile Overview for Developers
Agile in Action - Agile Overview for Developers
 
Getting Agile Right - Rebooting an Agile Organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile Organization in 100 days - Agile Tou...Getting Agile Right - Rebooting an Agile Organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile Organization in 100 days - Agile Tou...
 
Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience -
 
Machine Learning Vs. Deep Learning – An Example Implementation
Machine Learning Vs. Deep Learning – An Example ImplementationMachine Learning Vs. Deep Learning – An Example Implementation
Machine Learning Vs. Deep Learning – An Example Implementation
 
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
Getting Agile Right - Rebooting an Agile organization in 100 days - Agile Tou...
 
50500113 spiral-model
50500113 spiral-model50500113 spiral-model
50500113 spiral-model
 
How to Plan for Hyper Growth Success by Slack Software Engineer
How to Plan for Hyper Growth Success by Slack Software EngineerHow to Plan for Hyper Growth Success by Slack Software Engineer
How to Plan for Hyper Growth Success by Slack Software Engineer
 
Agile Way to First Iteration
Agile Way to First IterationAgile Way to First Iteration
Agile Way to First Iteration
 
Scrum Project Management with Jira as showcase
Scrum Project Management with Jira as showcaseScrum Project Management with Jira as showcase
Scrum Project Management with Jira as showcase
 
Fundamentals of agile tntu (2015-04-27)
Fundamentals of agile   tntu (2015-04-27)Fundamentals of agile   tntu (2015-04-27)
Fundamentals of agile tntu (2015-04-27)
 
Agile tour 2016 final
Agile tour 2016 finalAgile tour 2016 final
Agile tour 2016 final
 
Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4Introduction To Agile Refresh Savannah July20 2010 V1 4
Introduction To Agile Refresh Savannah July20 2010 V1 4
 
How to get the most from your E-Business Suite Developers
How to get the most from your E-Business Suite DevelopersHow to get the most from your E-Business Suite Developers
How to get the most from your E-Business Suite Developers
 
Tips & Tricks for Being a Successful Tech Lead
Tips & Tricks for Being a Successful Tech LeadTips & Tricks for Being a Successful Tech Lead
Tips & Tricks for Being a Successful Tech Lead
 

More from allan kelly

Agile Digital and the new management paradigms
Agile Digital and the new management paradigmsAgile Digital and the new management paradigms
Agile Digital and the new management paradigmsallan kelly
 
Planning for Value: How much? When?
Planning for Value: How much? When?Planning for Value: How much? When?
Planning for Value: How much? When?allan kelly
 
Software Development is Upside Down
Software Development is Upside DownSoftware Development is Upside Down
Software Development is Upside Downallan kelly
 
Beyond Projects/#NoProjects
Beyond Projects/#NoProjectsBeyond Projects/#NoProjects
Beyond Projects/#NoProjectsallan kelly
 
Planning for Value: how much? when?
Planning for Value: how much? when?Planning for Value: how much? when?
Planning for Value: how much? when?allan kelly
 
Creating a culture of continuous delivery & value
Creating a culture of continuous delivery & valueCreating a culture of continuous delivery & value
Creating a culture of continuous delivery & valueallan kelly
 
Planning for Value
Planning for ValuePlanning for Value
Planning for Valueallan kelly
 
#NoProjects - Beyond Projects
#NoProjects - Beyond Projects#NoProjects - Beyond Projects
#NoProjects - Beyond Projectsallan kelly
 
#NoProjects - Teams over Projects
#NoProjects - Teams over Projects#NoProjects - Teams over Projects
#NoProjects - Teams over Projectsallan kelly
 
Every business a software business
Every business a software businessEvery business a software business
Every business a software businessallan kelly
 
Agile Outside Software: Does Agile work outside of sofware? #AOSW
Agile Outside Software: Does Agile work outside of sofware? #AOSWAgile Outside Software: Does Agile work outside of sofware? #AOSW
Agile Outside Software: Does Agile work outside of sofware? #AOSWallan kelly
 
No Projects - Beyond Projects (Refreshed version)
No Projects - Beyond Projects (Refreshed version)No Projects - Beyond Projects (Refreshed version)
No Projects - Beyond Projects (Refreshed version)allan kelly
 
No Projects / Beyond Projects (short version)
No Projects / Beyond Projects (short version)No Projects / Beyond Projects (short version)
No Projects / Beyond Projects (short version)allan kelly
 
Agile Outside Software
Agile Outside SoftwareAgile Outside Software
Agile Outside Softwareallan kelly
 
Do It Right, Then Do The Right Thing (Riga)
Do It Right, Then Do The Right Thing (Riga)Do It Right, Then Do The Right Thing (Riga)
Do It Right, Then Do The Right Thing (Riga)allan kelly
 
Dialogue Sheets for Retrospectives (Riga)
Dialogue Sheets for Retrospectives (Riga)Dialogue Sheets for Retrospectives (Riga)
Dialogue Sheets for Retrospectives (Riga)allan kelly
 
Conways Law & Continuous Delivery
Conways Law & Continuous DeliveryConways Law & Continuous Delivery
Conways Law & Continuous Deliveryallan kelly
 

More from allan kelly (20)

Agile Digital and the new management paradigms
Agile Digital and the new management paradigmsAgile Digital and the new management paradigms
Agile Digital and the new management paradigms
 
Planning for Value: How much? When?
Planning for Value: How much? When?Planning for Value: How much? When?
Planning for Value: How much? When?
 
Software Development is Upside Down
Software Development is Upside DownSoftware Development is Upside Down
Software Development is Upside Down
 
Beyond Projects/#NoProjects
Beyond Projects/#NoProjectsBeyond Projects/#NoProjects
Beyond Projects/#NoProjects
 
Planning for Value: how much? when?
Planning for Value: how much? when?Planning for Value: how much? when?
Planning for Value: how much? when?
 
Creating a culture of continuous delivery & value
Creating a culture of continuous delivery & valueCreating a culture of continuous delivery & value
Creating a culture of continuous delivery & value
 
Planning for Value
Planning for ValuePlanning for Value
Planning for Value
 
#NoProjects - Beyond Projects
#NoProjects - Beyond Projects#NoProjects - Beyond Projects
#NoProjects - Beyond Projects
 
#NoProjects - Teams over Projects
#NoProjects - Teams over Projects#NoProjects - Teams over Projects
#NoProjects - Teams over Projects
 
What isagile
What isagileWhat isagile
What isagile
 
Every business a software business
Every business a software businessEvery business a software business
Every business a software business
 
Agile Outside Software: Does Agile work outside of sofware? #AOSW
Agile Outside Software: Does Agile work outside of sofware? #AOSWAgile Outside Software: Does Agile work outside of sofware? #AOSW
Agile Outside Software: Does Agile work outside of sofware? #AOSW
 
No Projects - Beyond Projects (Refreshed version)
No Projects - Beyond Projects (Refreshed version)No Projects - Beyond Projects (Refreshed version)
No Projects - Beyond Projects (Refreshed version)
 
Agile Contracts
Agile ContractsAgile Contracts
Agile Contracts
 
No Projects / Beyond Projects (short version)
No Projects / Beyond Projects (short version)No Projects / Beyond Projects (short version)
No Projects / Beyond Projects (short version)
 
Agile Outside Software
Agile Outside SoftwareAgile Outside Software
Agile Outside Software
 
Agile basics
Agile basicsAgile basics
Agile basics
 
Do It Right, Then Do The Right Thing (Riga)
Do It Right, Then Do The Right Thing (Riga)Do It Right, Then Do The Right Thing (Riga)
Do It Right, Then Do The Right Thing (Riga)
 
Dialogue Sheets for Retrospectives (Riga)
Dialogue Sheets for Retrospectives (Riga)Dialogue Sheets for Retrospectives (Riga)
Dialogue Sheets for Retrospectives (Riga)
 
Conways Law & Continuous Delivery
Conways Law & Continuous DeliveryConways Law & Continuous Delivery
Conways Law & Continuous Delivery
 

Recently uploaded

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 

Recently uploaded (20)

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 

Requirements: Whose job are they anyway?

  • 1. DevConFu, Latvia November2013 Requirements: Who’s job are they anyway? allan kelly allan@allankelly.net Twitter: @allankellynet http://www.allankelly.net
  • 2. Allan Kelly…  Consulting on software development & strategy  Training for Agile Author – Changing Software Development: Learning to be Agile (2008, Wiley) – Business Patterns for Software Developers (2012, Wiley - ISBN: 978-1119999249) – Xanpan: Reflections on agile (work in progress) https://leanpub.com/xanpan Chapters in… • Business Analysis and Leadership, Pullan & Archer 2013 • 97 Things Every Programmer Should Know, Henney, 2010 • Context Encapsulation in Pattern Languages of Program Design, vol#5, 2006
  • 3. 3 Styles of Agile Evolutionary • • • • Incremental • • • • Iterative • • • • Development team work in short iterations Regular releases Requirements emerge as team incorporates feedback and discovers new opportunities Cumulative flow diagrams Development team work in short iterations Minor releases frequent Formal requirements document start development with change request incorporated Burn-up more than burn-down Development team work in short iterations Major releases infrequent Formal requirements document (Salami Sliced) Formal change request process in place Burn-down to completion 4
  • 5. Hang on! What is a Requirement anyway? And what’s the difference between a Requirement and a Specification?
  • 6. Requirement or Specification? “A requirement is a stakeholderdesired, or needed, target or constraint” Tom Gilb “A ‘specification’ communicated one or more system ideas and/or descriptions to an intended audience. A specification is usually a formal, written means for communicating information” Competitive Engineering, 2005, p.400 & p. 418
  • 7. A requirement is a desired relationship among phenomena of the environment of a system, to be brought about by the hardware/software machine that will be constructed and installed in the environment. A specification describes machine behaviour sufficient to achieve the requirement. A specification is a restricted kind of requirement … Specifications are derived from requirements by reasoning about the environment, … These ideas, and some associated techniques of description, are illustrated by a simple example. Michael Jackson & Pamela Zave Deriving Specifications from Requirements: An Example, ACM Press 1995
  • 8. Requirements & Specification • Specifications derive from Requirements – Requirements come first • A requirement – Is the desired outcome • A specification – Context specific – Contains details
  • 9. Requirements go In Dev Team – Coders, Testers, etc. … Blue Cards Documents, Stories, User Stories, Cukes, Product Backlog Item, Quantum of Value (QoV) Business Value Increment (BVI) Working Software comes out
  • 10. Requirements go In Dev Team – Coders, Tester s, etc. … Team need to know what is needed Working Software comes out Specifications be worked out inside if necessary
  • 11. Requirements go In Working Software comes out Stakeholders don’t always agree Things change
  • 12. An aside: Evaluation • Who does your evaluation? • What criteria do they use? Please please please! Close the loop!
  • 13. Keep work flowing! Every 2 weeks…. Development Team Working software Teams will be more effective if arteries are clear
  • 14. Requirements Engineering The Need Side Requirements go In Stakeholders don’t always agree Things change!
  • 15. Nature Abhors: A Vacuum! • If you are lucky… – Someone will quietly come forward – They will be competent & passionate – They will double up their existing role • If you are unlucky… – Several people will assume the role – They be be incompetent & passionate – They will stop doing their existing role Grass Creative Commons license from WikiCommons by MarcusObal
  • 17. Business Analysts Business Partners Product Managers Product Analysts Architects, Developers, Dev Managers, Project Managers, Testers, SMEs, …. Well intentioned amateurs The Professionals Requirements Engineering
  • 18. Requirements? Professionals Product Managers & Business Analysts Amateurs Subject Matter Experts Domain Experts Developers, Dev Managers, Project Managers, Testers, Architects….
  • 19. Should developers do Reqs? • Possibly… – small work effort, small team • • • • Are they presentable to customers? Is it best use of their skills? Do they have time? Do they have empathy? – with users/stakeholders?
  • 20. Architects? • Again: Is it the best use of skills? – Do they have the skills? – Do they have the time? • Generally: No – Architects have empathy with tech not people – Architects represent tech & code – Architects should be foil to Requirements people • Only for systems were technology dominates
  • 21. And the SME/Domain Expert… • Sometimes • Subject Matter Experts are great for Specs – Know detail • But do they… – Have Big Picture? – Are they too close emotionally?
  • 22. Rocket Scientists • Combine multiple skill sets – Domain knowledge, probably spent time in field – Technology, probably can code – Probably have a PhD • Probably have another title – BA, Product Manager, Architect, … – Chief Engineer – Just roll with it - Who cares about titles?
  • 23. So who should? • Requirements Engineers – Business Analysts – Product Managers
  • 24. Requirements Sub-Species Business Analyst “The answers are in this building” • Works: Corporate • Lives: Canary Wharf • Users • Wants: Happy Stakeholders • Measured by: Cost • Professional Proxy Product Manager “The answers are not in this building” • Works: Product Company • Lives: Silicon Valley • Customers • Wants: Happy Customers • Measure by: Revenue • Professional Customer Note: Plural of Customer is The Market
  • 25. Product Owner huh? • Scrum Product Owner is the Bastard Child of Business Analyst and Product Managers – Neither one or other • Product Owner as defined by Scrum is a pale imitation of a Product Manager • Product Owner is the really important role – (but Scrum Master gets all the attention) • Product Owner is useful alias for a BA or PM – And others…
  • 26. When worlds collide! “What’s the difference “A customer has a choice to use another product. A user doesn’t.” Allan Kelly between a user and a customer? The difference is a customer has given you their credit card data.” FT 28 Jan 2013 Worlds are increasingly overlapping • BAs need to pay more attention to out there • Prod Mgrs need to pay more attention to in here • Everyone needs to start with real customers
  • 28. Take-away 1. Who’s job is it? – Horses for courses • • • • Business Analyst Product Manager Specialist SME Rocket Scientist SME 2. Do NOT tolerate vacuums 3. Product Owner is an alias http://blog.allankelly.net allan kelly Software Strategy Ltd. www.allankelly.net allan@allankelly.net Twitter: @allankellynet