SlideShare uma empresa Scribd logo
1 de 27
Software Project Management
Lecture # 6
Outline
 Recap of topics from Chapter 23
 Remaining topics of Chapter 23
 The Software Equation
 The Make/Buy Decision
 Outsourcing
 Project Scheduling (Chapter 24)
 What is Scheduling?
 What is Tracking?
 Project Scheduling
 Late Software Delivery & Project Deadlines
 Project Scheduling Principles
 People and Effort Relationship
Recap – “Software Estimation”
 Software project planner must estimate the following
important things before the project begins
 How long it will take?
 How much effort will be required?
 How much money will be involved?
 How many resources will be required?
 People
 Reusable software
 Software/hardware
 Risk consideration
 In the beginning, project’s scope and feasibility are
determined. The scope helps develop estimates using one
or more techniques that fall into 2 broad categories
 Decomposition
 Empirical modeling
Recap – “Software Estimation”
 Decomposition involves identifying major software
function followed by estimates for each
 Empirical techniques use empirically derived
expressions for effort and time estimation
 Software estimation can never be an exact science
but use of good historical data and systematic
techniques can improve estimation accuracy
The Software Equation
 Suggested by Putnam & Myers
 It is a multivariable model
 It assumes a specific distribution of effort over life of
s/w project
 It has been derived from productivity data collected
for over 4000 modern-day s/w projects
 E = [LOC x B0.333
/ P]3
x (1/t4
)
 E = effort in person-months or person-years
 B = special skills factor
 P = productivity factor
 t = project duration (months or years)
The Software Equation (Cont.)
 P reflects
 Overall process maturity
 Management practices
 Extent to which good s/w engg practices are used
 Level of prog. Languages used
 State of s/w environment
 Skills & experience of team
 Application complexity
 Typical values of P
 P= 2000 - for a real-time embedded s/w
 P= 10,000 - for telecomm. & systems s/w
 P= 28,000 for business applications
 Value of B
 increases slowly as “the need for integration, testing, quality
assurance, documentation and management skills grows”.
 For small programs (KLOC=5 to 15), B= 0.16, for larger
programs (KLOC=more than 70), B=0.39
The Software Equation (Cont.)
 Software equation has two independent parameters
 LOC
 t
 Minimum dev. Time equations derived from
software equation
 tmin= 8.14 (LOC/P)0.43
 in months for tmin> 6 months
 E = 180 Bt3
 In person-months for E>= 20 person-months
The Make/Buy decision
 Often it is more cost effective to acquire rather than
develop a software
 Software managers have following options while
making make/buy decisions
 Software may be purchased (or licensed) off the shelf
 “Full experience” or “partial experience” software
components may be acquired and then modified as
needed
 Software may be custom-built by an outside contractor to
meet specifications
 Software criticality to be purchased and the end
cost also affect acquisition process
The Make/Buy decision (Cont.)
 For each of the discussed acquisition
options, the Make/Buy decision is made
based on following conditions
 Will he software product be available sooner
than internally developed software?
 Will the acquisition cost plus cost of
customization be less than cost of developing
the software internally?
 Will the cost of outside support (e.g.,
maintenance contract) be less than the cost of
internal support?
Decision Tree
system Xsystem X
reusereuse
simple (0.30)simple (0.30)
difficult (0.70)difficult (0.70)
minorminor changeschanges
(0.40)(0.40)
majormajor
changeschanges
(0.60)(0.60)
simple (0.20)simple (0.20)
complex (0.80)complex (0.80)
majormajor changeschanges (0.30)(0.30)
minorminor changeschanges
(0.70)(0.70)
$380,000$380,000
$450,000$450,000
$275,000$275,000
$310,000$310,000
$490,000$490,000
$210,000$210,000
$400,000$400,000
buybuy
contractcontract
without changes (0.60)without changes (0.60)
with changes (0.40)with changes (0.40)
$350,000$350,000
$500,000$500,000
buildbuild
Estimated
path cost
Means 30%
probability
 Expected value of cost computed along each
branch of the decision tree is:
 where i is the decision tree path, for example,
 For Build path
 expected cost = 0.30($380K)+0.70($450K) = $429K
 Similarly, for Reuse path, expected cost is $382K; for Buy
