Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
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
each year producing s/w worth $600 billion. Why do projects fail? PM can improve chances of success using effective project management.
- 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
step. Organization can learn effectively to with defined process. Lowers anxiety level (checklists covers upto 80% of what needs to be done)
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
Maturity levels
Level 1 - Initial Level 2 - Repeatable Level 3 - Defined Level 4 - Managed Level 5 - Optimizing
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
Maturity Levels
Level 4 Managed
Level 5 Optimizing
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.
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.
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.
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.
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)
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)
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.
Monitor performance
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 2: The Project Planning Infrastructure CH 3: Process Planning CH 4: Effort Estimation and Scheduling
Process Database (PDB): Captures the performance data of completed projects. Process Capability Baseline (PCB): Summarizes the
performance across projects.
2.
3.
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.
Contents of PDB
Project characteristics Project schedule Project Effort Size Defects
Requirement 0 s
Design Coding
0
15
0
3 20
1
1 50
Jave
Persistent Builder
Win
Win NT
DB2
LOC
LCO
5005
10020
Schedule
Build Effort Effort Distribution Build effort for Medium program Req. Analysis + Design Testing Code Overall injection rate in terms of Size
In-process removal For entire life cycle CH-2 Project Planning Infrastructure (Ayaz Ahmed Shariff Deficiency K) Cost of Quality Total effort
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.
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)
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.
High-level design
Detailed Design Build Unit testing, Integration,
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
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
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.
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
Example
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
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
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.
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)
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.
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.
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
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
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.
No. of Units
5 9 12
4.6 Scheduling
The scheduling activity at Infosys is broken into two sub-
various tasks
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.
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%
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)
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.
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.