SlideShare a Scribd company logo
1 of 65
Download to read offline
Methodology Patterns 
A Different Approach to Create a Methodology for Your Project 
Agile Cambridge 2014 
Giovanni Asproni 
email: gasproni@asprotunity.com 
twitter: @gasproni 
linkedin: http://www.linkedin.com/in/gasproni
A Remark 
• Becoming “more Agile” is not the point 
• The point is about 
• Being more effective 
• Being more efficient 
• Enjoying work more
The Short Version (1/2) 
• Projects and teams differ, so one methodology 
won’t fit all of them — Alistair Cockburn 
• Managers and teams need guidance to create 
their own 
• ...using an evidence-based approach 
• Methodologies have formal and informal parts 
both equally important
The Short Version (2/2) 
• Haphazard mix and match of practices is not a solution 
• Patterns and Pattern languages can help 
• Describe what works and what doesn’t in a given context 
• Explain the trade-offs and ways to balance them 
• Allow the methodology to evolve as the needs change 
• Are evidence based
Methodology 
A software development methodology or system 
development methodology in software engineering 
is a framework that is used to structure, plan, and 
control the process of developing an information 
system. 
http://en.wikipedia.org/wiki/Software_development_methodology
Deliver the step. Install it with real stakeholders, so they get some 
of the planned measurable benefits. 
P3: Study: 
1. Determine the results of delivering the step. Obtain any relevant 
measurements: test, measure and sample, to establish the new 
performance levels and the new operational cost levels. Compare 
results to the short-term and long-term targets. 
2. Analyze the data and produce a feedback report for management. 
For example, use an Impact Estimation table as a tool to do this study 
task. 
P4: Act: 
1. Decide if this step succeeded, must be redone in whole or part, or 
Kanban 
Simplified Evo Process: Implement Evo Steps 
Spiral Model 
eXtreme Programming
Waterfall
DSDM 
Scrum 
Evo 
totally rejected. 
2. Take any required minor corrective actions (for example, bug-fixing) 
to ‘stabilize’ the system. 
Act 
Plan 
Do 
Study 
Analyze the 
Feedback Results 
from the Evo 
Step  the Current 
Environment 
Decide ‘What’ 
to do next 
Plan the Evo Step 
Perform the Evo 
Step 
Figure 10.3 
A simplified Evo process: implementing Evo steps. 
SO WHAT ARE SCRUM AND KANBAN ANYWAY? | 5 
• Measure the lead time (average time to complete one item, 
sometimes called “cycle time”), optimize the process to make 
lead time as small and predictable as possible. 
We collect useful Kanban links at: http://www.crisp.se/kanban 
I SYSTEM 
I ANALYSIS 
PROGRAM 
DESIGN 
I coo,.o 
TESTING 
I OPERATIONS 
Figure 2. Implementation steps to develop a large computer program for delivery to a customer. 
I believe in this concept, but the implementation described above is risky and invites failure. The 
problem is illustrated in Figure 4. The testing phase which occurs at the end of the development cycle is the 
first event for which timing, storage, input/output transfers, etc., are experienced as distinguished from 
analyzed. These phenomena are not precisely analyzable. They are not the solutions to the standard partial 
differential equations of mathematical physics for instance. Yet if these phenomena fail to satisfy the various 
external constraints, then invariably a major redesign is required. A simple octal patch or redo of some isolated 
code will not fix these kinds of difficulties. The required design changes are likely to be so disruptive that the 
software requirements upon which the design is based and which provides the rationale for everything are 
violated. Either the requirements must be modified, or a substantial change in the design is required. In effect 
the development process has returned to the origin and one can expect up to a lO0-percent overrun in schedule 
and/or costs. 
One might note that there has been a skipping-over of the analysis and code phases. One cannot, of 
course, produce software without these steps, but generally these phases are managed with relative ease and 
have little impact on requirements, design, and testing. In my experience there are whole departments 
consumed with the analysis of orbit mechanics, spacecraft attitude determination, mathematical optimization 
of payload activity and so forth, but when these departments have completed their difficult and complex work, 
the resultant program steps involvea few lines of serial arithmetic code. If in the execution of their difficult 
and complex work the analysts have made a mistake, the correction is invariably implemented by a minor 
change in the code with no disruptive feedback into the other development bases. 
However, I believe the illustrated approach to be fundamentally sound. The remainder of this 
discussion presents five additional features that must be added to this basic approach to eliminate most of the 
development risks. 
329 
FDD 
RAD 
Next release 
Inception Construction Transition 
Envision and plan Incrementally build a consumable solution Release solution 
DAD 
SAFe
Methodology (More Useful Definition) 
“Your ”methodology“ is everything you regularly do to 
get your software out. It includes who you hire, what you 
hire them for, how they work together, what they 
produce, and how they share. It is the combined job 
descriptions, procedures, and conventions of everyone 
on your team. It is the product of your particular 
ecosystem and is therefore a unique construction of your 
organization.” 
Alistair Cockburn
Deliver the step. Install it with real stakeholders, so they get some 
of the planned measurable benefits. 
P3: Study: 
1. Determine the results of delivering the step. Obtain any relevant 
measurements: test, measure and sample, to establish the new 
performance levels and the new operational cost levels. Compare 
results to the short-term and long-term targets. 
2. Analyze the data and produce a feedback report for management. 
For example, use an Impact Estimation table as a tool to do this study 
task. 
P4: Act: 
1. Decide if this step succeeded, must be redone in whole or part, or 
Kanban 
Simplified Evo Process: Implement Evo Steps 
Spiral Model 
eXtreme Programming
Waterfall
DSDM 
Scrum 
Evo 
totally rejected. 
2. Take any required minor corrective actions (for example, bug-fixing) 
to ‘stabilize’ the system. 
Act 
Plan 
Do 
Study 
Analyze the 
Feedback Results 
from the Evo 
Step  the Current 
Environment 
Decide ‘What’ 
to do next 
Plan the Evo Step 
Perform the Evo 
Step 
Figure 10.3 
A simplified Evo process: implementing Evo steps. 
SO WHAT ARE SCRUM AND KANBAN ANYWAY? | 5 
• Measure the lead time (average time to complete one item, 
sometimes called “cycle time”), optimize the process to make 
lead time as small and predictable as possible. 
We collect useful Kanban links at: http://www.crisp.se/kanban 
I SYSTEM 
I ANALYSIS 
PROGRAM 
DESIGN 
I coo,.o 
TESTING 
I OPERATIONS 
Figure 2. Implementation steps to develop a large computer program for delivery to a customer. 
I believe in this concept, but the implementation described above is risky and invites failure. The 
problem is illustrated in Figure 4. The testing phase which occurs at the end of the development cycle is the 
first event for which timing, storage, input/output transfers, etc., are experienced as distinguished from 
analyzed. These phenomena are not precisely analyzable. They are not the solutions to the standard partial 
differential equations of mathematical physics for instance. Yet if these phenomena fail to satisfy the various 
external constraints, then invariably a major redesign is required. A simple octal patch or redo of some isolated 
code will not fix these kinds of difficulties. The required design changes are likely to be so disruptive that the 
software requirements upon which the design is based and which provides the rationale for everything are 
violated. Either the requirements must be modified, or a substantial change in the design is required. In effect 
the development process has returned to the origin and one can expect up to a lO0-percent overrun in schedule 
and/or costs. 
One might note that there has been a skipping-over of the analysis and code phases. One cannot, of 
course, produce software without these steps, but generally these phases are managed with relative ease and 
have little impact on requirements, design, and testing. In my experience there are whole departments 
consumed with the analysis of orbit mechanics, spacecraft attitude determination, mathematical optimization 
of payload activity and so forth, but when these departments have completed their difficult and complex work, 
the resultant program steps involvea few lines of serial arithmetic code. If in the execution of their difficult 
and complex work the analysts have made a mistake, the correction is invariably implemented by a minor 
change in the code with no disruptive feedback into the other development bases. 
However, I believe the illustrated approach to be fundamentally sound. The remainder of this 
discussion presents five additional features that must be added to this basic approach to eliminate most of the 
development risks. 
329 
FDD 
RAD 
Next release 
Inception Construction Transition 
Envision and plan Incrementally build a consumable solution Release solution 
DAD 
SAFe
Formal vs Informal
Formal 
• Everything that is specified in your methodology book 
• Processes to follow 
• Mandatory meetings 
• Official roles 
• Reporting hierarchies 
• Coding standards 
• etc.
The Formal Parts Are Useful... 
• Avoid confusion 
• Reduce the occurrence of serious mistakes 
• Automate the mundane 
• Introduce new people to the process 
• Delineate responsibilities 
• Demonstrate visible progress 
• Curriculum for education 
Adapted from: “Agile Software Development”, Alistair Cockburn
Informal 
• Everything else you do but is not written anywhere 
• Coffee machine chats 
• Ask your mates 
• Impromptu meetings 
• Brown bag sessions 
• Politics 
• ...Anything else outside the formal part done to deliver the 
product
The Informal Parts Are Useful... 
• To get stuff done quicker 
• To spread knowledge 
• To take better decisions 
• To improve collaboration 
• Introduce new people to the process 
• Demonstrate visible progress 
• To create a better and more enjoyable workplace
The Problems With Off-the-shelf 
Methodologies
The mainstream debate focus is 
around finding “The Methodology”
The Never-ending Software Methodology 
Debate 
1. Start: Waterfall is the mainstream methodology 
2. The mainstream methodology shows some limitations 
3. Somebody proposes a new, or lesser-known, or almost forgotten 
methodology and shows how it addresses the limitations at step 
2 (and how it’s better than Waterfall, of course) 
4. After a long argument, heavily based on personal opinions, and 
often light on facts, the methodology at step 3 becomes the 
mainstream one 
5. Go to step 2
No consideration given to the informal 
bits and the surrounding context
Context 
Budget 
Skills 
Preferences 
Time 
Company culture 
Team culture 
Product 
Customer culture
The context and the 
methodology are strongly 
connected to each other.
Implementation details matter 
a lot
“Imitation is much slower and less effective 
in the world of management practices, in 
part because such practices depend on tacit 
knowledge and implementation skill, on 
knowing not just what to do but how to do 
it”
Comparing the effectiveness of 
two off-the-shelf methodologies 
in a given context is impractical
Limited empirical evidence
5 Principles of Evidence Based Management 
1. Face the hard facts, and build a culture in which people are encouraged to 
tell the truth, even if it is unpleasant. 
2. Be committed to fact based decision making -- which means being 
committed to getting the best evidence and using it to guide actions. 
3. Treat your organization as an unfinished prototype -- encourage 
experimentation and learning by doing. 
4. Look for the risks and drawbacks in what people recommend -- even the 
best medicine has side effects. 
5. Avoid basing decisions on untested but strongly held beliefs, what you 
have done in the past, or on uncritical benchmarking of what winners do. 
http://evidence-basedmanagement.com
Scarce information about 
limitations and potential 
issues
This is the paradox of design: Things that 
succeed teach us little beyond the fact that 
they have been successful; things that fail 
provide incontrovertible evidence that the 
limits of design have been exceeded. 
Emulating success risks failure; studying 
failure increases our chances of success
No guidance on the necessary 
skills to acquire and how to 
acquire them
Some Problems With Off-the-shelf 
Methodologies 
• The mainstream debate focus is around finding “The 
Methodology” 
• No consideration to the informal bits and the surrounding context 
• Implementation details matter a lot 
• Limited empirical evidence 
• Scarce information about limitations and potential issues 
• No guidance on the necessary skills to acquire and how to acquire 
them
A Revolutionary Idea
One methodology per project
…Not Really Revolutionary… 
The idea [of one methodology per project] has been re-derived a number of times. 
Capers Jones in his “Benchmarking” book made a nice argument for needing 65,000 
methodologies (back then, even). When I was doing my Dr. thesis, I found I 
couldn’t use the methodology-per-project as a new result, since there was 
ample previous research concluding the same 
… Working out that different projects need different processes/ methodologies is the 
easy part. Recognizing that EVERY project needs a different methodology is a 
hard pill to swallow, but a number of people have seen fit to swallow it. Those 
are not yet the hard or even critical parts… 
The ultimate question is, What To Do About It? HOW does one create a new 
methodology on every project without hosing the project budget? 
The thing the doctoral defense committee found most novel unusual surprising 
about my thesis was the idea of tailoring and tuning a methodology in stages / 
during/ a project via the reflection workshops. 
http://alistair.cockburn.us/Just-in-time+methodology+construction/v/slim
Methodology Frameworks Don’t Help Much 
Methodology frameworks are customizable 
up to a point, e.g., the Scrum Guide says: 
“Scrum’s roles, artifacts, events, 
and rules are immutable and 
although implementing only parts of 
Scrum is possible, the result is not 
Scrum. Scrum exists only in its 
entirety and functions well as a 
container for other techniques, 
methodologies, and practices.” 
http://www.scrumguides.org/scrum-guide.html
Methodologies Share Something 
Different methodologies mostly 
mix and match the same tools 
and practices differently
And many teams do that haphazardly
Measuring the effectiveness 
of a practice in a given context 
is doable
Some Studies 
• “A Comparison of Pair Programming to Inspections for Software 
Defect Reduction” - http://cs.adelaide.edu.au/users/ljiang/ 
research/ResearchInComputerScienceEducation/7276046.pdf 
• Test-Driven Development as a Defect-Reduction Practice - 
http://collaboration.csc.ncsu.edu/laurie/Papers/ 
williamsltestDrivenDevelopment.pdf 
• A study to investigate the impact of requirements instability on 
software defects - http://dl.acm.org/citation.cfm?id=986727 
• Etc.
Which Practices? 
• Practices can be 
• Technical 
• Management 
• Leadership 
• …And any other relevant classification 
• Some practices belong to several categories
Patterns and pattern 
languages provide 
guidance
...and are based on 
evidence
Parts Of A Pattern 
Pattern Name and Classification: A descriptive and unique name that helps in 
identifying and referring to the pattern. 
Intent: A description of the goal behind the pattern and the reason for using it. 
Also Known As: Other names for the pattern. 
Motivation (Forces): A scenario consisting of a problem and a context in which 
this pattern can be used. 
Applicability: Situations in which this pattern is usable; the context for the 
pattern. 
Consequences: A description of the results, side effects, and trade offs caused by 
using the pattern. 
Known Uses: Examples of real usages of the pattern. 
Related Patterns: Other patterns that have some relationship with the pattern; 
discussion of the differences between the pattern and similar patterns. 
Adapted from: http://en.wikipedia.org/wiki/Software_design_pattern
Example: Information Radiator
Before You Ask… 
• Patterns are not best practices 
• In fact, there are no best practices 
• Only useful, useless, or dysfunctional ones. 
Depending on the context
Pattern Languages 
From: http://scrum.jeffsutherland.com/2008/02/scrum-and-organizational-patterns.html
Pair Programming 
Moderate Bus Factor 
Collective Code 
Ownership 
Colocated Team
Patterns Are Useful Because… 
• Describe not only the positive effects, but also the contexts 
in which are known to work best, and the consequences of 
using them 
• The contexts and the consequences are particularly 
important 
• They determine the chances of success or failure of a 
practice in a particular project 
• Are very rarely discussed by the proponents of a 
particular methodology framework
Pattern Languages Are Useful Because… 
• Give an indication of which patterns work well or not so 
well with each other 
• Knowing that a particular pattern belongs to several 
pattern languages (e.g., technical and managerial) helps 
in understanding better all the implications of using it 
• Pre-packaged methodology frameworks tend to 
present practices as belonging to only one category 
• Leading people to ignore several other implications
Some Important Consequences 
• Free the mind from thinking in terms of Scrum, 
Kanban, Waterfall, etc. 
• Start to think of what is really important for the 
project without fear of doing something bad because 
we are not following the methodology by the book 
• There is no sacred book anymore 
• No need to be ashamed anymore for doing Scrum 
but not quite
A Methodology Is A Living Thing 
It has to change along with the 
surrounding context
Patterns and pattern 
languages change 
over time
Finding the Patterns
Using The Patterns 
Key to the success of any performance 
improvement initiative is understanding what to 
improve and why; yet it's both astonishing and 
disappointing how many improvement initiatives 
are launched without anyone asking and 
answering these two most primal questions
Using The Patterns 
• Set the main goals 
• Understand the context 
• Choose the patterns that best match goals and 
context 
• Inspect and adapt
Keep In Mind 
• The real context may be different from what you see 
• Defined vs Performed process 
• The methodology has to work for the people using 
it
Don’t Over-constrain The System 
• Choose only the practices that match your main 
goals 
• Leave secondary things alone 
• Let people have some initiative 
• You cannot predict everything 
• Remember the importance of the informal parts
Work To Rule 
Work-to-rule is an industrial action in which 
employees do no more than the minimum required 
by the rules of their contract, and follow safety or 
other regulations precisely in order to cause a 
slowdown, rather than to serve their purposes. 
http://en.wikipedia.org/wiki/Work-to-rule
Kanban 
What About These? 
Simplified Evo Process: Implement Evo Steps 
Spiral Model 
eXtreme Programming
Waterfall
DSDM 
Scrum 
Evo 
P2: Do: 
Deliver the step. Install it with real stakeholders, so they get some 
of the planned measurable benefits. 
P3: Study: 
1. Determine the results of delivering the step. Obtain any relevant 
measurements: test, measure and sample, to establish the new 
performance levels and the new operational cost levels. Compare 
results to the short-term and long-term targets. 
2. Analyze the data and produce a feedback report for management. 
For example, use an Impact Estimation table as a tool to do this study 
task. 
P4: Act: 
1. Decide if this step succeeded, must be redone in whole or part, or 
totally rejected. 
2. Take any required minor corrective actions (for example, bug-fixing) 
to ‘stabilize’ the system. 
Act 
Plan 
Do 
Study 
Analyze the 
Feedback Results 
from the Evo 
Step  the Current 
Environment 
Decide ‘What’ 
to do next 
Plan the Evo Step 
Perform the Evo 
Step 
Figure 10.3 
A simplified Evo process: implementing Evo steps. 
SO WHAT ARE SCRUM AND KANBAN ANYWAY? | 5 
• Measure the lead time (average time to complete one item, 
sometimes called “cycle time”), optimize the process to make 
lead time as small and predictable as possible. 
We collect useful Kanban links at: http://www.crisp.se/kanban 
I SYSTEM 
I ANALYSIS 
PROGRAM 
DESIGN 
I coo,.o 
TESTING 
I OPERATIONS 
Figure 2. Implementation steps to develop a large computer program for delivery to a customer. 
I believe in this concept, but the implementation described above is risky and invites failure. The 
problem is illustrated in Figure 4. The testing phase which occurs at the end of the development cycle is the 
first event for which timing, storage, input/output transfers, etc., are experienced as distinguished from 
analyzed. These phenomena are not precisely analyzable. They are not the solutions to the standard partial 
differential equations of mathematical physics for instance. Yet if these phenomena fail to satisfy the various 
external constraints, then invariably a major redesign is required. A simple octal patch or redo of some isolated 
code will not fix these kinds of difficulties. The required design changes are likely to be so disruptive that the 
software requirements upon which the design is based and which provides the rationale for everything are 
violated. Either the requirements must be modified, or a substantial change in the design is required. In effect 
the development process has returned to the origin and one can expect up to a lO0-percent overrun in schedule 
and/or costs. 
One might note that there has been a skipping-over of the analysis and code phases. One cannot, of 
course, produce software without these steps, but generally these phases are managed with relative ease and 
have little impact on requirements, design, and testing. In my experience there are whole departments 
consumed with the analysis of orbit mechanics, spacecraft attitude determination, mathematical optimization 
of payload activity and so forth, but when these departments have completed their difficult and complex work, 
the resultant program steps involvea few lines of serial arithmetic code. If in the execution of their difficult 
and complex work the analysts have made a mistake, the correction is invariably implemented by a minor 
change in the code with no disruptive feedback into the other development bases. 
However, I believe the illustrated approach to be fundamentally sound. The remainder of this 
discussion presents five additional features that must be added to this basic approach to eliminate most of the 
development risks. 
329 
FDD 
RAD 
Next release 
Inception Construction Transition 
Envision and plan Incrementally build a consumable solution Release solution 
DAD 
SAFe
What About Scaling up?
“None of the ideas presented here 
are new; they are just forgotten from 
time to time.” 
Alan J. Perlis, 1966 Turing Award Lecture. 
http://amturing.acm.org/award_winners/perlis_0132439.cfm