path, it is $267K; for Contract path, it is $410K.
 So the obvious choice is “to buy”
Decision Tree
ΣΣ (path probability)(path probability)ii x (estimated path cost)x (estimated path cost)ii
expected cost =expected cost =
Outsourcing
 Acquisition of software (or components) from a
source outside the organization
 Software engineering activities are contracted to a
third party who does the work at lower cost and
(hopefully) at higher quality
 Software work within the company is reduced to
contract management activity
 Outsourcing is often a financial decision
 Positive side
 Cost saving can usually be achieved by reducing own
resources (people & infrastructure)
 Negative side
 Company loses some control over the software and bears
the risk of putting its fate in hands of a third party
Project Scheduling (Chap. 24 )
Introduction
 After the following have been achieved…
 Process model selection
 S/w engg. tasks identification
 Estimation of amount of work & people
 Risk consideration and knowing deadline
 … the task is to create a setup for achieving
the software engineering tasks. This setup is
called ‘software project scheduling and
tracking’
What is scheduling?
 An activity that distributes estimated
effort across the planned project
duration by allocating the effort to
specific software engineering task
 Creating a network of software
engineering tasks to complete the
project and assign responsibilities of
tasks and timing of tasks
What is Tracking?
 Tracking is the process to make sure
that all tasks are completed according
to assigned responsibility and
schedule.
Overview – Proper Scheduling
 Proper Project Scheduling requires
 All tasks should appear in the network
 Interdependencies between tasks are indicated
 Effort and timing are intelligently allocated to
tasks
 Resources are allocated to tasks
 Closely spaced milestones are provided for
progress tracking
Reasons for late software delivery
 Unrealistic deadline established by some one
outside the software development group & enforced
 Changing customer requirements that are not
reflected in schedule change
 An honest underestimate of the amount of work
and/or resources required
 Risks that were not considered at project
commencement
 Technical difficulties not foreseen in advance
 Miscommunication among project staff
 A failure by project management to recognize that
the project is falling behind schedule and a lack of
action to correct the problem.
Dealing With Project Deadlines
 Aggressive (actually unrealistic) deadlines are a fact
of life in software business
 If best estimates indicate that deadline is unrealistic
Project Manager should
“Protect his/her team from undue (schedule)
pressure… and reflect pressure back to its
originators.”
 Recommended steps for such situations:
1. Perform a detailed estimate using historical data from past
projects. Determine effort and time required.
2. Use incremental model, develop a strategy that will deliver
critical functionality within imposed deadline, but delay
other functionality until later. Document the plan.
Dealing With Project Deadlines
3. Meet the customer and explain why deadline is
unrealistic. Explain what is the new time required to
complete this project.
4. Offer incremental development strategy as alternative.
Offer some options.
 We can increase the budget and have bring resources to get
this job done in due time. But this contains increased risk of
poor quality due to tight timeline.
 We can remove some software functions, and provide
remaining functionality later.
 Dispense with reality and wish to complete software in due
time.
 By presenting solid estimates and references to
past projects, it is likely that, negotiated version
option 1 and 2 will be accepted by customer.
Project Schedule (Evolution)
 Project schedules evolve over time
 During early stages of project planning, a
macroscopic schedule is developed
 This schedule identifies all major process
framework activities and the product functions to
which they are applied
 As the project proceeds, each entry on the
macroscopic schedule gets refined into detailed
schedule
 Specific tasks are identified to achieve each activity
and are scheduled
Project Scheduling - Basic Principles
 Compartmentalization
 Both the product and the process are decomposed into a
number of manageable activities/tasks
 Interdependency
 Interdependencies among decomposed activities must be
identified.
 Some tasks can be performed in sequence and other can
be done in parallel.
 Some activities can not be performed without completion
of another and some can be totally independent
 Time Allocation
 Each task must be allocated work units (person-days of
effort)
 Start and end time must be allocated considering
interdependencies
Project Scheduling - Basic Principles
 Effort validation
 Project manager must ensure that no more than the
allocated no. of people have been scheduled at any given
time
 Defined responsibilities
 Every scheduled task must be assigned to a specific team
member
 Defined outcomes
 Work products must be defined for every scheduled task
 Defined milestones
 Every task/group of tasks must be associated with a
