Agitar Agitator and FDD

mangrish's picture

Last year I came across a tool called Agitator by a company called Agitar (

While it looked quite "cool"and a little "out there" back then, I have really only had the opportunity to get into it in depth in the past couple of weeks, as we use it on our current project (which is not using FDD).

For context, agitar agitator is geared towards unit testing (true unit testing, not running junits as functional tests etc), and plugs into your ide (we use RAD/eclipse).

What I did notice about the tool was how well it seemed to support the FDD Process 5 - build by feature: code and unit test. The time it took to effectivly gain test coverage on some of my classes as well as obtain test points (think of these as assertions in junit) to the same degree as junit was to me, an order of magnitude less. This allowed me to test just a little bit more, and get a higher degree of confidence in my code pre code inspection (which we are still doing). What was once taking me tens of minutes is now minutes.. and on tricky classes, what was once hours is 10s of minutes. The other thing i liked about it was that it fit in well with taking a design, implementing it, testing it, coding some more, testing some more, CABTAB etc. It does not really work well with TDD (even though Kent Beck is on their payroll), but suits more rational development of conceptualising a design like in FDD Process 4, and then realising it then testing it, iteratively till you are satisfied. That aside, the agitar people themselves pretty much like building to interfaces a la peter coad, and reinforce it in their tool. If you can define interfaces in your pd layer, agitar will stub whats behind that for you automatically. It can also stub out jdbc, struts etc. Very handy. The other thing i really liked about it is that it unintentionally reinforces class ownership. You can get stats on developers and the classes they own; how many bugs they contributed etc. You can set it up so that only errors in classes owned by you show up in your ide.

I think this really fits into FDD very well, and it is very much worth the time having a peek at it.