Wednesday, October 10, 2007

Test in Process: Agile

Before we start our standard test in process post, let's talk about "Agile". "Agile" isn't a development process any more than "Waterfall" is a development process. Instead, "Agile" is a family of processes including Extreme Programming, Crystal, etc. That being said, I walk into a lot of companies that claim to be using "Agile process".



Beware. Here be dragons.



What this usually means is that the company doesn't really have a development process. Instead, they have some ad hoc practices and maybe some home-grown methodologies that work for them.



How I got here:

Well, I work for one of these places.* Their software development process is centered around a team that's been together for several years and knows the software very very well. Everything else is luck, a good QA team, and a lot of fast bug fixes.


The role of test:

In this role, test is mostly intended to control the chaos. There aren't a lot of controls to prevent defect creation, so test is extremely busy finding defects. There are a lot of defects caused by these ad hoc changes.


Upsides:

There is almost no time spent in process improvement meetings (kidding!). In addition, having little to no actual process generally means that the environment is a good target for incremental improvement. You don't have to prove why the old process is bad before you can prove why the new process is good; you can just skip straight to why the new process is good.


Downsides:

Despite the old aphorism, order rarely comes out of chaos! This kind of process is a good way to overtax your test team, overtax your development team, and ship software that you can't say is good or bad. You will almost certainly wind up with a whole lot of firefighting.


In the End:

This isn't sustainable. If you can't help create a process, get out. Having a light process is okay; having no process is not.



Other Posts in this series:

Test in Process: A Series (http://blog.abakas.com/2007/08/test-in-process-series.html)

Test in Process: RUP (http://blog.abakas.com/2007/08/test-in-process-rup.html)

Test in Process: XP (http://blog.abakas.com/2007/08/test-in-process-xp.html)

Test in Process: SCRUM (http://blog.abakas.com/2007/08/test-in-process-scrum.html)



* I work here until October 12th. Then I'm going to work at my new job (http://blog.abakas.com/2007/10/eek-post.html).

No comments:

Post a Comment