More Related Content

What's hot

Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process ModelsAhsan Rahim
 
Agile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile ProjectsAgile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile ProjectsPrashant Ram
 
Critical Chain Project Management & Theory of Constraints
Critical Chain Project Management & Theory of ConstraintsCritical Chain Project Management & Theory of Constraints
Critical Chain Project Management & Theory of ConstraintsAbhay Kumar
 
A Pattern-Language-for-software-Development
A Pattern-Language-for-software-DevelopmentA Pattern-Language-for-software-Development
A Pattern-Language-for-software-DevelopmentShiraz316
 
HKG15-904: Scrum and Kanban 101
HKG15-904: Scrum and Kanban 101HKG15-904: Scrum and Kanban 101
HKG15-904: Scrum and Kanban 101Linaro
 
Agile in an ANSI-748-C environment
Agile in an ANSI-748-C environmentAgile in an ANSI-748-C environment
Agile in an ANSI-748-C environmentGlen Alleman
 
Software Project Estimation
Software Project EstimationSoftware Project Estimation
Software Project EstimationFrank Vogelezang
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software EngineeringPurvik Rana
 
Critical chain primer
Critical chain primerCritical chain primer
Critical chain primerDan Klarman
 
Agile Practices - eXtreme Programming
Agile Practices - eXtreme ProgrammingAgile Practices - eXtreme Programming
Agile Practices - eXtreme ProgrammingAniruddha Chakrabarti
 
