45
1 Project Management Software Engineering 2004-2005

1 Project Management Software Engineering 2004-2005

Embed Size (px)

Citation preview

Page 1: 1 Project Management Software Engineering 2004-2005

1

Project Management

Software Engineering

2004-2005

Page 2: 1 Project Management Software Engineering 2004-2005

2

What is a project?

• A piece of work that is undertaken

• Usually has a recognised beginning and end

• Usually has identifiable stages

Page 3: 1 Project Management Software Engineering 2004-2005

3

Software Project

• Traditional software development approach• Definite stages• Definite end point• Similar to creating a building

Page 4: 1 Project Management Software Engineering 2004-2005

4

Open ended Software Project

• When does maintenance end?

Page 5: 1 Project Management Software Engineering 2004-2005

5

Implementation

• Program / module development– Each individual module developed and tested as a

discrete unit

• Systems testing– Programs/modules combined and tested as sub-systems

• Conversion– Existing system converted to enable new system to

operate on “live” data

Page 6: 1 Project Management Software Engineering 2004-2005

6

Planning is essential fo success

• Consists of– Estimating effort– Scheduling tasks– Monitoring their progress

Page 7: 1 Project Management Software Engineering 2004-2005

7

Estimating

• Steps– Identify the tasks– Estimate the effort required for each task– Identify total resources required– Identify minimum elapsed time for tasks

Page 8: 1 Project Management Software Engineering 2004-2005

8

Estimating – identifying tasks

• Can be like top-down design– How to get to the top of Mt Everest from

Liverpool?– Break it down into steps

Page 9: 1 Project Management Software Engineering 2004-2005

9

Estimating – identifying tasksin a software project

Page 10: 1 Project Management Software Engineering 2004-2005

10

Estimating – identifying tasks in your individual project

• Your individual project plan will only be concerned with implementation

• Can you identify tasks in implementing your individual project?

• Clues:– Use case diagram– Class diagram

• Need to complete these before you can plan your project

Page 11: 1 Project Management Software Engineering 2004-2005

11

Estimating – effort required for each task

• Measured in person-days

Page 12: 1 Project Management Software Engineering 2004-2005

12

Factors affecting estimating effort

• the complexity of the processing required

• the number of input and output types (files, screen interaction, etc.)

• the number of data structures involved

• the programming language to be used

• the machine time available for development

• the experience of the staff involved

Page 13: 1 Project Management Software Engineering 2004-2005

13

Factors affecting estimating effort

• the development support facilities• the novelty of the application• the type of application ('real time'

applications are notoriously more demanding than 'batch' applications)

• the novelty of the computer equipment and support environment

• the development methodology employed

Page 14: 1 Project Management Software Engineering 2004-2005

14

Estimating – total resources required

• Computer equipment

• System software licences– compilers etc

• Accommodation

• Secretarial support

• User support– Liaison– Answering technical queries

Page 15: 1 Project Management Software Engineering 2004-2005

15

Estimating – minimum elapsed time

• Writing a class may take 4 person days

• So 4 people could do it in 1 day?

• Or 40 people could finish it in 50 minutes?

Page 16: 1 Project Management Software Engineering 2004-2005

16

Scheduling

• Allocating tasks to individuals

• Determining appropriate start times and end times for each task

Page 17: 1 Project Management Software Engineering 2004-2005

17

Scheduling example

Page 18: 1 Project Management Software Engineering 2004-2005

18

Scheduling exampleEstimates

Page 19: 1 Project Management Software Engineering 2004-2005

19

Scheduling example

Page 20: 1 Project Management Software Engineering 2004-2005

20

Exercise 2

• Suppose that for the development of this module, only one hour of access to the computer equipment each day is available.

What effect will this have on each stage of development?

Page 21: 1 Project Management Software Engineering 2004-2005

21

Exercise 2

• Suppose that for the development of this module, only one hour of access to the computer equipment each day is available. What effect will this have on each stage of development?

