Sei sulla pagina 1di 68

Software Project Management

(for BE VII Sem CSE)

By, Mr. Ayaz Ahmed Shariff K Asst. Professor (Senior Grade) BIT UAE -Campus
Ref: Software Project Management in Practics (Processes used by Infosys, a high maturity organization, to manage software projects) - by Pankaj Jalote

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Software Project Management


Chapter 1: MANAGING SOFTWARE PROJECTS Unit 2: PROJECT PLANNING Chapter 2: The Project Planning Infrastructure Chapter 3: Process Planning Chapter 4: Effort Estimation and Scheduling

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

CH-1: Managing Software Projects


Ayaz Ahmed Shariff K Sr. Faculty, BITIC-RAK-UAE

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

1.1 Managing Software Projects


About half million PM execute about a million s/w projects

each year producing s/w worth $600 billion. Why do projects fail? PM can improve chances of success using effective project management.

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

1.2 Process and Project Management


S/w Project has 2 dimensions

- Engineering - Project Management Project management is the application of knowledge, tools & techniques to project activities in order to meet project activities Process is a sequence of steps that should be followed to execute a task

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Why should PM follow Processes?


Process represent collective knowledge. We can predict much about the outcome of project at every

step. Organization can learn effectively to with defined process. Lowers anxiety level (checklists covers upto 80% of what needs to be done)

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

1.3 CMM
Objective of CMM is to distinguish b/w mature process

from immature or ad-hoc process. CMM for the s/w is a framework that was developed by the s/w Engineering institute(SEI) at Carneige Mellon University. the range of results that can be expected when executed using a defined process is called Process capability actual result executed using the process is its process performance Maturity levels are the path to higher maturity with some defined plateaus

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Maturity levels
Level 1 - Initial Level 2 - Repeatable Level 3 - Defined Level 4 - Managed Level 5 - Optimizing

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Maturity levels
Level 2 Requirements Management S/W project Planning & tracking S/w Sub contracts SQA & SCM Level 3 Organization process focus & definition Training program Integrated s/w management Peer reviews

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Maturity Levels
Level 4 Managed

S/W Quality management Quantitative Process management

Level 5 Optimizing

Process change management Technology change Defect prevention

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Goals for KPAs at Level 2 (repeatable)


Requirement Management: S/W requirements are controlled to

establish a base for SE and management activities S/W project planning: Estimates are documented for planning the project. S/W project Tracking: Actual results & performance are tracked against the documented plans. S/W Subcontract: Prime and sub-contractors agree to their commitments and communicate effectively. Prime contractor tracks sub-contractor results. SQA: SQA activities planned and applied to process standards, procedures and requirements. SCM: SCM activities planned. Applicable to the selected work products and its changes are controlled.

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Goals of KPAs at level 3 (Defined)


Integrated S/W management(ISM): Projects defined s/w

process is a tailored version of the organizations standard s/w process Intergroup Coordination(IC): Groups identify, track, & resolve intergroup issues. Peer Reviews(PR): Peer review activities are planned to remove defects.

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Goals of KPAs at level 4 (managed)


Quantitative Process management(QPM): QPM activities are

planned and process capability of the organization's standard s/w process known in quantitative terms. S/W Quality Management(SQM): SQM activities planned , goals and priorities of quality defined and managed.

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

1.4 Project Management at Infosys


S/W house headquartered at Bangalore. to be a globally respected corporation that provides best-of-breed s/w

solutions delivered by best-in-class people mission Employs global delivery model. Currently employs Listed on BSE, NSE 15 development centers in 4 countries with 63 offices across world in 28 countries. Infosys is best-managed company in India FinanceAsia poll Mr. Narayan Murthy founded Infosys in 1981 and under his leadership, Infosys listed in NASDAQ in 1999. More than 10,000 employees working for Infosys. Revenue is $400 million in June 2000, Rs.22000/= cr by end of mar 31, 2010. Employs MALCOLM BALRIDGE FRAMEWORK for all round improvements.

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

1.5 SEPG support to Projects at Infosys


Quality dept at Infosys contains the Software Engineering

Process Group(SEPG). Responsible for coordinating all the process activities including process definition, process improvement, and process deployment. SEPG facilitates the project team to follow" the right process. SEPG provides a training member who is associated with project as software quality advisor who is well versed of processes, guidelines, standards etc.
CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

