Beruflich Dokumente
Kultur Dokumente
Project
• Dictionary definitions of project includes:
- A specific plan or design.
- A plan is undertaken.
• The process of planning, designing and implementing computer systems is
called a project.
• A Project is a series of steps designed to coordinate the achievement of a
specific goal.
• A definite start and end point
Management
Management in all business and human organization activity is simply the act
of getting people together to accomplish desired goals and objectives. 2
Software Projects
Factors that influence the end result ...
• size
• delivery deadline
• application domain
• technology to be implemented
• system constraints
• user requirements
• available resources
3
Why Projects Fail?
• an unrealistic deadline is established
• Delays in Implementation
• technical difficulties
4
Project Risks
Each project faces risks.
- Experience factors.
- Planning factors.
- Technology factors.
- External factors.
- Requirements factors
5
Management
Management Elements
6
Management
• Planning
• Organizing
• Leading
• Coordination
• Controlling
• Staffing
• Motivation
7
Project Management
• Project management is the process of planning, organizing, staffing,
monitoring, controlling, and leading a software project.
• The project management is technique used by the manager to ensure
successful completion of a project.
• Every project has a project manager who leads the team and is the
interface of the project to the outside world.
• Good planning is essential to succeed.
9
The 4 P’s
۞ People — the most important element of a successful project
10
Project Management Concerns
product quality?
risk assessment?
measurement?
cost estimation?
project scheduling?
customer communication?
staffing?
other resources?
project monitoring?
11
The Project Manager
The project manager ...
... defines the roles in the project and allocates staff to them.
Examples of roles are: project manager, software librarian,
programmer, team leader, test engineer, quality assurance engineer.
... controls the project by informing staff of their part in the plan.
... leads the project by taking the major decisions and by motivating
staff to perform well.
12
The Project Manager
• The project manager is also responsible for the major technical
decisions, for example concerning methods and tools, design and
coding standards, software requirements, etc.
• The project manager identifies the people the project deals with
and ensures that a single named contact exists both within the project
team and each external group.
13
Software Project Management
14
Project Planning
15
Project Planning………
• Probably the most time-consuming project management activity
16
Project Planning………
Define Products
The first planning activity is to define the products to be delivered.
Define Activities
• First a process model is defined:
• Choose a life cycle (waterfall, incremental).
• Define a process model for each phase: define the inputs and
outputs of each activity.
The critical path is the longest path through the network in terms of
duration.
• Things to consider:
o Comply with time and resource constraints.
o Minimize the total cost.
o Minimize the fragmentation of resource allocations.
o Allow for any risks that may affect the project.
o A Gantt chart is the usual way to present a project schedule. Work
packages are along the vertical axis, time along the horizontal axis.
oThe chart displays work packages (grey horizontal bars) and
milestones (squares).
20
Project Plan
• The project plan defines the work that will be done on the project and
who will do it. It consists of:
• A statement of work (SOW) that describes all work products that will
be produced and a list of people who will perform that work
• A resource list that contains a list of all resources that will be needed
for the product and their availability
will generate all of the work products needed to build the software.
• A risk plan that identifies any risks that might be encountered and
indicates how those risks would be handled should they occur
22
Types of project plan
Plan Description
Quality plan Describes the quality procedures and
standards that will be used in a project.
Validation plan Describes the approach, resources and
schedule used for system validation.
Configuration Describes the configuration management
management plan procedures and structures to be used.
Maintenance plan Predicts the maintenance requirements of
the system, maintenance costs and effort
required.
Staff development plan. Describes how the skills and experience of
the project team members will be
developed.
23
Project plan structure
• Introduction
• Project organisation
• Risk analysis
• Work breakdown
• Project schedule
24
Project Scheduling
• Split project into tasks and estimate time and resources required to
complete each task
• Minimize task dependencies to avoid delays caused by one task waiting for
another to complete
25
Objectives of Project Scheduling
26
PRIMARY COMPONENTS IN A SCHEDULE
ACTIVITIES
o SPECIFIC FUNCTION
o FINITE DURATION
MILESTONES
o TARGET DELIVERABLE
o 0 DURATION
ACT IVITIES
MILESTONES
27
Scheduling Problems
• Estimating the difficulty of problems and hence the cost of developing a
solution is hard
28
Project Scheduling Tools
Program
Evaluation
and Review Gantt Chart
Critical
Technique
Path
(PERT) Method
(CPM)
29
Project Scheduling Tools
• CPM (CRITICAL PATH METHOD)
• Work packages are along the vertical axis, time along the horizontal
30
axis.
CPM (Critical Path Method)
The critical path is the path between the start event and end event which
takes the longest time.
Note that:
o No task on the critical path can take longer without extending the end date
of the project.
31
CPM (Critical Path Method)
– Terminology
• Earliest Start time (ES)
• Latest Start time (LS)
• Earliest Finish time (EF),
• Duration (D)
» EF = ES + D
• Latest Finish (LF) LF = LS + D
• Total Float (TF) TF = LS - ES
– (Slack between the earliest and latest start times)
– On CP, the total float is zero.
CPM Example
CPM (Critical Path Method)
Earliest Start Times Established
Event Activity ES
1 A, B 0 Project Start
2 C, D, F 0+3=3 Need A complete
3 E, G 3+4=7 Need A & D complete
4 I 7 + 5 = 12 Use longest path @ merge
5 H 7 + 6 = 13 Use longest path
6 J 13 + 3 = 16
7 K 16 + 2 = 18
8 End 18 + 2 = 20
33
CPM (Critical Path Method)
Calculation of the latest start times (Starting at Project completion)
8 end 20 5-2 F 13 – 3 = 10
8-7 K 20 – 2 = 18 4-3 E 16 – 3 - 5 = 8
7-6 J 18 – 2 = 16 4-2 C 16 – 3 - 5 = 8
6-5 H 16 - 3 = 13 4-1 B 16 – 3 - 4 = 9
6-4 I 16 – 3 = 13 3-2 D 16 – 3 – 6 - 4 = 3
34
CPM (Critical Path Method)
Activity
Summary of Description
Boundary timetable Duration ES LS EF LF TF
A 3 0 0 3 3 0
B 4 0 9 4 13 9
C 3 3 10 6 13 7
D 4 3 3 7 7 0
E 5 7 8 12 13 1
F 3 3 10 6 13 7
G 6 7 7 13 13 0
H 3 13 13 16 16 0
I 3 12 13 15 16 1
J 2 16 16 18 18 0
K Test 2 18 18 20 20 0
35
Example 1
38
The Major Differences and Similarities between PERT and
CPM
Differences:
Similarities:
CPM can be used to control both the time and the cost of the project.
Extensions of both PERT and CPM allow the user to manage other
resources in addition to time and money, to trade off resources, to
analyze different types of schedules, and to balance the use of
resources.
39
The Major Differences and Similarities between PERT and CPM
PERT and CPM are very similar in their approach; however, two
distinctions are usually made. The first relates to the way in which
activity duration are estimated. In PERT, three estimates are used to
form a weighted average of the expected completion time, based on a
probability distribution of completion times. Therefore, PERT is
considered a probabilistic tool. In CPM, there is only one estimate of
duration; that is, CPM is a deterministic tool. The second difference is
that CPM allows an explicit estimate of costs in addition to time. Thus,
while PERT is basically a tool for planning and control of time, CPM can
be used to control both the time and the cost of the project. Extensions
of both PERT and CPM allow the user to manage other resources in
addition to time and money, to trade off resources, to analyze different
types of schedules, and to balance the use of resources.
40
What are they?
Gantt and PERT charts are both “CPM”
(Critical Path Method) tools to:
• manage the tasks involved in big and
complex projects
• let project managers organise time,
people, equipment and money
• ensure the right people and equipment are
in the right place and the right time
• allow managers to monitor the progress of
a project 41
Contents
• Measurement
• Models
42
PERT
Charts
Stands for Program Evaluation and Review Technique
43
PERT (Project Evaluation & Review Technique)
• simple PERT chart comprises circles (nodes) to represent events within
the development lifecycle
For example completion of tasks, and lines (edges) which represent the the tasks.
The lines are additionally labeled by the estimated duration of the task.
44
How to construct a PERT chart
45
As an example of using a PERT chart, consider the following simple
chart showing a project with tasks A,B,C,D and E
This diagram states that tasks A,B,C and E will take 2 days (assume d is
abbreviation for days) and task D has a planned duration of 5 days.
Task D is dependent on completion of task B, etc.
2 C 4
2d
A
2d E
2d
1
5
B
2d D
5d
46
• Both techniques (PERT and CPM) are driven by information already
developed in earlier project planning activities:
– Estimates of efforts
– Decomposition of product function
– selection of appropriate process model and task set
– Decomposition of tasks
47
PERT charts
48
‘Activity on Node’ style PERT
50
• 1: Which tasks are on the critical path?
• 2: What is the slack time for tasks C, D and G?
• 3: Task C is delayed by one day. What impact would
this have on the completion date of the project? Why?
• 4: Task A will be delayed by 2 days because some
equipment has arrived late. If the project manager
wants to finish the project on time he will need to
shorten the duration of one or more of the tasks. How
can he achieve this?
• 5: The project manager reduces the durations of tasks
D and F by one day each. How will this affect the
finishing date of the project?
51
1: Which tasks are on the critical path?
Possible paths:
A,B,C,E,I = 2+3+1+4+3 = 13 days
A,B,D,F,I = 2+3+3+3+3 = 14 days
A,G,H,I = 2+2+5+3 = 12 days
ANSWER: A,B,D,F,I
52
2: What is the slack time for tasks C, D and G?
TASKS C and D…
Path C,E = 5 days, Path D,F = 6 days
Difference (slack) = 1 day for tasks C or E
compared to D,F
TASK G…
Path B,C,E = 8 days. Path B, D, F = 9
days
Path G, H = 7 days.
So G & H have 2 days’ slack between them.
54
4: Task A will be delayed by 2 days because some
equipment has arrived late. If the project manager still
wants to finish the project within the original time frame,
he will need to shorten the time for one or more of the
tasks. What steps can he take to reduce the number of
days allocated to a task?
55
• 5: The project manager decides to reduce the time needed for tasks
D and F by one day each. How effective will this reduction be in
achieving his aim of maintaining the original finish time for the
project?
• GANTT charts are a project planning tool that can be used to represent
the timing of tasks required to complete a project.
Here is one that was produced automatically with a project management tool
from the PERT chart info above:
• Gantt chart is the usual way to present a project schedule. Work packages
are along the vertical axis, time along the horizontal axis.
Gantt Chart
62
Some Gantt / PERT Terms
Lag time
The minimum amount of time that must pass
between the finish of one activity and the start of its
successor's.
64
A Family Routine
65
Questions
67
Q3 & 4
How much more time could dad walk the dog before eating
breakfast got delayed?
30 minutes…
Shower + Prep Brekky = 55 min vs
Walk Dog + Dad Shower = 25 min … 30 min diff
What is this amount of time called?
Slack time (or float)
68
Q5
70
Project Tracking
• Tracking can be done by:
– Conducting periodic project status meetings
– Evaluating the results of all reviews
– Determining whether milestones were reached by the scheduled
date
– Compare actual start date to planned start date
– Meeting informally with professionals to get their subjective
opinion
– Using earned value analysis
71
Project Tracking
• Tracking can be done by:
– Conducting periodic project status meetings
– Evaluating the results of all reviews
– Determining whether milestones were reached by the scheduled
date
– Compare actual start date to planned start date
– Meeting informally with professionals to get their subjective
opinion
– Using earned value analysis
74
Metrics
Metric is a quantitative measure.
Product Process
Metrics Metrics
75
Metrics
• Quantifiable measure
• Used to measure different characteristic of a software system or the
software development process
• the most common metrics are:
- LOC (Lines of code)
- Function Points
• Two types
- Product Metrics (Used quantify characteristic of the product being
developed i.e., software)
- Process Metrics (Used quantify characteristic of the environment)
An example of a metric would be that there were only two user-discovered errors
in the first 18 months of operation. This provides more meaningful information
than a statement that the delivered system is of top quality.
76
LOC (Lines of code)
77
Function Point (FP)
• Can be applied at the requirements stage
• Used to predict the size or the cost of the system
• Asses the project productivity.
• Using function points for cost, size and productivity is called FP Analysis
78
How is Function Point Analysis done?
Working from the project design specifications, the following system
functions are measured (counted):
• Inputs
• Outputs
• Files
• Inquires
• Interfaces
inputs
3 simple X 2 = 6
4 average X 4 = 16
1 complex X 6 = 6
outputs
6 average X 5 = 30
2 complex X 7 = 14
files
5 complex X 15 = 75
inquiries
8 average X 4 = 32
interfaces
3 average X 7 = 21
4 complex X 10 = 40
80
Unadjusted function points 240
Continuing our example . . .
Complex internal processing = 3
Code to be reusable = 2
High performance = 4
Multiple sites = 3
Distributed processing = 5
Project adjustment factor = 17
Adjustment calculation:
Adjusted FP = Unadjusted FP X [0.65 + (adjustment factor X 0.01)]
= 240 X [0.65 + ( 17 X 0.01)]
= 240 X [0.82]
= 197 Adjusted function points
81
What is the difference between metrics and measurements?
Measure –
• To ascertain or appraise by comparing to a standard
• A standard or unit of measurement; the extent, dimensions, capacity, etc., of
anything, especially as determined by a standard; an act or process of
measuring; a result of measurement.
Measurement –
• The act or process of measuring.
• A figure, extent, or amount obtained by measuring.
• The act or process of measuring something.
An example measure might be five centimeters. The centimeter is the standard, and
five identifies how many multiples or fractions of the standard are being
appraised.
Metric –
• A quantitative measure of the degree to which a system, component, or process
possesses a given attribute.
• A calculated or composite indicator based upon two or more measures.
• A quantified measure of the degree to which a system, component, or process
82
possesses a given attribute.
Q&A