Agile Project Management

Click here to load reader

  • date post

    20-Sep-2014
  • Category

    Business

  • view

    5
  • download

    0

Embed Size (px)

description

 

Transcript of Agile Project Management

  • Desktop Technology Program 1

    Agile Project Management

    Frank MaurerUniversity of CalgaryComputer Science

    e-Business Engineering Groupmaurer@cpsc.ucalgary.ca

    http://ebe.cpsc.ucalgary.ca/Frank.Maurer/

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 2

    Project Management?

    What is it?

    Why do we need it?

    What is important?

    Best experience?

    Worst experience?

  • Desktop Technology Program 2

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 3

    Why estimate effort?

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 4

  • Desktop Technology Program 3

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 5

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 6

    Common Management Issues

    Building teams

    Risk management

    Project planning

    Team coordination

    Progress tracking

    Quality assurance

  • Desktop Technology Program 4

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 7

    Team Formation: Tayloristic Way

    role-based (functional, horizontal)

    follow detailed plans of entire software development lifecycle

    the focus is not on individuals but on the process itself!

    teams are tailored to repeatable, manufacturing-like process

    tend to lead to isolated islands of knowledge

    what is to be done how it is to be done the exact time allowed for doing it

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 8

    Team Formation: Agile Way

    cross-functional teams (vertical)

    require less knowledge transfer (because there is no intermediates who may loose/alter

    knowledge)

    facilitate better knowledge transfer (informally)

    rotations from one role to another are common

    highly specialized experts can be shared among several teams

  • Desktop Technology Program 5

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 9

    Empowerment

    Self-determination

    Motivation

    Leadership

    Expertise

    Amplify learning by feedback and frequent

    synchronization

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 10

    Risk Management

    Risk identification

    E.g. unknown technologies, tools

    Risk quantification

    Risk resolution

    Reserve time for overcoming troubles

    Define tasks that reduce risks

    Contingency planhttp://www.pru.uts.edu.au/images/risk_management_benefits.gif

  • Desktop Technology Program 6

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 11

    Typical Risks

    Changing scope

    Technology is immature or unknown to developers

    Wrong effort estimates

    Low quality

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 12

  • Desktop Technology Program 7

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 13

    Four Project Variables

    Cost CHAOS Reports, Standish Group, 1994-

    2002

    Scope Feature creep

    Requirements churn

    Time Adding people to a late project just

    makes it laterBrooks, Mythical Man Month

    Quality Disasters and software bugs

    http://www.mtholyoke.edu/~rzdalea/cs100/software_disasters/sd.htm

    http://www.csl.sri.com/users/neumann/illustrative.html

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 14

    Software Project Overruns

    Kjetil Molkken-stvold, Kristian Marius Furulund: The Relationship between Customer Collaboration and Software Project Overruns, Proc Agile 2007, IEEE: About 70-80% of all projects encounter effort (cost) overruns The average magnitude of effort overruns is 30-40% Similar results for schedule overruns No apparent change the past 30-40 years

    Molkken-stvold and Jrgensen, "A Comparison of Software Project Overruns, IEEE Transactions on Software Engineering, 2004: Effort overruns based on development process

    Projects using sequential processes: Median= 60% (Mean=55%) Projects using flexible processes: Median=1% (Mean=24%) Interviews found that flexible development processes fostered good

    collaboration with the customer

  • Desktop Technology Program 8

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 15

    Project Management

    Project management = planning, organizing, controlling of tasks &

    resources to accomplish a defined objective

    What, who, when, how much (i.e. costs)

    Command and control

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 16

    Project Management Tasks

    Planning the project Define tasks, task dependencies and milestones

    Estimate effort How long will it take to do something

    Scheduling the tasks Define start and finish dates

    Assign tasks Who will work on it Resource leveling Myth: if we fall behind the schedule, we can always add more

    programmers and catch up later in the project

    Tracking progress Conducting periodic project status meetings Determine whether formal project milestones have been accomplished Compare planned and actual end dates

  • Desktop Technology Program 9

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 17

    Gantt Chart

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 18

    Managers and Leaders

    Managers: command and control

    Define and assign tasks

    Gather status reports and track progress

    Leaders: convince and steer

    Help team to plan project

    Coach team members

    Remove obstacles

  • Desktop Technology Program 10

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 19

    Agile Management Strategy

    Team members accept responsibility

    Tasks are not assigned but team members sign up for them

    Committed to do quality work

    Not much management overhead

    Coaching & mentoring (software apprentice)

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 20

    Four Values

    Communication

    problems with projects can invariably be traced to somebody not talking to somebody else about something important XP p. 29

    Simplicity

    what is the simplest thing that could possibly work?

    YAGNI you aint gone need it

    Feedback

    Put system in production ASAP

    Have you written a test case for that yet?

    Courage

    Hill climbing (simple, complex, simpler,..)

    Big jumps take courage

  • Desktop Technology Program 11

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 21

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 22

    Project Vision

    Vision =Statement of what the business will look like once the new system is implemented.

    Used to establish a project budget

    Established by product owner Provides/finds funding for projects

    Vision includes Anticipated benefits for business

    Assessment criteria for management to evaluate progress and conformance to vision Management oversight needed

  • Desktop Technology Program 12

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 23

    Product Owner

    Defines project vision big picture

    Provides/finds funding for projects

    Checks ROI

    Prioritizes backlog

    One person must represent all stakeholders

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 24

    DSDM Process

    Feasibility

    Functional Model

    Review Prototype

    Identify

    Functional

    Prototype

    Agree schedule

    Create

    Functional

    Prototype

    Implementation

    User approval and

    user guidelines

    Train

    users

    Implement

    Review

    business

    Design and Build

    Iteration

    Create

    Design Prototype

    Review

    Design

    Prototype

    Identify

    Design prototype

    Agree

    Schedule

    Feasibility

    Review Prototype

    Identify

    Functional

    Prototype

    Agree schedule

    Create

    Functional

    Prototype

    User approval and

    user guidelines

    Train

    users

    Implement

    Review

    busines

    s

    Create

    Design Prototype

    Review

    Design

    Prototype

    Identify

    Design prototype

    Agree

    ScheduleDesign and Build

    Iteration

    Functional Model Implementation

  • Desktop Technology Program 13

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 25

    Return on Investment (ROI)

    Payback time

    Net present value, internal rate of return SE Economics

    Monetary versus non-monetary payback

    Software by Numbers, p. 16

    Copyright 2006 Frank Maurer. All Rights Reserved.

    20-Sep-07 Agile Project Management 26

    A Matter of Trust: Business Contracts

    Fixed scope/fixed price contracts Trust by contract Attempts to mov