"What does analysis mean in a Continuous Delivery environment?" This is the presentation that Danilo Sato and I used in our talk at Agile Brazil 2012, in São Paulo, Brazil.
http://submissoes.agilebrazil.com/2012/sessions/516
7. development deployment
WHAT IS CONTINUOUS DELIVERY?
8. development deployment
WHAT IS CONTINUOUS DELIVERY?
business
&
product
9. Agile breaks this tradition
Smithers, we are going to build a giant
domain platform to take over the world,
I need you to find men to design, develop
and test before we roll it out to users.
Excellent...
12. Agile breaks this tradition
design
analysis
develop
test
24 months later deploy
13. Agile breaks this tradition
design
analysis
develop
test
24 months later deploy
AAaarrrrrrrrgggghhhhhhh
this isn’t what I want!!
Anybody recognises this?
14. AGILE 101
“Agile” team
analysis + design
development
customer testing + showcase
iteration 0 1 2 3 4
15. AGILE 101
“Agile” team
analysis + design IT operations
centralised QA
development QA + integration release + operation
customer testing + showcase
iteration 0 1 2 3 4
16. AGILE 101
“Agile” team
analysis + design IT operations
centralised QA
development QA + integration release + operation
customer testing + showcase
The “Last Mile”
iteration 0 1 2 3 4
17. AGILE 101
“Agile” team
analysis + design IT operations
centralised QA
development QA + integration release + operation
customer testing + showcase
The “Last Mile”
iteration 0 1 2 3 4
AAaarrrrrrrrgggghhhhhhh
this is still too slow!!
18. CONTINUOUS DELIVERY
customer
delivery
team
constant flow of new features into production
19. CONTINUOUS DELIVERY
customer
delivery
team
constant flow of new features into production
Software always production ready
Build quality in
Releases tied to business needs, not operational constraints
20. CONTINUOUS DELIVERY
customer
delivery
team
constant flow of new features into production
Software always production ready
Build quality in
Releases tied to business needs, not operational constraints
22. The path to ...
BUILD THE RIGHT THING
no
build
? no
build
yes
? no
build
yes
?
build
yes
?
23. The path to ...
BUILD THE RIGHT THING
no
build
? no
build
yes
? no
build
yes
?
build
2 years yes
?
10 months
1 quarter
MUCH shorter feedback cycle
Less guesswork, cost to adapt
24. WHY CD?
Build the right thing
Risk reduction
The only real measure of progress
26. HOW WILL YOUR FEATURE BE TESTED?
Not just QA tested
How will you know whether this feature is successful?
27. THINK BEYOND WORKING SOFTWARE
Used by customers, real people
Generates profit
Helps your employees
Want customers to like you
28. SMALL, INCREMENT STEPS
XP principle “What is the simplest thing that could possible work?”
Blur monitoring and testing
29. CONTINUOUS PRODUCT MANAGEMENT
You are not DONE when the feature is released
Engineering R&D intersects product development
Continuous feedback from existing features in production
30.
31. PLAN TO RETIRE
Removing features that are no longer valuable
Morphing existing into new
You don’t want to maintain bloated product with stale features
35. VALUE VS. COMPLETE-NESS
Do the least to get feedback Do all that I could think of
R&D, not first release! Binary approach
36. VALUE VS. COMPLETE-NESS
Do the least to get feedback Do all that I could think of
R&D, not first release! Binary approach
Future is guided by feedback Do & test everything at once
37. VALUE VS. COMPLETE-NESS
Do the least to get feedback Do all that I could think of
R&D, not first release! Binary approach
Future is guided by feedback Do & test everything at once
Innovation No research, blind development
38. VALUE VS. COMPLETE-NESS
Do the least to get feedback Do all that I could think of
R&D, not first release! Binary approach
Future is guided by feedback Do & test everything at once
Innovation No research, blind development
Step-by-step validation Assumes feature complete-ness as
success criteria
39. VALUE VS. COMPLETE-NESS
Do the least to get feedback Do all that I could think of
R&D, not first release! Binary approach
Future is guided by feedback Do & test everything at once
Innovation No research, blind development
Step-by-step validation Assumes feature complete-ness as
success criteria
Lower costs Risks opportunity costs
40. VALUE VS. COMPLETE-NESS
Do the least to get feedback Do all that I could think of
R&D, not first release! Binary approach
Future is guided by feedback Do & test everything at once
Innovation No research, blind development
Step-by-step validation Assumes feature complete-ness as
success criteria
Lower costs Risks opportunity costs
?
W hat if I get it wrong
41. VALUE VS. COMPLETE-NESS
Do the least to get feedback Do all that I could think of
R&D, not first release! Binary approach
Future is guided by feedback Do & test everything at once
Innovation No research, blind development
Step-by-step validation Assumes feature complete-ness as
success criteria
Lower costs Risks opportunity costs
?
W hat if I get it wrong
50. FEATURE, REDEFINED
X users have clicked on Peak time usage
this in the past week vs. off-peak usage
capture
feedback
X seconds less to
X% of entire online
complete task
customer base have used this
54. GET AWAY FROM BIG BANG
BIG BANG planning
• Big analysis to build big backlogs
• BDUF (Big Design Up-Front)
BIG BANG release
• Big ta-da approach to business stakeholders
55. GET AWAY FROM BIG BANG
BIG BANG planning
• Big analysis to build big backlogs
• BDUF (Big Design Up-Front)
What is ta-da?
BIG BANG release
• Big ta-da approach to business stakeholders
56.
57. PRUNE EXISTING FEATURES
What features are not used?
Which features do not contribute to the business value?
Remove technical debt to make you go faster
CD has been predominately technical so far, and less focus on the other end of the story, where business stakeholders and product manager play a huge part in, to truly enable the entire picture. CD has a purpose that extends beyond software development and deployment. These things are here to enable business.\n
CD has been predominately technical so far, and less focus on the other end of the story, where business stakeholders and product manager play a huge part in, to truly enable the entire picture. CD has a purpose that extends beyond software development and deployment. These things are here to enable business.\n
CD has been predominately technical so far, and less focus on the other end of the story, where business stakeholders and product manager play a huge part in, to truly enable the entire picture. CD has a purpose that extends beyond software development and deployment. These things are here to enable business.\n
[Breeze through]\n
[Breeze through]\n
[Breeze through]\n
[Breeze through]\n
[Breeze through]\n
[Breeze through]\n
[Breeze through]\n
[Breeze through] Agile teams have been practised in isolation. It’s almost like being really good at launching an arrow with a bow, but not looking at whether you’ve shot the target. This isolated effort still does not meet business needs as it is still very much dependent on the last mile.\n
[Breeze through] Agile teams have been practised in isolation. It’s almost like being really good at launching an arrow with a bow, but not looking at whether you’ve shot the target. This isolated effort still does not meet business needs as it is still very much dependent on the last mile.\n
[Breeze through] Agile teams have been practised in isolation. It’s almost like being really good at launching an arrow with a bow, but not looking at whether you’ve shot the target. This isolated effort still does not meet business needs as it is still very much dependent on the last mile.\n
[Breeze through] Enables business stakeholders to get feedback quickly.\nRequires the engineering team to build quality from day 1.\n
[Breeze through] Enables business stakeholders to get feedback quickly.\nRequires the engineering team to build quality from day 1.\n
[Breeze through] Enables business stakeholders to get feedback quickly.\nRequires the engineering team to build quality from day 1.\n
[Breeze through] Enables business stakeholders to get feedback quickly.\nRequires the engineering team to build quality from day 1.\n
[Breeze through] Must find out quickly (shortening path of fail fast, ”fail fast-forward”), before you get a successful product.\n
[Breeze through] Must find out quickly (shortening path of fail fast, ”fail fast-forward”), before you get a successful product.\n
[Breeze through] Must find out quickly (shortening path of fail fast, ”fail fast-forward”), before you get a successful product.\n
[Breeze through] Must find out quickly (shortening path of fail fast, ”fail fast-forward”), before you get a successful product.\n
[Breeze through] Must find out quickly (shortening path of fail fast, ”fail fast-forward”), before you get a successful product.\n
\n
First introduce principles, followed by practices\n
Ask yourselves this question, for every feature in each release.\n
CD makes us think beyond just delivery working software; not losing sight of the need for said software to be useful / successful / valuable / a meaningful tool.\n
Monitoring 2.0. Get useful information that gets fed back to R&D. Not just monitoring for sake of monitoring.\nNot the same as management monitoring.\n
Example: iPad app, build metrics to test features just launched.\nShow ‘how’ in the next section.\n
\n
Within successful products.\nFlickr: picnik, World Clock\nGithub: Fork Queue, Private Message\nFacebook: Add courses to profile\n
Conventional way of thinking teaches us to think of complete functionality as WHOLE.\nThat incomplete is to mean not good, not finished products, missing holes.\nBorrows from manufacturing analogy; software is not a manufacturing industry.\n
Looking at things differently\n
Looking at things differently\n
Looking at things differently\n
Looking at things differently\n
Looking at things differently\n
Looking at things differently\n
Looking at things differently\n
Looking at things differently\n
\n
\n
\n
Existing ‘usage’ of MVP. Define real concept. Ask real usage of MVP again.\nDropbox example. Validate before code is written.\nLean Startup Machine story - demonstrate validation technique.\n
1000s stories = wrong\nBlackhole rant\n
Not just forever adding features, but thinking about what you can take out as well.\n
\n
\n
\n
\n
The different things that analysis may include. Think of creative ways to get feedback quickly. Co-locate with team; collaborate with devs, designers, QAs, customers. Everybody.\n
Incorporate definition of done to the validation of features, not just released software.\n
\n
(Business cat has a message for us)\n
Need to be closer to business and customers to answer these questions.\n