Agile Familiarisation - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Agile Familiarisation

Description:

Title: Agile Software Development Methodology Author: Sunitha S P, Mary George, Amandweep Suresh Goel Last modified by: Abhishek Agrawal Created Date – PowerPoint PPT presentation

Number of Views:102
Avg rating:3.0/5.0
Slides: 21
Provided by: SunithaS
Category:

less

Transcript and Presenter's Notes

Title: Agile Familiarisation


1
Agile Familiarisation
  • Overview of what Agile is June 2008

2
Sound Familiar
  • Time to market for projects is too long
  • Unrealistic deadlines
  • Poor Estimation
  • Requirement Changes
  • Immature architecture and design
  • No Documentation or too much
  • Inadequate Testing

3
Projects today are...
  • Too slow
  • My needs are changing, but IT cant keep up
  • Nothing gets done in less than a year
  • Not valuable enough
  • Project scope is wrong. And weve already coded
    half the system
  • Ive got lots of documentation that no one uses
    for a system that doesnt meet my needs.
  • We waste time designing and building features
    that are never used
  • Not responsive
  • Projects force the agency to close on
    requirements before they really know what they
    want
  • Every little modification results in a change
    order
  • Not in control
  • Dont know whats going on with the project
  • Im stuck with consultants that dont provide
    value

4
Waterfall versus Agile
5
Comparing
Typical water fall model development (With some
overlap)
Agile model with Iterations
Small iterations help in getting early feedback
Requirements
Requirements
Requirements
Design
Design
Design
Development
Development
Development
Testing team peak
Test
Test
Test
Development team peak
Design team peak
Requirements peak
No big team peaks/Spikes
All the teams formed at start of project
Development team is idle or not formed
Requirements and test team are not on project
  • Close communication reduces re work
  • Better requirements understanding with user
    stories
  • Better quality products with regular demos and
    testing
  • Each iteration gives value to business
  • In production early
  • Ability to absorb change requests easily
  • Little scope in the project plan for accepting
    changes with out re-planning and long Change
    request cycles
  • Re work due to late feed back and unclear
    requirements
  • Business only see finished article during UAT
  • Benefits not realised till end

6
Iterative Incremental Development
  • Iterative development is an approach to
    building software (or anything) in which the
    overall lifecycle is composed of several
    iterations in sequence.
  • Each iteration is a self-contained mini-project
    composed of activities such as requirements
    analysis, design, programming, and test.
  • Usually the partial system grows incrementally
    with new features, iteration by iteration in
    other words, incremental development.
  • --Craig Larman

7
Iterative Development
8
Incremental Development
9
What is an Agile methodology?
  • Agile development is a methodology of software
    development that
  • emphasizes customer satisfaction through
    continuous delivery of
  • Functional software. Based on a variety of
    iterative development
  • disciplines Agile methods put developers to work
    in small teams to
  • tight budgets and short timescales.
  • Agile methods are considered
  • Lightweight
  • People-based rather than Process-based
  • Adaptive rather than predictive
  • Less document oriented than rigorous methods

10
Why Agile
  • Create and build the right requirements
  • Reduce waste
  • Accelerate client value
  • Improve predictability
  • Provide unparalleled transparency and control to
    the client

11
What is an Agile methodology? (Contd..)
  • Agile Method Types

12
What is an Agile methodology?
  • Agile Manifesto Values
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Continuous Testing
  • Short iterations (Incremental cycles)
  • Responding to change over following a plan
  • Individuals and interactions over processes and
    tools

13
Agile summary - on a postage stamp..
  • establish a vision
  • change always happens
  • so prioritise your activity
  • do something small
  • get feedback
  • decide next steps

14
Agile Myths .
  • no design
  • no testing
  • no documentation
  • no idea of progress
  • poor quality
  • no plan
  • auditors wont allow it

15
Key benefits of Agile
  • Increases Flexibility - Minimizes up-front
    investment and maximizes return on investment
    (ROI) by creating an efficient IT development
    process
  • Delivers the right solution - Aligns users and
    stakeholders with the right people to deliver the
    solution that the business actually needs
  • Accelerates Delivery - Iterations get to the
    right solution faster
  • Reduces risk and increases Quality - Greater
    stakeholder visibility and control

16
Key benefits of AgileContd
  • Increases Flexibility
  • 2003 Standish Group report highlighted an
    alarming statistic with technology projects
  • Nearly two-thirds of the features built into
    these solutions are rarely or never used
  • Solution Evolutionary design
  • It is a nonlinear approach where change is
    expected, and where the team uses actual
    development to gain empirical data to inform the
    design
  • Blind alleys or requirements that simply dont
    work are abandoned early on or are identified and
    eliminated before they are even reached
  • The solution evolves over multiple cycles (known
    as iterations), converging on an optimal response
    to the business problem with minimal waste.

17
Key benefits of AgileContd
  • Accelerates DeliveryIterations reinforce
    evolutionary design and form a repetitive
    'timebox' mentality for the project teams and
    clients. This translates into speed the solution
    gets delivered faster and earlier
  • Solution
  • The development teams deliver working, fully
    production-grade software much earlier in the
    engagement This early software is not merely a
    proof of concept.
  • The team focuses development first on high-risk
    and high-value aspects, which means the earliest
    completed software is actually the most critical
    part of the solution.
  • Stakeholders can choose to deploy this
    functionality (they may also elect to learn and
    improve it to converge on an optimal solution
    over multiple iterations)
  • Putting working software in front of business
    users early yields other critical benefits it
    helps legitimize the project spend, drives
    eventual adoption, and, thus, facilitates
    organizational change

18
Key benefits of AgileContd.
  • Reduces risk and increases quality
  • Stakeholders know exactly where the project
    stands at all times and can change its course as
    the business needs change
  • Solution
  • The Story Log
  • The story log is an active, living scope of work
    that stakeholders use to drive the initiative
  • A story is a work item that delivers tangible
    stakeholder value within the iteration. Examples
    include implementing a report, adding a new
    feature to a web application, etc.

19
Agile Disadvantages
  • Its hard!
  • Makes all dysfunction visible
  • Its doesnt fix anything the team has to do it
  • Feels like things are worse at the beginning
  • Bad products will be delivered sooner, and doomed
    projects will fail faster
  • Partial adoption may be worse than none at all

20
  • Sumit Gupta
  • (sumit_gupta2001_at_yahoo.com)
Write a Comment
User Comments (0)
About PowerShow.com