+ All Categories
Home > Documents > Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Date post: 26-Dec-2015
Category:
Upload: byron-hodges
View: 216 times
Download: 1 times
Share this document with a friend
55
Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013
Transcript
Page 1: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Lecture 4: Project Management

(Continuation)Dr. Taysir Hassan Abdel Hamid

November 3, 2013

Page 2: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Four Key Steps in Managing Projects

1. Identifying project size

2. Creating and managing the workplan

3. Staffing the project

4. Coordinating project activities

Page 3: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

1. IDENTIFYING PROJECT 1. IDENTIFYING PROJECT SIZESIZE

Page 4: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Project Manager’s Balancing Act

Project Management involvesmaking trade-offs… Project Size

Pro

ject C

ost

Proj

ect Ti

me

Modifying one elementrequires adjusting the others

Page 5: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Project Time Estimation Using the Function Point Approach

Page 6: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Function Point

• Is a measure of program size that is based on the number and complexity of inputs, outputs, queries, files, and program interfaces.

• In addition to measuring output, Function Point Analysis is extremely useful in:– Estimating projects, – Managing change of scope, – Measuring productivity, and – Communicating functional requirements.

Page 7: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Calculate Function Points

Step 4- Calculate Total Adjusted Function Points (TAFP):

Total Adjusted Function Points (TAFP)= Adjusted Project Complexity * TUFP

Processing Complexity (PC): __7______(From Step 2)

Adjusted Processing Complexity (PCA) = 0.65 + (0.01 * __7_ )

Total Adjusted Function Points: _0.72 * _338_ = 243 (TUFP -- From Step 1)

Page 8: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Converting Function Points to Lines of Code

Source: Capers Jones, Software Productivity Research

LanguageLines of Codes per Function Point

CCOBOLJAVAC++Turbo PascalVisual BasicPowerBuilderHTMLPackages (e.g., Access, Excel)

130110 55 50 50 30 15 1510-40

Page 9: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Converting Function Points to Lines of Code

Calculate the lines of codes: Total Lines of Codes = Function points

* Lines of code per function point in the chosen language

Example: If you chose C, then 243 function Points times 130 lines of code = 31,590 total lines of code

Page 10: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Function Point Estimation Step Two – Estimate Effort Required

Function of size and production rate:

• Effort is a function of the system size combined with production rates (how much work someone can complete in a given time).

(Effort in = 1.4 * thousands-of-lines-of-codePerson Months)

Example:

If LOC = 10000 Then...Effort = (1.4 * 10) = 14 Person Months

Page 11: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Examples • For small to moderate-size business software

projects (i.e., 100,000 lines of code and 10 or fewer programmers), the model is:

• effort (in person-months) = 1.4 * thousands of lines of code

• For example, let’s suppose that we were going to develop a business software system requiring 10,000 lines of code. This project would typically take 14 person-months of effort.

Page 12: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

• Examples of tools computing lines of code for different programming languages:

1.CCC – “free” for C++ and Java

2.CLOC – “free” for C++, COBOL, Fortran, Java, Javascript, Lisp, Perl, PHP, Python, Ruby, SQL

3.NDepend – “free” for C++, Java

Page 13: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Function Point Estimation Step Three - Schedule Time

Rule of thumb for estimation

Schedule Time (months)=

3.0 * person-months (1/3 is the exponent)

Example:

Effort = 14 person-month

Schedule time =3.0*14^1/3=7.2 months

Page 14: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

• This equation is widely used, although the specific numbers vary (e.g., some estimators may use 3.5 or 2.5 instead of 3.0).

Page 15: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.
Page 16: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Estimation tips

• Allow time for the estimate• Use data from previous projects• Use developer-based estimates• Estimate by walk-through• Estimate by categories• Estimate at a low-level of detail• Don’t omit common tasks• Use software estimation tools • Use several different techniques, and compare the

results• Change estimation practices as the project progresses

Page 17: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

2. CREATING AND MANAGING 2. CREATING AND MANAGING THE WORK PLANTHE WORK PLAN

Page 18: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

A Workplan Example

Page 19: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

To create a workplan

• The project manager identifies the tasks that need to be accomplished and determines how long each one will take.

• Then the tasks are organized within a work breakdown structure.

Page 20: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

• Remember that the overall objectives for the system were recorded on the system request, and the project manager’s job is to identify all the tasks that will be needed to accomplish those objectives.

• The methodology that seems most appropriate for the project provides a list of steps and deliverables.

Page 21: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Identifying Tasks

• Methodology– Using standard list of tasks

