creator: acsession no: 10 slide no: 1reviewer: ss cse300advanced software engineeringdecember 2005...

25
Creator: AC Session No: 10 Slide No: 1 Reviewer: SS CSE300 Advanced Software Engineering December 2005 Project Management CSE300 Advanced Software Engineering University of Sunderland © 2005 Anne Comer [email protected]

Post on 21-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

Creator: AC Session No: 10 Slide No: 1 Reviewer: SS

CSE300 Advanced Software Engineering December 2005

Project Management

CSE300

Advanced Software EngineeringUniversity of Sunderland © 2005

Anne Comer

[email protected]

Page 2: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 2 Reviewer: SS

Objectives for this Lecture

1. To overview project management and planning

2. To review activity diagrams and bar charts

3. To consider risk in the context of planning

Page 3: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 3 Reviewer: SS

• Concerned with activities involved in ensuring that software is delivered on time and on schedule and in accordance with the requirements of the organisations developing and procuring the software

• Project management is needed because software development is always subject to budget and schedule constraints that are set by the organisation developing the software

Software project management

Page 4: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 4 Reviewer: SS

• Proposal writing

• Project planning and scheduling

• Project costing

• Project monitoring and reviews

• Personnel selection and evaluation

• Report writing and presentations

Management activities

Page 5: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 5 Reviewer: SS

• These activities are not peculiar to software management

• Many techniques of engineering project management are equally applicable to software project management

• Technically complex engineering systems tend to suffer from the same problems as software systems

Management commonalities

Page 6: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 6 Reviewer: SS

Project staffing• 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 skilled IT staff

Page 7: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 7 Reviewer: SS

Project planning

• 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 plan may be developed to support the main software project plan (mainly concerned with schedule and budget)

Page 8: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 8 Reviewer: SS

Project plan structure

• Scope the problem

• Decompose the problem

• Estimate function and effort

• Risk analysis

• Work breakdown

• Project schedule

• Monitoring and reporting mechanisms

Page 9: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 9 Reviewer: SS

Activity organization

• 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

• The waterfall process allows for the straightforward definition of progress milestones

Page 10: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 10 Reviewer: SS

Project scheduling• Split project into tasks and estimate time and

resources required to complete each task• Organise tasks concurrently to make optimal

use of workforce• Minimise task dependencies to avoid delays

caused by one task waiting for another to complete

• Dependent on project managers intuition and experience

Page 11: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 11 Reviewer: SS

The project scheduling process

Estimate resourcesfor activities

Identify activitydependencies

Identifyactivities

Allocate peopleto activities

Create projectcharts

Softwarerequirements

Activity chartsand bar charts

Page 12: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 12 Reviewer: SS

Scheduling problems• Estimating the difficulty of problems and hence

the cost of developing a solution is hard• Productivity is not proportional to the number of

people working on a task• Adding people to a late project makes it later

because of communication overheads• The unexpected always happens. Always allow

contingency in planning

Page 13: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 13 Reviewer: SS

Bar charts and activity networks• 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 the critical path

• Bar charts show schedule against calendar time

Page 14: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 14 Reviewer: SS

Task durations and dependencies

Task Duration (days) DependenciesT1 8T2 15T3 15 T1 (M1)T4 10T5 10 T2, T4 (M2)T6 5 T1, T2 (M3)T7 20 T1 (M1)T8 25 T4 (M5)T9 15 T3, T6 (M4)T10 15 T5, T7 (M7)T11 7 T9 (M6)T12 10 T11 (M8)

Page 15: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 15 Reviewer: SS

Activity network

start

T2

M3T6

Finish

T10

M7T5

T7

M2T4

M5

T8

4/7/99

8 days

14/7/99 15 days

4/8/99

15 days

25/8/99

7 days

5/9/99

10 days

19/9/99

15 days

11/8/99

25 days

10 days

20 days

5 days25/7/99

15 days

25/7/99

18/7/99

10 days

T1

M1 T3T9

M6

T11

M8

T12

M4

Page 16: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 16 Reviewer: SS

Activity timeline4/7 11/7 18/7 25/7 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9

T4

T1T2

M1

T7T3

M5T8

M3

M2T6

T5M4

T9

M7T10

M6

T11M8

T12

Start

Finish

Page 17: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 17 Reviewer: SS

Staff allocation4/7 11/7 18/7 25/ 1/8 8/8 15/8 22/8 29/8 5/9 12/9 19/9

T4

T8 T11

T12

T1

T3

T9

T2

T6 T10

T7

T5

Fred

Jane

Anne

Mary

Jim

Page 18: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 18 Reviewer: SS

The risk management process

• Risk identification– Identify project, product and business risks

• Risk analysis– Assess the likelihood and consequences of these

risks

• Risk planning– Draw up plans to avoid or minimise the effects of the

risk

• Risk monitoring– Monitor the risks throughout the project

Page 19: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 19 Reviewer: SS

Risk identification

• Technology risks

• People risks

• Organisational risks

• Requirements risks

• Estimation risks

Page 20: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 20 Reviewer: SS

Risk analysis• Assess probability and seriousness of

each risk

• Probability may be very low, low, moderate, high or very high

• Risk effects might be catastrophic, serious, tolerable or insignificant

Page 21: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 21 Reviewer: SS

Risk Analysis & PlanningRISK PROB-

ABILITY

EFFECTS STRATEGY

Key staff are ill at critical

times

Moderat

e

Serious Reorganise team so that there is more overlap

of work

Changes to requirements

that need major rework

Low Serious Derive traceability information to assess change

impact

Organisation restructured High Serious Prepare briefing document to show the

importance of the work being done and the

negative impact of any further change

Time required to develop

the s/w is underestimated

High Serious Reorganise work schedule and discuss the

range of alternatives with the client

Size of s/w is

underestimated

High Tolerable See above

Rate of fault finding and

fix is underestimated

Moderat

e

Tolerable See above

Page 22: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 22 Reviewer: SS

Schedule risk

• Minimising risk in task scheduling

– Always difficult to accurately judge task time

• After breaking down into tasks, derive a three-

point estimate of time for each task……

– best time Tb, expected time Te, worst time Tw

• Task time (aggregated) = (Tb + 4Te + Tw) / 6

Page 23: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 23 Reviewer: SS

Risk monitoring• Assess each identified risks regularly to

decide whether or not it is becoming less or more probable

• Also assess whether the effects of the risk have changed

• Each key risk should be discussed at management progress meetings

Page 24: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 24 Reviewer: SS

Key points• Good project management is essential for

project success• Managers have diverse roles but their most

significant activities are planning, estimating and scheduling

• Planning and estimating are iterative processes which continue throughout the course of a project

Page 25: Creator: ACSession No: 10 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringDecember 2005 Project Management CSE300 Advanced Software Engineering

CSE300 Advanced Software Engineering December 2005

Creator/Editor: AC Session No:10 Slide No: 25 Reviewer: SS

• A project milestone is a predictable state where some formal report of progress is presented to management.

• Risk management is concerned with identifying risks which may affect the project and planning to ensure that these risks do not develop into major threats

Key points