# U03a1CPM

W
Shared by:
-
Stats
views:
51
posted:
2/10/2011
language:
English
pages:
4
Document Sample

Ts5130 – System Development Theory and Practice
Mark Lindquist
mrkcl@msn.com
Unit 3 Assignment 1

January 11th, 2009
Critical Path Method (CPM):

Part 1 - Critical Path Method, CPM Explained:

Critical path Method (CPM) is a notational and graphical representation that enables a
project manager to track how long it will take to develop a system or more accurately it
describes the project schedule or schedule of activities with relation to time. It also tells
us the activities that are critical to the success of a project and those that are not.

First we must distinguish between activities and milestones. An activity (A set of tasks.)
has a start time and an end time. A milestone is an activity at a certain point in time,
usually a deliverable to the next step. So a milestone is the end of an activity and an
activity is a part of the project with duration. For example the requirements process is a
set of activities with duration. A requirements specification may be the milestone, an
activity that depicts the end of a process and the beginning of another.

We can divide the activities and milestones into phases of the project. This is similar to
analysis and synthesis where we break down a problem (The system) into smaller sub-
larger sub-tasks until the system has a solution. Each phase consists of activities and
milestones. These activities stem from the Work Breakdown Structure (WBS); analyzing
a project and identifying phases, activities, and steps. “CPM analysis starts after you
have figured out all the individual activities in your project” (Baker, S.L. 2004).

We can then represent these activities and milestones graphically in an activity graph.
The nodes of the activity graph are the project milestones and the lines that connect them
are the activities. Each activity or line can be described as having a precursor (An event
or events that must occur before another activity begins), a duration (The length of time
needed to complete an activity), a due date, and an endpoint or node (a milestone).

In an activity graph we can see that some activities must wait for others to end
(Precursor); one node before another. We can also see that certain activities can be done
concurrently. That is one activity works in parallel with other activities. This is an
important concept to remember because if the graph is just one single path it has little use
in determining coordination of activities. We can also determine the critical, or most
important, activities of the project over less vital activities.

An activity graph can be made more useful by adding information to it about the time to
completion of each activity (Phleeger L. S. & Atlee M. J. 2006). With Critical Path
Method CPM we can determine an estimate of time to complete each activity as well as
the project itself by labeling each activity of the activity graph with time estimations. A
zero stipulates no additional time needed and a dashed line represents a relationship but
no activities.

The analysis of this scheduling information is referred to as the Critical Path Method. It
was developed in the 1950s by the US Navy when trying to better organize the building of
submarines and later, especially, when building nuclear submarines (Wikipedia). “In
1957 Dupont developed a project management method designed to address the challenge
of shutting down chemical plants for maintenance (Netnba.com). This is clearly a
estimates, and duration of activities to predict the schedule of a project, its activities,
weather a project is on time, and the value of each activity.

For each activity in the graph we can determine Real time and Available time. Because
two or more paths or activities can occur concurrently and one path will be longer in
duration than the other, the Available time (The duration of the longer path) minus the
Real time (Actual time for completion of the shorter path) is called the Slack time or total
float; the difference in duration from the longest path and the shorter path. That is an
activity’s available time to completion is the duration of the longest path, and the shorter
path is the actual time to completion. Slack time is the difference and can also be
determined by the latest start time and earliest start time of an activity.

Slack Time (total float) = Available time – actual time
Slack Time (total float) = latest-start time – earliest-start time

The longer path of this graph has a slack time of 0. This is because 0 – 0 = 0. Thus the
longest path is referred to as the critical path. Each node has a 0 for its timeline. There is
no room for error with the critical path. Thus we can use slack time to analyze which
activities are critical or not. “This process determines which activities are "critical" (i.e.,
on the longest path) and which have "total float" (i.e., can be delayed without making the
project longer)” (Wikipedia). From CPM we can determine which activities will aid in
effective project completion.

Part 2. CPM, COTS, and the Agile Approach.

CPM and the Agile Approach:

CPM helps a project manager decide which activities of a project are critical or not to the
project, as well as determining project and activity scheduling. In an Agile approach
CPM would work work well.

Because of iterations in an agile approach activities would run in paralel, described above
as phased development. While one iteration is being attended to another iteration is being
worked on. Thus an agile approach works well with the CPM because of the concurrency
of activities.
Commercial Off The Shelf COTS systems:

Commercial off the Shelf (COTS) systems, a system that uses commercial technologies
or products acquired from venders as opposed to custom development, are increasingly
being used especially in government organizations. In a traditional development
environment the steps of project development would be gathering the requirements and
producing a solution to them. In COTS based systems general requirements are gathered
but then the process shifts to the outside looking for venders with appropriate COTS
components to satisfy the requirements. “Custom development starts with the system
requirements and developers create a system that meets them—we are producers. However,
COTS-based system development starts with a general set of requirements and developers then
explore the offerings of the marketplace to see how closely they match the needs” (Oberndorf T.,
Brownsword L., & Sledge C. A., 2000).

Little study has gone into the development of projects or the processes that guide
development with respect to COTS. Carnegie Mellon’s Software Engineering Institute
(SEI) has started a COTS based system initiative that looks at the development and
processes governing the development of projects with respect to COTS; the activities and
practices that ensure the success of COTS based systems.

It is the marketplace not an individual project that determines the acquisition of a COTS
component. The benefits to an organization should be what determines the purchase of a
COTS component not what the project needs at the moment.

CPM and a COTS system:

What is the effect of a COTS system on Critical Path Method? Because the activities are
different for a COTS based system the activities on a CPM graph would be different than
a traditional development approach. So scheduling and time estimation are different for
COTS systems as opposed to traditional systems.

CPM and the Waterfall Method:

Lastly what effect does the Waterfall method have on the CPM? CPM would not work on
the waterfall method because the underlying principal behind a CPM is the concurrency
of activities; activities work in parallel to each other. In a waterfall method activities are
done in sequence only, not concurrently.

Bibliography:

Wikipedia, (No date). http://en.wikipedia.org/wiki/Critical_path_method, Retrieved
January13th, 2009.
NetNBA.com. (2002-2007) “CPM Critical Path Method”
(http://www.netmba.com/operations/project/cpm/) Retrieved January 14th, 2009.

Baker, S. L. (2004). “Critical path Method CPM.”

Oberndorf T., Brownsword L., & Sledge C. A., (Oct, 2000). “An Activity Framework
for COTS-Based Systems.”