You are on page 1of 8

Agile Process: Overview

Agile software engineering represents a


reasonable compromise to conventional
software engineering for certain classes of
software
Agile development processes can deliver
successful systems quickly
Agile development stresses continuous
communication and collaboration among
developers and customers

Manifesto for Agile Software Development
Better to value:
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 the items on the right are still important
the items on the left are more valuable under
this philosophy
What is Agility?
Rapid and adaptive response to change
Effective communication among all
stakeholders
Drawing the customer onto the team
Organizing a team so that it is in control of
the work performed
Yielding
Rapid, incremental delivery of software
Agile Teams
are responsive to changes during project
development

recognize that project plans must be flexible

eliminates the separation between customers
and developers

Agility
encourages team structures that make
communication among developers and
customers easier
emphasizes importance of rapid delivery of
operational software and de-emphasizes
importance of intermediate work products

can be applied to any software process as
long as the project team is allowed to
streamline tasks and conduct planning in way
that eliminate non-essential work products
An Agile Process
Is driven by customer descriptions of what is
required (scenarios)
Recognizes that plans are short-lived
Develops software iteratively with a heavy
emphasis on implementation
Delivers multiple software increments
Adapts as changes occur
Human Factors
Traits that need to exist in members of agile
development teams:
Competence
Common focus
Collaboration
Decision-making ability
Fuzzy-problem solving ability
Mutual trust and respect
Self-organization

Agile Process Models
Extreme Programming (XP)
Adaptive Software Development (ASD)
Dynamic Systems Development Method
(DSDM)
Scrum
Crystal
Feature Driven Development (FDD)
Agile Modeling (AM)

You might also like