3 x 1 hour per day computer time needed

18 x 1 hour per day computer time needed

Page 22: 1 Project Management Software Engineering 2004-2005

22

Sitting around doing nothing time

• Total elapsed time is 29 days• Effort required is 20.5 days• Thus programmer sitting around doing nothing for 8.5

days.

Page 23: 1 Project Management Software Engineering 2004-2005

23

Trying to solve this problem

• Waste of valuable resources

• The notes show the complexity and pitfalls of trying to solve the problem by assigning him/her to other tasks while waiting

• Need to take into account the overhead required to switch intellectual tasks and the problems this can cause

Page 24: 1 Project Management Software Engineering 2004-2005

24

Aim of scheduling• Identify when tasks can begin and when

they are expected to end• Can be shown in a Gantt chart

Page 25: 1 Project Management Software Engineering 2004-2005

25

How to make a Gantt chart

• Identify the estimated elapsed time for each activity

• Identify the dependencies– What other tasks must be completed before

each task can start

• Derive a network diagram

• Use it to draw the Gantt chart

Page 26: 1 Project Management Software Engineering 2004-2005

26

Elapsed time and dependencies

Page 27: 1 Project Management Software Engineering 2004-2005

27

Network diagrams

• Activities represented by lines• Start and end points of activities are called

events – represented by circles

Page 28: 1 Project Management Software Engineering 2004-2005

28

Events

Page 29: 1 Project Management Software Engineering 2004-2005

29

Drawing a network diagram

Page 30: 1 Project Management Software Engineering 2004-2005

30

Entering the earliest expected times (EAT)

40

50

Two earliest times Always use the latest

Page 31: 1 Project Management Software Engineering 2004-2005

31

Try this

Page 32: 1 Project Management Software Engineering 2004-2005

32

• Latest of the three is 48 so it goes into the event

Page 33: 1 Project Management Software Engineering 2004-2005

33

Page 34: 1 Project Management Software Engineering 2004-2005

34

Entering the latest allowable times (LAT)

30

20

Two latest times

Always use the earliest

Page 35: 1 Project Management Software Engineering 2004-2005

35

Analysing the network

• Find maximum span for each activity• Max span = LAT end – EAT start• Max span = 38 - 20 = 18

Page 36: 1 Project Management Software Engineering 2004-2005

36

Spans and floats

• Total float = Maximum span – estimation duration• Results in the above

Page 37: 1 Project Management Software Engineering 2004-2005

37

Complete the table

Page 38: 1 Project Management Software Engineering 2004-2005

38

Completed table

Page 39: 1 Project Management Software Engineering 2004-2005

39

Meaning of total float zero

• Any delay in a zero float activity delays the whole project

• Delay of 5 days in T.Util delays whole project by 5 days

• Delay of 5 days in Sc.E does not delay the project at all since this delay is within the available float for Sc.E

Page 40: 1 Project Management Software Engineering 2004-2005

40

Identifying the critical path

• Critical path is the list of activities with total float zero

• Any delay in any activities on the critical path delays the whole project

Page 41: 1 Project Management Software Engineering 2004-2005

41

Adding activities to the project

Page 42: 1 Project Management Software Engineering 2004-2005

42

A first attempt

• Implies Sc.E (screen entry) also depends on acquiring special stationary – not true

Page 43: 1 Project Management Software Engineering 2004-2005

43

Better

• Rep depends on Ospec and T.Util completing

• Sc.E only depends on T.Util completing

• Dotted line is a dummy activity (0 length)

Page 44: 1 Project Management Software Engineering 2004-2005

44

Modified max spans

• Critical path: Req.A, De, T.Util, Sc.E, Val, Sys.T

Page 45: 1 Project Management Software Engineering 2004-2005

45

Gantt Chart for last exercise

• For each rectangle:– Left hand edge is at earliest estimated time– Length of rectangle = estimated duration