Agility and planning : tools and processes
Agility and planning  : tools and processesAgility and planning  : tools and processes
Agility and planning : tools and processesJérôme Kehrli
 
Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...
Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...
Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...Pragmatic Cohesion Consulting, LLC
 
From Principles to Strategies for Systems Engineering
From Principles to Strategies for Systems EngineeringFrom Principles to Strategies for Systems Engineering
From Principles to Strategies for Systems EngineeringGlen Alleman
 
Critical Chain Basics
Critical Chain BasicsCritical Chain Basics
Critical Chain BasicsJakub Linhart
 
Avoid software project horror stories - check the reality value of the estima...
Avoid software project horror stories - check the reality value of the estima...Avoid software project horror stories - check the reality value of the estima...
Avoid software project horror stories - check the reality value of the estima...Harold van Heeringen
 
Periodic Table of Agile Principles and Practices
Periodic Table of Agile Principles and PracticesPeriodic Table of Agile Principles and Practices
Periodic Table of Agile Principles and PracticesJérôme Kehrli
 
Seven Key Metrics to Improve Agile Performance
Seven Key Metrics to Improve Agile PerformanceSeven Key Metrics to Improve Agile Performance
Seven Key Metrics to Improve Agile PerformanceTechWell
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme ProgrammingNaresh Jain
 

What's hot (20)

Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
 
Agile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile ProjectsAgile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile Projects
 
