This document discusses software project management concepts and processes used at Infosys, a large software company. It covers several key topics:
- The importance of project management and following defined processes. Infosys uses the CMM framework and aims for high maturity.
- How Infosys manages projects, including training for project managers, defining project plans and tracking status during execution.
- The infrastructure used for planning, including a process database of past projects, process capability baselines, and process assets like templates.
- How Infosys tailors its standard development process based on project characteristics. It also describes the change management process.
- The document concludes by covering effort estimation and scheduling concepts used
1. 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)
2. 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)
3. CH-1: Managing Software Projects
Ayaz Ahmed Shariff K
Sr. Faculty, BITIC-RAK-UAE
CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)
4. 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)
5. 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)
6. 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)
7. 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)
11. 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)
12. Goals of KPAs at level 3 (Defined)
Integrated S/W management(ISM): Project’s defined s/w
process is a tailored version of the organization’s 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)
13. 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)
14. 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)
15. 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)
16. 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)
17. Project Manager: Project planning
activities
Perform startup and administrative tasks.
Create project plan and schedule (defect prevention plan,
estimation of effort, HR, milestones, trainings, project-
tracking 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)
18. 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)
19. 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)
20. 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)
21. CH 2 - Project Planning Infrastructure
Ayaz Ahmed Shariff K
Asst. Professor, BITIC-RAK-UAE
CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff
K)
22. 2.1 Key elements of Planning
Infrastructure
1. Process Database (PDB): Captures the performance data of
completed projects.
2. Process Capability Baseline (PCB): Summarizes the
performance across projects.
3. Process Assets: checklists, templates, methodologies, learned
lessons.
CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff
K)
23. 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)
28. Fig4: Size of Data
Language OS Code DBMS Code Measure Actual Size of
Code Code Code
Jave Win - LOC 5005
Persistent Win NT DB2 LCO 10020
Builder
CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff
K)
29. 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)
30. PCB for Development process
CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff
K)
31. PCB for Development Process
Parameter Outcomes Remarks Baseline
Delivered Quality Delivered Defects/FP Avg of 0.021 Defects/FP
Productivity For 3 GL Avg of 12 FP/person-
months
For 4 GL Avg of 50 FP/person-month
Schedule 81% of projects delivered
within + or – 10% schedule
Build Effort Build effort for Medium Min-Mean-Max
program 2-4-6 person days
Effort Distribution Req. Analysis + Design 1-15-29%
Testing 1-8-20%
Code 14-33-52%
Defect Injection Rate Overall injection rate in Avg of 0.33 Defects/FP
terms of Size
In-process removal For entire life cycle Avg 95%
CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff
Deficiency
K)
Cost of Quality Total effort 35%
32. PCB for Development process
CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff
K)
33. 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)
34. Assets for Project management
CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff
K)
35. 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)
36. CH-3 Process Planning
Ayaz Ahmed Shariff K
Asst. Professor, BITIC-RAK-UAE
CH-3 Process Planning (Ayaz Ahmed Shariff K)
37. 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)
38. 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)
39. The standard process: Infosys
Development process
CH-3 Process Planning (Ayaz Ahmed Shariff K)
40. 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)
41. 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)
43. 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)
44. 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. Log the changes
2. Perform an impact analysis
3. Estimate effort for change requests
4. Re estimate the delivery schedule
5. Perform cumulative cost analysis.
6. Review the impact
7. Obtain customer sign-off
8. Rework
CH-3 Process Planning (Ayaz Ahmed Shariff K)
46. CH-4 Effort Estimation and
Scheduling
Ayaz Ahmed Shariff K
Asst. Professor; BITIC-RAK-UAE
CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff
K)
47. 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)
48. 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)
49. 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)
50. 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 self-
testing (together called as build effort)
CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff
K)
51. The Bottom-up approach
1. Identify the programs in the system and classify them as simple,
medium, or complex (S/M/C).
1. If project-specific PCB exists, get the average build effort for S/M/C
programs.
2. If PCB does not exist, use other attributes like project type, technology,
language etc to look for similar projects in PDB.
3. 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. Use project-specific factors to refine the build effort for S/M/C
and get the total build effort.
3. Using effort distribution given in the PCB or for similar projects
from PDB, estimate the effort for other tasks and total effort.
4. Refine the estimates.
CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff
K)
52. 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)
53. The top-down approach
1. Get the estimate of the total size of s/w in function-
points.
2. Using the productivity data from project specific PCB
or general PCB or from similar projects, fix the
productivity level for the project.
3. Obtain the overall effort estimate from productivity
and size estimates.
4. Use effort distribution data from PCB or similar
projects, estimate the effort of various phases.
5. Refine the estimates
CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff
K)
54. 4.3 Use-Case points approach
1. Classify each use-case as simple, medium, or complex. Basis for
classification is the number of transactions per use-case (simple use-
case has 3 transactions, complex has >7 and medium have 4 to 7
transactions.
2. 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)
3. 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)
4. Compute Environmental factor (EF) from table and rating each
factor from 0 to 5.
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)
57. 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)
58. Table3: use-cases for ACIC project
CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff
K)
59. Table4: Build effort for ACIC project
Use-Case type Effort (per use- No. of Units Total Build-effort
case, in person- (person-days)
days)
Simple 1 5 5
Medium 5 9 45
Complex 8 12 96
Total= 146
CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff
K)
60. Table5: Estimated effort for the ACIC
project
CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff
K)
61. 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)
62. 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)
63. 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)
64. 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)
65. 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)
66. Detailed scheduling
Factors considered while assigning resources:
i. Leave plans of team members
ii. Personnel growth plans
iii. Career paths
iv. Skill sets and experience
v. Training
vi. 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)
67. 4.6.3 Schedule of ACIC project
CH-4 Effort Estimation & Scheduling (Ayaz Ahmed Shariff
K)
68. Thank You --------
By,
Ayaz Ahmed Shariff K
twitter: #ayazahmedsk
CH-1 Managing Software Projects (Ayaz Ahmed Shariff K)