Lessons Learned in Agile Development Jim Smith PDX, Inc. Confidential www.synerzip.com Disclaimer: • I am not a consultant! (not that there’s anything wrong with that) • I am: – Developer, by trade. – Been in management for the past eleven years. – Oversee development of four complex product lines. – Approximately 250 programmers, QA testers, Software architects and DBA’s. Confidential www.synerzip.com Context • PDX. . . • The original PDX Agile project. . . Confidential www.synerzip.com Lesson #1 • Everybody thinks they’re already Agile. Confidential www.synerzip.com Lesson #2 • Enabling developers to commit has spectacularly good effects: – They own it! – They manage their own overtime! – They drive teammates! – They escalate! Confidential www.synerzip.com Lesson #3 • Managers get to do good things: – Coach/mentor – Strategic organizational and infrastructure enhancement and fixes (e.g. – switch from proprietary bug tracking system to Jira) – Audit – Get and stay plugged into business – Keep foot soldiers educated – Give morale maintenance the care and feeding it deserves – Talk to each other Confidential www.synerzip.com Lesson #4 • Write good user stories. – Good user stories are beautiful. – Apply the “no system” litmus test. Confidential www.synerzip.com Lesson #5 • The industry feels that pre-planning is necessary. Confidential www.synerzip.com Lesson #6 • TDD: a way of life Confidential www.synerzip.com Lesson #7 • At all levels, currents push us back toward waterfall: – More docs – More time up front – More time for regression testing – Email, IM and bug record correspondence Confidential www.synerzip.com Lesson #8 • Even the best and brightest have trouble with collaboration. – It’s a required skill in today’s software development shop. Confidential www.synerzip.com Lesson #9 • The team will gladly turn in slackers. Confidential www.synerzip.com Lesson #10 • [Lean] documentation is still good. Confidential www.synerzip.com Lesson #11 • “Nothing is over! Nothing!” –John Rambo Confidential www.synerzip.com Lesson #12 • The team must understand: You can’t do everything that falls out of retrospectives. Confidential www.synerzip.com Lesson #13 • Although not ideal, team members can be scrum masters. Confidential www.synerzip.com Lesson #14 • You can get executive, managerial and customer buy-in with your first demo and through training on user stories Confidential www.synerzip.com Lesson #15 • Customers and other stakeholders at demos = bueno! Confidential www.synerzip.com Lesson #16 • Let the scrum team stay focused; retain a production support team. Confidential www.synerzip.com Lesson #17 • Get your DBA team to agree to an SLA. Confidential www.synerzip.com Lesson #18 • Break down those user stories! Confidential www.synerzip.com Lesson #19 • Keep noisy managers and executives out of kick offs. Confidential www.synerzip.com Lesson #20 • The stand up is for all. Confidential www.synerzip.com Lesson #21 • The PO must appreciate the value of paying technical debt. – 20% Confidential www.synerzip.com Lesson #22 • The PO is not the team owner. Confidential www.synerzip.com Lesson #23 • People won’t talk? Slamming doors? Putting up walls? = dysfunctional Agile team. Confidential www.synerzip.com Lesson #24 • Parties and other rewards after demos == bueno! Confidential www.synerzip.com Lesson #25 • Don’t let a sprint go longer than five weeks. Confidential www.synerzip.com Lesson #26 • Train your developers to sign off on user stories early. Confidential www.synerzip.com Lesson #27 • The PO position is a fulltime job, for a member of the business, who can appreciate technical debt. Confidential www.synerzip.com Lesson #28 • Co-location of sprint team members is good! • At a minimum, members of a given sprint team should live on the same continent (except business analysts and architects) Confidential www.synerzip.com Lesson #29 • Your development and test environments are production environments. – Enormous waste when they’re down. – Many grumpy people when they’re down; they’re missing deadlines to which they committed! Confidential www.synerzip.com Lesson #30 • Don’t treat your India folks like warm bodies. . .or they’ll act like warm bodies. Confidential www.synerzip.com Lesson #31 • Sashimi is a great idea, but not always 100% possible. Confidential www.synerzip.com Lesson #32 • Velocity steadily increases when your team rosters are constant, and working on the same product(s). – If you frequently change team rosters, then abandon hope that velocity will increase. Confidential www.synerzip.com Lesson #33 • The product ought to be ready for production after every sprint. – Although not always practical, strive for it with every sprint! Confidential www.synerzip.com Lesson #34 • The Scrum Master is a strong servant leader. Confidential www.synerzip.com Lesson #35 • Plaster that product backlog EVERYWHERE! – The whole team needs to know it! – The company brass needs to know it! – Customers need to know it! Confidential www.synerzip.com Lesson #36 • Developers are professionals – not privates in the army. Treat them as such. Confidential www.synerzip.com Lesson #37 • “Scrum” is not an acronym. Confidential www.synerzip.com Q&A Confidential www.synerzip.com www.synerzip.com Hemant Elhence hemant@synerzip.com 469.322.0349 Confidential 84 www.synerzip.com •42 Synerzip in a Nutshell 1. Software product development partner for small/mid-sized technology companies • • • Exclusive focus on small/mid-sized technology companies, typically venture-backed companies in growth phase By definition, all Synerzip work is the IP of its respective clients Deep experience in full SDLC – design, dev, QA/testing, deployment 2. Dedicated team of high caliber software professionals for each client • • • Seamlessly extends client’s local team, offering full transparency Stable teams with very low turn-over NOT just “staff augmentation”, but provide full mgmt support 3. Actually reduces risk of development/delivery • • Experienced team - uses appropriate level of engineering discipline Practices Agile development – responsive, yet disciplined 4. Reduces cost – dual-shore team, 50% cost advantage 5. Offers long term flexibility – allows (facilitates) taking offshore team captive – aka “BOT” option Confidential www.synerzip.com Our Clients Confidential www.synerzip.com Thanks! Call Us for a Free Consultation! Hemant Elhence hemant@synerzip.com 469.322.0349 Confidential www.synerzip.com