Critical Chain Project Management & Theory of Constraints
Critical Chain Project Management & Theory of ConstraintsCritical Chain Project Management & Theory of Constraints
Critical Chain Project Management & Theory of Constraints
 
A Pattern-Language-for-software-Development
A Pattern-Language-for-software-DevelopmentA Pattern-Language-for-software-Development
A Pattern-Language-for-software-Development
 
HKG15-904: Scrum and Kanban 101
HKG15-904: Scrum and Kanban 101HKG15-904: Scrum and Kanban 101
HKG15-904: Scrum and Kanban 101
 
Agile in an ANSI-748-C environment
Agile in an ANSI-748-C environmentAgile in an ANSI-748-C environment
Agile in an ANSI-748-C environment
 
Software Project Estimation
Software Project EstimationSoftware Project Estimation
Software Project Estimation
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
 
Lean Software Delivery
Lean Software DeliveryLean Software Delivery
Lean Software Delivery
 
Critical chain primer
Critical chain primerCritical chain primer
Critical chain primer
 
Agile Practices - eXtreme Programming
Agile Practices - eXtreme ProgrammingAgile Practices - eXtreme Programming
Agile Practices - eXtreme Programming
 
Cen6070 chapter2
Cen6070 chapter2Cen6070 chapter2
Cen6070 chapter2
 
Agility and planning : tools and processes
Agility and planning  : tools and processesAgility and planning  : tools and processes
Agility and planning : tools and processes
 
Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...
Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...
Agile scope creep and the Golden Ratio – Balancing Project Flexibility and Co...
 
From Principles to Strategies for Systems Engineering
From Principles to Strategies for Systems EngineeringFrom Principles to Strategies for Systems Engineering
From Principles to Strategies for Systems Engineering
 
Critical Chain Basics
Critical Chain BasicsCritical Chain Basics
Critical Chain Basics
 
Avoid software project horror stories - check the reality value of the estima...
Avoid software project horror stories - check the reality value of the estima...Avoid software project horror stories - check the reality value of the estima...
Avoid software project horror stories - check the reality value of the estima...
 
Periodic Table of Agile Principles and Practices
Periodic Table of Agile Principles and PracticesPeriodic Table of Agile Principles and Practices
Periodic Table of Agile Principles and Practices
 
Seven Key Metrics to Improve Agile Performance
Seven Key Metrics to Improve Agile PerformanceSeven Key Metrics to Improve Agile Performance
Seven Key Metrics to Improve Agile Performance
 
Introduction to Extreme Programming
Introduction to Extreme ProgrammingIntroduction to Extreme Programming
Introduction to Extreme Programming
 

Viewers also liked

The Values and Principles of Agile Software Development
The Values and Principles of Agile Software DevelopmentThe Values and Principles of Agile Software Development
The Values and Principles of Agile Software DevelopmentBrad Appleton
 
Refactoring, Emergent Design & Evolutionary Architecture
Refactoring, Emergent Design & Evolutionary ArchitectureRefactoring, Emergent Design & Evolutionary Architecture
Refactoring, Emergent Design & Evolutionary ArchitectureBrad Appleton
 
Increase Your Intelligence 2014
Increase Your Intelligence 2014Increase Your Intelligence 2014
Increase Your Intelligence 2014Andrea Kuszewski
 
Creative Disobedience: How, When and Why to Break the Rules (from BIL 2014)
Creative Disobedience: How, When and Why to Break the Rules (from BIL 2014)Creative Disobedience: How, When and Why to Break the Rules (from BIL 2014)
Creative Disobedience: How, When and Why to Break the Rules (from BIL 2014)Andrea Kuszewski
 
Agile roundabout 2017 01 - keeping your ci-cd system as fast as it needs to be
Agile roundabout 2017 01 - keeping your ci-cd system as fast as it needs to beAgile roundabout 2017 01 - keeping your ci-cd system as fast as it needs to be
Agile roundabout 2017 01 - keeping your ci-cd system as fast as it needs to beAbraham Marin-Perez
 
JavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with MavenJavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with MavenAbraham Marin-Perez
 
Cursos Agile Think - Lean - 2/4
Cursos Agile Think - Lean - 2/4Cursos Agile Think - Lean - 2/4
Cursos Agile Think - Lean - 2/4André Vidal
 
Cursos Agile Think - Kanban - 3/4
Cursos Agile Think - Kanban - 3/4Cursos Agile Think - Kanban - 3/4
Cursos Agile Think - Kanban - 3/4André Vidal
 
Mountebank and you
Mountebank and youMountebank and you
Mountebank and youVodqaBLR
 
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4André Vidal
 
Expert Talks Cardiff 2017 - Keeping your ci-cd system as fast as it needs to be
Expert Talks Cardiff 2017 - Keeping your ci-cd system as fast as it needs to beExpert Talks Cardiff 2017 - Keeping your ci-cd system as fast as it needs to be
Expert Talks Cardiff 2017 - Keeping your ci-cd system as fast as it needs to beAbraham Marin-Perez
 
Keeping your CI/CD pipeline as fast as it needs to be
Keeping your CI/CD pipeline as fast as it needs to beKeeping your CI/CD pipeline as fast as it needs to be
Keeping your CI/CD pipeline as fast as it needs to beAbraham Marin-Perez
 
Cursos Agile Think - Framework Scrum - 1/4
Cursos Agile Think - Framework Scrum - 1/4Cursos Agile Think - Framework Scrum - 1/4
Cursos Agile Think - Framework Scrum - 1/4André Vidal
 
Livro AGILE THINK® CANVAS
Livro AGILE THINK® CANVAS Livro AGILE THINK® CANVAS
Livro AGILE THINK® CANVAS André Vidal
 
Merge hells!! feature toggles to the rescue
Merge hells!! feature toggles to the rescueMerge hells!! feature toggles to the rescue
Merge hells!! feature toggles to the rescueLeena N
 
Keeping Your CI/CD Pipeline as Fast as It Needs to Be
Keeping Your CI/CD Pipeline as Fast as It Needs to BeKeeping Your CI/CD Pipeline as Fast as It Needs to Be
Keeping Your CI/CD Pipeline as Fast as It Needs to BeAbraham Marin-Perez
 
Research design : The Blue print of the Research
Research design  : The Blue print of the ResearchResearch design  : The Blue print of the Research
Research design : The Blue print of the Researchjiwaji university
 
ReseQuantitative RESEARCH INSTRUMENT FOR DATA COLLECTIONarch pp
ReseQuantitative RESEARCH INSTRUMENT FOR DATA COLLECTIONarch ppReseQuantitative RESEARCH INSTRUMENT FOR DATA COLLECTIONarch pp
ReseQuantitative RESEARCH INSTRUMENT FOR DATA COLLECTIONarch ppIqra Shah
 
Tui Travel - Overcoming the Challenges of Agile Methods
Tui Travel - Overcoming the Challenges of Agile MethodsTui Travel - Overcoming the Challenges of Agile Methods
Tui Travel - Overcoming the Challenges of Agile MethodsDBmaestro - Database DevOps
 

Viewers also liked (20)

The Values and Principles of Agile Software Development
The Values and Principles of Agile Software DevelopmentThe Values and Principles of Agile Software Development
The Values and Principles of Agile Software Development
 
Refactoring, Emergent Design & Evolutionary Architecture
Refactoring, Emergent Design & Evolutionary ArchitectureRefactoring, Emergent Design & Evolutionary Architecture
Refactoring, Emergent Design & Evolutionary Architecture
 
Increase Your Intelligence 2014
Increase Your Intelligence 2014Increase Your Intelligence 2014
Increase Your Intelligence 2014
 
Creative Disobedience: How, When and Why to Break the Rules (from BIL 2014)
Creative Disobedience: How, When and Why to Break the Rules (from BIL 2014)Creative Disobedience: How, When and Why to Break the Rules (from BIL 2014)
Creative Disobedience: How, When and Why to Break the Rules (from BIL 2014)
 
