240 likes | 337 Vues
How to build your own process in 30 minutes ! - A short history of nearly everything !. Hans Gallis Symphonical. Kjetil Moløkken-Østvold Conceptos Consulting. Software 2009, 11. februar 2009. From chaos…. …to: PUCK!. “Puck is super-agile, super-fast, super-strong and tough, and all
E N D
How to buildyourownprocess in 30 minutes!- A shorthistoryofnearlyeverything! Hans GallisSymphonical Kjetil Moløkken-ØstvoldConceptos Consulting Software 2009, 11. februar 2009
…to: PUCK! “Puck is super-agile, super-fast, super-strong and tough, and all that super-stuff.” – comicbookresources.com
This is our story… …in 30 minutes!
Process context: Symphonical AS Start-up launched in 2006 Develops web-based collaboration tool Global customer audience in professional and consumer segment Software as a service running in the cloud Technologies: LAMP (Linux, Apache, MySQL, Python), Ajax, Django www.symphonical.com
Previous process • Team: six full time employees (and two part time) • Five full time developers/designers (one part time) • One manager • One part time business developer • Combination of Scrum, XP, prototyping and our own practices • Three weeks Sprints
Symphonical’s pains! Lack of control Stressed implementation Estimate overruns Iterations extended Poor product functionality Lots of unfinished functionality “Obvious” feedback Poor product quality Stressed implementation Bug-fixing postponed Could not release
Codename: PUCK! Real name: Eugene Milton Judd Team: Alpha Flight Power & Abilities Enhanced agility and superhuman strength rivaling that of Spider-Man Superhuman speed, stamina, durability, and reflexes Trained soldier and formidable hand-to-hand combatant
We decided to understand First part No ”one stop shopping” Focus on process Improve process based on experiences and documented practices Used the simple SWOT analysis (Just like the Marvel superheroes!) Second part Find, discuss and prioritise practices to improve Involve expert(s) to see the complete picture! Third part Find metaphor Build own process completely adapted to our team and context
Ice Hockey: Puck! Puck = super agile requirement The team must collaborate to get the puck behind the goalie The puck might move very fast! Even too fast! If too fast: The team cannot follow and they loose control! ”The drop” Game: Preparation Three periods Two pauses Evaluation ”The drop”
Puck – The new process Goals Release every two months Better quality More control More time for everything! Happier programmers ”Same shit – new wrapping”
Short development cycles Can you keep sprinting indefinitely, without breaks? Puck uses periods and breaks in between Iterations =/= deliveries
Process 1: 3 weeks release Release: 3 weeks Requirements Analysis Design Estimation Planning Coding Testing Acceptance test Bug fix Release
Process 2: 8 weeks release Release 1 Release 2 Release 3 Release 2: 8 weeks Requirements Sprint 0 Kick-Off Sprint 1 Dev. Sprint 2 Dev. Sprint 3 Test, bugfix, etc Sprint 4
Process 3: 9 weeks release”The PUCK process” Game 1 Game 2 Game 3 Game 2: 9 weeks Requirements management Kick-Off 1st period Planning 1st period Dev. PAUSE Analysis Planning 2nd period Dev. PAUSE Analysis Planning Test Bugfix Release
Planning and requirements • More focus on planning up front • Requirements = our most valuable asset! • Pragmatic and tough prioritization • No use of categories (high, medium, low) • Ordering instead: 1, 2, 3, ….
Continuous communication Daily stand-ups? Daily Sacco sit-downs? Co-location and Skype?
Roles Lots of time to create distinctive roles Customer to be involved
Systematic improvement • Your process is never perfect • Be systematic, and let the team and data decide (if possible) • Don’t outsource your improvement, but involve process expertise and input from external resources • Improve during the release, not at the end or after!
What makes people (think they are) agile? Wall with post-it notes Stand-up meetings Short sprints (with or without releases) ScrumMaster!
Summary All projects are different No free ride! Talk about practices, not processes Be specific! Don’t buy everything you hear (including this!) Know your team and environment!
Questions? hans@symphonical.com www.symphonical.com kjetil@conceptos.no www.conceptos.no