1.5 Project management: Infosys


Senior Management involvement in Projects: PM reports to

business manager, who in turn reports to Business unit head. Audits include PRISM and IPM(integrated project management) Training for Project Managers: Induction training program, technical trainings, soft-skill programs, 5day project management course, 2 week course on Req Specification and Req mgmt, PMP certifications etc. Project management process: Project planning, project execution, project closure.
CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Project Manager: Project planning activities


Perform startup and administrative tasks. Create project plan and schedule (defect prevention plan,

estimation of effort, HR, milestones, trainings, projecttracking procedures) Perform review of the project plan and schedule. Obtain authorization from Senior management. Define and review configuration management plan.

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Project manager: project execution


Execute project as per project plan Track project status Review project status Monitor project process Analyze defects and perform defect prevention activities.

Monitor performance

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

1.6 ACIC Case study


ACIC corporation is multibillion dollar financial institution. Slowly started with web-enabling applications, and it wanted

to start an online service for opening and tracking accounts. Infosys in past developed some e-services for ACIC earlier in project called Synergy.

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Unit 2: PROJECT PLANNING

CH 2: The Project Planning Infrastructure CH 3: Process Planning CH 4: Effort Estimation and Scheduling

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

CH 2 - Project Planning Infrastructure


Ayaz Ahmed Shariff K Asst. Professor, BITIC-RAK-UAE

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

2.1 Key elements of Planning Infrastructure


1.

Process Database (PDB): Captures the performance data of completed projects. Process Capability Baseline (PCB): Summarizes the
performance across projects.

2.

3.

Process Assets: checklists, templates, methodologies, learned lessons.

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

2.2. Process Database (PDB)


Permanent repository of the performance data of completed

projects. Can be used for project planning, estimation, analysis, quality, etc. Capture general information like languages used, databases, tools, size etc. PDB is software engineering database to study the processes at Infosys.

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

Contents of PDB
Project characteristics Project schedule Project Effort Size Defects

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

Sample entry (Synergy): general characteristics

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

Fig2: Effort Data

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

Fig3: Defect Data


Req. review Design Review Code Review Testing

Requirement 0 s
Design Coding

0
15

0
3 20

1
1 50

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

Fig4: Size of Data


Language Code OS Code DBMS Code Measure Code Actual Size of Code

Jave
Persistent Builder

Win
Win NT

DB2

LOC
LCO

5005
10020

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

2.3 The Process Capability Baseline


PCB at Infosys contains Delivered Quality Productivity Schedule Effort Distribution Defect injection rate In-process defect removal efficiency Cost of quality Defect distribution
CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

PCB for Development process

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

PCB for Development Process


Parameter Outcomes Delivered Quality Productivity Remarks Delivered Defects/FP For 3 GL For 4 GL Baseline Avg of 0.021 Defects/FP Avg of 12 FP/personmonths Avg of 50 FP/person-month

Schedule
Build Effort Effort Distribution Build effort for Medium program Req. Analysis + Design Testing Code Overall injection rate in terms of Size

81% of projects delivered within + or 10% schedule


Min-Mean-Max 2-4-6 person days 1-15-29% 1-8-20% 14-33-52% Avg of 0.33 Defects/FP Avg 95% 35%

Defect Injection Rate

In-process removal For entire life cycle CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff Deficiency K) Cost of Quality Total effort

PCB for Development process

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

2.4 Process Assets


To facilitate the use of process, guidelines, checklists and

templates often provide useful support. Together these materials are called process assets. Guidelines: Gives Rules and procedures for executing step. Checklists: Activity checklist, Review checklist Templates: provide structure of the document to capture output of a process.

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

Assets for Project management

CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

2.5 Body Knowledge System


BOK used to encapsulate experience. BOK system can be web-based with keyword or author search facility.

BOK includes: 1. Computer & communication services 2. Requirement specification 3. Build,Tools 4. Methodologies,Techniques 5. Education & Research 6. Design 7. Reviews, inspection & testing 8. QA 9. Project management
CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff K)

CH-3 Process Planning


Ayaz Ahmed Shariff K Asst. Professor, BITIC-RAK-UAE

CH-3 Process Planning (Ayaz Ahmed Shariff K)

