You are on page 1of 12

Agile Software Development

Contents

Overview Agile Values Agile Principles Advantages / Disadvantages Applicability Comparison References

12/22/2008

Overview

Agile development

umbrella term A set of fundamental values and principles Adaptive Software Development (ASD) The Crystal Methodologies Dynamic Systems Development Method (DSDM) Extreme Programming (XP) Scrum
3

Not a methodology ! Examples of Agile methodologies

12/22/2008

Agile Values

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

12/22/2008

Agile Principles
1. 2.

3. 4. 5.

6.

Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. Welcome changing requirements, even late in development. Agile processes harness change for the customers competitive advantage. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale. Business people and developers must work together daily throughout the project. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
5

12/22/2008

Agile Principles
7. 8. 9. 10. 11. 12.

Working software is the primary measure of progress. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely. Continuous attention to technical excellence and good design enhances agility. Simplicitythe art of maximizing the amount of work not doneis essential. The best architectures, requirements, and designs emerge from self-organizing teams. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.

12/22/2008

What Makes Agile ?


Early Time Boxed Automatic Tested Release Quality

Continuous Delivery of Software

Frequent Inspections

Plans Requirements Architecture Designs

Evolutionary

Process Improvement

Continuous Planning

Individual Practices

Team Practices

12/22/2008

Advantages / Disadvantages
Advantages: Shortened development cycle Higher stability of work-loads Higher utilization of work-load. Higher flexibility to change of Management & development plans, Higher quality by earlier feedback from the customers. Disadvantages: Lack of scalability Lack of documentation The lack of detailed accountability /Control Agile development requires highly skilled and highly motivated individuals

12/22/2008

Applicability
Applicable

Not Applicable

customers/users are active participants Changing requirements are welcomed no requirements freeze Your primary focus is on the development of software, not documentation Customers/business owners make business decisions, developers make technical decisions

Your goal is to produce documentation Your customers/users have limited involvement with your efforts You are delivering models and/or documentation to another team who will then evolve the system further

12/22/2008

Comparison
Project Environment Category Variable Communication Style Location Size Continuous Learning Management Culture Team Participation Planning Feedback Mechanism Project Characteristics Agile Regular Collaboration Collocated Up to 50 People Embraced Responsive Mandatory Continuous Several Throughout the Project Easily Accessible Team has the Last Word Just Enough May be Changed Flexible Time and Materials Non-Agile Only When Necessary Distributed More than 50 people Discouraged Command and control Unwelcome Up Front Not Available During Analysis Phase Hard to Reach Team is Told to Use More Than Enough May not be Changed Fixed Fixed 10

The Development Team Project Management

The Customer Processes and Tools

Involvement Availability Team Input Amount Adaptability

The Contract

Requirements & Dates Cost

12/22/2008

References

Books referred:

[Book-1]Agile Project Management: How to Succeed in the Face of Changing Project Requirements by Gary Chin [Book-2]Agile Modeling: Effective Practices for eXtreme Programming and the Unified Process by Scott W. Ambler [Book-3]Integrating Agile Development in the Real World by Peter Schuh [Book-4] The Laws of Software Process: A New Model for the Production and Management of Software by Philip G. Armour [Allaince01]http://www.agilealliance.com/ [Manifesto01] http://www.agilemanifesto.org/ [Projectperfect] www.projectperfect.com.au Amber, Scott. (2001). http://www.agilemodeling.com/essays/whenAreYouAgileModeling.html
11

Sites referred:

12/22/2008

Thank You

You might also like