agileanditerativeprojmgt

Upload: luis-azevedo

Post on 08-Apr-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/7/2019 AgileandIterativeProjMgt

    1/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 1 of 58Version 141822

    Iterative and Agile ProjectIterative and Agile ProjectManagement: RethinkingManagement: Rethinking

    PMBOK, CMM and ISO 9000PMBOK, CMM and ISO 9000University of Management and Technology

    1901 North Fort Myer DriveArlington, VA 22209

    Voice: (703) 516-0035 Fax: (703) 516-0985Website: www.umtweb.edu

    http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    2/58

    Visit UMT online at www.umtweb.edu Page 2 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Objectives of This PresentationObjectives of This Presentation

    This presentation has two major objectives:

    To present a nutshell view of alternative approaches to softwaredevelopment that differ dramatically from traditional approaches. The

    alternative approaches called iterative and agile developmenttechniques emphasize flexibility , learning and risk reduction onprojects.

    To show how evolving approaches to project management challengethe established wisdom of assorted standards as captured by The PMBOK Guide , CMM, and ISO 9000. These standards have majorimpacts on how people work Are they able to keep up with newdevelopments?

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    3/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 3 of 58Version 141822

    ProloguePrologue

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    4/58

    Visit UMT online at www.umtweb.edu Page 4 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Life before Project ManagementLife before Project Management

    26 years before PERT

    Nearly 40 years before WBS

    38 years before PMI 56 years before PMBOK

    The Empire State Building wasconstructed in one year and two

    months. Its original design wasdeveloped in two weeks.

    Could we match that achievementtoday?

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    5/58

  • 8/7/2019 AgileandIterativeProjMgt

    6/58

    Visit UMT online at www.umtweb.edu Page 6 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Life after Project Management: The DriveLife after Project Management: The Drive

    toward Maturitytoward MaturitySince the mid-1980s, project management has undergone a majorprocess of maturity :

    1969 Project Management Institute created

    1984 first PMI certification exam

    1987 first Project Management Body of Knowledge (PMBOK )

    1990 promulgation of Capability Maturity Model; PMI membership lessthan 8,000 people; average of 55 people per year certified in 6 years

    1996 first Guide to the Project Management Body of Knowledge ; PMP

    certification has begun an exponential climb2007 PMI membership stands at one-quarter million people; half-million people have achieved certification since mid-1990s; 230,000people are actively certified; PMBOK Guide is de facto world standard.

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    7/58

    Visit UMT online at www.umtweb.edu Page 7 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Life after Project Management: The DriveLife after Project Management: The Drive

    toward Maturitytoward MaturityMaturity as a double-edged sword

    Maturity = consistency, reliability

    Maturity = depleted energy, prisoner of legacy, process over innovation

    In his 1983 book, Industrial Renaissance , William Abernathy pointedout that for companies to survive and thrive, they must undergoperiod episodes of de-maturation .

    Big Question today: Is it time to address the de-maturation of projectmanagement processes?

    Iterative and agile approaches to project management reflect a steptowards de-maturation.

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    8/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 8 of 58Version 141822

    PART I.PART I.

    NUTSHELL OVERVIEW OF ITERATIVENUTSHELL OVERVIEW OF ITERATIVEAND AGILE TECHNIQUESAND AGILE TECHNIQUES

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    9/58

    Visit UMT online at www.umtweb.edu Page 9 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Alternative Software DevelopmentAlternative Software Development

    ApproachesApproachesThere are many alternative S/W development life-cycle approachesyou can employ to develop software. Here we look at three broadcategories being used today:

    Traditional (specifically, the Waterfall approach) Iterative (specifically, RAD Application Prototyping, time-

    boxed development, and Rational Unified Process (RUP)development)

    Agile (XP, Scrum)

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    10/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 10 of 58Version 141822

    Waterfall ApproachWaterfall Approach

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    11/58

    Visit UMT online at www.umtweb.edu Page 11 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Thumbnail Sketch: Waterfall ApproachThumbnail Sketch: Waterfall Approach

    This methodology emerged in the 1970s and 1980s as softwaredevelopment moved from an ad hoc effort to a more structured discipline. Itis heavily process-driven.

    The Waterfall life cycle approaches software development in a step-by-step,linear fashion. First you elicit requirements for the system. Once this isdone, you design the system. Then you construct the system in accordancewith the design. And so on.

    Ironically, the Waterfall concept was articulated by W. W. Royce in 1970 in apublication that criticized linear S/W development. Royce was one of thekey players in developing the iterative perspective!

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    12/58

    Visit UMT online at www.umtweb.edu Page 12 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    The Waterfall ModelThe Waterfall Model

    With the waterfall approach, you do not proceed to thenext phase until the previous one is complete.

    RequirementsAnalysis

    SystemDesign

    Coding & Debugging

    Installation

    Testing & Integration

    This approach em erged in the1970s and 1980s

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    13/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 13 of 58Version 141822

    Iterative ApproachesIterative Approaches

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    14/58

    Visit UMT online at www.umtweb.edu Page 14 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Thumbnail Sketch: Iterative ApproachesThumbnail Sketch: Iterative Approaches

    Iterative development focuses on eating the elephant piece bypiece, rather than in one big chunk (Waterfall approach).

    Iterative techniques actually pre-date the Waterfall approach. They

    became associated with the enormously popular structured techniques , which in turn were associated with top-down design.

    Many of the best known names in S/W development wereproponents of iterative approaches:

    W.W. Royce (1970s) Harlan Mills (1970s) Frederick Brooks (1970s) Bernard Boar (1980s) Barry Boehm (1980s)

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    15/58

    Visit UMT online at www.umtweb.edu Page 15 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    The Spiral Model (Barry Boehm)The Spiral Model (Barry Boehm)

    Programming

    Design

    Start

    Analysis

    Evaluation

    1stPhase

    2ndPhase

    3rdPhase

    4thPhase

    Risk Analysis

    En d

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    16/58

    Visit UMT online at www.umtweb.edu Page 16 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Iterative Development Can IncorporateIterative Development Can Incorporate

    Waterfall ThinkingWaterfall Thinking

    System Test

    Build

    Design

    Analysis

    Requirements

    System Test

    Build

    Design

    Analysis

    Requirements

    System Test

    Build

    Design

    Analysis

    Requirements

    Build Complete

    RELEASE TO

    client

    clientInspection & Acceptance

    clientInspection & Acceptance

    I teration 1 I teration 3Iteration 2

    % Application

    Complete

    100%

    I teration 1 I teration 2 I teration 3

    clientInspection & Acceptance

    Build Complete

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    17/58

    Visit UMT online at www.umtweb.edu Page 17 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Two Variants of Iterative S/W DevelopmentTwo Variants of Iterative S/W Development

    The term iterative S/W development is employed to describe anevolutionary process to developing S/W, in contrast to the lets-develop-the-whole-thing approach associated with waterfall S/W development

    There are two variants of the iterative approach:

    Top-down iterative development

    Staged development

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    18/58

    Visit UMT online at www.umtweb.edu Page 18 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    TopTop --down Iterative Development Approachdown Iterative Development Approach

    Desired Deliverable

    Round 0No

    functionality

    Round 3100%

    functionality

    Round 2No

    functionality

    Round 1No

    functionality

    Example: RADApplication

    Prototyping

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    19/58

    Visit UMT online at www.umtweb.edu Page 19 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Staged Iterative Development ApproachStaged Iterative Development Approach

    Desired Deliverable

    Version 1.060%

    functionality

    Version 1.3100%

    functionality

    Version 1.290%

    functionality

    Version 1 .175%

    functionality

    Example: Time-boxed scheduling

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    20/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 20 of 58Version 141822

    Agile ApproachesAgile Approaches

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    21/58

    Visit UMT online at www.umtweb.edu Page 21 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Thumbnail Sketch: Agile ApproachesThumbnail Sketch: Agile Approaches

    Agile S/W development approaches became popular in the 1990s. Theyhold that rapid change and complexity defeat attempts to develop systemsbuilt on traditional engineering process control , where you anticipate everypossible contingency and define rules to govern them. Projects should be

    managed opportunistically .Problems with engineering process control:

    The agile solution:

    With increased complexity and rapid change, S/Wdevelopment environments became so noisy that thisapproach could no longer produce predictable results.

    Manage change and complexity through intensecommunication between the development team membersand users.

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    22/58

    Visit UMT online at www.umtweb.edu Page 22 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Concern: When Agile BecomesConcern: When Agile Becomes

    CodeCode --andand --GoGo

    Code& Go

    Start End

    Critics of agile techniques are concerned that their lack of formalism maydegenerate into a code-and-go approach, where you start with a conceptand wind up with a product without employing discipline.

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    23/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 23 of 58Version 141822

    Which Approach Is Best?Which Approach Is Best?

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    24/58

    Visit UMT online at www.umtweb.edu Page 24 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Which S/W Methodology Is Best?Which S/W Methodology Is Best?

    Obvious answer: There is no single best methodology.

    The approach employed in developing S/W must be determinedsituationally .

    If your client requires you to identify milestones anddeliverables for the 18 month life of a project, you likelyneed to follow the Waterfall approach.

    If you need a flexible approach with discipline, you shouldconsider adopting an iterative approach.

    If you are operating under severe time constraints or withradically changing technologies, you need to be agile .

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    25/58

    Visit UMT online at www.umtweb.edu Page 25 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Ceremony vs. AgilityCeremony vs. Agility

    Plan Driven

    Empirical Driven

    High CeremonyLow Ceremony

    Waterfall

    Iterative

    Agile

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    26/58

    Visit UMT online at www.umtweb.edu Page 26 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    Cultural Dimensions of the DifferentCultural Dimensions of the DifferentDevelopment ApproachesDevelopment Approaches

    Each of the three S/W development approaches carries with it culturalbaggage:

    Waterfall model

    Comfort with linear development

    Comfort with discipline

    Dependence on processes if you encounter problems, default to the processesIterative approaches

    Desire to avoid eating an elephant in one gulp rather, eat pieces

    Recognition that certainty only extends 4-8 weeks

    Recognition that development must be based on non-linear learning

    Agile approaches

    Impatience with formal processes

    Heavy dependence on opportunistic development, driven by learning

    Belief that certainty only extends about a month

    Heavy belief that development must be based on non-linear, empirical learning

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    27/58

    Visit UMT online at www.umtweb.edu Page 27 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    SDLC Is Not an Either/Or Decision: ASDLC Is Not an Either/Or Decision: A

    Portfolio ApproachPortfolio Approach

    AgileIterative

    Waterfall

    Selecting aproper SDLC isnot an either/ orproposition. A portfolioapproach toemploying SDLCscan be taken.

    Traits

    Short-fuse schedule

    Uncertain requirements

    Agile mind-set

    Traits

    Larger projects

    Requirements k nown

    Customer demand

    Structured mindset

    Traits

    Uncertain requirements

    Need for learning

    Flexible mind-set

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    28/58

  • 8/7/2019 AgileandIterativeProjMgt

    29/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 29 of 58Version 141822

    Some SpecificSome SpecificMethodologiesMethodologies

    TimeTime --Boxed Scheduling, RADBoxed Scheduling, RADApplication Prototyping, RUP, andApplication Prototyping, RUP, and

    ScrumScrum

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    30/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 30 of 58Version 141822

    TimeTime --boxed Schedulingboxed Scheduling

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    31/58

    Visit UMT online at www.umtweb.edu Page 31 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    TimeTime --boxed Schedulingboxed Scheduling

    With time-boxed scheduling, producing deliverables by a specific short-fusetarget date is paramount

    To produce the deliverable quickly, both clients and developers mustrecognize that you cant have it all some requirements will need to be

    trimmed from the clients wish listIf clients insist on keeping features that have been dropped, these featurescan be included in future versions of the deliverable. Thus time-boxedscheduling lends itself to iterative S/W development, where new releasesare created with each iteration.

    Key issue: How to determine which requirements to keep and which todrop?

    Decisions must be made jointly by clients anddevelopers

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    32/58

    Visit UMT online at www.umtweb.edu Page 32 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    TimeTime --boxed Scheduling Extended toboxed Scheduling Extended to

    Produce Releases IterativelyProduce Releases Iteratively

    Release

    Release

    Release

    As each build is brought toclosure, the time-boxedprocess is repeated, this timefocusing on addressingprioritized features not coveredin previous builds.

    As each build is brought toclosure, the time-boxedprocess is repeated, this timefocusing on addressing

    prioritized features not coveredin the previous build.

    T i m e - b o x e d s c h e d u l i n g p r o c e s s

    T i m e - b o x e d s c h e d u l i n g p r o c e s s

    T i m e - b o x e d s c h e d u l i n g p r o c e s s

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    33/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 33 of 58Version 141822

    Opportunistic SchedulingOpportunistic Scheduling

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    34/58

    Visit UMT online at www.umtweb.edu Page 34 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    Opportunistic vs. PERT/CPM SchedulingOpportunistic vs. PERT/CPM Scheduling

    The best known project management tools are theGantt/PERT/CPM charts, which lie at the heart of schedulingpackages, such as MS Project.

    Agile and iterative S/W development practitioners such as thosepeople using time-boxed scheduling and Scrum often need toabandon rigidly pre-determined Gantt/PERT/CPM logic in favor ofopportunistic scheduling .

    If testers are suddenly available, use them now, ifappropriate. If a piece of equipment arrives sooner than expected,

    integrate it into your solution now, if appropriate.

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    35/58

    Visit UMT online at www.umtweb.edu Page 35 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    Opportunistic SchedulingOpportunistic Scheduling

    If we need to speed things up, we may need to move away fromrigid PERT/CPM task sequences:

    Can we do things in parallel that we would normally do sequentially?

    Can we identify resources that may be able to help us speed up thework effort?Can the team figure out ways to do the job more effectively?

    Can we identify new technologies that build our effectiveness?

    Can we identify new opportunities that will enable us to do work earlierthan scheduled (e.g., the unplanned availability of extra resources; theearly arrival of equipment)?

    In prioritizing features to deliver, what features do clients most want?

    Can we cut back on functionality that adds little value?

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    36/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 36 of 58Version 141822

    RAD Application PrototypingRAD Application Prototyping

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    37/58

    Visit UMT online at www.umtweb.edu Page 37 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    The Big PictureThe Big Picture

    Defineprototype

    Hand overdeliverable

    Exerciseprototype

    Buildprototype

    Client panelreview

    DevelopmentTeam

    Client panelinput

    Determinefeasibility

    Study presentsystem

    Createrequirements

    NeedTradit ional Syst ems

    Analysis

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    38/58

    Visit UMT online at www.umtweb.edu Page 38 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    The Myth of Slower Development TimeThe Myth of Slower Development Time

    One of the severest criticisms of application prototyping is that it stretchesout development time, since at the end of the prototyping effort, all you haveis a set of requirements. You still need to build the system!

    This criticism is largely without merit. By getting the requirements right withapplication prototyping, you gain client acceptance and avoid producingsystems that are rejected by clients, or that entail large amounts of changesin order to get things right. By gaining client acceptance through clientinvolvement, project life-cycles can be shortened dramatically.

    Warning: Clients may initially see the process as being slow. They need to

    be educated that because it dramatically improves requirementsdevelopment, it can in fact be much quicker than traditional developmentapproaches that entail substantial rework.

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    39/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 39 of 58Version 141822

    Rational Unified Process (RUP)Rational Unified Process (RUP)

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    40/58

    Visit UMT online at www.umtweb.edu Page 40 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    Some Distinguishing Features of RUPSome Distinguishing Features of RUP

    The Rational Unified Process (RUP) emerged in the 1980s as aspin-off of Boehms spiral development model.

    There are many approaches that S/W developers can take thesedays. What distinguishes RUP from the other approaches? There

    are five features that RUP focuses on that differentiate it. These are:Mitigate risk as early as possible

    Baseline an executable architecture as early as possible

    At the end of each iteration, make sure you have produceddemonstrably executable S/W

    Recognize that change is inevitable Dont be rigid. Prepare yourself toaccommodate change as early as possible

    Build your system with components

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    41/58

    Visit UMT online at www.umtweb.edu Page 41 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    RUP Phases: An OverviewRUP Phases: An Overview

    INCEPTION ELABORATION CONSTRUCTION TRANSITION

    LifecycleObjectives (LCO)

    Are business risksmitigated? Is theproject feasibleand financiallyworthwhile?

    LifecycleArchitecture (LCA)

    Are the technicalrisks mitigated?Do have a plan onhow to run theproject?

    Initial OperationalCapability (IOC)

    Are logistical risksmitigated? Is thesystem usable? Canw e ship a betaversion?

    ProductRelease

    Are we ready toship a completeproduct?

    Understandproject scope

    Build a businesscase

    Get stakeholderbuy-in

    Create a solidarchitecture

    ID andeliminate highrisk elements

    Develop a planto build thesystem

    Build anoperationalversion of theproduct

    Build a finalversion of theproduct

    Deliver theproduct to theclient

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    42/58

    Visit UMT online at www.umtweb.edu Page 42 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    User Input with Use Case Diagrams:User Input with Use Case Diagrams:Student Course RegistrationStudent Course Registration

    Counsel student

    Academic Advisor

    Student

    Review learning plan

    Enroll student

    Maintain student record

    Learning plan

    Course listing

    Payment system

    Registrar

    Maintain courses

    Develop new courses

    Review available courses

    Pay for courses

    Register for courses

    Professor

    = Use case

    = Actor (person,

    system)

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    43/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 43 of 58Version 141822

    Example of Agile Development: ScrumExample of Agile Development: Scrum

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    44/58

    Visit UMT online at www.umtweb.edu Page 44 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    IntroductionIntroduction

    The best known of the agile development techniques is Scrum

    Scrums basic premise is that beginning in the 1980s, S/Wdevelopment efforts became noisy along three dimensions:

    Requirements: There is uncertainty and change regarding what theproduct should address

    Technology: Technologies being computerized, as well as computertechnologies, are changing so rapidly that few people understand themexpertly

    People: People factors are poorly understood skills levels vary amongS/W team members, different people interpret information differently,team dynamics contribute to success and failure, etc.

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    45/58

    Visit UMT online at www.umtweb.edu Page 45 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    Requirements, Technology, and Levels ofRequirements, Technology, and Levels of

    ComplexityComplexity

    TECHNOLOGY

    Complicated

    ComplicatedSimple

    Anarchy

    C O M P L E X

    REQUIREMENTS

    Certainty Far from Certainty

    Clear

    Far from

    clear

    From Schwaber and Beedle, Agile Software Development with Scrum , Prentice-Hall, 2002, p. 93

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    46/58

  • 8/7/2019 AgileandIterativeProjMgt

    47/58

    Visit UMT online at www.umtweb.edu Page 47 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    Opportunistic Scheduling: LessonsOpportunistic Scheduling: Lessonsfrom Scrumfrom Scrum

    Scrum is the best known of the agile S/W development techniques. Itis based on making sure that team members continuallycommunicate with each other. The theory is that if all the teammembers know what their fellow team members are doing, they aremore likely to recognize opportunities for speeding up and improvingtheir collective work effort.

    Team members meet each day during daily scrum sessions . They also meet aftercompleting an iteration of effort (which they call a sprint ), to see what they didright and wrong.

    The team also receives guidance from a scrum master , who oversees the scrummanagement process. A goal of the scrum master is to identify how to speed

    things up and enable the team to function more effectively. The product backlog ismaintained by the product owner .

    Bottom line: With scrum, there is a constant search for opportunities to speedthings up and to increase team effectiveness. Development is driven by continuallearning .

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    48/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 48 of 58Version 141822

    Conclusions about Agile andConclusions about Agile andIterative TechniquesIterative Techniques

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    49/58

    Visit UMT online at www.umtweb.edu Page 49 of 58Version 141822

    infoinfo

    Copyright 2008 UMT

    Some Challenges to Iterative and AgileSome Challenges to Iterative and AgileApproachesApproaches

    Some unresolved issues regarding iterative and agile approaches:

    1. How to deal with increasing scale of projects when using iterative and agile techniques

    2. How to manage agile teams when team members are geographically dispersed (i.e., virtualteams)

    3. How to plan for iterative and agile efforts (e.g., How do you establish budgets for suchprojects?)

    4. Distinguishing between:

    Outputs associated with iterations

    Enhancements

    Scope creep

    5. Determining whether average players can function effectively on agile teams

    NOTE: The fact that Waterfall approaches allow you to plan projects in detail doesnot make the plan right!! It does not mean you got the requirements right!!

    http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    50/58

    Visit UMT online at www.umtweb.edu Page 50 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Iterative and Agile Development AreIterative and Agile Development AreBased on LearningBased on Learning

    The iterative and agile approaches to software development are notnew. Some of the best known players in the history of softwaredevelopment espoused iterative and agile approaches includingRoyce, Boehm, Mills, and Boar.

    The underlying premises of iterative approaches dovetail nicely withcurrent management thinking, which stresses that in an era ofcomplexity and rapid change, organizations must be learning organizations . With iterative approaches, learning is gained fromiteration to iteration and is incorporated into the product beingdeveloped.

    http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    51/58

    Copyright 2008 UMT

    Visit UMT online at www.umtweb.edu Page 51 of 58Version 141822

    PART II. IMPACTS OFPART II. IMPACTS OFEVOLVING PM PRACTICESEVOLVING PM PRACTICESON PM STANDARDSON PM STANDARDS

    http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    52/58

    Visit UMT online at www.umtweb.edu Page 52 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    The Standards DilemmaThe Standards Dilemma

    An important function of standards is to establish consistentpractices in a profession. For example:

    PMBOK Guide Project management standards

    Capability Maturity Model (CMM) Software development standards

    ISO 9000 Quality standards

    The dilemma: Standards generally reflect current practice. In asense, by doing so they look backward. As practices evolve,

    standards need to adjust to the changes otherwise, they become abarrier to progress.

    http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    53/58

    Visit UMT online at www.umtweb.edu Page 53 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Example of the Challenge toExample of the Challenge to PMBOK PMBOK Presented byPresented byAgile and Iterative PracticesAgile and Iterative Practices

    The PMBOK Guide (2004) and PMIs Practice Standard for Work Breakdown Structures (2nd . Ed, 2006) emphasize the central role ofWBSs in planning projects.

    While WBS construction is well-suited to the Waterfall approach toS/W development, how well suited is it to agile and iterativeapproaches?

    http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    54/58

    Visit UMT online at www.umtweb.edu Page 54 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Example of the Challenge toExample of the Challenge to CMM CMM Presented byPresented byAgile and Iterative PracticesAgile and Iterative Practices

    The Capability Maturity Model has become the standard forintroducing maturity in software development in organizations. Itsprimary premise is that S/W development should move from ad hoc efforts to controlled processes.

    While CMM Level 2 (Repeatable) and Level 3 (Defined) are suitableto the Waterfall approach, how well-suited are they to agile anditerative approaches?

    http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    55/58

    Visit UMT online at www.umtweb.edu Page 55 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Stages of Maturity in the CMMStages of Maturity in the CMM

    InitialUnpredictable

    and poorlycontrolled

    RepeatableCan repeatpreviouslymasteredtasks

    DefinedProcesscharacterized,fairly wellunderstood

    ManagedProcessmeasured andcontrolled

    OptimizingFocus onprocessimprovement

    Unpredictable

    Predictable

    In an era of rapid change andcomplexity, how much emphasis do wew ant to place on repeatability?

    The agile philosophy holds thatthe process engineering outlook isnot appropriate when dealing

    w ith complexity and change

    l b dV i 141822

    http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    56/58

    Visit UMT online at www.umtweb.edu Page 56 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Example of the Challenge toExample of the Challenge to ISO 9000 ISO 9000 PresentedPresentedby Agile and Iterative Practicesby Agile and Iterative Practices

    As is the case with CMM, the ISO 9000 quality perspective strives toachieve consistent output by use of well-defined processes.Ultimately, enterprises that receive ISO 9000 certification areevaluated on the basis of their processes rather than the products

    they produce.

    Yet agile and iterative development methodologies are based onhighly flexible processes. With agile practices, the direction taken bythe project may be determined day-by-day (e.g., through dailyscrums). Certainly, all agile and iterative practices make heavy useof learning and take advantage of unforeseen opportunities in orderto define future directions taken by projects.

    Vi i UMT li b dV i 141822

    http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    57/58

    Visit UMT online at www.umtweb.edu Page 57 of 58Version 141822

    info

    info

    Copyright 2008 UMT

    Last WordLast Word

    When selecting a development approach to executing projects, youneed to take into account a variety of factors, including:

    People: Working style and psychological proclivities of team members;requirements of customers

    Project: Complexity, size, and time-frame of the project, in addition tothe risk associated with the project effort and the product beingproduced

    When selecting a project development approach, you are not facingan either/or situation. A blended approach often makes sense.

    It is good from time to time to reconsider the standards we adopt tocarry out our projects. What worked yesterday may not work today effective management requires periodic episodes of de-maturation.

    Vi it UMT li t t b dVersion 141822

    http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/http://www.umtweb.edu/
  • 8/7/2019 AgileandIterativeProjMgt

    58/58

    Visit UMT online at www.umtweb.edu Page 58 of 58Version 141822

    Thank you!Thank you!

    http://www.umtweb.edu/http://www.umtweb.edu/