Going Agile: A Case Study
Dwayne Read, Grey Properjohn, Ashley M. Aitken, Sonya Rosbotham · Australian Software Engineering Conference · 2008
This case study examines the approach undertaken by Snowden Technologies in adopting a range of agile techniques into their product and custom software solutions for the mining industry. The catalyst to adopt various agile techniques stemmed from the growth of the development team (30+) and the need to further integrate the development activities across multiple offices. This required a clearer and more consistent approach to the software development process. Snowden Technologies involved the users (Developers, Project Managers, Team Leaders, Geologists, etc) upfront and prioritised the project's scope resulting in the selection of specific techniques from a range of agile methodologies (XP, FDD, Scrum, Crystal, DSDM, RAD/JAD). Implementation of the techniques paralleled various agile principles through the use of scoped releases, development iterations and feedback through regular reflections. The selected agile techniques (e.g. iterative development, Domain Object Models, code inspection, automated testing) were incorporated into a consistent software process with various 'value add' techniques (e.g. CUT complete, code coverage, code analysis) that integrated with the development tools. The key lessons learnt from the this approach were that to incrementally introduce agile techniques was very effective; embedding the process elements into the development tools helped to reinforce the techniques; and it proved that the agile techniques and PRINCE 2 for project management could be customised to collaborate into an effective solution. The latter required some compromises from the 'pure' agile view such as to allow a project schedule to define all Work Packages (Iterations) at the start of each Stage (Releases).