project milestone. A milestone is accomplished after one
or more related work products has been reviewed for
quality and approved
Relationship of People and Effort
 Common Myth …
 “If we fall behind schedule, we can always add
more programmers and catch up later in the
project!”
 Doing so is often disruptive rather than
productive causing further delays. Reasons:
 learning time
 teaching takes time away from productive work
 added communication paths – increased
complexity
Relationship of People and Effort
 Putnam-Norden-Rayleigh (PNR) Curve indicates
the relationship between effort applied and delivery
time for a software project.
 PNR curve was used to derive the software
equation
 to = delivery time that will result in least effort expended
 As we move left to to, i.e. as we try to accelerate delivery, curve rises
nonlinearly
 As we try to reduce accelerate delivery, curve rises sharply to left of td
indicating, project delivery time can not be compressed much beyond
0.75td
 As we try further, the project moves into impossible region and failure
risk becomes high
Tmin=0.75Td td to Development Time
Effort
Cost
Ed
Eo
Impossible
Region
PNR Curve & Software Eqn.
 The software equation is derived from the PNR
curve
 It demonstrates a highly nonlinear relationship
between time to complete project and human effort
applied to the project
 Lines of Code (L) is related to effort (E) and
development time (t) as:
 L = P x E 1/3
t 4/3
 Rearranging the equation
 E = L3
/ P3
t4

Mais conteúdo relacionado

Mais procurados

Software Cost Estimation in Software Engineering SE23
Software Cost Estimation in Software Engineering SE23Software Cost Estimation in Software Engineering SE23
Software Cost Estimation in Software Engineering SE23koolkampus
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation TechniquesSanthi thi
 
Software cost estimation techniques presentation
Software cost estimation techniques presentationSoftware cost estimation techniques presentation
Software cost estimation techniques presentationKudzai Rerayi
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specificationlavanya marichamy
 
Chapter 5 software design
Chapter 5 software designChapter 5 software design
Chapter 5 software designPiyush Gogia
 
Software project management- Software Engineering
Software project management- Software EngineeringSoftware project management- Software Engineering
Software project management- Software EngineeringMuhammad Yousuf Abdul Qadir
 
Software project estimation
Software project estimationSoftware project estimation
Software project estimationinayat khan
 
Software project management
Software project managementSoftware project management
Software project managementR A Akerkar
 
Real time and distributed design
Real time and distributed designReal time and distributed design
Real time and distributed designpriyapavi96
 
software cost factor
software cost factorsoftware cost factor
software cost factorAbinaya B
 
Lect4 software economics
Lect4 software economicsLect4 software economics
Lect4 software economicsmeena466141
 
Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsSeema Kamble
 
software project management Artifact set(spm)
software project management Artifact set(spm)software project management Artifact set(spm)
software project management Artifact set(spm)REHMAT ULLAH
 

Mais procurados (20)

Software Cost Factor
Software Cost FactorSoftware Cost Factor
Software Cost Factor
 
Software Cost Estimation in Software Engineering SE23
Software Cost Estimation in Software Engineering SE23Software Cost Estimation in Software Engineering SE23
Software Cost Estimation in Software Engineering SE23
 
Algorithmic Software Cost Modeling
Algorithmic Software Cost ModelingAlgorithmic Software Cost Modeling
Algorithmic Software Cost Modeling
 
Checkpoints of the Process
Checkpoints of the ProcessCheckpoints of the Process
Checkpoints of the Process
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
 
Software cost estimation techniques presentation
Software cost estimation techniques presentationSoftware cost estimation techniques presentation
Software cost estimation techniques presentation
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specification
 
Chapter 5 software design
Chapter 5 software designChapter 5 software design
Chapter 5 software design
 
Staffing level estimation
Staffing level estimation Staffing level estimation
Staffing level estimation
 
Software project management- Software Engineering
Software project management- Software EngineeringSoftware project management- Software Engineering
Software project management- Software Engineering
 
Software project estimation
Software project estimationSoftware project estimation
Software project estimation
 
Software project management
Software project managementSoftware project management
Software project management
 
Real time and distributed design
Real time and distributed designReal time and distributed design
Real time and distributed design
 
software cost factor
software cost factorsoftware cost factor
software cost factor
 
