Friday, April 29, 2011

Extreme Agile Development?

What if we push all the agile practices to the extreme just like Extreme Programming does? What will extreme agile development look like?
If automated test is good, why not write acceptance criteria in automated test suites?If empowering the devs is good why not let them own the story too?
If close coordination between QA and Dev is good why not let them pair all the time?
If frequent and direct feedback from end users is good why not continuously deliver to them and collect feedback from them in an easy and automated way?

So maybe this is what extreme agile development process look like:

  • Provide end users a way to easily submit their feedback to application's feedback database.

  • Product manager(s) categorize user feedback into high level feature requests and prioritize them.

  • Dev pair and QA work together (tripling) to design the detail user experience story for the high level feature request (together with the original end user feedback) and write the acceptance criteria in automated test suite such as cucumber.

  • Product manager(s) reviews the implementation design and the cucumber tests. (optional)

  • Dev pair develop the story to pass the automated test suites. During which if the test suites need to be changed, the QA will be pulled in.

  • Continuously deliver code to end users - deploy code to production as frequent as possible.

  • Product managers keep monitoring end user feed back and ensure that all team members being on target with their user experience design



Is this possible?

4 comments:

  1. You mean extreme agile development is kind of like a watered down Lean Startup?

    Learn about Lean Startup, they're doing this, for real, today and more.

    ReplyDelete
  2. @Jeremy, interesting. thanks for the tip.

    ReplyDelete
  3. What you've described is what we do at TargetProcess with some additions.

    >Dev pair and QA work together (tripling) to design the detail user experience story for the high level feature request

    We form UX team to design UX. It consists of dev, qa, designer and PO (optional)

    ReplyDelete
  4. @Michael, interesting. The main point here is to eliminate the story documentation which normally is written by BA for both QA and Dev purpose.

    ReplyDelete