Agile Requirements
Agile RequirementsAgile Requirements
Agile Requirements
 
Agile roundabout 2017 01 - keeping your ci-cd system as fast as it needs to be
Agile roundabout 2017 01 - keeping your ci-cd system as fast as it needs to beAgile roundabout 2017 01 - keeping your ci-cd system as fast as it needs to be
Agile roundabout 2017 01 - keeping your ci-cd system as fast as it needs to be
 
JavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with MavenJavaOne 2015: Scalable Continous Deployment with Maven
JavaOne 2015: Scalable Continous Deployment with Maven
 
Cursos Agile Think - Lean - 2/4
Cursos Agile Think - Lean - 2/4Cursos Agile Think - Lean - 2/4
Cursos Agile Think - Lean - 2/4
 
Cursos Agile Think - Kanban - 3/4
Cursos Agile Think - Kanban - 3/4Cursos Agile Think - Kanban - 3/4
Cursos Agile Think - Kanban - 3/4
 
Mountebank and you
Mountebank and youMountebank and you
Mountebank and you
 
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4Cursos Agile Think - Feature Driven Development (FDD) - 4/4
Cursos Agile Think - Feature Driven Development (FDD) - 4/4
 
Expert Talks Cardiff 2017 - Keeping your ci-cd system as fast as it needs to be
Expert Talks Cardiff 2017 - Keeping your ci-cd system as fast as it needs to beExpert Talks Cardiff 2017 - Keeping your ci-cd system as fast as it needs to be
Expert Talks Cardiff 2017 - Keeping your ci-cd system as fast as it needs to be
 
Keeping your CI/CD pipeline as fast as it needs to be
Keeping your CI/CD pipeline as fast as it needs to beKeeping your CI/CD pipeline as fast as it needs to be
Keeping your CI/CD pipeline as fast as it needs to be
 
Cursos Agile Think - Framework Scrum - 1/4
Cursos Agile Think - Framework Scrum - 1/4Cursos Agile Think - Framework Scrum - 1/4
Cursos Agile Think - Framework Scrum - 1/4
 
Livro AGILE THINK® CANVAS
Livro AGILE THINK® CANVAS Livro AGILE THINK® CANVAS
Livro AGILE THINK® CANVAS
 
Merge hells!! feature toggles to the rescue
Merge hells!! feature toggles to the rescueMerge hells!! feature toggles to the rescue
Merge hells!! feature toggles to the rescue
 
Keeping Your CI/CD Pipeline as Fast as It Needs to Be
Keeping Your CI/CD Pipeline as Fast as It Needs to BeKeeping Your CI/CD Pipeline as Fast as It Needs to Be
Keeping Your CI/CD Pipeline as Fast as It Needs to Be
 
Research design : The Blue print of the Research
Research design  : The Blue print of the ResearchResearch design  : The Blue print of the Research
Research design : The Blue print of the Research
 
ReseQuantitative RESEARCH INSTRUMENT FOR DATA COLLECTIONarch pp
ReseQuantitative RESEARCH INSTRUMENT FOR DATA COLLECTIONarch ppReseQuantitative RESEARCH INSTRUMENT FOR DATA COLLECTIONarch pp
ReseQuantitative RESEARCH INSTRUMENT FOR DATA COLLECTIONarch pp
 
Tui Travel - Overcoming the Challenges of Agile Methods
Tui Travel - Overcoming the Challenges of Agile MethodsTui Travel - Overcoming the Challenges of Agile Methods
Tui Travel - Overcoming the Challenges of Agile Methods
 

Similar to Methodology Patterns (Agile Cambridge 2014)

Naging The Development Of Large Software Systems
Naging The Development Of Large Software Systems Naging The Development Of Large Software Systems
Naging The Development Of Large Software Systems Software Guru
 
Managing Develop of Large Systems
Managing Develop of Large SystemsManaging Develop of Large Systems
Managing Develop of Large SystemsDaniloPereira341965
 
Real software engineering
Real software engineeringReal software engineering
Real software engineeringatr2006
 
Glenn Vanderburg — Real software engineering
Glenn Vanderburg — Real software engineeringGlenn Vanderburg — Real software engineering
Glenn Vanderburg — Real software engineeringatr2006
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.pptMohan Late
 
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISONSTATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISONijseajournal
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.Masoud Kalali
 
Estimating test effort part 1 of 2
Estimating test effort part 1 of 2Estimating test effort part 1 of 2
Estimating test effort part 1 of 2Ian McDonald
 
Lect2 conventional software management
Lect2 conventional software managementLect2 conventional software management
Lect2 conventional software managementmeena466141
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsHassan A-j
 
Performance Testing in Agile Process
Performance Testing in Agile ProcessPerformance Testing in Agile Process
Performance Testing in Agile ProcessIdexcel Technologies
 
Fromscrumtokanbantowardlean
FromscrumtokanbantowardleanFromscrumtokanbantowardlean
FromscrumtokanbantowardleanLuca Aliberti
 
Pm soln9416141129710
Pm soln9416141129710Pm soln9416141129710
Pm soln9416141129710Nikhil Todkar
 
Adm Initial Proposal
Adm Initial ProposalAdm Initial Proposal
Adm Initial Proposalcfry
 

Similar to Methodology Patterns (Agile Cambridge 2014) (20)

Naging The Development Of Large Software Systems
Naging The Development Of Large Software Systems Naging The Development Of Large Software Systems
Naging The Development Of Large Software Systems
 
Managing Develop of Large Systems
Managing Develop of Large SystemsManaging Develop of Large Systems
Managing Develop of Large Systems
 
Real software engineering
Real software engineeringReal software engineering
Real software engineering
 
Glenn Vanderburg — Real software engineering
Glenn Vanderburg — Real software engineeringGlenn Vanderburg — Real software engineering
Glenn Vanderburg — Real software engineering
 
Introduction to Scrum.ppt
Introduction to Scrum.pptIntroduction to Scrum.ppt
Introduction to Scrum.ppt
 
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISONSTATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
STATISTICAL ANALYSIS FOR PERFORMANCE COMPARISON
 
An overview of software development methodologies.
An overview of software development methodologies.An overview of software development methodologies.
An overview of software development methodologies.
 
ID, UP, & RUP.pptx
ID, UP, & RUP.pptxID, UP, & RUP.pptx
ID, UP, & RUP.pptx
 
Estimating test effort part 1 of 2
Estimating test effort part 1 of 2Estimating test effort part 1 of 2
Estimating test effort part 1 of 2
 
Dev ops
Dev opsDev ops
Dev ops
 
Lect2 conventional software management
Lect2 conventional software managementLect2 conventional software management
Lect2 conventional software management
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software models
Software modelsSoftware models
Software models
 
Performance Testing in Agile Process
Performance Testing in Agile ProcessPerformance Testing in Agile Process
Performance Testing in Agile Process
 
Unified Process
Unified Process Unified Process
Unified Process
 
Fromscrumtokanbantowardlean
FromscrumtokanbantowardleanFromscrumtokanbantowardlean
Fromscrumtokanbantowardlean
 
Pm soln9416141129710
Pm soln9416141129710Pm soln9416141129710
Pm soln9416141129710
 
Adm Initial Proposal
Adm Initial ProposalAdm Initial Proposal
Adm Initial Proposal
 
My 15 day intern report
My 15 day intern reportMy 15 day intern report
My 15 day intern report
 
reaserch ppt.pptx
reaserch ppt.pptxreaserch ppt.pptx
reaserch ppt.pptx
 

More from Giovanni Asproni

Remote Mob Programming In A High Stakes Environment (Agile Manchester 2023)
Remote Mob Programming In A High Stakes Environment (Agile Manchester 2023)Remote Mob Programming In A High Stakes Environment (Agile Manchester 2023)
Remote Mob Programming In A High Stakes Environment (Agile Manchester 2023)Giovanni Asproni
 
