Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Lecture Slides on Project Management | CS A351, Study notes of Computer Science

Material Type: Notes; Professor: Mock; Class: Automata, Algorithms, and Complexity; Subject: Computer Science ; University: University of Alaska - Anchorage; Term: Fall 2009;

Typology: Study notes

2009/2010

Uploaded on 03/28/2010

koofers-user-j6n
koofers-user-j6n 🇺🇸

10 documents

1 / 28

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
Project Management
Chapters 3-4
Can you develop this?
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c

Partial preview of the text

Download Lecture Slides on Project Management | CS A351 and more Study notes Computer Science in PDF only on Docsity!

Project Management

Chapters 3-

Can you develop this?

Basic Definitions: Project and

Project Plan

  • Software Project:
    • All technical and managerial activities required to deliver the

deliverables to the client.

  • A software project has a specific duration, consumes resources

and produces work products.

  • Management categories to complete a software project:
    • Tasks, Activities, Functions
  • Software Project Management Plan:
  • The controlling document for a software project.
  • Specifies the technical and managerial approaches to develop the

software product.

  • Companion document to requirements analysis document:
    • Changes in either document may imply changes in the other document.
  • The SPMP may be part of the project agreement.

Components of a Project

Project

Work Product Schedule Task Participant

Capability Maturity Model

  • Model produced by the Software Engineering Institute to rate

an organization’s software development process

  • Level 1: Initial - Lowest level, chaotic
  • Level 2: Repeatable – Project tracking of costs, schedule, and

functionality. Able to repeat earlier successes.

  • Level 3: Defined – A documented and standardized software

process. All development accomplished using the standard

processes.

  • Level 4: Managed – Quantitatively manages the process and

products.

  • Level 5: Optimizing – Uses the quantitative information to

continuously improve and manage the software process.

Personal Software Process

  • Can use the CMM idea and apply it to an

individual software developer. Watts Humphrey developed PSP in 1997.

  • Use personal time logs to measure productivity; errors timed and recorded

Date Start Stop Delta Interrupt Task 1/1 09:00 15:30 360 30 lunch 50 LOC 1/3 09:00 14:00 270 30 lunch 60 LOC 1/4 09:00 11:30 150 50 LOC 1/5 12:00 02:00 120 Testing

900 minutes to write/test a program of 160 LOC. Assuming 5 hrs/day this is 3 days to write/test 160 LOC. Productivity = 53 LOC/day

Earned Value Analysis

  • Basic measures to calculate how much has

been accomplished

  • Percent of the estimated time that has been completed
  • Basic Measures
  • Budgeted Cost of Work (BCW)
  • The estimated effort for each work task
  • Budgeted Cost of Work Scheduled (BCWS)
  • The sum of the estimated effort for each work task that was

scheduled to be completed by the specified time

  • Budget at Completion (BAC)
    • The total of the BCWS and thus the estimate of the total

effort of the project

Earned Value Analysis

  • Basic Measures
    • Planned Value (PV)
      • PV = BCW/BAC
      • The percentage of the total estimated effort assigned to a

particular work task

  • Budgeted Cost of Work Performed (BCWP)
    • The sum of the estimated efforts for the work tasks

completed by the specified time

  • Actual Cost of Work Performed (ACWP)
    • Sum of the actual efforts for the work tasks that have been

computed

Earned Value Analysis Example

Task Estimated Effort (days)

Actual Effort To Date

Estimated Completion

Actual Completion 1 5 10 1/25 2/ 2 25 20 2/15 2/ 3 120 80 5/ 4 40 50 4/15 4/ 5 60 50 7/ 6 80 70 9/

BAC = sum of estimations = 5 + 25 + 120 + H = 330 days BCWP = estimate of completed work = 5 + 25 + 40 = 70 days EV or PC = 70/330 = 21.2% BCWS = sum of estimates scheduled to be done = 5+25 = 30 SPI = BCWP/BCWS = 70/30 = 233% SV = 70 – 30 = 40 days (ahead) ACWP = sum of actual work done = 10+20+50 = 80 CPI = BCWP / ACWP = 70/80 = 87.5% CV = BCWP – ACWP = 70-80 = -10 programmer days (behind)