Lect4 software economics
Lect4 software economicsLect4 software economics
Lect4 software economics
 
Software quality
Software qualitySoftware quality
Software quality
 
Unified process Model
Unified process ModelUnified process Model
Unified process Model
 
Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metrics
 
software project management Artifact set(spm)
software project management Artifact set(spm)software project management Artifact set(spm)
software project management Artifact set(spm)
 
unit testing and debugging
unit testing and debuggingunit testing and debugging
unit testing and debugging
 

Destaque

Software metrics sucess, failures and new directions
Software metrics sucess, failures and new directionsSoftware metrics sucess, failures and new directions
Software metrics sucess, failures and new directionsAndrws Vieira
 
Project Scheduling & Tracking
Project Scheduling & TrackingProject Scheduling & Tracking
Project Scheduling & TrackingFahim Tuhin
 
Software Development Life Cycle.
Software Development Life Cycle.Software Development Life Cycle.
Software Development Life Cycle.mailrenuka
 
Reliability growth models for quality management
Reliability growth models for quality managementReliability growth models for quality management
Reliability growth models for quality managementRoy Antony Arnold G
 
Project scheduling and tracking
Project scheduling and trackingProject scheduling and tracking
Project scheduling and trackingyenohhoney
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project ManagementAyaz Shariff
 
Software engineering project on gps based Bus management system (GPS BMS)
Software engineering project on gps based Bus management system (GPS BMS)Software engineering project on gps based Bus management system (GPS BMS)
Software engineering project on gps based Bus management system (GPS BMS)Neeraj Kansal
 

Destaque (10)

4 Scheduling Monitoring
4 Scheduling Monitoring4 Scheduling Monitoring
4 Scheduling Monitoring
 
Software metrics sucess, failures and new directions
Software metrics sucess, failures and new directionsSoftware metrics sucess, failures and new directions
Software metrics sucess, failures and new directions
 
Bai giang-spm-11mar14
Bai giang-spm-11mar14Bai giang-spm-11mar14
Bai giang-spm-11mar14
 
Project Scheduling & Tracking
Project Scheduling & TrackingProject Scheduling & Tracking
Project Scheduling & Tracking
 
Software Development Life Cycle.
Software Development Life Cycle.Software Development Life Cycle.
Software Development Life Cycle.
 
Reliability growth models for quality management
Reliability growth models for quality managementReliability growth models for quality management
Reliability growth models for quality management
 
Slides chapters 24-25
Slides chapters 24-25Slides chapters 24-25
Slides chapters 24-25
 
Project scheduling and tracking
Project scheduling and trackingProject scheduling and tracking
Project scheduling and tracking
 
Software Project Management
Software Project ManagementSoftware Project Management
Software Project Management
 
Software engineering project on gps based Bus management system (GPS BMS)
Software engineering project on gps based Bus management system (GPS BMS)Software engineering project on gps based Bus management system (GPS BMS)
Software engineering project on gps based Bus management system (GPS BMS)
 

Semelhante a Software Project Management Scheduling and Tracking

SE18_Lec 13_ Project Planning
SE18_Lec 13_ Project PlanningSE18_Lec 13_ Project Planning
SE18_Lec 13_ Project PlanningAmr E. Mohamed
 
SE_Lec 12_ Project Planning
SE_Lec 12_ Project PlanningSE_Lec 12_ Project Planning
SE_Lec 12_ Project PlanningAmr E. Mohamed
 
Ch23-Software Engineering 9
Ch23-Software Engineering 9Ch23-Software Engineering 9
Ch23-Software Engineering 9Ian Sommerville
 
SWE-401 - 3. Software Project Management
SWE-401 - 3. Software Project ManagementSWE-401 - 3. Software Project Management
SWE-401 - 3. Software Project Managementghayour abbas
 
Chapter7 database management system.pptx
Chapter7 database management system.pptxChapter7 database management system.pptx
Chapter7 database management system.pptxMohammedNouh7
 
SE - Lecture 11 - Software Project Estimation.pptx
SE - Lecture 11 - Software Project Estimation.pptxSE - Lecture 11 - Software Project Estimation.pptx
SE - Lecture 11 - Software Project Estimation.pptxTangZhiSiang
 