Remote mobprogrammingina highstakesenvironment
Remote mobprogrammingina highstakesenvironmentRemote mobprogrammingina highstakesenvironment
Remote mobprogrammingina highstakesenvironmentGiovanni Asproni
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemGiovanni Asproni
 
Scaling Agile Done Right (XP 2017 version)
Scaling Agile Done Right (XP 2017 version)Scaling Agile Done Right (XP 2017 version)
Scaling Agile Done Right (XP 2017 version)Giovanni Asproni
 
Scaling Agile Done Right (Agile Manchester 2017)
Scaling Agile Done Right (Agile Manchester 2017)Scaling Agile Done Right (Agile Manchester 2017)
Scaling Agile Done Right (Agile Manchester 2017)Giovanni Asproni
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemGiovanni Asproni
 
Writing usableap isinpractice
Writing usableap isinpracticeWriting usableap isinpractice
Writing usableap isinpracticeGiovanni Asproni
 

More from Giovanni Asproni (9)

Remote Mob Programming In A High Stakes Environment (Agile Manchester 2023)
Remote Mob Programming In A High Stakes Environment (Agile Manchester 2023)Remote Mob Programming In A High Stakes Environment (Agile Manchester 2023)
Remote Mob Programming In A High Stakes Environment (Agile Manchester 2023)
 
Remote mobprogrammingina highstakesenvironment
Remote mobprogrammingina highstakesenvironmentRemote mobprogrammingina highstakesenvironment
Remote mobprogrammingina highstakesenvironment
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your System
 
Scaling Agile Done Right (XP 2017 version)
Scaling Agile Done Right (XP 2017 version)Scaling Agile Done Right (XP 2017 version)
Scaling Agile Done Right (XP 2017 version)
 
Scaling Agile Done Right (Agile Manchester 2017)
Scaling Agile Done Right (Agile Manchester 2017)Scaling Agile Done Right (Agile Manchester 2017)
Scaling Agile Done Right (Agile Manchester 2017)
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your System
 
Design For Testability
Design For TestabilityDesign For Testability
Design For Testability
 
Faking Hell
Faking HellFaking Hell
Faking Hell
 
Writing usableap isinpractice
Writing usableap isinpracticeWriting usableap isinpractice
Writing usableap isinpractice
 

Recently uploaded

UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Anthony Dahanne
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesVictoriaMetrics
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecturerahul_net
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfRTS corp
 
eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolsosttopstonverter
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptxVinzoCenzo
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...OnePlan Solutions
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITmanoharjgpsolutions
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 

Recently uploaded (20)

UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 Updates
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecture
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdfEnhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
Enhancing Supply Chain Visibility with Cargo Cloud Solutions.pdf
 
eSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration toolseSoftTools IMAP Backup Software and migration tools
eSoftTools IMAP Backup Software and migration tools
 
Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptx
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
 
Best Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh ITBest Angular 17 Classroom & Online training - Naresh IT
Best Angular 17 Classroom & Online training - Naresh IT
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 

