Agile Software Process and Its Experience
Abstract
This article proposes a new software process model, ASP (Agile Software Process) and discusses its experience in large-scale software development. The Japanese software factory was a successful model in the development of quality software for large-scale business applications in the 80s. However, the requirements for software development have dramatically changed. Development cycle-time has been promoted to one of the top goals of software development in the 90s. Unlike conventional software process models based on volume, the ASP is a time-based process model which aims at quick delivery of software products by integrating the lightweight processes, modular process structures and incremental and iterative process enaction. The major contributions of APS include: a new process model and its enaction mechanism based on time; a software process model for evolutional delivery; a software process architecture integrating concurrent and asynchronous processes, incremental and iterative process enaction, distributed multi-site processes, and the people-centered processes; a process-centered software engineering environment for ASP; and experience and lessons learned from the use of ASP in the development of a family of large-scale communication software systems for more than five years.