AGILE IN ACTION

Saturday, 9 December 2006

On average

Posted by Simon Baker

Here’s the content of a presentation I recently put together based on some averages derived from how we’ve been working.

Our Team:

Our teams are small, which enables us to adapt and respond quickly to change. We are co-located with our product owners. We are empowered to self-organise. Our teams include all the necessary skills to make our own decisions and take immediate action. We work in an environment where everything is visible, with information posted publicly on walls. We keep things simple and our process generates repeatable results.


Project Charter
Originally uploaded by sjb140470 .
Every project:

Every project starts with a chartering workshop that brings all stakeholders together. Among other things, we create a shared vision for the project, a goal road-map and the criteria for success.

Every 2 weeks:

Every 2 weeks we sit down with the stakeholders and plan, at a high-level, the next 4-weeks of work in the product backlog .


planning-game
Originally uploaded by sjb140470 .
Every week:

Every week we deliver a product increment that realises business value for our product owners and can be deployed to production. We deliver on time and on budget because we fix time and fix budget. Our product owner varies scope, if necessary. At the start of every week we plan in detail the highest business value work that we can complete within the next week. At the end of every week we learn by inspecting how we worked during the last week and we adapt to achieve improvement.



Daily stand-up
Originally uploaded by sjb140470 .
Every day:

Every day we concentrate on building product, not mock-ups. We hustle because we care as much about the product as the product owner . We hold a stand-up to synchronize the day’s activities. We make commitments to one another about what we’ll complete that day and we hold one another accountable to those commitments. Every day we record running tested features because it’s the best measure of progress. It focuses everyone’s attention, provokes more meaningful feedback, and we learn more about what we’re building. We also re-estimate the work remaining to deliver our commitments for the week. We track these metrics on a publicly visible burn-up chart . Everyone always knows where we’re at with respect to our goals.


the-guys
Originally uploaded by sjb140470 .
Every 32 minutes:

Every 32 minutes testers in the team collaborate with the developers. The latest software is deployed to our dedicated QA environment and exploratory testing is performed as the software evolves.

Every 20 minutes:

Every 20 minutes we collaborate with the product owner . Rather than having all business input up-front followed by a black hole until the final release, our product owner s are continuously involved, consulted and challenged. This is a different kind of product management. It’s active product ownership that directly steers the development effort.Working together we make lots of small decisions to keep moving forward. We can make these quickly. And we can reverse them quickly. If one doesn’t work we can go back and change it. We try different things, fail fast and learn, and we get things done. If we need to make bigger decisions, we make them at the latest responsible moment when more information is available.

Every 8 minutes:

Every 8 minutes we integrate changes with the entire code base and execute 1400 automated unit tests and 340 automated acceptance tests. Effectively, this provides continuous regression testing. The number of automated tests grow as new functionality is added because we employ test-driven development . On average, we have less than 5 defects a week per product.


Naughty boys
Originally uploaded by sjb140470 .
Every minute:

Every minute we pay constant attention to technical excellence with simple, effective, incremental design driven by continuous, repeatable automated testing. By programming in pairs, we perform continuous code reviews to bake quality in. We don’t inspect for it afterwards. And we never compromise on quality.

Easy button
Push to go live:

When we go live we click a button on the cruisecontrol boxes. Our automated build runs, executes all the tests and then automatically deploys the applications to the production environments. Automated tests are then executed against the production boxes to ensure the deployment is successful. Manual intervention is not required.

By the end of the day , developers and testers will have collaborated 16 times to perform exploratory testing, they’ll have collaborated with the product owner 24 times, and completed 60 integrations, running 20,400 automated acceptance tests and 84,000 automated unit tests. Our test coverage is 88%.

Creative Commons Licence

Recent Posts

  1. System failure is inevitable so design for a fast recovery
  2. Delight comes as a surprise in unexpected places
  3. Help create business agility. Bake quality in
  4. Governance - Friend or Foe?
  5. 70% Forum
  6. Measuring purpose. Measuring customer delight
  7. Stop pushing features and start delighting users
  8. Lost without a goal
  9. Emotion creates the common language
  10. Five sneaky ways to kill an initiative

Archives

  1. 2012 (16)
  2. 2011 (24)
  3. 2010 (31)
  4. 2009 (41)
  5. 2008 (69)
  6. 2007 (152)
  7. 2006 (128)
    1. December (16)
      1. Bit by bit or all at once?
      2. Peacocks and penguins
      3. First incremental release of badjit
      4. Values, Practices & Principles
      5. On average
      6. Agile finances?
      7. ABC2006: Scaling agile
      8. XPDAY2006: Joshua Kerievsky's keynote speech
      9. XPDAY2006: The Toyota Way of Managing
      10. XPDAY2006: Experiments in Agile Estimation
      11. Ken Schwaber talks about agile quality
      12. XPDAY2006: Keeping the Furniture Police at Bay
      13. XPDAY2006: Are We Nearly There Yet?
      14. Running tested features
      15. Ultimate extreme feedback device
      16. Gus has got a wiki going
    2. November (26)
    3. October (7)
    4. September (11)
    5. August (7)
    6. July (7)
    7. June (4)
    8. May (4)
    9. April (4)
    10. March (4)
    11. February (14)
    12. January (24)
  8. 2005 (63)
  9. 2004 (2)

Tags

agile (43) big visible chart (15) conference (40) culture (18) extreme programming (21) leadership (18) lean (47) people (26) planning (17) retrospective (18) scrum (41) story (19) team (30) testing (19) xpday (19)