45minutterermegetkorttidtil at fortælleom Agile, sådeteressensenaf Agile vi tager fat på.Deterumuligt at kommetil bunds I emnetpåsåkorttid
Hvorforændrepånoget vi alleredekender? Allekanjoforstå at vi arbejder I faserogleverertilsidstTest ervores buffer tilsidstsom vi kanbrugetil mere udviklingKraverfrossetgennemforløbet, sådet vi leverervardet vi gernevill ha’ haft for 2 årsidenÆndringerblirtilundtagelserogsvære at håndtereVi kanikke lade tidenståstilleogglemmeverdenomkringos. DetfungererikkeAlleer 80% færdige I 80% aftidenMan kanikkestoppemidt I et projektfordiinteterheltfærdigtførprojekteterfærdigtWW Royce – manden der beskrevVandfaldsmodellen, som et eksempelpå en risikofyldt model, foreslogselviterativudviklingsomløsningen.
Hvadergrundenetil at vi vil ha Agile? Der er mange flere end dem her. F.eks:Minimer overhead - Brugtidenpådet der ervigtigt
Der errigitgt mange måder at fejlepå.
Skill: We all need to become more professional. Management needs to understand what they’re trying to manage and developers need to give proper feedback and not only resort to complaining or choosing framework/tools for the fun of it Close contract: Walk the talkAutomation: Continous Integration, Testing, Deployment, Code generation
Agile og Lean er symptom behandlinger!
How to fail with lean and agile
How to Fail with Agile
Does this sound familiar?
• Do not Document
• Do not handle and register Requirements
• Do not do formalized testing
• Do not plan more than 2 days in advance
• Do not follow up on expenses and economy
• Do not ____________________ (Fill in yourself)
• “We are doing Agile so we”:
Same procedure as last year?
“Even a dead fish can float down a waterfall”
• Focus on the Business and what they need
• Focus on delivering quality
• Doing the “right thing” – not just doing things right
• Get feed-back often and act on it
• Work on things that directly improves the end result
• Minimize overhead
Do what we are paid for as Developers!
How to fail with Agile and Iterative Development
Failing with Iterations, I
• Waterfall iterations
– “Analysis iteration”, “Design Iteration”….
• Forgets to minimize technical risks early
– Mainly focus on satisfying the Business
• A time box has a fixed length!
– Max 1 month! Longer than that it’s no longer an iteration
– Do not extend an iteration. Take things out!
• Done is Done!
– Done is including TEST! No hidden work
Failing with Iterations, II
• Changes are a part of the process. Not an exception
– But NO changes in the middle of an iteration
• “Priority one only” functionality in the first iterations
– NO: Max 60% Priority one so can remove low priority
stories, if needed
• Overlapping iterations
– Looks good in MS Project, but we cannot clone people
Failing with Processes and Methods
• “We don’t need no stinking Methods”
– They are usually not really usable for developers
– Made by people that have never developed a system
• Not founded in reality
– Focus more on documentation and reporting than on
actually deliver software
– Feedback from users are ignored
• “Left-to-Right” implementation
– Strong on requirements, business processes, not so much
on actual development.
Failing on a Management level
• Unclear goals. What are we trying to achieve?
• Method = Product
– Buy a license and a consultant, then we are OK
• Isolate Agile to one project alone
• Going Agile is an iterative a process in itself
• Use traditional follow-up and management
• You will NOT get pay-off from the day one
Failing to Communicate
• No common definition of what it is
– Usually because Management doesn’t know
• The black hole of SharePoint
– “It is published to the server”
• Overloaded terms
– Reuse of terms from the Waterfall model
Failing on a larger scale
• Agile affects the whole organization
– Users, business, management, test, deployment,..
• Understand what you do. Try before dissing
– Scrum Buts: “We use Scrum, but……”
• Be pragmatic and proactive
– Focus on results and not on following the book
• Agile is not a solution. It’s a tool!
– Focus on your problems and how to solve them
• There is no such thing as an Agile process!
– Agile is a way of thinking and not a product
• You HAVE to work Iteratively to become Agile
– The only way to get feedback from our Customers
• Trust in people
– Agile is Trust over Control
• Apply your learning's iteratively – It’s the least
• Pick the right tools for the right job
• Use proper test approaches to ensure quality.
– This helps you discover when new learning’s break
• Focus on importance and criticality
With sugar on top…….
• Smaller teams (5-10 people)
• More skilled developers and managers
• Close contact to Product owner and Business Experts
• Higher level of Abstraction
• High degree of Automation
• Shorter feedback cycles
• Make it cheaper to make mistakes and learn from it
What to do?
• Communication, communication, …
– Make sure to involve people in the process
– Listen, Learn and Adapt
– Implement iteratively and actively by doing!
• Have realistic goals. Short and long term
• Accept changes
– “Only 10% of what you worry about will ever happen”
• Get professional help
How to supercharge Agility
A “radical” shift – to a larger degree of automation
Lean & Agile
Are both treating Symptoms
not providing a Cure!
We can’t control everything
Rather than focus on being Agile which may lead to being
successful, focus on being successful, which may lead you
to being Agile
For more information
@henrikwivel on Twitter