3. 1 Infosys Development Process


PM decides what process should be used for engineering? Its

an crucial issue (Process models like waterfall, prototype, etc) Infosys adopted The Standard process which resembles the waterfall model allowing parallel execution of some phases.

CH-3 Process Planning (Ayaz Ahmed Shariff K)

3.2 Standard Process Model


Phases of Standard Process model are
Requirement Analysis

High-level design
Detailed Design Build Unit testing, Integration,

System testing and Plan


Warranty support

CH-3 Process Planning (Ayaz Ahmed Shariff K)

The standard process: Infosys Development process

CH-3 Process Planning (Ayaz Ahmed Shariff K)

3.3 Process tailoring


A defined process must be tailored to suit the needs of the

current project. Tailoring is the process of adjusting a previously defined process

of an organization to obtain process that is suitable for business or technical needs of the project
Ex: Tailoring guidelines help a project manager to do the

activity called do code review to be performed only for certain types of programs

CH-3 Process Planning (Ayaz Ahmed Shariff K)

3.3.1Summary-level Tailoring
In summary-level tailoring, depending upon the process

database, the PM applies overall guidelines for tailoring the standard process. The following characteristics are used for tailoring:
Experience and skill level of team and PM Team size Clarity of requirements Project duration Critical issues

CH-3 Process Planning (Ayaz Ahmed Shariff K)

3.3.2 Detailed level tailoring


//refer text book

3.4 Requirement Change Management


Requirements keep changing.. Any time, any stage in project

lifecycle. Severe impact on the project and risk factor Impact on cost, schedule and quality of the product. Up to 40% of total cost. Client may not still satisfied.

CH-3 Process Planning (Ayaz Ahmed Shariff K)

The change management process


PM decides what process model to be followed to handle

change requests. Change management process at Infosys has following steps.


1. 2. 3. 4. 5. 6. 7. 8.

Log the changes Perform an impact analysis Estimate effort for change requests Re estimate the delivery schedule Perform cumulative cost analysis. Review the impact Obtain customer sign-off Rework

CH-3 Process Planning (Ayaz Ahmed Shariff K)

Example

CH-3 Process Planning (Ayaz Ahmed Shariff K)

CH-4 Effort Estimation and Scheduling


Ayaz Ahmed Shariff K Asst. Professor; BITIC-RAK-UAE

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

Some facts about Improper estimation


In early 2000, the newspapers and TV in India

reported with jubilation of the successful test of light combat aircraft. But it was 5 years late then estimated time. Nandan Nilikeni, the MD of Infosys, answers, No surprises

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

Estimation and Scheduling concepts


Effort estimation takes place in the early stages of a

project, may be redone later as well. One can not precisely answer the question, Is this estimate accurate? Hence the goal for a PM to obtain Reasonable estimate

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

4.0 Effort Estimation Models


A s/w estimation model defines the project

characteristics whose values (estimates) it needs and the ways these values are used to compute the effort. Size of the s/q is major factor to determine the effort needed initially. To-down approach (COCOMO), models using function points, bottom-up approach, use-case approach.

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

4.1 The Bottom-up Estimation Approach


At Infosys, bottom-up approach is preferred and

recommended. Company employs Task-unit approach where PM first divides the s/w development into major programs (units). Each unit is then classified as simple, medium, complex based on criteria. PM then decides standard effort for coding and selftesting (together called as build effort)

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

The Bottom-up approach


1.

Identify the programs in the system and classify them as simple, medium, or complex (S/M/C).
1.
2. 3.

If project-specific PCB exists, get the average build effort for S/M/C programs. If PCB does not exist, use other attributes like project type, technology, language etc to look for similar projects in PDB. If no similar project found in PDB and no specific PCB exists, use the average build effort for S/M/C programs from General PCB.

2. 3.

4.

Use project-specific factors to refine the build effort for S/M/C and get the total build effort. Using effort distribution given in the PCB or for similar projects from PDB, estimate the effort for other tasks and total effort. Refine the estimates.

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

4.2 The top-down Estimation Approach


Function-point approach is widely used and if LOC is known,

it can be converted into function points. The inputs to top-down approach are size estimate and estimate of productivity. The productivity estimate is then used to calculate the total effort estimate. From total estimate, the estimates for each task is computed.

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

