KEMBAR78
Agile Software Development Approaches | PDF
Agile Software Development
Approaches
Dr. Davut Çulha
Agile Manifesto
• http://www.agilemanifesto.org/
• 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
Principles behind the Agile Manifesto
• 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 customer's 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.
Principles behind the Agile Manifesto
• 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.
• 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.
Principles behind the Agile Manifesto
• Continuous attention to technical excellence
and good design enhances agility.
• Simplicity--the art of maximizing the amount
of work not done--is 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.
What is Agility?
• Agility may be characterized by the two
concepts: communication and responsibility.
• Agility is the ability to both create and
respond to change in order to profit in a
turbulent business environment.
• Turbulent environments are suitable for agile
developments.
• Problems characterized by change, speed, and
turbulence are best solved by agility.
What is Agility?
• Effective (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
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 construction activities
• Delivers multiple ‘software increments’
• Adapts as changes occur
Major Agile Development
Methodologies
• Scrum
• Dynamic Systems Development Method
(DSDM)
• Crystal Methods
• Feature-Driven Development (FDD)
• Lean Development
• Extreme Programming (XP)
• Adaptive Software Development (ASD)

Agile Software Development Approaches

  • 1.
  • 2.
    Agile Manifesto • http://www.agilemanifesto.org/ •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
  • 3.
    Principles behind theAgile Manifesto • 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 customer's 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.
  • 4.
    Principles behind theAgile Manifesto • 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. • 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.
  • 5.
    Principles behind theAgile Manifesto • Continuous attention to technical excellence and good design enhances agility. • Simplicity--the art of maximizing the amount of work not done--is 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.
  • 6.
    What is Agility? •Agility may be characterized by the two concepts: communication and responsibility. • Agility is the ability to both create and respond to change in order to profit in a turbulent business environment. • Turbulent environments are suitable for agile developments. • Problems characterized by change, speed, and turbulence are best solved by agility.
  • 7.
    What is Agility? •Effective (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
  • 8.
    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 construction activities • Delivers multiple ‘software increments’ • Adapts as changes occur
  • 9.
    Major Agile Development Methodologies •Scrum • Dynamic Systems Development Method (DSDM) • Crystal Methods • Feature-Driven Development (FDD) • Lean Development • Extreme Programming (XP) • Adaptive Software Development (ASD)