Methodology Patterns (Agile Cambridge 2014)

  • 1. Methodology Patterns A Different Approach to Create a Methodology for Your Project Agile Cambridge 2014 Giovanni Asproni email: gasproni@asprotunity.com twitter: @gasproni linkedin: http://www.linkedin.com/in/gasproni
  • 2. A Remark • Becoming “more Agile” is not the point • The point is about • Being more effective • Being more efficient • Enjoying work more
  • 3. The Short Version (1/2) • Projects and teams differ, so one methodology won’t fit all of them — Alistair Cockburn • Managers and teams need guidance to create their own • ...using an evidence-based approach • Methodologies have formal and informal parts both equally important
  • 4. The Short Version (2/2) • Haphazard mix and match of practices is not a solution • Patterns and Pattern languages can help • Describe what works and what doesn’t in a given context • Explain the trade-offs and ways to balance them • Allow the methodology to evolve as the needs change • Are evidence based
  • 5. Methodology A software development methodology or system development methodology in software engineering is a framework that is used to structure, plan, and control the process of developing an information system. http://en.wikipedia.org/wiki/Software_development_methodology
  • 6. Deliver the step. Install it with real stakeholders, so they get some of the planned measurable benefits. P3: Study: 1. Determine the results of delivering the step. Obtain any relevant measurements: test, measure and sample, to establish the new performance levels and the new operational cost levels. Compare results to the short-term and long-term targets. 2. Analyze the data and produce a feedback report for management. For example, use an Impact Estimation table as a tool to do this study task. P4: Act: 1. Decide if this step succeeded, must be redone in whole or part, or Kanban Simplified Evo Process: Implement Evo Steps Spiral Model eXtreme Programming
  • 8. DSDM Scrum Evo totally rejected. 2. Take any required minor corrective actions (for example, bug-fixing) to ‘stabilize’ the system. Act Plan Do Study Analyze the Feedback Results from the Evo Step the Current Environment Decide ‘What’ to do next Plan the Evo Step Perform the Evo Step Figure 10.3 A simplified Evo process: implementing Evo steps. SO WHAT ARE SCRUM AND KANBAN ANYWAY? | 5 • Measure the lead time (average time to complete one item, sometimes called “cycle time”), optimize the process to make lead time as small and predictable as possible. We collect useful Kanban links at: http://www.crisp.se/kanban I SYSTEM I ANALYSIS PROGRAM DESIGN I coo,.o TESTING I OPERATIONS Figure 2. Implementation steps to develop a large computer program for delivery to a customer. I believe in this concept, but the implementation described above is risky and invites failure. The problem is illustrated in Figure 4. The testing phase which occurs at the end of the development cycle is the first event for which timing, storage, input/output transfers, etc., are experienced as distinguished from analyzed. These phenomena are not precisely analyzable. They are not the solutions to the standard partial differential equations of mathematical physics for instance. Yet if these phenomena fail to satisfy the various external constraints, then invariably a major redesign is required. A simple octal patch or redo of some isolated code will not fix these kinds of difficulties. The required design changes are likely to be so disruptive that the software requirements upon which the design is based and which provides the rationale for everything are violated. Either the requirements must be modified, or a substantial change in the design is required. In effect the development process has returned to the origin and one can expect up to a lO0-percent overrun in schedule and/or costs. One might note that there has been a skipping-over of the analysis and code phases. One cannot, of course, produce software without these steps, but generally these phases are managed with relative ease and have little impact on requirements, design, and testing. In my experience there are whole departments consumed with the analysis of orbit mechanics, spacecraft attitude determination, mathematical optimization of payload activity and so forth, but when these departments have completed their difficult and complex work, the resultant program steps involvea few lines of serial arithmetic code. If in the execution of their difficult and complex work the analysts have made a mistake, the correction is invariably implemented by a minor change in the code with no disruptive feedback into the other development bases. However, I believe the illustrated approach to be fundamentally sound. The remainder of this discussion presents five additional features that must be added to this basic approach to eliminate most of the development risks. 329 FDD RAD Next release Inception Construction Transition Envision and plan Incrementally build a consumable solution Release solution DAD SAFe
  • 9. Methodology (More Useful Definition) “Your ”methodology“ is everything you regularly do to get your software out. It includes who you hire, what you hire them for, how they work together, what they produce, and how they share. It is the combined job descriptions, procedures, and conventions of everyone on your team. It is the product of your particular ecosystem and is therefore a unique construction of your organization.” Alistair Cockburn
  • 10. Deliver the step. Install it with real stakeholders, so they get some of the planned measurable benefits. P3: Study: 1. Determine the results of delivering the step. Obtain any relevant measurements: test, measure and sample, to establish the new performance levels and the new operational cost levels. Compare results to the short-term and long-term targets. 2. Analyze the data and produce a feedback report for management. For example, use an Impact Estimation table as a tool to do this study task. P4: Act: 1. Decide if this step succeeded, must be redone in whole or part, or Kanban Simplified Evo Process: Implement Evo Steps Spiral Model eXtreme Programming
  • 12. DSDM Scrum Evo totally rejected. 2. Take any required minor corrective actions (for example, bug-fixing) to ‘stabilize’ the system. Act Plan Do Study Analyze the Feedback Results from the Evo Step the Current Environment Decide ‘What’ to do next Plan the Evo Step Perform the Evo Step Figure 10.3 A simplified Evo process: implementing Evo steps. SO WHAT ARE SCRUM AND KANBAN ANYWAY? | 5 • Measure the lead time (average time to complete one item, sometimes called “cycle time”), optimize the process to make lead time as small and predictable as possible. We collect useful Kanban links at: http://www.crisp.se/kanban I SYSTEM I ANALYSIS PROGRAM DESIGN I coo,.o TESTING I OPERATIONS Figure 2. Implementation steps to develop a large computer program for delivery to a customer. I believe in this concept, but the implementation described above is risky and invites failure. The problem is illustrated in Figure 4. The testing phase which occurs at the end of the development cycle is the first event for which timing, storage, input/output transfers, etc., are experienced as distinguished from analyzed. These phenomena are not precisely analyzable. They are not the solutions to the standard partial differential equations of mathematical physics for instance. Yet if these phenomena fail to satisfy the various external constraints, then invariably a major redesign is required. A simple octal patch or redo of some isolated code will not fix these kinds of difficulties. The required design changes are likely to be so disruptive that the software requirements upon which the design is based and which provides the rationale for everything are violated. Either the requirements must be modified, or a substantial change in the design is required. In effect the development process has returned to the origin and one can expect up to a lO0-percent overrun in schedule and/or costs. One might note that there has been a skipping-over of the analysis and code phases. One cannot, of course, produce software without these steps, but generally these phases are managed with relative ease and have little impact on requirements, design, and testing. In my experience there are whole departments consumed with the analysis of orbit mechanics, spacecraft attitude determination, mathematical optimization of payload activity and so forth, but when these departments have completed their difficult and complex work, the resultant program steps involvea few lines of serial arithmetic code. If in the execution of their difficult and complex work the analysts have made a mistake, the correction is invariably implemented by a minor change in the code with no disruptive feedback into the other development bases. However, I believe the illustrated approach to be fundamentally sound. The remainder of this discussion presents five additional features that must be added to this basic approach to eliminate most of the development risks. 329 FDD RAD Next release Inception Construction Transition Envision and plan Incrementally build a consumable solution Release solution DAD SAFe
  • 14. Formal • Everything that is specified in your methodology book • Processes to follow • Mandatory meetings • Official roles • Reporting hierarchies • Coding standards • etc.
  • 15. The Formal Parts Are Useful... • Avoid confusion • Reduce the occurrence of serious mistakes • Automate the mundane • Introduce new people to the process • Delineate responsibilities • Demonstrate visible progress • Curriculum for education Adapted from: “Agile Software Development”, Alistair Cockburn
  • 16. Informal • Everything else you do but is not written anywhere • Coffee machine chats • Ask your mates • Impromptu meetings • Brown bag sessions • Politics • ...Anything else outside the formal part done to deliver the product
  • 17. The Informal Parts Are Useful... • To get stuff done quicker • To spread knowledge • To take better decisions • To improve collaboration • Introduce new people to the process • Demonstrate visible progress • To create a better and more enjoyable workplace
  • 18. The Problems With Off-the-shelf Methodologies
  • 19. The mainstream debate focus is around finding “The Methodology”
  • 20. The Never-ending Software Methodology Debate 1. Start: Waterfall is the mainstream methodology 2. The mainstream methodology shows some limitations 3. Somebody proposes a new, or lesser-known, or almost forgotten methodology and shows how it addresses the limitations at step 2 (and how it’s better than Waterfall, of course) 4. After a long argument, heavily based on personal opinions, and often light on facts, the methodology at step 3 becomes the mainstream one 5. Go to step 2
  • 21. No consideration given to the informal bits and the surrounding context
  • 22. Context Budget Skills Preferences Time Company culture Team culture Product Customer culture
  • 23. The context and the methodology are strongly connected to each other.
  • 25. “Imitation is much slower and less effective in the world of management practices, in part because such practices depend on tacit knowledge and implementation skill, on knowing not just what to do but how to do it”
  • 26. Comparing the effectiveness of two off-the-shelf methodologies in a given context is impractical
  • 28. 5 Principles of Evidence Based Management 1. Face the hard facts, and build a culture in which people are encouraged to tell the truth, even if it is unpleasant. 2. Be committed to fact based decision making -- which means being committed to getting the best evidence and using it to guide actions. 3. Treat your organization as an unfinished prototype -- encourage experimentation and learning by doing. 4. Look for the risks and drawbacks in what people recommend -- even the best medicine has side effects. 5. Avoid basing decisions on untested but strongly held beliefs, what you have done in the past, or on uncritical benchmarking of what winners do. http://evidence-basedmanagement.com
  • 29. Scarce information about limitations and potential issues
  • 30. This is the paradox of design: Things that succeed teach us little beyond the fact that they have been successful; things that fail provide incontrovertible evidence that the limits of design have been exceeded. Emulating success risks failure; studying failure increases our chances of success
  • 31. No guidance on the necessary skills to acquire and how to acquire them
  • 32. Some Problems With Off-the-shelf Methodologies • The mainstream debate focus is around finding “The Methodology” • No consideration to the informal bits and the surrounding context • Implementation details matter a lot • Limited empirical evidence • Scarce information about limitations and potential issues • No guidance on the necessary skills to acquire and how to acquire them
  • 35. …Not Really Revolutionary… The idea [of one methodology per project] has been re-derived a number of times. Capers Jones in his “Benchmarking” book made a nice argument for needing 65,000 methodologies (back then, even). When I was doing my Dr. thesis, I found I couldn’t use the methodology-per-project as a new result, since there was ample previous research concluding the same … Working out that different projects need different processes/ methodologies is the easy part. Recognizing that EVERY project needs a different methodology is a hard pill to swallow, but a number of people have seen fit to swallow it. Those are not yet the hard or even critical parts… The ultimate question is, What To Do About It? HOW does one create a new methodology on every project without hosing the project budget? The thing the doctoral defense committee found most novel unusual surprising about my thesis was the idea of tailoring and tuning a methodology in stages / during/ a project via the reflection workshops. http://alistair.cockburn.us/Just-in-time+methodology+construction/v/slim
  • 36. Methodology Frameworks Don’t Help Much Methodology frameworks are customizable up to a point, e.g., the Scrum Guide says: “Scrum’s roles, artifacts, events, and rules are immutable and although implementing only parts of Scrum is possible, the result is not Scrum. Scrum exists only in its entirety and functions well as a container for other techniques, methodologies, and practices.” http://www.scrumguides.org/scrum-guide.html
  • 37. Methodologies Share Something Different methodologies mostly mix and match the same tools and practices differently
  • 38. And many teams do that haphazardly
  • 39. Measuring the effectiveness of a practice in a given context is doable
  • 40. Some Studies • “A Comparison of Pair Programming to Inspections for Software Defect Reduction” - http://cs.adelaide.edu.au/users/ljiang/ research/ResearchInComputerScienceEducation/7276046.pdf • Test-Driven Development as a Defect-Reduction Practice - http://collaboration.csc.ncsu.edu/laurie/Papers/ williamsltestDrivenDevelopment.pdf • A study to investigate the impact of requirements instability on software defects - http://dl.acm.org/citation.cfm?id=986727 • Etc.
  • 41. Which Practices? • Practices can be • Technical • Management • Leadership • …And any other relevant classification • Some practices belong to several categories
  • 42. Patterns and pattern languages provide guidance
  • 43. ...and are based on evidence
  • 44. Parts Of A Pattern Pattern Name and Classification: A descriptive and unique name that helps in identifying and referring to the pattern. Intent: A description of the goal behind the pattern and the reason for using it. Also Known As: Other names for the pattern. Motivation (Forces): A scenario consisting of a problem and a context in which this pattern can be used. Applicability: Situations in which this pattern is usable; the context for the pattern. Consequences: A description of the results, side effects, and trade offs caused by using the pattern. Known Uses: Examples of real usages of the pattern. Related Patterns: Other patterns that have some relationship with the pattern; discussion of the differences between the pattern and similar patterns. Adapted from: http://en.wikipedia.org/wiki/Software_design_pattern
  • 46. Before You Ask… • Patterns are not best practices • In fact, there are no best practices • Only useful, useless, or dysfunctional ones. Depending on the context
  • 47. Pattern Languages From: http://scrum.jeffsutherland.com/2008/02/scrum-and-organizational-patterns.html
  • 48. Pair Programming Moderate Bus Factor Collective Code Ownership Colocated Team
  • 49. Patterns Are Useful Because… • Describe not only the positive effects, but also the contexts in which are known to work best, and the consequences of using them • The contexts and the consequences are particularly important • They determine the chances of success or failure of a practice in a particular project • Are very rarely discussed by the proponents of a particular methodology framework
  • 50. Pattern Languages Are Useful Because… • Give an indication of which patterns work well or not so well with each other • Knowing that a particular pattern belongs to several pattern languages (e.g., technical and managerial) helps in understanding better all the implications of using it • Pre-packaged methodology frameworks tend to present practices as belonging to only one category • Leading people to ignore several other implications
  • 51. Some Important Consequences • Free the mind from thinking in terms of Scrum, Kanban, Waterfall, etc. • Start to think of what is really important for the project without fear of doing something bad because we are not following the methodology by the book • There is no sacred book anymore • No need to be ashamed anymore for doing Scrum but not quite
  • 52. A Methodology Is A Living Thing It has to change along with the surrounding context
  • 53. Patterns and pattern languages change over time
  • 55. Using The Patterns Key to the success of any performance improvement initiative is understanding what to improve and why; yet it's both astonishing and disappointing how many improvement initiatives are launched without anyone asking and answering these two most primal questions
  • 56. Using The Patterns • Set the main goals • Understand the context • Choose the patterns that best match goals and context • Inspect and adapt
  • 57. Keep In Mind • The real context may be different from what you see • Defined vs Performed process • The methodology has to work for the people using it
  • 58. Don’t Over-constrain The System • Choose only the practices that match your main goals • Leave secondary things alone • Let people have some initiative • You cannot predict everything • Remember the importance of the informal parts
  • 59. Work To Rule Work-to-rule is an industrial action in which employees do no more than the minimum required by the rules of their contract, and follow safety or other regulations precisely in order to cause a slowdown, rather than to serve their purposes. http://en.wikipedia.org/wiki/Work-to-rule
  • 60. Kanban What About These? Simplified Evo Process: Implement Evo Steps Spiral Model eXtreme Programming
  • 62. DSDM Scrum Evo P2: Do: Deliver the step. Install it with real stakeholders, so they get some of the planned measurable benefits. P3: Study: 1. Determine the results of delivering the step. Obtain any relevant measurements: test, measure and sample, to establish the new performance levels and the new operational cost levels. Compare results to the short-term and long-term targets. 2. Analyze the data and produce a feedback report for management. For example, use an Impact Estimation table as a tool to do this study task. P4: Act: 1. Decide if this step succeeded, must be redone in whole or part, or totally rejected. 2. Take any required minor corrective actions (for example, bug-fixing) to ‘stabilize’ the system. Act Plan Do Study Analyze the Feedback Results from the Evo Step the Current Environment Decide ‘What’ to do next Plan the Evo Step Perform the Evo Step Figure 10.3 A simplified Evo process: implementing Evo steps. SO WHAT ARE SCRUM AND KANBAN ANYWAY? | 5 • Measure the lead time (average time to complete one item, sometimes called “cycle time”), optimize the process to make lead time as small and predictable as possible. We collect useful Kanban links at: http://www.crisp.se/kanban I SYSTEM I ANALYSIS PROGRAM DESIGN I coo,.o TESTING I OPERATIONS Figure 2. Implementation steps to develop a large computer program for delivery to a customer. I believe in this concept, but the implementation described above is risky and invites failure. The problem is illustrated in Figure 4. The testing phase which occurs at the end of the development cycle is the first event for which timing, storage, input/output transfers, etc., are experienced as distinguished from analyzed. These phenomena are not precisely analyzable. They are not the solutions to the standard partial differential equations of mathematical physics for instance. Yet if these phenomena fail to satisfy the various external constraints, then invariably a major redesign is required. A simple octal patch or redo of some isolated code will not fix these kinds of difficulties. The required design changes are likely to be so disruptive that the software requirements upon which the design is based and which provides the rationale for everything are violated. Either the requirements must be modified, or a substantial change in the design is required. In effect the development process has returned to the origin and one can expect up to a lO0-percent overrun in schedule and/or costs. One might note that there has been a skipping-over of the analysis and code phases. One cannot, of course, produce software without these steps, but generally these phases are managed with relative ease and have little impact on requirements, design, and testing. In my experience there are whole departments consumed with the analysis of orbit mechanics, spacecraft attitude determination, mathematical optimization of payload activity and so forth, but when these departments have completed their difficult and complex work, the resultant program steps involvea few lines of serial arithmetic code. If in the execution of their difficult and complex work the analysts have made a mistake, the correction is invariably implemented by a minor change in the code with no disruptive feedback into the other development bases. However, I believe the illustrated approach to be fundamentally sound. The remainder of this discussion presents five additional features that must be added to this basic approach to eliminate most of the development risks. 329 FDD RAD Next release Inception Construction Transition Envision and plan Incrementally build a consumable solution Release solution DAD SAFe
  • 64.
  • 65. “None of the ideas presented here are new; they are just forgotten from time to time.” Alan J. Perlis, 1966 Turing Award Lecture. http://amturing.acm.org/award_winners/perlis_0132439.cfm
  • 66. http://c2.com/ppr/episodes.html Also in: “Pattern Languages of Program Design 2” http://www.methodologypatterns.org/wiki/index.php/Main_Page (now defunct) http://mefis.panrepa.org/CITSA2004PresentationA.pdf http://alistair.cockburn.us/Just-in-time+methodology+construction/v/slim
  • 67. Final Rant I think we need to fundamentally change the conversation about methodologies--which, in my opinion is too focused in the unachievable goal of finding the one that will work for every context.
  • 68. Interested In Helping? http://methodologypatterns.info
  • 69. Links • http://alistair.cockburn.us/Just-in-time+methodology+construction/v/slim • http://alistair.cockburn.us/Methodology+per+project/v/slim • http://www.agilemanifesto.org • http://www.agilealliance.org • http://www.dsdm.org • http://limitedwipsociety.ning.com • http://www.scrumguides.org • http://evidence-basedmanagement.com • http://methodologypatterns.info • http://asprotunity.com/papers.html
  • 70. Some Books .$1%$1 Successful Evolutionary Change for Your Technology Business 'DYLG-$QGHUVRQ Foreword by Donald G. Reinertsen
  • 71. Credits • Images from • http://www.istockphoto.com • http://www.iconarchive.com/show/oxygen-icons-by-oxygen-icons.org/Categories-preferences-system-icon. html • https://commons.wikimedia.org/wiki/File:DSDM_Development_Process.svg • http://en.wikipedia.org/wiki/File:Question_mark.png • http://www.devzombie.com/pages/xp-extreme-programming • http://www.openscience.org/blog/?p=287 • http://www.infoq.com/minibooks/kanban-scrum-minibook • http://en.wikipedia.org/wiki/File:Fdd_process_diagram.png • http://www.wikipedia.or.ke/index.php?title=File:Spiral_model_(Boehm,_1988).svgpage=1