As part of one of my 3rd year modules at Dundee University I am to be developing a piece of software in a group using Agile (3 cheers for that one!). This includes Scrum for project management, Test Driven Development, aspects of eXtreme Programming (including Pair Programming) and a couple of other goodies as well.
Despite the large workload this semester and the multiple group projects, I am actually enjoying how this is progressing so far. There are 6 of us on the project and we have been asked to create a program for planning scuba dives (calculating residual nitrogen after individual dives, factoring in air mixtures, etc.) in C# 2.0 with the possibility of expanding to mobile devices (if there is time). Right now we are approaching the end of our initial planning stage, preparing the initial product backlog and getting to grips with group organisation.
This is a welcome change to the traditional waterfall methodology which I do personally feel is tedious and have a number of issues with, however this is not the post to be arguing Agile over Waterfall. I will say however that I do have a habit for treating all of my projects as pieces of professional work which has advantages and disadvantages. I always strive for a high standard in my work and there are times where that becomes impractical or even impossible. Still, I feel the only way I can really improve on this is to work on group projects where time is limited and there are others involved in the development process. After all, one of the goals of this project is to learn.
It is still very early in the life of the project and our first sprint (of 2) begins on Monday, I think that this where the really hard work is going to be but time will tell. If the User Stories have been done well and we follow conventions we all agree in advance we should do just fine.
Updates to follow.