Today is 4/

Track Status Over Time

  • Comparison of planned costs against actual costs allows the

manager to assess the health of the project

  • Earned value adds the planned costs of the tasks that have been

completed

Current

Actual cost

Earned value

Planned cost

time

Time

Other Measurement Tools

  • Error Tracking
    • Previously discussed, would expect error

rates to go down over time

  • Postmortem Reviews
    • Assemble key people to discuss quality,

schedule, software process. Results should

not be sanitized.

Project Management Concepts

  • Follow critical / best practices
  • Divide and conquer approach generally taken to

decompose work into smaller, more manageable

pieces

  • Key Tasks
    • Hierarchical representation of all the tasks in a project called the Work Breakdown Structure (WBS)
    • Task model or Network model
    • Mapping of the task model to the project schedule
    • Development of a Software Project Management Plan (SPMP)

Creating Work Breakdown Structures

  • Two major philosophies
    • Activity-oriented decomposition ("Functional decomposition")
      • Write the book
      • Get it reviewed
      • Do the suggested changes
      • Get it published
    • Result-oriented ("Object-oriented decomposition")
      • Chapter 1
      • Chapter 2
      • Chapter 3
  • Which one is best for managing? Depends on project type:
    • Development of a prototype
    • Development of a product
    • Project team consist of many unexperienced beginners
    • Project team has many experienced developers

Estimates for establishing WBS

  • Establishing an WBS in terms of percentage of

total effort:

  • Small project (7 person-month): at least 7% or 0.5 PM
  • Medium project (300 person-month): at least 1% or 3 PMs
  • Large project (7000 person-month): at least 0.2 % or 15 PMs
  • (From Barry Boehm, Software Economics)

Example: Let‘s Build a House

  • What are the activities that

are needed to build a

house?

Typical activities when building a house

  • Surveying
  • Excavation
  • Request Permits
  • Buy Material
  • Lay foundation
  • Build Outside Wall
  • Install Exterior Plumbing
  • Install Exterior Electrical
  • Install Interior Plumbing
  • Install Interior Electrical
    • Install Wallboard
    • Paint Interior
    • Install Interior Doors
    • Install Floor
    • Install Roof
    • Install Exterior Doors
    • Paint Exterior
    • Install Exterior Siding
    • Buy Pizza

Finding these activities is a brainstorming activity. It requires similar activities used during requirements analysis

From the WBS to the Dependency Graph

  • The work breakdown structure does not show any temporal

dependence among the activities/tasks

  • Can we excavate before getting the permit?
  • How much time does the whole project need if I know the individual times? - What can be done in parallel?
  • Are there any critical actitivites, that can slow down the project significantly?
  • Temporal dependencies are shown in the dependency graph
  • Nodes are activities
  • Lines represent temporal dependencies

Building a House (Dependency Graph)

START

Request

Surveying^ Excavation Material^ Buy Founda tion Outside^ Build Wall

Install ExteriorPlumbing

Interior^ Install Plumbing

Install Exterior Electrical

Interior^ Install Electrical

Exterior^ Install Siding

Wallboard^ Install

Paint Exterior

Roofing^ Install

Install Flooring

Paint Interior

Install Interior Doors

Install Exterior Doors

FINISH

The activity "Buy Material" must Precede the activity "Lay foundation"

Lay

Map tasks onto time

  • Estimate starting times and durations for each of the activities

in the dependency graph

  • Compute the longest path through the graph: This is the

estimated duration of your project

PERT

  • PERT = Program Evaluation and Review

Technique

  • Developed in the 50s to plan the Polaris weapon

system in the USA.

  • PERT allows the manager to assign optimistic,

pessimistic and most likely estimates for the span times of each activity.

  • You can then compute the probability to

determine the likelihood that overall project duration will fall within specified limits.