• Top-down approach– Identify highest level tasks– Break them into increasingly smaller units– Organize into work breakdown structure

Page 22: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Project Workplan

• List of all tasks in the work breakdown structure, plusDuration of taskCurrent task statusTask dependenciesMilestone (dates): Key milestones, or

important dates, are also identified on the work plan

Page 23: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Open/Complete

Page 24: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Margins of Error in Cost and Time Estimates

Page 25: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Managing Scope

• Scope creep

• JAD and prototyping

• Formal change approval

• Defer additional requirements as future system enhancements

Page 26: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Timeboxing

• Fixed deadline

• Reduced functionality, if necessary

• Fewer “finishing touches”

Page 27: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Timeboxing Steps

1. Set delivery date– Deadline should not be impossible– Should be set by development group

2. Prioritize features by importance3. Build the system core4. Postpone unfinished functionality5. Deliver the system with core functionality6. Repeat steps 3-5 to add refinements and

enhancements

Page 28: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Tracking Project Tasks

• Gantt Chart– Bar chart format– Useful to monitor project status at any point in

time

• PERT Chart– Flowchart format– Illustrate task dependencies and critical path

Page 29: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Tracking Tasks Using Gantt Chart

Go to Library

Go to Bookstore

Select and Purchase Book

Skim Book

Write Phase One

Read Book Carefully

Write Phase Two

Task Week 2 3 4 5 6 7 8 9 10 11 12 13

Page 30: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.
Page 31: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.
Page 32: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.
Page 33: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

PERT Example

Page 34: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

3. STAFFING THE PROJECT3. STAFFING THE PROJECT

Page 35: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Staffing the project

• Determining how many people should be assigned to the project,

• Matching people’s skills with the needs of the project

• Motivating them to meet the project’s objectives,

• Minimizing project team conflict that will occur over time.

Page 36: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

• The deliverable for this part of project management is a staffing plan, which describes: – the number and kinds of people who will work

on the project,– the overall reporting structure,– the project charter, which describes the

project’s objectives and rules.

Page 37: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Staffing Attributes

• Staffing levels will change over a project’s lifetime

• Adding staff may add more overhead than additional labor

• Using teams of 8-10 reporting in a hierarchical structure can reduce complexity

Page 38: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Increasing Complexity with Larger Teams

Page 39: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Key Definitions

• The staffing plan describes the kinds of people working on the project

• The project charter describes the project’s objectives and rules

• A functional lead manages a group of analysts

• A technical lead oversees progress of programmers and technical staff members

Page 40: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Reporting Structure

Page 41: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Motivation

• Use monetary rewards cautiously

• Use intrinsic rewards– Recognition– Achievement– The work itself– Responsibility– Advancement– Chance to learn new skills

Page 42: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.
Page 43: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Handling Conflict

• Clearly define project plans• Recognize project importance to organization• Project charter listing norms and groundrules• Develop schedule commitments ahead of time• Forecast other priorities and their possible

impact on the project

Page 44: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

4. COORDINATING 4. COORDINATING PROJECT ACTIVITIESPROJECT ACTIVITIES

Page 45: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

CASE Tools

Planning Analysis Design Implementation

Upper CASE Lower CASE

Integrated CASE (I-CASE)

Page 46: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Procedural MetadataLogic

Diagrams ScreenDesigns

CASE Repository

CASE Components

Page 47: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Standards

• Examples– Formal rules for naming files– Forms indicating goals reached– Programming guidelines

Page 48: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Types of Standards

Page 49: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.
Page 50: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Managing Risk

• Risk assessment

• Actions to reduce risk

• Revised assessment

Page 51: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.
Page 52: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Classic Mistakes

• Overly optimistic schedule

• Failing to monitor schedule

• Failing to update schedule

• Adding people to a late project

Page 53: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.
Page 54: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Summary

• Project management is critical to successful development of new systems

• Project management involves planning, controlling and reporting on time, labor, and costs.

Page 55: Lecture 4: Project Management (Continuation) Dr. Taysir Hassan Abdel Hamid November 3, 2013.

Copyright © 2012John Wiley & Sons, Inc.

• All rights reserved. Reproduction or translation of this work beyond that permitted in Section 117 of the 1976 United States Copyright Act without the express written permission of the copyright owner is unlawful.

• Request for further information should be addressed to the Permissions Department, John Wiley & Sons, Inc.

• The purchaser may make back-up copies for his/her own use only and not for redistribution or resale.

• The Publisher assumes no responsibility for errors, omissions, or damages, caused by the use of these programs or from the use of the information contained herein.


Recommended