CSC/ECE 517 Fall 2011/ch18 6d na

From Expertiza_Wiki
Jump to navigation Jump to search

6d. The Agile landscape.


Overview

Introduction to Agile Software Development

Agile Software Development is a concept, a philosophy and a methodology which evolved in the 90's as an answer to the long-growing frustrations of the waterfall SDLC concepts. The term promotes an iterative approach to software development using shorter and lightweight development cycles and some deliverable.

After extensive research, we have found that like other resources, the term Agile as it relates to modern software development, was being used during the 1990's in various published articles both on the internet as well as ComputerWorld/InfoWorld. The papers were based on people looking for a new approach to software process. While the ideas were not new, they gained enough steam for people to pay close attention especially while search engines on the internet became very popular. There is another alliance called the Agile Manifesto, which in our opinion, is a disorganized web site that has some claims to doctrines and philosophies, all borrowed and bastardized to look like an original concept. The web producer put a picture from a meeting in SnowBird to resemble the framers of the consitution and the Declaration of Independence. They then hijacked the term 'Agile' in early 2001 when a bunch of people who had been heavily involved in the Agile concepts got together to exchange ideas and came up with the Manifesto for Agile Software Development.

The Agile workshop was organized, by Jim Highsmith and Bob Martin. They contacted people who they felt were actively involved in software development communities with these similar ideas and got seventeen of them together for the Snowbird workshop. Initially, they wanted to get together and build better understanding of each others' approaches. Robert Martin was keen to get some statement, a manifesto that could be used to rally the industry behind these kinds of techniques. We also decided we wanted to choose a name to act as an umbrella name for the various approaches. One next step that did follow, with the active involvement of many of these authors, was the formation of the agile alliance. This group is a non-profit group intended to promote and research agile methods. Amongst other things it sponsors an annual conference in the US.

Agile Manifesto

Principles of Agile Manifesto

Agile Methodologies

Extreme Programming

Scrum

Dynamic Systems Development Method

Crystal Family of Methodologies

Crystal Clear & Orange

Feature Driven Development

Adaptive Software Development

Agile Unified Process

Other Methodologies

Comparison of different agile methodologies

Project Initiation

Formality and Vision

Requirements Gathering

Project Planning

Roles and Responsibilities

Team Size and Visibility

Customer Involvement

Project Manager

Controlling the Project

Release Management

Communication

Change Management

Quality Management

Development

Adoption and Effectiveness of Agile Methodologies

Conclusion

References