On Friday we had some friends over and enjoyed the beautiful weather in Bergen. I and (let's call him Trond) were sitting outside talking a bit bout work, agile, .net and java. I fired up the grill to throw on some burgers and I went in and out quite a few times to get stuff I needed. First I went and got the meet I needed. At the same time I also got some lettuce, ketchup and mustard. I went out again and threw the burgers onto the grill, keeping the conversation going with Trond. Then I went back in, got some plates and some grill equipment I forgot last time. I went out again and starting flipping some of the burgers. I then realized we needed something to eat with, and went to get some knifes and forks, as well as a couple of beers. Back out again, I flipped the burgers, went in again and found something else I needed.
When I got out again Trond said: "I must say you really ARE agile! You even barbeque agile! Only getting what you need there and then and not planning too far ahead."
And he was right. This is how I am. Somebody might say chaotic, others agile :-) Maybe that's why I was so easily convinced about the agile way of working.
But seriously, one of the most important aspects of agile development (from my perspective) is the idea of postponing all decisions to the last responsible moment (note: it's responsible not possible). This will let you be more adoptive to changes and force you to not implement things you don't need (e.g. it's very tempting to implement something that you think you will need in the future). On a traditional project where "everything" is planned up front (a waterfall like project), you often run into problems where you see that the way we thought about the solution back then is not the way it is today. This might effect the architecture in a big way. If you're being told to stick to the planned architecture, you find yourself creating workarounds to fit the architecture, which probably is not the best solution.
Remember Me
a@href@title, b, blockquote@cite, em, i, strike, strong, sub, sup, u