Spm project planning
Spm project planning Spm project planning
Spm project planning Kanchana Devi
 
Software project scheduling
Software project schedulingSoftware project scheduling
Software project schedulinglokareminakshi
 
Software Project Planning II
Software Project Planning IISoftware Project Planning II
Software Project Planning IIGagan Deep
 
Project mangement part 1
Project mangement part 1Project mangement part 1
Project mangement part 1ghulam MUSTAFA
 
Lecture 9 (02-06-2011)
Lecture 9 (02-06-2011)Lecture 9 (02-06-2011)
Lecture 9 (02-06-2011)love7love
 
Effort estimation( software Engineering)
Effort estimation( software Engineering)Effort estimation( software Engineering)
Effort estimation( software Engineering)kiran Patel
 

Semelhante a Software Project Management Scheduling and Tracking (20)

SE18_Lec 13_ Project Planning
SE18_Lec 13_ Project PlanningSE18_Lec 13_ Project Planning
SE18_Lec 13_ Project Planning
 
SE_Lec 12_ Project Planning
SE_Lec 12_ Project PlanningSE_Lec 12_ Project Planning
SE_Lec 12_ Project Planning
 
Ch23-Software Engineering 9
Ch23-Software Engineering 9Ch23-Software Engineering 9
Ch23-Software Engineering 9
 
SWE-401 - 3. Software Project Management
SWE-401 - 3. Software Project ManagementSWE-401 - 3. Software Project Management
SWE-401 - 3. Software Project Management
 
Project Scheduling
Project SchedulingProject Scheduling
Project Scheduling
 
Chapter7 database management system.pptx
Chapter7 database management system.pptxChapter7 database management system.pptx
Chapter7 database management system.pptx
 
Ch23
Ch23Ch23
Ch23
 
SE - Lecture 11 - Software Project Estimation.pptx
SE - Lecture 11 - Software Project Estimation.pptxSE - Lecture 11 - Software Project Estimation.pptx
SE - Lecture 11 - Software Project Estimation.pptx
 
Computing Project
Computing Project Computing Project
Computing Project
 
Spm project planning
Spm project planning Spm project planning
Spm project planning
 
SE-Lecture-5.pptx
SE-Lecture-5.pptxSE-Lecture-5.pptx
SE-Lecture-5.pptx
 
Software project scheduling
Software project schedulingSoftware project scheduling
Software project scheduling
 
Software Project Planning II
Software Project Planning IISoftware Project Planning II
Software Project Planning II
 
MIS Project management
MIS Project managementMIS Project management
MIS Project management
 
Estimation sharbani bhattacharya
Estimation sharbani bhattacharyaEstimation sharbani bhattacharya
Estimation sharbani bhattacharya
 
Project mangement part 1
Project mangement part 1Project mangement part 1
Project mangement part 1
 
Cost estimation
Cost estimationCost estimation
Cost estimation
 
Lecture 9 (02-06-2011)
Lecture 9 (02-06-2011)Lecture 9 (02-06-2011)
Lecture 9 (02-06-2011)
 
Effort estimation( software Engineering)
Effort estimation( software Engineering)Effort estimation( software Engineering)
Effort estimation( software Engineering)
 
SE chapters 24-25
SE chapters 24-25SE chapters 24-25
SE chapters 24-25
 

Último

POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 

Último (20)

POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 

