CMM and Software Project Planning

p>Software project planning is a Key Process AreaTeam process. If your project entails drafting a
(KPA) that spans many of the knowledge areas fromproposal in response to an RFP (Request for
the PMBOK as it describes activities performed duringProposal), then these documents should assign key
the planning phase of a software project. Theengineering group resources to this work. The
knowledge involved include: Integration Management,documents should also assign responsibility for review
Scope Management, Time Management, Costof the work commitments to the engineering group.
Management, Human Resource Management,2. Software planning is initiated in the early stages of,
Procurement Management, Risk Management, andand in parallel with, the overall project planning. It is.
Communications Management. The only area not3. The software engineering group participates with
touched is Quality Management. Many projectother affected groups in the overall project planning
managers also define a change management processthroughout the project's life. This participation will be
that covers each area of the project and describedefined by the Project Staff Assignments document,
that process in a Change Management plan. This planand other project plans which define roles and
also supports the Software Project Planning KPA.responsibilities. These SMEs should also be assigned
CMM divides this KPA into goals, commitments,responsibility for providing analysis and estimation for
abilities, activities, measurements, and verifications.change requests in the Change Management plan.
This article will attempt to relate each of these to its4. Commitments made to external groups are
PMBOK component.reviewed with senior management according to a
Goalsdocumented procedure. This procedure will be your
CMM defines 3 goals for this KPA: softwareGate Review meetings as described previously.
estimates are documented and used to plan and5. A software life cycle with predefined stages of
track the project, activities are documented andmanageable size is identified or defined. The
planned, and affected groups agree to theirSoftware Development Lifecycle Method (SDLC)
commitments. These goals are supported by theshould be specified in your project charter as part of
Time Management knowledge area with theyour approach to the project. Stages or iterations will
exception of the agreement of "affected groups" tobe further defined in the WBS and schedule.
their commitments. Agreement of senior6. The project's software development plan is
management and other stakeholders to the plan isdeveloped according to a documented procedure.
accomplished by Gate Review meetings described inThis documented procedure is called the Project
the Communications Management plan andManagement Plan. This can be one document or
agreement of other team members is described inmany. This activity also specifies that the plan is
the Human Resources Management plan.negotiated with the software engineering group doing
Commitment to Performproject work and other groups that are stakeholders,
The first commitment is that a project softwareand that the plan is managed and controlled.
manager is designated for managing the work. ThisManagement and control activities are specified in the
would be you. The Project Charter is the documentProject Management plan and Change Management
that speaks to this. The next commitment is that theplan.
project follows a written organizational policy for7. The plan for the software project is documented.
planning a software project. Unless your organizationDocumentation will be the Project Management plan,
includes a PMO, or PMC, you won't be able to meetincluding the project schedule. This activity specifies
this commitment to perform; your plans apply only tosoftware configuration management and this process
the current project and aren't part of a standardshould survive the project. If there is no software
applicable to all projects. Some of the specifics of thisconfiguration management plan in place for your
commitment can be supported by your plan,project to use because you are creating a new
however. Some will be supported by your Projectsystem, your project management plans should
Management plan. This could be one document or ainclude creation of a configuration management plan.
compilation of plans for each of the knowledge areas.8. Software work products that are needed to
The second commitment requires negotiation of theestablish and maintain control of the software project
requirements with the project manager, softwareare identified. This refers to the files that will be
project manager, and other software managers. Thischecked into the source library and managed by the
process is described in your Scope Management areaconfiguration management plan. These files will be
in the Requirements Gathering process. The processspecified in Detail Design Documents (DDDs), the
of negotiating the participation of the variousWBS, and the project schedule.
software development groups on the project should9. Estimation is done according to a documented
be described in your Human Resources Managementprocedure. This activity specifies that organizational
plan. This is described for you in the Acquire Projectexperience in estimation be used to guide the current
Team process. Keep in mind that while the PMBOK isestimation and that historical information be consulted
referring to the entire team, CMM refers to onlywhen available. This refers to the "Enterprise
those groups engaged in software development.Environmental Factors" and "Organizational Process
The second commitment also specifies that seniorAssets" which are inputs to many PMBOK processes
management reviews all software relatedincluding the Activity Duration Estimation process. The
commitments made to external stakeholders. Thisactivity further specifies that the estimates should be
review should take place at a Gate, Phase Exit, oragreed to by the folks performing the work.
Business Decision Point review meeting which will beAlthough this is not spelled out in the PMBOK it is
described in your Communications Management plan.always a good idea to have the resource agree to
Keep in mind that this meeting will review all projectthe work and deadline they are asked to commit to.
commitments, not just software related ones. TheseThis agreement and commitment needs to be
reviews are described in more detail for you in thedocumented somewhere in the Project Plans.
Context and Integration Management areas of the10. A documented procedure is used to estimate
PMBOK.project effort and cost.These procedures should be
Ability to Performdocumented in the Time Management plan and Cost
CMM requires the work of the project to beManagement plan. Agreement to effort estimations is
described in a Statement of Work (SOW). Again,described above and agreement to cost is achieved
CMM only refers to that portion of the work relatedduring Gate Review meetings described in the
to software development. The PMBOK describes theCommunications Management plan
SOW and its use in the Integration Management and11. A documented procedure is used to estimate
Procurement Management knowledge areas. Thecritical computer resources. This is a specific instance
description in the PMBOK will deliver an SOW thatof the resource estimation produced by the Estimate
satisfies CMM criteria. Although the PMBOK specifiesActivity Resource and the Activity Duration
this artifact for work that is procured externally, anEstimation processes and captured in the Time
SOW must be produced for each project to satisfyManagement plan.
the CMM criterion.12. The project's software schedule is derived
The second ability requires responsibility foraccording to a documented procedure. This is
developing the project plan to be assigned. This isaccomplished by the procedures described in the
your work and responsibility should be defined in yourTime Management area, up to and including the
Project Charter. The third ability speaks to theSchedule Development procedure.
provision of adequate resources and funding. The13. The risks are identified, assessed and
Estimate Activity Resources and Activity Durationdocumented. This is part of your Risk Management
Estimating processes in Time Management describeplan.
how resource requirements are derived. Human14. Plans for the project's software engineering
resources are assigned to your project by thefacilities and support tools are prepared. This is part
Acquire the Project Team process in the Humanof the Estimate Activity Resource procedure.
Resources Management area and any otherAcquisition of non-human resources is managed by
resources, such as software testing tools, arethe WBS, or the Procurement Management plan
acquired by the Procurement Management plan.where resources must be procured externally.
Funding is addressed in the Cost Management area,15. Software planning data are recorded. The
but CMM refers specifically to the provision of theestimates will be recorded in the schedule and
funding. This provision should be negotiated andestimation information, including assumptions, will be
committed to at the Gate Review meeting thatrecorded in the WBS. In most cases the schedule
happens between planning and implementation.and WBS will be one and the same document, your
Funding for planning activities will only be negotiatedMS Project file.
and committed to when your organization isMeasurement and Analysis
performing the project for an external customerCMM requires you to track the progress of your
under contract.planning activities. The Time Management processes
The fourth ability refers to your training in the areaculminate in the project schedule so we can't say
of software project planning. This criterion can easilythat this measurement is supported by Time
be satisfied by a project manager who has beenManagement. The initiation of the project will usually
certified by the PMI as a Project Managementresult in a preliminary schedule of planning events,
Professional (PMP). PMI is the most recognizedmilestones, and deliverables in your MS Project file.
certification body in the area of project managementThe planned and actual dates in this file are what you
and certification is relatively straightforward for thosewill use to track progress.
who meet PMI's criteria. Certification requires eligibleVerifying Implementation
candidates to pass an exam testing their projectCMM calls for project planning activities to be
management knowledge, including planning knowledge.reviewed with senior management periodically. These
There are numerous PMP courses or PMP examreviews will be described in your Communications
preparation training products available to prepare youManagement plan. The senior management referred
to pass the exam.to may be the project business sponsor, the project
The ability also calls for any other person involved inIT sponsor, or a Steering Committee, or a
planning to be trained in software estimation andcombination of these. Your Gate Review meeting to
planning. This is a somewhat more difficult criterion tomove the project forward from the initiation phase
meet. Since you will rely on Subject Matter Expertsto the planning phase is also verification. CMM also
on your team to provide accurate effort estimationscalls for a summary report from each of these
for the various tasks in the WBS, you will need tomeetings to be prepared and distributed. Status
identify the process you will use to do the estimatingreview meetings are also called for and a summary
and provide any tools and training required to use thereport is to be issued for these meetings.
chosen process. The process of training thoseCMM requires a software quality assurance group to
individuals will be described in your Human Resourcesreview/audit the project plans. This audit or review
Management plan (Develop the Project Team).may be a service that your PMO or PMC provide, if
Activities Performedyour organization has one. This software quality
Activities called for by CMM include:assurance group could be an existing group in your
organization or that role could be assumed by your
1. The software engineering group participates on thePMO or PMC. If your organization has neither of
project proposal team. The software engineeringthese groups, it will have to create one in order to
group will be engaged in the project as teamsatisfy this point.
members and SMEs as described in the ProjectPMP® and PMBOK® are registered marks of the
Charter (critical or key resources) and the ProjectProject Management Institute.
Staff Assignments produced by the Acquire the