What’s really agile?

Today we ended a scrum sprint, two weeks long.

In two weeks a team of five developers managed to setup a project using state of art tecnologies such as DRW, ActiveMQ, ServiceMix, Hibernate, Spring, Atomikos XA Transactions.

Not only we have a use case up and running and we are able to show case it to the customer.

Now,  few choices in my opinion made this “more agile”.

- The usage of Maven, we have probably 50 dependencies, I can’t imagine how to handle this with ant.

- The usage of Hudson as CI tool, simple UI, no need to read the manual

- The usage of Spring, in a couple of hours we had all we need (DAOs, JMS senders and receivers especially)

- The usage of Hibernate3 with annotations, can’t be faster to write down your domain

- The usage of Jetty to have a fast feedback locally

- Well, ovious maybe but worth mention, we wrote tests first, we used Junit4.5

- Flexible pair programming, we paired only when in trouble or when we felt the solution was mature enough to be showcased and shared in the team

- Focused work, one developer on the Web UI, one on the deployment, one on the ServiceMix/ActiveMQ, one on the Transactions + Design of the system

I call this agile, hard work and good fun.

This entry was posted in work and tagged , , , , , , , . Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

4 Comments

  1. Jim Arnold
    Posted February 2, 2009 at 4:13 pm | Permalink

    My first thought is that’s a lot of bootstrapping just for one use case! I know I would usually do the same kind of “iteration zero” stuff at the start of a project, but is that because we don’t think we’ll have time to do it later, or because it is really necessary right now?

    Anyway, sounds like you’re having fun, ThoughtQuitter :)

  2. Posted February 2, 2009 at 5:51 pm | Permalink

    The problem is that all the requirement from the client were non functional, so the use case in the end needed the whole architecture up and running, with clustering, load balancing, failover, very fast (push) UI, etc…
    That’s the reason of all that crap put together from iteration zero! :-)

  3. Posted February 2, 2009 at 7:41 pm | Permalink

    > we have probably 50 dependencies, I can’t imagine how to handle this with ant.

    it sound strange to me this attitude. Just like accepting a problem so making in become persistent.

    it should be better to keep these questions going: how to reduce the dependencies ? how to reduce the number of different packages ?

  4. Posted February 2, 2009 at 8:50 pm | Permalink

    Well it’s quite good that for example spring is not a 10Mb jar, but split in few ones so you use just the ones you need. Same for Hibernate and other frameworks that we had to use in the project..
    Maven is not the solution for all the problems, still strongly based on xml, but the dependency management is impressive and I found it quite useful.
    There’s a tendency right now to split jars, and I agree that sometimes it’s quite extreme and useless.

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>