Project Management “Process” Why do we need project management? Why can’t we just follow one...

20
Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All projects – small and large – need project management because all projects need some degree of POMA : 1. - P lanning 2. - O rganizing 3. - M onitoring of status 4. - A djustment

Transcript of Project Management “Process” Why do we need project management? Why can’t we just follow one...

Page 1: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Project Management “Process”

• Why do we need project management?• Why can’t we just follow one of the software

development process and be left alone?

All projects – small and large – need project managementbecause all projects need some degree of POMA:

1. - Planning 2. - Organizing 3. - Monitoring of status 4. - Adjustment

Page 2: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Software Project Management (POMA) Process

Project Planning

Project Organizing

Project Monitoring

Project Adjusting

This process looks sequential at the macrolevel, but may be veryiterative at the microlevel

Page 3: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Goals of Software Project Management

• End results of the project satisfy the customer’s needs

• All the desired and the needed product/project attributes (quality, security, productivity, cost, schedule, etc.) are met

• Team members are operating effectively and at a high level of morale

• Required tools and other resources are made available and are effectively utilized

Page 4: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Planning (POMA)• The 1st step of project planning is to

understand the requirements of the project.– This step itself may be a mini-project

• Then the following 4 steps are included in the rest of project planning:

1. Perform Estimation ofa) the work effort, b) the schedule, and c) the needed resources

2. Clearly define and establish measurable ‘goals’ for the project

3. Determine the project resource allocations of a) people, b) process, c) tools, and d) facilities

4. Identify and analyze the project risks

Page 5: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Organizing (POMA)

• Once a project plan is formulated or partially formulated, organizing may start– Organization structure needs to be designed– Human resource hiring needs to start and be

completed along with acquisition of other resources

– Any required education and training have to be completed

– Mechanisms for tracking must be established• Risk tracking and mitigation• Project goals (schedule, cost, market place, etc.)

Page 6: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Comparing and Pairing Planning and Organizing Activities

Planning Organizing

Project content and deliverables (requirements)

Project tasks and schedule

Project resources

Project goals and measurement

Project risks

Set up tracking mechanisms of tasks and schedules

Acquire, hire and prepare resources such as people, tools and processes

Establish mechanism to measureand track the goals

Establish mechanism to list, track,and assign risk mitigation tasks

Page 7: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Monitoring (POMA)

• Once the project is organized and set into motion, there still needs to be regular tracking to ensure that it is headed in the right direction. (Projects can not be left to coast along by itself.)

• 3 main components of project monitoring:

1. Project status information collection2. Analysis and evaluation of collected information3. Presentation and communication of the project

status

Page 8: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Different ways of Visualization/Reporting of Information and Project Status

Pie Chart Histogram Pareto Diagram

Time Chart Control Chart

time

Upperlimit

lowerlimit

Kiviat Chart

Page 9: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Adjusting (POMA)

• It is highly unlikely that a software project progresses with no problem. As soon as the project status suggests potential problem, we must not be afraid to make changes.

• 3 main areas of adjustments are (or combinations of) :– Resources– Schedule– Project content

Page 10: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Software Project Management Process

is not the same as - Software Development Process or - Software Life Cycle

Page 11: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Some Project Management Techniques

• Planning : Project Effort Estimation– General view:

• Units of effort = [ a + b (size)c ] Λ Σ(factors) where a, b, and c set of estimated constants, size is the estimated size of the project and factors are additional factors of concern

– Most of the estimating techniques use some form of this general “formula”

• COCOMO I and COCOMO II models– “Macro” project effort and elapsed time estimation

• Function Point model– Size/Complexity estimation

pages 354-364 of yourtextbook

Page 12: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Some Project Management Techniques(cont.)

• Planning and Organizing: Work Breakdown Structure

– Estimation of the complete project by

• Deliverables• Tasks required to develop the deliverables• Resources required to perform the tasks

Page 13: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Work Breakdown Structure (WBS) Steps

