Академический Документы
Профессиональный Документы
Культура Документы
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.
Software Projects
Factors that influence the end result ...
• size
• delivery deadline
• application domain
• technology to be implemented
• system constraints
• user requirements
• available resources
Why Projects Fail?
• an unrealistic deadline is established
• Delays in Implementation
• technical difficulties
- Experience factors.
- Planning factors.
- Technology factors.
- External factors.
- Requirements factors
Management
Management Elements
Management
• Planning
• Organizing
• Leading
• Coordination
• Controlling
• Staffing
• Motivation
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.
product quality?
risk assessment?
measurement?
cost estimation?
project scheduling?
customer communication?
staffing?
other resources?
project monitoring?
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.
• 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.
Software Project Management
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).
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
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.
Project plan structure
• Introduction
• Project organisation
• Risk analysis
• Work breakdown
• Project schedule
• 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
ACTIVITIES
o SPECIFIC FUNCTION
o FINITE DURATION
MILESTONES
o TARGET DELIVERABLE
o 0 DURATION
ACT IVITIES
MILESTONES
Scheduling Problems
• Estimating the difficulty of problems and hence the cost of developing a
solution is hard
Program
Evaluation
and Review Gantt Chart
Critical
Technique
Path
(PERT) Method
(CPM)
Project Scheduling Tools
• CPM (CRITICAL PATH METHOD)
• Work packages are along the vertical axis, time along the horizontal
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.
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
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
1
5
B
D
2d
5d
3
In the example above the critical path can be described by events 1,3 and 5 or by
tasks B,D.
This is because the time to reach the end event (5) on this path is longer than any
other path. This means that task B must take no longer than 2 days and task D no
longer than 5 days or the end date for event E will need to be extended.
The duration of the other path is 6 days. Because the critical path is 7 days, there is
slack (or float) of one day on the other path.
This means that this path can take 1 day longer than planned.
That is, any one task on this path (A,C or E) can take 1 day longer than expected.
Note this slack must be shared between the tasks on this other path. They can not
all take an extra day
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.
2 C 4
2d
A
2d E
2d
1
5
B
2d D
5d
3
• 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
• 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
– A Milestone chart is similar to a Gantt Chart with the emphasis placed on task
completion.
– It embodies the same simplified techniques as does the Gantt chart. It does not
portray the interrelationships between tasks and hence does not identify the
critical path.
Project Tracking
Product Process
Metrics Metrics
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
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
Q&A