What is an Agile Process?

When: 
Thursday, May 22, 2003 - 7:00pm
Room: 
4-231
Lecturer(s): 
Ken Schwaber, AgileAlliance

A meeting of "who's who" in software development methodologies convened at Snowbird in Utah in early 2001 to create the AgileAlliance and deliver a "Manifesto for Agile Software Development".

The AgileAlliance is a group of methodologists who have shed the use of the traditional methodologies and processes. This decision was not lightly taken. Many of the founders of the AgileAlliance had been inventors and supporters of the traditional approaches and had benefited from them. However, the founders found that the traditional approaches had become increasingly oppressive and ineffective. Systems projects had evolved from simple systems using proven technology to n-tier, distributed systems using technologies such as wireless and object-oriented. The values in common to all agile processes are:

* Individuals and interactions over processes and tools
* Working software over comprehensive documentation
* Customer collaboration over contract negotiation
* Responding to change over following a plan 

While there is value in the items on the right, we value the items on the left more. The founders have evolved new approaches to systems development, including Extreme Programming, Scrum, DSDM, FDD, Adaptive Systems Development, and Crystal. As an aggregate, these approaches are referred to as Agile processes. Agility is used to empirically, adaptively build systems rather than following the "by rote" defined approach of the traditional methodologies.

Initially, the Agile approach was devised in response to customer demands for systems that have emerging requirements and/or employ advanced technologies. However, users of Agile processes soon found that they were appropriate for all types of systems development. Since applying the word "agile" to this class of development processes in 2001, their use has spread to all types of organizations building a wide range of software and other products.

One of the challenges to the agile community has to been to retain the integrity of the values and practices in the face of agile becoming another fad and silver bullet. This talk will describe the basis and underlying practices of all agile processes. It will describe how these practices are implemented in the Scrum agile process and how these processes are being promulgated and advanced by the Agile Alliance. A discussion of how the success of these practices has been measured across the last 8 years, including a case study, will be presented. Then practices employed to scale agile processes to any size project, type of application, or character of system will be discussed.

This meeting is sponsored by the Boston Chapter of the IEEE Computer Society and is co-sponsored by the Boston Chapter of the IEEE Education Society and the Greater Boston Chapter of the ACM . The meeting begins at 7:00 pm and is free and open to the public. No pre-registration is required. An optional, pay-your-own dinner follows. For more information: (for CS) Archie Blondin at archie.blondin@tfn.com or (for Educ) Robert Reilly at reilly@media.mit.edu or (for ACM) Peter Mager at p.mager@computer.org .

Lecturer Biography: 

Ken Schwaber is one of the developers of the Scrum agile process in the early 1990's. He is currently one of the directors of the AgileAlliance and heads their user group and newsletter programs. Ken has been in the software industry for over 30 years as developer, manager, and methodologist.