The top-down approach


1. 2.

3. 4.

5.

Get the estimate of the total size of s/w in functionpoints. Using the productivity data from project specific PCB or general PCB or from similar projects, fix the productivity level for the project. Obtain the overall effort estimate from productivity and size estimates. Use effort distribution data from PCB or similar projects, estimate the effort of various phases. Refine the estimates

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

4.3 Use-Case points approach


1.

2.

3.

4. 5.

Classify each use-case as simple, medium, or complex. Basis for classification is the number of transactions per use-case (simple usecase has 3 transactions, complex has >7 and medium have 4 to 7 transactions. Obtain unadjusted use-case points(UUCP) as weighted sum of factors for use-cases in application. (ie, for each use-case class, get product of the no. of use-cases and factor of complexity) Compute Technical complexity factor (TCF) as given in table and rate each factor from 0 to 5. ( 0 means that the factor is no relevant to project, 5 means the factor is essential) Compute Environmental factor (EF) from table and rating each factor from 0 to 5. Using these two factors, compute the final use-case points (UCP) as UCP = UUCP * TCF * EF

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

Table1: Technical factors and weights

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

Table2: Environmental factors and weights

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

4.4 Effort estimate of ACIC project


Use-case point approach PM has classified the 26 use-cases on classification criteria. To estimate build effort, for the different types of use cases,

the PM used data from synergy project. Synergy project has 21 simple, 11 medium, and 8 complex use-cases Total build effort was 143 person-days, with average build effort of 1 person-days, 5 p-d, and 8 p-d for simple, medium and complex use-cases.

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

Table3: use-cases for ACIC project

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

Table4: Build effort for ACIC project


Use-Case type Effort (per usecase, in persondays)
1 5 8

No. of Units

Total Build-effort (person-days)


5 45 96 Total= 146

Simple Medium Complex

5 9 12

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

Table5: Estimated effort for the ACIC project

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

4.6 Scheduling
The scheduling activity at Infosys is broken into two sub-

activities: - Determining the overall schedule - Development of detailed schedule of the

various tasks

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

4.6.1 Overall Scheduling


Project managers often use a rule of thumb, called the Square-

Root check, to check the schedule of medium sized projects. Square root of the total effort in person-months; SQRT(effort)
For ex: if effort estimate is 50 person-months, a schedule of about 7 or 8 months will be suitable for 7 to 8 resources (people) Once overall duration of project is fixed, the schedule for the major milestones must be determined.

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

Overall Scheduling
To determine the milestones, manpower ramp-up is to be

understood. Rayleigh curve is followed (fig 4.3) Peak team size (PTS) may reach during middle of the project. Generally design requires about 40% (20% for HLD, 20% LLD) coding 40 % and Testing 20%

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

RELAX>>>>>>>>>>>>>>>>>>>>>>>>
3 Cats A young girl enters a pet shop to buy a cat. The pet shop worker shows her three cats that look identical.
"This cat here costs $1,000," he explains. "Why does that cat cost so much?" the girl asks. "This cat knows how to complete legal research," the pet shop worker explains. The girl asks about the cat in the middle, and the pet shop owner explains that the middle cat costs $2,000 because it knows legal research and can win any case. The girl is curious and asks about the third cat. "That one is $5,000. "Well, what can this cat do?" asks the girl. "Honeslty, I have no idea. I have never even seen it do anything at all, but it says it's a Project Manager."
CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

4.6.2 Detailed Scheduling


Once milestones are fixed, it is time to set detailed

scheduling. PM breaks the tasks into small schedulable activities in a hierarchical manner. For each detailed task, the PM estimates the time required to complete it and assigns a suitable resource to meet overall schedule. Detailed project schedule is never static.

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

Detailed scheduling
Factors considered while assigning resources:
i.

ii.
iii. iv. v.

vi.

Leave plans of team members Personnel growth plans Career paths Skill sets and experience Training Critical factors of the task

If the detailed schedule is not consistent with overall schedule and effort estimate, she must change the detailed schedule. Note: For detailed scheduling, PM use Microsoft Project or spreadsheet.

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

4.6.3 Schedule of ACIC project

CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff K)

Thank You -------By, Ayaz Ahmed Shariff K twitter: #ayazahmedsk

CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)

Potrebbero piacerti anche