Software Project Management Scheduling and Tracking

  • 2. Outline  Recap of topics from Chapter 23  Remaining topics of Chapter 23  The Software Equation  The Make/Buy Decision  Outsourcing  Project Scheduling (Chapter 24)  What is Scheduling?  What is Tracking?  Project Scheduling  Late Software Delivery & Project Deadlines  Project Scheduling Principles  People and Effort Relationship
  • 3. Recap – “Software Estimation”  Software project planner must estimate the following important things before the project begins  How long it will take?  How much effort will be required?  How much money will be involved?  How many resources will be required?  People  Reusable software  Software/hardware  Risk consideration  In the beginning, project’s scope and feasibility are determined. The scope helps develop estimates using one or more techniques that fall into 2 broad categories  Decomposition  Empirical modeling
  • 4. Recap – “Software Estimation”  Decomposition involves identifying major software function followed by estimates for each  Empirical techniques use empirically derived expressions for effort and time estimation  Software estimation can never be an exact science but use of good historical data and systematic techniques can improve estimation accuracy
  • 5. The Software Equation  Suggested by Putnam & Myers  It is a multivariable model  It assumes a specific distribution of effort over life of s/w project  It has been derived from productivity data collected for over 4000 modern-day s/w projects  E = [LOC x B0.333 / P]3 x (1/t4 )  E = effort in person-months or person-years  B = special skills factor  P = productivity factor  t = project duration (months or years)
  • 6. The Software Equation (Cont.)  P reflects  Overall process maturity  Management practices  Extent to which good s/w engg practices are used  Level of prog. Languages used  State of s/w environment  Skills & experience of team  Application complexity  Typical values of P  P= 2000 - for a real-time embedded s/w  P= 10,000 - for telecomm. & systems s/w  P= 28,000 for business applications  Value of B  increases slowly as “the need for integration, testing, quality assurance, documentation and management skills grows”.  For small programs (KLOC=5 to 15), B= 0.16, for larger programs (KLOC=more than 70), B=0.39
  • 7. The Software Equation (Cont.)  Software equation has two independent parameters  LOC  t  Minimum dev. Time equations derived from software equation  tmin= 8.14 (LOC/P)0.43  in months for tmin> 6 months  E = 180 Bt3  In person-months for E>= 20 person-months
  • 8. The Make/Buy decision  Often it is more cost effective to acquire rather than develop a software  Software managers have following options while making make/buy decisions  Software may be purchased (or licensed) off the shelf  “Full experience” or “partial experience” software components may be acquired and then modified as needed  Software may be custom-built by an outside contractor to meet specifications  Software criticality to be purchased and the end cost also affect acquisition process
  • 9. The Make/Buy decision (Cont.)  For each of the discussed acquisition options, the Make/Buy decision is made based on following conditions  Will he software product be available sooner than internally developed software?  Will the acquisition cost plus cost of customization be less than cost of developing the software internally?  Will the cost of outside support (e.g., maintenance contract) be less than the cost of internal support?
  • 10. Decision Tree system Xsystem X reusereuse simple (0.30)simple (0.30) difficult (0.70)difficult (0.70) minorminor changeschanges (0.40)(0.40) majormajor changeschanges (0.60)(0.60) simple (0.20)simple (0.20) complex (0.80)complex (0.80) majormajor changeschanges (0.30)(0.30) minorminor changeschanges (0.70)(0.70) $380,000$380,000 $450,000$450,000 $275,000$275,000 $310,000$310,000 $490,000$490,000 $210,000$210,000 $400,000$400,000 buybuy contractcontract without changes (0.60)without changes (0.60) with changes (0.40)with changes (0.40) $350,000$350,000 $500,000$500,000 buildbuild Estimated path cost Means 30% probability
  • 11.  Expected value of cost computed along each branch of the decision tree is:  where i is the decision tree path, for example,  For Build path  expected cost = 0.30($380K)+0.70($450K) = $429K  Similarly, for Reuse path, expected cost is $382K; for Buy path, it is $267K; for Contract path, it is $410K.  So the obvious choice is “to buy” Decision Tree ΣΣ (path probability)(path probability)ii x (estimated path cost)x (estimated path cost)ii expected cost =expected cost =
  • 12. Outsourcing  Acquisition of software (or components) from a source outside the organization  Software engineering activities are contracted to a third party who does the work at lower cost and (hopefully) at higher quality  Software work within the company is reduced to contract management activity  Outsourcing is often a financial decision  Positive side  Cost saving can usually be achieved by reducing own resources (people & infrastructure)  Negative side  Company loses some control over the software and bears the risk of putting its fate in hands of a third party
  • 14. Introduction  After the following have been achieved…  Process model selection  S/w engg. tasks identification  Estimation of amount of work & people  Risk consideration and knowing deadline  … the task is to create a setup for achieving the software engineering tasks. This setup is called ‘software project scheduling and tracking’
  • 15. What is scheduling?  An activity that distributes estimated effort across the planned project duration by allocating the effort to specific software engineering task  Creating a network of software engineering tasks to complete the project and assign responsibilities of tasks and timing of tasks
  • 16. What is Tracking?  Tracking is the process to make sure that all tasks are completed according to assigned responsibility and schedule.
  • 17. Overview – Proper Scheduling  Proper Project Scheduling requires  All tasks should appear in the network  Interdependencies between tasks are indicated  Effort and timing are intelligently allocated to tasks  Resources are allocated to tasks  Closely spaced milestones are provided for progress tracking
  • 18. Reasons for late software delivery  Unrealistic deadline established by some one outside the software development group & enforced  Changing customer requirements that are not reflected in schedule change  An honest underestimate of the amount of work and/or resources required  Risks that were not considered at project commencement  Technical difficulties not foreseen in advance  Miscommunication among project staff  A failure by project management to recognize that the project is falling behind schedule and a lack of action to correct the problem.
  • 19. Dealing With Project Deadlines  Aggressive (actually unrealistic) deadlines are a fact of life in software business  If best estimates indicate that deadline is unrealistic Project Manager should “Protect his/her team from undue (schedule) pressure… and reflect pressure back to its originators.”  Recommended steps for such situations: 1. Perform a detailed estimate using historical data from past projects. Determine effort and time required. 2. Use incremental model, develop a strategy that will deliver critical functionality within imposed deadline, but delay other functionality until later. Document the plan.
  • 20. Dealing With Project Deadlines 3. Meet the customer and explain why deadline is unrealistic. Explain what is the new time required to complete this project. 4. Offer incremental development strategy as alternative. Offer some options.  We can increase the budget and have bring resources to get this job done in due time. But this contains increased risk of poor quality due to tight timeline.  We can remove some software functions, and provide remaining functionality later.  Dispense with reality and wish to complete software in due time.  By presenting solid estimates and references to past projects, it is likely that, negotiated version option 1 and 2 will be accepted by customer.
  • 21. Project Schedule (Evolution)  Project schedules evolve over time  During early stages of project planning, a macroscopic schedule is developed  This schedule identifies all major process framework activities and the product functions to which they are applied  As the project proceeds, each entry on the macroscopic schedule gets refined into detailed schedule  Specific tasks are identified to achieve each activity and are scheduled
  • 22. Project Scheduling - Basic Principles  Compartmentalization  Both the product and the process are decomposed into a number of manageable activities/tasks  Interdependency  Interdependencies among decomposed activities must be identified.  Some tasks can be performed in sequence and other can be done in parallel.  Some activities can not be performed without completion of another and some can be totally independent  Time Allocation  Each task must be allocated work units (person-days of effort)  Start and end time must be allocated considering interdependencies
  • 23. Project Scheduling - Basic Principles  Effort validation  Project manager must ensure that no more than the allocated no. of people have been scheduled at any given time  Defined responsibilities  Every scheduled task must be assigned to a specific team member  Defined outcomes  Work products must be defined for every scheduled task  Defined milestones  Every task/group of tasks must be associated with a project milestone. A milestone is accomplished after one or more related work products has been reviewed for quality and approved
  • 24. Relationship of People and Effort  Common Myth …  “If we fall behind schedule, we can always add more programmers and catch up later in the project!”  Doing so is often disruptive rather than productive causing further delays. Reasons:  learning time  teaching takes time away from productive work  added communication paths – increased complexity
  • 25. Relationship of People and Effort  Putnam-Norden-Rayleigh (PNR) Curve indicates the relationship between effort applied and delivery time for a software project.  PNR curve was used to derive the software equation
  • 26.  to = delivery time that will result in least effort expended  As we move left to to, i.e. as we try to accelerate delivery, curve rises nonlinearly  As we try to reduce accelerate delivery, curve rises sharply to left of td indicating, project delivery time can not be compressed much beyond 0.75td  As we try further, the project moves into impossible region and failure risk becomes high Tmin=0.75Td td to Development Time Effort Cost Ed Eo Impossible Region
  • 27. PNR Curve & Software Eqn.  The software equation is derived from the PNR curve  It demonstrates a highly nonlinear relationship between time to complete project and human effort applied to the project  Lines of Code (L) is related to effort (E) and development time (t) as:  L = P x E 1/3 t 4/3  Rearranging the equation  E = L3 / P3 t4

Notas do Editor

  1. 0.70 means 70% probability that job will be difficult