1. Examine and determine the external deliverables of the project.

2. Identify the steps and tasks required to produce each of the deliverables, including the tasks that are required to produce any intermediate internal deliverables

3. Sequence the tasks, showing any potential for parallelism

4. Provide an estimate size (e.g. loc) of each of the tasks

5. Provide an estimate of the productivity of the personnel (e.g. loc/person-hrs) that is most likely to be assigned to each of the tasks

6. Calculate the effort (person-hrs) required to accomplish each task

7. For each of the external deliverable, lay out the timeline of all the tasks needed to produce that deliverable and label the resources that will be assigned to the tasks.

Page 14: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Example of: Task Network with Estimated per-hrs Units

Task 112

Task 22

Task-3a6

Task-3b6

Task-3c6

Task-4a2

Task-4c2

Task-4b2

Task-5a1

Task-5c1

Task-5b1

End

Page 15: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

End result of WBS = “Initial Schedule” Estimate

Tasks PersonTime

1 X,Y,Z 12 units

2

3a

3b

3c

4a

4b

4c

5a

5b

5c

X,Y,Z 2

6

6

6

X

Y

Z

2

X

Y

Z

1

1

1

2

2

X

Y

Z

Page 16: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Some Project Management Techniques(cont.)

• Monitoring: Earned Value

– A technique to track the project status by comparing (at some specific time):

• How much effort has been actually expended

versus• How much effort was planned to have been expended

Page 17: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Definitions for Earned Value

• Budgeted Cost of Work (BCW) : estimated effort for each of the work tasks

• Budgeted Cost of Work Scheduled (BCWS): sum of estimated effort of all the tasks that were planned to be completed (by a specific date)

• Budget at Completion (BAC): estimate of the total project effort or sum of all the BCWs

• Budgeted Cost of Work Performed (BCWP): The sum of the estimated efforts of all the tasks that have been completed (by a specific date)

• Actual Cost of Work Performed (ACWP): The sum of the actual efforts of all the tasks that have been completed (by a specific date)

• Earned Value (EV) indicates how much of the estimated work is completed on a specific date.

EV = BCWP / BAC

Page 18: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Earned Value Example

WorkTasks

EstimatedEffort inPers-days

ActualEffort spentso far inPers-days

EstimatedCompletiondate in mm/dd/yy*

ActualCompletiondate inmm/dd/yy*

1

4

5

6

2

10

15

30

25

15

20

10

25

15

15

5

20

2/5/14

3/15/14 3/25/14

4/25/14

5/5/14

5/25/14

6/10/14

2/5/14

Date : 4/5/2014

4/1/14

3

* mm/dd/yy is month/ day/ year format

Note the statuschecking date

Page 19: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Earned Value Example (cont.)

• For work task 4, BCW is 25 person-days; for task 6, BCW is 20 person-days.

• BAC is the sum of the estimated efforts for all the tasks or

BAC = (10+15+30+25+15+20 = 115 person-days)

• BCWS for the date 4/5/06 is the sum of the estimated effort of all the tasks which were schedule to be completed on or before 4/5/06 or

BCWS = ( 10 + 15 = 25 person days)

• BCWP for the date 4/5/2014 is the sum of the estimated effort of all the tasks which were actually completed on or before 4/5/06 or

BCWP = (10 + 15 + 25 = 50 person-days)

• ACWP for the date 4/5/06 is the sum of the actual efforts expended for all the tasks that have been completed on or before 4/5/06 or

ACWP = ( 10 + 25 + 20 = 55 person-days)

- EV = BCWP / BAC = 50/115 = .434 or the project is estimated to be 43% complete as of 4/5/2014

Page 20: Project Management “Process” Why do we need project management? Why can’t we just follow one of the software development process and be left alone? All.

Earned Value Example (cont.)

• There are two more measurements we look at:

– Cost Variance = BCWP – ACWP = 50 – 55 = - 5

– Schedule Variance = BCWP - BCWS = 50 – 25 = 25