Parts of this presentation is extracted from Ian Sommervilles
slides located at http://www.pearsoned.co.uk/sommerville
http://www.pearsoned.co.uk/sommerville Sommerville SE 8: Chapter 5,
Chapter 26 1 Chapter 3 Project Management
Slide 2
Objectives 2 Know the principal tasks of software managers
Understand the need for planning in all software projects
Understand how graphical presentations can be used for project
schedules Understand the risk management process in software
projects
Slide 3
Overview 3 Why Software project management? Project Management
Activities Team formation Project planning and scheduling Cost
estimation
Slide 4
Do you Agree or Disagree 4 Good management guarantees project
success Bad management usually result in project failure
Slide 5
Why? 5 Project management is needed because software
development is always subject to budget and schedule
constraints.
Slide 6
6 Software project management is difficult than other
engineering project management because: The product is intangible.
The software development process is not standardised. Many software
projects are 'one-off' projects
Slide 7
Project Management Activities 7 Proposal writing/ Report
writing and presentations. writing and communication skills
(covered in other courses) Team formation ( personal selection and
evaluation) Project planning and scheduling. Project cost
estimation. Project monitoring and reviews. (covered in QA chapter)
Report writing and presentations
Slide 8
Team Formation 8 A project manager success starts with creating
the best team possible and having the right people in the right
roles. May not be possible to appoint the ideal people to work on a
project Project budget may not allow for the use of highly-paid
staff; Staff with the appropriate experience may not be available;
An organisation may wish to develop employee skills on a software
project. Managers have to work within these constraints especially
when there are shortages of trained staff. More on people
management in Chapter 25.
Slide 9
Project Planning 9 Probably the most time-consuming project
management activity. Continuous activity from initial concept
through to system delivery. Plans must be regularly revised as new
information becomes available. Various different types of plans may
be developed to support the main software project plan that is
concerned with schedule and budget.
Slide 10
Types of Project Plans 10
Slide 11
Objective of project plans 11 The project plan sets out: The
resources available to the project; The work breakdown; A schedule
for the work. Its all about estimation, how much..
Slide 12
Structure of a project plan 12 Introduction ( objectives,
constraints) Project organisation (team organisation) Risk
analysis. Hardware and software resource requirements. Work
breakdown (project activities, milestones and deliverables of each
activity) Project schedule.(dependencies between activities, time
needed to reach each milestone and the allocation of people to
activities) Monitoring and reporting mechanisms.(define the reports
that should be produced, when they should be produced and the
project mechanism used)
Slide 13
Risk Management 13 Risk identification: what can go wrong
Analyze the risk : determine the likelihood that it will occur and
the damage it will do if it does occur Prioritize risks by
probability and impact Develop plan and monitor to manage risks
with high probability and high impact
Slide 14
Risk Identification 14
Slide 15
Risk Analysis & Prioritization I 15
Slide 16
Risk Analysis & Prioritization II 16
Slide 17
Risk Planning and Monitoring 17 Consider each risk and develop
a strategy to manage that risk. Avoidance strategies The
probability that the risk will arise is reduced; Minimisation
strategies The impact of the risk on the project or product will be
reduced; Contingency plans If the risk arises, contingency plans
are plans to deal with that risk;
Slide 18
Example Replace potentially defective components with bought-in
components of known reliability Defective Components Risk avoidance
Strategy Reorganize team so that there is more overlap of work and
people therefore understand each others job Staff
illnessMinimization strategy Prepare a briefing document for senior
management showing how the project is making a very important
contribution to the goals of the business Organizational financial
problems Contingency plan 18
Slide 19
Work breakdown 19 Activities in a project should be organised
to produce tangible outputs for management to judge progress.
Milestones are the end-point of a process activity. Deliverables
are project results delivered to customers. To establish milestones
the software process must be broken down into basic activities with
associated outputs.
Slide 20
Milestones and Deliverables 20 Deliverables
Slide 21
Activity : Work breakdown 21 As a team Project :Organizing a
party Identify the milestones and the deliverables of this
project
Slide 22
22 TaskMilestoneDeliverable Choosing a date and time Date and
time Choosing guestsList of guests Selecting venueName of venue
Reserving venueReservation numberInvoice Sending guest invitations
Invitation card Selecting catering company Name of company
Selecting beverages, food, and dessert. Menu A milestone is
something that identifies the end of a task, a deliverable is
something delivered to the customer or beneficiary.
Slide 23
Project Scheduling 23 Split project into tasks and estimate
time and resources required to complete each task. Organize tasks
concurrently to make optimal use of workforce. Minimize task
dependencies to avoid delays caused by one task waiting for another
to complete. Dependent on project managers intuition and
experience.
Slide 24
Project Scheduling Process 24
Slide 25
Bar charts and activity networks 25 Graphical notations used to
illustrate the project schedule. Show project breakdown into tasks.
Tasks should not be too small. They should take about a week or
two. Activity charts show task dependencies and the critical path.
Bar charts show schedule against calendar time.
Activity 33 Calculate the start and the finish of each activity
in the activity network shown in the previous slide Compare your
answer with the text book p 102 More explanation can be found in
the following site (some figures used in this slides are taken from
this site)
http://syque.com/quality_tools/toolbook/Activity/do.htm
Slide 34
Activity bar chart 34
Slide 35
Project Cost Estimation (chapter26) 35 There are three
parameters involved in computing the total cost of a software
development project Hardware and software costs including
maintenance Travel and training costs Effort costs (paying software
engineers) For most projects, the dominant cost in software
development is effort cost.
Slide 36
Project cost estimation techniques 36 Algorithmic cost modeling
Expert judgment Estimation by analogy Parkinsons law Pricing to win
For large projects it is advisable to use several cost estimation
techniques and compare the results