2. Logistics Please turn cell phones, pagers, PDA’s, etc to the “stun yourself” setting (rather than the “annoy everyone else” setting) We will take a break after about 1.5 hours Please ask questions when they come up rather than waiting Be prepared to participate! This presentation requires a lot of work on your part.
9. The First Agile Project 6 months Expected 25 features Delivered 10 features 3 “most important” cut Prior release 72 defects Agile release 70 defects Customers unhappy
10. The Second Agile Project 6 months Expected 25 features Delivered 8 features 5 “most important” cut Prior release 70 defects This release 79 defects Customers VERY unhappy
13. Lack of Meaningful Feedback Loops We are too busy to stop working! Daily stand-ups are useless, let’s just use a single weekly status meeting. When we ask people for feedback they don’t show up or don’t participate anyway. We aren’t really sure why we would want feedback or how we would use it anyway.
14. Undesirable Effects Building wrong products Building the product wrong No improvement Lack of visibility Lack of trust Key people out of the loop What are some of the undesirable effects the W-Agilists would see from the lack of feedback loops in their process?
17. Causes Not using iterations at all Building by architecture instead of value Can’t make stories small We’ve always done it that way Takes time we don’t have Sometimes need to integrate with other teams that aren’t agile What might be some of the main causes of not building software iteratively (remember, this is supposed to be an agile team!)
18. Phrase to remember Late integration will lead to late shipping. Instead deliver completed value every iteration.
21. Silo’d Teams Deep domain knowledge is best Experts better than generalists Work will be evenly distributed Organizational structure cannot be changed What assumptions cause many organizations to deliberately use silo’d teams?
22. Phrase to remember We don’t care what your business card says, we care what you can do for the success of our team!
30. Unrealistic deadlines Create an evaporating cloud in your group and role-play how you would convince managers to stop using unrealistic deadlines
31. Phrase to remember Customer/stakeholder needs do not alter the realities of the universe.
32. Manual testing doesn’t scale (or happens in overtime) Testing that doesn’t happen, but should Regression testing Testing capacity New feature testing Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5
33. Automate and get regression tests for free Automated tests that are now regression tests Testing capacity New feature testing Sprint 1 Sprint 2 Sprint 3 Sprint 4 Sprint 5
34. Manual Testing Create an evaporating cloud in your group. We will role-play with Richard and Bob playing the roles of managers needing to be convinced of the benefits of automated testing.
35. Phrase to remember Automate any tests that will run more than once. Do you know ahead of time which tests those are???
36. Recap of the 7 Deadly Sins Missing feedback loops Not building in iterations – large scale integrations Silo’d teams Too much work-in-progress (WIP) Lack of customer voice Unrealistic deadlines Manual testing
Moving testing to the front is good. But if our testing is all or mostly manual, we have a problem after just a few iterations.
If you automate your tests as you build them, this iteration’s new tests become next iteration’s regression tests, but you only need to build them once. Also, you give your devs something they can run to ensure that their code passes all the tests before they call their work done. This reduces the loops we mentioned a moment ago.Note, however, automation can’t be much more expensive than manual testing or the whole thing falls apart. This drives tool choice. So does the need to write automated tests against not-yet-existent features. No time to talk about it here, but there’s a reason certain test tools are more popular in the agile community and others are more popular in the waterfall world: your tool can make or break your success with agile testing.