Smarter software development
2 June 2011
Smarter software
development
Victoria scientists are combining their
expertise with collaborators at universities around New
Zealand to come up with faster, more flexible and more
affordable ways of developing software.
The four-year project is funded by the Ministry of Science and Innovation and has input from a range of industry partners.
James Noble, a professor of Computer Science at Victoria, says the traditional process for developing software dates back to the 1960s and has its roots in computerisation for the space race and weapons development.
"It was driven by cost overruns in the United States Defence Department. They couldn't buy the software they wanted so decided to develop their own, but the process they put in place was quite bureaucratic," says Professor Noble.
He says with traditional approaches, as much as half the effort can go into planning, detailed documentation and formal sign off by the parties involved before development work begins.
The Agile approach was created to address some of those issues and is rapidly being adopted by many of the world's software giants. Agile methods involve self-organising teams that develop software through iterative and incremental work cycles in close collaboration with their customers. Changes can be made at any stage and the product is tested along the way to ensure early detection of problems.
"Anecdotal evidence shows it speeds up software development and can show more quickly where problems lie or whether the project is doomed," says Professor Noble.
But, despite its burgeoning popularity, many aspects of the Agile process have not been researched until now.
Victoria postdoctoral researcher Dr Rashina Hoda is investigating how teams should self-organise. She has studied 58 Agile practitioners from 23 software organisations in New Zealand, India and North America over the past four years to understand how they go about self-organising. She has used the information to develop a process others can follow.
"There has been a real lack of research on the subject and practitioners are left wondering how to go about self-organising. There's no boss telling you the process to follow-instead the team has to take ownership.
"It's also a high pressure environment-things are constantly changing and there are deadlines to meet."
Dr Hoda has identified the critical
roles in a team, which she has named Mentor, Co-ordinator,
Champion, Promoter and Terminator, and a set of practices.
Her research has also shown that support from senior
management within the organisation is vital and that
projects go more smoothly when customers play an active
role.
ends