AGILE METHODOLOGIES AND SOFTWARE PROCESS IMPROVEMENT

Kerstin Viola Siakas, Elli Georgiadou, Eleni Berki · 2005

Many different paradigms and methodologies have been developed aiming to improve software projects, but no “silver bullet” has been found. The most eminent paradigm to make software development more predictable is Software Process Improvement (SPI), which was inspired from other engineering disciplines. SPI is a worldwide movement, which accentuates a disciplined approach embracing repeatable processes and continuous improvements. The conviction in SPI is that a high-quality process will deliver high-quality products. The main critique against SPI is that it creates a lot of bureaucracy and constrains innovation. The fundamental of Agile Methodologies on the contrary, are flexibility and quick response to requirements changes. No detailed plans are made. Instead changing requirements are considered a necessity to sustain and improve customers’ competitive advantage. In this paper we discuss the main Agile principles with particular reference to eXtreme Programming (XP) and the Dynamic Systems Development Method (DSDM). We identify the relationship between older paradigms and models (such as SPI, CMM and TQM) and Agile Methods, and suggest areas requiring further investigation such as the desirability and feasibility of Agile development in different cultures and for different project types. We conclude with suggestions for further investigation.

Read the paper · More papers on PaperTik