Agile CMMI Project Management

download Agile CMMI Project Management

of 29

Transcript of Agile CMMI Project Management

  • 8/14/2019 Agile CMMI Project Management

    1/29

    rac ca xper ence epor :Application of Project

    Management areas from CMMImodel in an Agile developmentenvironment

    Ahmed MahdySenior Software Engineer and Agile Coach, Raya

    Software

    Agile CMMI Researcher in Cairo University

    [email protected]://www.agilecmmi.blogspot.com (Refer to the full

    paper)

    http://www.linkedin.com/in/amahdy

    mailto:[email protected]://www.agilecmmi.blogspot.com/http://www.linkedin.com/in/amahdyhttp://www.linkedin.com/in/amahdyhttp://www.agilecmmi.blogspot.com/http://www.agilecmmi.blogspot.com/mailto:[email protected]
  • 8/14/2019 Agile CMMI Project Management

    2/29

    Agenda

    Introduction Agile CMMI is better ?

    Agile CMMI can work together in oneenvironment?

    Mechanism of Agile CMMI Compatibility

    Project Management Process Areas Project Planning

    Project Monitoring and Control

    Integrated Project Management Risk Management Quantitative Project Management Supplier Agreement Management

  • 8/14/2019 Agile CMMI Project Management

    3/29

    Agenda

    Introduction Agile CMMI is better ?

    Agile CMMI can work together in oneenvironment?

    Mechanism of Agile CMMI Compatibility

    Project Management Process Areas Project Planning

    Project Monitoring and Control

    Integrated Project Management Risk Management Quantitative Project Management Supplier Agreement Management

  • 8/14/2019 Agile CMMI Project Management

    4/29

    Agile CMMI is better ?

    Need each other to achieve theexcellence and flexibility,

    Enforce the model to be value-driven,

    By definition, work with Clientinstead of Customer,

    Guarantee the knowledge of newpractices and updates from modelsource (SEI) based on other

    global/local experiences

  • 8/14/2019 Agile CMMI Project Management

    5/29

    Agenda

    Introduction Agile CMMI is better ?

    Agile CMMI can work together in oneenvironment?

    Mechanism of Agile CMMI Compatibility

    Project Management Process Areas Project Planning

    Project Monitoring and Control

    Integrated Project Management Risk Management Quantitative Project Management Supplier Agreement Management

  • 8/14/2019 Agile CMMI Project Management

    6/29

    Agile CMMI can work togetherin one environment?

    CMMI and Agile champions worktoward deriving benefit from usingboth and exploit synergies that

    have the potential to dramaticallyimprove business performance. WhyNot Embrace Both, SEI report.

    Agile Companies that is alreadyfollowing CMMI 1.2

  • 8/14/2019 Agile CMMI Project Management

    7/29

    Agenda

    Introduction Agile CMMI is better ?

    Agile CMMI can work together in oneenvironment?

    Mechanism of Agile CMMI Compatibility

    Project Management Process Areas Project Planning

    Project Monitoring and Control

    Integrated Project Management Risk Management Quantitative Project Management Supplier Agreement Management

  • 8/14/2019 Agile CMMI Project Management

    8/29

    Mechanism of Agile CMMICompatibility

    - Agile Principles & Values (defined inAgile Manifesto) are the mandatorycriteria for implementing Agile

    CMMI- Ongoing Agile Practices are not

    written on stone

    - Inspect and Adapt for getting newpractices that add more value

    -

  • 8/14/2019 Agile CMMI Project Management

    9/29

    Agenda

    Introduction Agile CMMI is better ?

    Agile CMMI can work together in oneenvironment?

    Mechanism of Agile CMMI Compatibility

    Project Management Process Areas Project Planning

    Project Monitoring and Control

    Integrated Project Management Risk Management Quantitative Project Management Supplier Agreement Management

  • 8/14/2019 Agile CMMI Project Management

    10/29

    Project Planning PP (1/3)The purpose of Project Planning (PP) is to establish and

    maintain plans that define project activities.

    SP CMMI Practice How to do it?

    1.1 Establish a top-level work breakdown structure(WBS) to estimate the scope of the project.

    High level user stories (i.e. the parent of user stories)

    1.2 Establish and maintain estimates of the attributesof the work products and tasks.

    Story points, used to estimate the difficulty/complexity (orrelative size) of a Story (feature).1.3 Define the project life-cycle phases upon which

    to scope the planning effort.

    The Scrum process.

    1.4 Estimate the project effort and cost for the workproducts and tasks based on estimation rationale.

    Scrum Ideal Time estimate (similar to billable hours or Full-timeEquivalents).

    2.1 Establish and maintain the projects budget andschedule.

    Scrum estimates (in Ideal Time).Estimates of what work will be in each release.Iteration Backlog.Project Task board.

    2.2 Identify and analyze project risks. Iteration Retrospective

    2.3 Plan for the management of project data. Project Internal Chartering

  • 8/14/2019 Agile CMMI Project Management

    11/29

    Project Planning PP (2/3)

    SP CMMI Practice How to do it?

    1.1 Establish a top-level work breakdown structure(WBS) to estimate the scope of the project.

    High level user stories (i.e. the parent of user stories)

    1.2 Establish and maintain estimates of the attributes ofthe work products and tasks.

    Story points, used to estimate the difficulty/complexity (orrelative size) of a Story (feature).

    1.3 Define the project life-cycle phases upon which toscope the planning effort.

    The Scrum process.

    1.4 Estimate the project effort and cost for the work

    products and tasks based on estimation rationale.

    Scrum Ideal Time estimate (similar to billable hours or Full-

    timeEquivalents).

    2.1 Establish and maintain the projects budget andschedule.

    Scrum estimates (in Ideal Time).Estimates of what work will be in each release.Iteration Backlog.Project Task board.

    2.2 Identify and analyze project risks. Iteration Retrospective2.3 Plan for the management of project data. Project Internal Chartering

    2.4 Plan for necessary resources to perform the project. Scrum estimates in Ideal TimeRelease plan, Iteration Backlog and assignments.

    2.5 Plan for knowledge and skills needed to perform theproject.

    Project Internal CharteringRelease Planning (synchronized with the internal chartering)

  • 8/14/2019 Agile CMMI Project Management

    12/29

    Project Planning PP (3/3)

    SP CMMI Practice How to do it?

    2.6 Plan the involvement of identified stakeholders. Scrum/organization process rolesExternal and Internal Chartering

    2.7 Establish and maintain the overall project plancontent.

    Scrum release plan.Iteration Backlog.Project Task-board.

    3.1 Review all plans that affect the project to understandproject commitments.

    Iteration planning meeting.Daily Scrum meeting.

    3.2 Reconcile the project plan to reflect available andestimated resources.

    Iteration planning meeting.Daily Scrum meeting.

    3.3 Obtain commitment from relevant stakeholdersresponsible for performing and supporting planexecution.

    Iteration planning meeting.Daily Scrum meeting (standup).

  • 8/14/2019 Agile CMMI Project Management

    13/29

    Agenda

    Introduction Agile CMMI is better ?

    Agile CMMI can work together in oneenvironment?

    Mechanism of Agile CMMI Compatibility

    Project Management Process Areas Project Planning

    Project Monitoring and Control

    Integrated Project Management Risk Management Quantitative Project Management Supplier Agreement Management

  • 8/14/2019 Agile CMMI Project Management

    14/29

    Project Monitoring and Control PMC (1/3)

    The purpose of Project Monitoring and Control (PMC) is toprovide an understanding of the projects progress so thatappropriate corrective actions can be taken when theprojects performance deviates significantly from the plan.

    SP CMMI Specific Practice How to do it?SP 1.1 Monitor the actual values of the project planning parameters

    against the project plan.Iteration burnup /down chart that tracks effortremaining.Release burnup /down chart that tracks completedstory points.Project Task Board

    SP 1.2 Monitor commitments against thoseidentified in the project plan.

    Discussions on team commitments at the:Daily Scrum meeting.Iteration review meeting.

    Iteration burnup/ down chartRelease burnup/ down chart

  • 8/14/2019 Agile CMMI Project Management

    15/29

    Project Monitoring and Control PMC (2/3)

    SP CMMI Specific Practice How to do it?

    SP 1.3 Monitor risks against those identified in the project plan. Iteration RetrospectiveRelease Retrospective

    SP 1.4 Monitor the management of project data against theproject plan.

    Project WorkspaceConvention of naming, filing, etcAgile Software to monitor project data

    SP 1.5 Monitor stakeholder involvement against the project plan. Daily Scrum meeting.Iteration review meeting.

    SP 1.6 Periodically review the project's progress, performance,and issues.

    Daily Scrum meeting.Iteration review meeting.Retrospectives.Management meetings

    SP 1.7 Review the accomplishments and results of the project atselected project milestones.

    Iteration review meeting.

  • 8/14/2019 Agile CMMI Project Management

    16/29

    Project Monitoring and Control PMC (3/3)

    SP CMMI Specific Practice How to do it?

    SP 2.1 Collect and analyze the issues anddetermine the corrective actionsnecessary to address the issues.

    Daily Scrum meeting discussion.Iteration review meeting discussion.

    SP 2.2 Take corrective action on identifiedissues.

    Iteration review meeting actionsStandup meeting actions

    SP 2.2 Manage corrective actions to closure. Tracking of actions in the following:Daily Scrum meeting.Iteration review meeting.

  • 8/14/2019 Agile CMMI Project Management

    17/29

    Agenda

    Introduction Agile CMMI is better ?

    Agile CMMI can work together in oneenvironment?

    Mechanism of Agile CMMI Compatibility

    Project Management Process Areas Project Planning

    Project Monitoring and Control

    Integrated Project Management Risk Management Quantitative Project Management Supplier Agreement Management

  • 8/14/2019 Agile CMMI Project Management

    18/29

    Integrated ProjectManagement IPM (1/4)

    The purpose of Integrated Project Management (IPM) is toestablish and manage the project and the involvementof the relevant stakeholders according to an integratedand defined process that is tailored from the

    organizations set of standard processes.Important Assumption: (from Agile CMMI Workshop08 in Cairo)There is an established Guidelines and Strategy of

    Agile Standards (GSAS) for agile projects:

    - Data Management Strategy

    - Lifecycle roadmap strategy (Agile roadmap or workflowwith the connection dependencies, conditions,input/output)

    - People Management Plan:

    - Agile People Roles, Skills and Responsibilities- Any constraints

  • 8/14/2019 Agile CMMI Project Management

    19/29

    Integrated ProjectManagement IPM (2/4)

    SP CMMI Practice How to do it?1.1 Establish and maintain the project's defined process from

    project startup through the life of the project.OPF and OPD is a reference for this

    practiceProject process can be stated from theinternal/external chartering meetings (it can

    be updated with re-meeting thestakeholders throughout the work becausethe nature of software process is empirical)

    1.2 Use the organizational process assets and measurement repositoryfor estimating and planning the projects activities.

    Given the Guidelines and Strategy of AgileStandards:Roadmap (Scope of Work)Release PlanningIteration Planning(the estimation of stories both high and

    low level)

    1.3 Establish and maintain the project's work environment based onthe organization's work environment standards.

    Given the Guidelines and Strategy of AgileStandards:List of required tools for agile or scrumactivities

    Other requirements for work environmentthat are standardized in

  • 8/14/2019 Agile CMMI Project Management

    20/29

    Integrated ProjectManagement IPM (3/4)

    SP CMMI Practice How to do it?1.4 Integrate the project plan and the other plans that affect the project to

    describe the projects defined process.Project Integrated Plan which includes:Roadmap (Scope of Work over the releases)Release PlanIteration Plan( its important to integrate these plans to besynchronized due to the expected updatesthroughout the work)

    Using Rally, VersionOne, TFS 2010 or anyother similar tools definitely help you inachieving that easily.

    1.5 Manage the project using the project plan, the other plans that affectthe project, and the projects defined process.

    Project Integrated planReview meetings that may updaterequirements and plans

    1.6 Contribute work products, measures, and documented experiences tothe organizational process assets.

    Iteration RetrospectivesRelease RetrospectivesProject Lessons learned

  • 8/14/2019 Agile CMMI Project Management

    21/29

    Integrated ProjectManagement IPM (4/4)

    SP CMMI Practice How to do it?2.1 Manage the involvement of the relevant stakeholders in the project. Updatable Schedule of the coming events

    (Release planning and retrospectives,Iteration planning and retrospectives,customer meetings)

    Roles and Responsibilities in GSAS2.2 Participate with relevant stakeholders to identify, negotiate, and

    track critical dependencies.Actionitems from standup meetings,iteration and release retrospectivesStory slicing that can show dependencies

    Senior Management meetings and its actionitemsAction items should be assigned and trackedin whatever tool

    2.3 Resolve issues with relevant stakeholders. The tool of action items tracking shouldshow the status of all action items, and allissues.Results of action items tracking

  • 8/14/2019 Agile CMMI Project Management

    22/29

    Agenda

    Introduction Agile CMMI is better ?

    Agile CMMI can work together in oneenvironment?

    Mechanism of Agile CMMI Compatibility

    Project Management Process Areas Project Planning

    Project Monitoring and Control

    Integrated Project Management Risk Management Quantitative Project Management Supplier Agreement Management

  • 8/14/2019 Agile CMMI Project Management

    23/29

    Risk Management RSKM(1/3)

    The purpose of Risk Management (RSKM) is to identifypotential problems before they occur so that risk-handling activities can be planned and invoked asneeded across the life of the product or project to

    mitigate adverse impacts on achieving objectives.Important Notes:

    - Its really *important* to manage your risks- Early risk identification (discovering and exploring)

    - Consider both internal and external chartering risks (cost,

    schedule, performance, technical and other risks)- Discuss any new risk

    - Prepare a mitigation for the identified risk with the collaboration ofother stakeholders

    - Assign the responsibility of such mitigation actions to people

    - Monitor and follow up these mitigations in the agile meetings in

    your process- I ersonall refer usin an trackin tool that hel ou in

  • 8/14/2019 Agile CMMI Project Management

    24/29

    Risk Management RSKM(2/3)

    SP CMMI Practice How to do it?1.1 Determine risk sources and categories. Risk Categories in iteration and release retrospectives

    1.2 Define the parameters used to analyze and categorizerisks, and the parameters used to control the riskmanagement effort.

    Discuss each risk in iteration and releaseretrospectives , define the parameters for risks, and notto involve the management in all risks, you can define

    threshold for management involvement other than therelevant risks by nature.

    1.3 Establish and maintain the strategy to be used for riskmanagement.

    Discuss the mitigationfor each risk with thestakeholders in iteration and release retrospectives,identify assigned action items and how to monitored

    with due dates if possible.

  • 8/14/2019 Agile CMMI Project Management

    25/29

    Risk Management RSKM(3/3)

    SP CMMI Practice How to do it?2.1 Identify and document the risks. Here the call to use any tool for documenting and

    monitoring the risks.

    2.2 Evaluate and categorize each identified risk using thedefined risk categories and parameters, and determine itsrelative

    priority.

    Discuss and analyze each risk with evaluating itsdefined parameters (priority, impact, probability andany other parameter you need for your organization)

    3.1 Develop a risk mitigation plan for the most importantrisks to the project as defined by the risk managementstrategy.

    Discuss the actionsfor each identified risk mitigationand plan for its follow up and handling

    3.2 Monitor the status of each risk periodically andimplement the risk mitigation plan as appropriate.

    Iteration and release retrospective can perform theseactions:Update the risks with additional risks, status of oldrisks, status of actions and mitigations,

  • 8/14/2019 Agile CMMI Project Management

    26/29

    Agenda

    Introduction Agile CMMI is better ?

    Agile CMMI can work together in oneenvironment?

    Mechanism of Agile CMMI Compatibility

    Project Management Process Areas Project Planning

    Project Monitoring and Control

    Integrated Project Management Risk Management Quantitative Project Management Supplier Agreement Management

  • 8/14/2019 Agile CMMI Project Management

    27/29

    These process areas are not included in

    this experience report: Quantitative Project Management (out of

    ML 3)

    Supplier Agreement Management (out of

    company scope)

    However, they can be accomplished byAgile practices that are aligned with

    agile principles, the work is in-progress.Contact Mr. [email protected] to get updatesabout this patch and other processareas.

    You can follow Agile CMMI blog

    mailto:[email protected]://agilecmmi.blogspot.com/mailto:[email protected]
  • 8/14/2019 Agile CMMI Project Management

    28/29

    Thank You!

    Questions?

  • 8/14/2019 Agile CMMI Project Management

    29/29