What do we do with these diagrams?

  • Compute the project duration
  • Determine activities that are critical to ensure a

timely delivery

  • Analyze the diagrams
    • to find ways to shorten the project duration
    • To find ways to do activities in parallel
  • 2 techniques are used
    • Forward pass (determine critical paths)
    • Backward pass (determine slack time)

Definitions: Critical Path and Slack Time

  • Critical path:
    • A sequence of activities that take the longest time to complete
    • The length of the critical path(s) defines how long your project will take to complete.
  • Noncritical path:
    • A sequence of activities that you can delay and still finish the project in the shortest time possible.
  • Slack time:
    • The maximum amount of time that you can delay an activity and still finish your project in the shortest time possible.

Example of a critical path

Activity 3 t 3 = 1

Activity 4 t 4 = 3

Activity 2 t 2 = 1

Start

t = 0

Activity 1 t 1 = 5

End

t = 0

Activity 5 = 2

Start

t = 0

Activity 1 t 1 = 5

End

t = 0

Activity t 5 = 2

Critical path in bold face

Definitions: Start and Finish Dates

  • Earliest start date:
    • The earliest date you can start an activity
  • Earliest finish date:
    • The earliest date you can finish an activity
  • Latest start date:
    • The latest date you can start an activity and still finish the project in the shortest time.
  • Latest finish date:
    • The latest date you can finish an activity and still finish the project in the shortest time.

Backward Path

Example

Activity Latest Start(LS) Latest Finish(LF)

Activity 3 tA = 1

Activity 4 tA = 3

Activity 2 t 2 = 1 Start t = 0

Activity 1 t 1 = 5

End t = 0

Activity t 5 = 2

A2 End of week 7 A3 End of week 2

A5 End of week 7

A1 End of week 5

A4 End of week 5

Activity 3 t 3 = 1

Activity 4 t 4 = 3

Activity 2 t 2 = 1

Start of week 6

Project Duration = 7

Start of week 3

Start of week 1 Start of week 7 Start of week 2

Computation of slack times

  • Slack time ST of an activity A:
    • STA = LSA - ESA
    • Subtract the earliest start date from the latest start date for each

activity

Activity 3 tA = 1

Activity 4 tA = 3

Start t = 0

Activity 1 t 1 = 5 End t = 0

Activity t 5 = 2

Activity 4 t 4 = 3

Activity 2 Activity^ t 2 = 1 A A A A A

Slack time 0 1 1 1 0

Slack times on the same path influence each other.

Example: When Activity 3 is delayed by one week, activity 4 slack time

becomes zero weeks.

Example: STA4 = 3 - 2 = 1

s 1 = 0 (^) s 2 = 1

s 3 = 1 s 4 = 1 s 5 = 0

Building a House (PERT Chart)

Duration

Start Time

Slack Time

Each Activity has a start time and

an estimated duration

  • Determination of total project time
  • Determination of the critical path
  • Determination of slack times

START

8/27/

0

0

Request Permits

8/27/

15

0

Surveying

8/27/

(^123)

Excavation

9/17/

100

Legend

8/29/

0

Buy Material

10/1/

10

0

Lay Foundation

10/15/

150

Outside^ Build Wall

11/5/

200

Install ExteriorPlumbing

12/3/

(^1210)

Interior^ Install Plumbing

12/3/

12

0

Install Exterior Electrical

12/17/

1012

Interior^ Install Electrical

12/21/

15

0

Exterior^ Install Siding

12/31/

8

12

Wallboard^ Install

1/11/

9

0

Paint Exterior

1/12/

(^125)

Roofing^ Install

1/19/

9

12

Install Flooring

1/22/

180

Paint Interior

1/22/

11

0 Install Interior Doors

2/8/

70

Install Exterior Doors

1/19/

6

15

FINISH

2/16/

0

0

0

Gantt Chart

Time (in weeks after start)

Activity 1

Activity 2

Activity 3

Activity 4

Activity 5

Easy to read