lecture 4: software process management dr valentina plekhanova university of sunderland, uk...
TRANSCRIPT
Lecture 4Lecture 4:: Software Process ManagementSoftware Process Management
Dr Valentina PlekhanovaDr Valentina Plekhanova
University of Sunderland, UKUniversity of Sunderland, UK
http://www.cet.sunderland.ac.uk/~cs0vpl/SE-Com185.htmhttp://www.cet.sunderland.ac.uk/~cs0vpl/SE-Com185.htm
Lecture 4 Valentina Plekhanova 2
Process Models …Process Models … Existing process modelsprocess models represent various
projects goal(s) and this defines an ordering of project (tasks) activities.
Lecture 4 Valentina Plekhanova 3
Project ManagementProject Management In contrast with software process models, project project
managementmanagement deals with resources. Moreover, it is used as a means to provide
planning, organisation, direction and control of resources in order to meet an organisation’s objectives by a specific date and within a well-defined budget.
Project management involves the application of limited resources to the completion of tasks in the most effective and efficient manner.
Lecture 4 Valentina Plekhanova 4
Project SchedulingProject Scheduling A pivotal problem of project management
is to find the best trade-offs among resources.
Support for the co-ordination of people, tasks, equipment, products, time and money is provided by project management project management schedulingscheduling.
Lecture 4 Valentina Plekhanova 5
Planning Phase: Planning Phase: Estimating Duration & CostEstimating Duration & Cost … ???
DurationDuration … Another important part is estimating the the
duration of the projectduration of the project. However, in estimating these issues a large
number of variables are involved, principally the human factor.
Lecture 4 Valentina Plekhanova 6
Cost EstimationCost Estimation An accurate cost estimation is an integral part of
any software project management plan. A number of approaches can be used for cost
estimation. These include: Expert judgement by analogy: consultation
between a number of experts to devise a cost structure based on previous similar projects he/she has worked on Bottom-up approach: breaking the target product into smaller units.
Lecture 4 Valentina Plekhanova 7
COCOMOCOCOMO A number of algorithmic models have been
devised. The major one is Boehm’s Constructive Constructive
Cost ModelCost Model (COCOMO).
Lecture 4 Valentina Plekhanova 8
Training RequirementsTraining Requirements Staff must be trained in new software
development methods; operating systems, documentation preparation and hardware.
A training plan must then be incorporated into the SPMP.
Lecture 4 Valentina Plekhanova 9
Project Management:Project Management: MetricsMetrics Metrics can be used to measure the size of
a product. These include: Lines of code (?!)Lines of code (?!) Thousand delivered source instructions (?!)Thousand delivered source instructions (?!) ……??
Lecture 4 Valentina Plekhanova 10
Project Management:Project Management: MetricsMetrics However, the above metrics are dependent
on the language used, whether executable or comments should be counted and not all source code is delivered to the client.
Lecture 4 Valentina Plekhanova 11
Project Management ToolsProject Management Tools Well-known management tools are Critical Path Critical Path
MethodMethod (CPM) and Program Evaluation Program Evaluation Report techniqueReport technique (PERT).
These tools are used to assist in the planning phase.
This can determine which activities are critical and may delay the project if not completed on time.
Lecture 4 Valentina Plekhanova 12
Basic Project Management Scheduling Basic Project Management Scheduling
TechniquesTechniques There are different types of schedules. Some of the basic ones are Gantt chartsGantt charts,
CPMCPM and PERTPERT types.
Lecture 4 Valentina Plekhanova 13
Gantt ChartsGantt Charts Gantt chartsGantt charts is the typical method of
scheduling construction projects. The primary limitation of this technique, as
is outlined in literature is its inability to direct attention to the interrelationships and interdependencies among the activities.
Lecture 4 Valentina Plekhanova 14
Gantt ChartsGantt Charts
Lecture 4 Valentina Plekhanova 15
Critical Path MethodCritical Path Method CPM typeCPM type is based on the Critical Path Method. This type looks for the schedule with
minimum cost in a definite period of time in the case where the cost is associated with each activity.
Time is a resource. The resource allocation problem is to
allocate time among project tasks.
Lecture 4 Valentina Plekhanova 16
Critical Path Method …& SE ..Critical Path Method …& SE ..??!??!
AA
BB
CC
DD
EE
FF
VV
10
1515
20
10
1010
10
1010
55
1515
ABEV 30 ACDFVACDFV 5050
ACDV 30 ADFV 45
ADEV 35
Lecture 4 Valentina Plekhanova 17
Program Evaluation Review TechniquesProgram Evaluation Review Techniques
PERT typePERT type, which is based on the Program Evaluation Review Techniques, looks for the schedule, which minimises the objective function such as project time (total elapsed time).
That is, it determines the start and completion times of each activity.
Lecture 4 Valentina Plekhanova 18
CPM & PERTCPM & PERT Both techniques CPMCPM and PERTPERT use network
methods to assist in project management and to overcome the interrelationship limitation in Gantt charts.
Both these techniques CPMCPM && PERTPERT identify a project critical path whose activities could not be delayed, and also indicate slack activities that could be somewhat delayed without lengthening the project completion time.
Lecture 4 Valentina Plekhanova 19
CPMCPM & & PERTPERT: : DifferenceDifference CPM and PERT have the underlying
difference. From its origin viewpoint, the CPMCPM technique was developed for constructionconstruction projects, while PERTPERT was elaborated for research and developmentresearch and development projects.
Lecture 4 Valentina Plekhanova 20
CPMCPM
In the construction industryconstruction industry, prior experience with similar projects can be used to predict time estimates for projects within a relatively tight range.
In the CPM method the expected activity time is a single point estimatesingle point estimate that assumes certainty: each activity is considered of exact fixed length. That is, CPM assumes that time is predictable or deterministicpredictable or deterministic.
Lecture 4 Valentina Plekhanova 21
PERTPERT However, with researchresearch and development development
projectsprojects, a great deal of uncertainty is associated with time estimates because no previous similar experience exists and precise time estimates are not available.
PERT assumes the time estimate for an activity lies within the range of earliest time and latest time.
Lecture 4 Valentina Plekhanova 22
PERT PERT [Gray, 1981]
PERT uses three time estimatesthree time estimates (optimistic, most likely, and pessimistic) to compute the average or expected time.
PERT offers a way of dealing with random variationrandom variation and considers each activity stochasticstochastic in that variability is allowed in each activity.
Lecture 4 Valentina Plekhanova 23
PERT PERT [Plekhanova, 1998; Plekhanova 2000]
It should be pointed out, that PERT was developed for researchresearch and development development projectsprojects, which consist of cognitive taskscognitive tasks.
However, PERT is not concerned with the specific character of cognitive tasks.
Lecture 4 Valentina Plekhanova 24
CPM & PERTCPM & PERT PERT&CPM have been found to be
useful in project management to provide efficient resource scheduling. In particular, PERT&CPM identify the critical jobs, which control the project completion date.
Moreover, the application of these tools reduces the degree of scheduling errors and, hence, increases the cost savings.
Lecture 4 Valentina Plekhanova 25
CPM & PERTCPM & PERT However, as mentioned in project
management literature, the actual savings derived from using PERT&CPM methods are difficult to identify and measure precisely.
Lecture 4 Valentina Plekhanova 26
Note that [Plekhanova 2000]…
existing project management scheduling tools are concerned with a problem of resource availability and utilisationresource availability and utilisation, not with capability and compatibility of project resources.
There is, therefore, an assumption that the quality of project resources does not have an impact on project scheduling and task performance.
Lecture 4 Valentina Plekhanova 27
Paradox !!!! Paradox !!!! [[Plekhanova 2000]
We have a paradoxical situation, in that contemporary project management approaches (both mathematical and heuristic based) cannot be sufficiently employed in complex situations [Gray, 1981] and, yet, they are used for complex situations in practice.
Lecture 4 Valentina Plekhanova 28
Management is a human activity !Management is a human activity ! It is important to notice that although there
are many project management (scheduling) tools, use of them does not guarantee success.
Management is a human activity and Management is a human activity and project success depends on the competence project success depends on the competence of management.of management.