SlideShare una empresa de Scribd logo
1 de 31
Descargar para leer sin conexión
SOFTWARE PROJECT
PLANNING AND COSTING
Software Cost Estimation
SE518
Lecture-3
Project Planning Components
• Software Scope
• Resources
• Project Estimation
• De-composition Techniques
• Empirical estimation models
• Make or Buy Decision
• Estimation Tools (Manual and Automated)
De-composition Techniques
Software project estimation is a form of problem solving.
If the problem is complex, it must be decomposed to
smaller problems.
Decomposition have two point of views
1. Decomposition of the problem
2. Decomposition of the process
In estimation we use one or both methods of partitioning
De-composition Techniques
Decomposition of the process
1. Framework selection (communication, planning etc)
2. How do we accomplish this framework activity?”
For example, a small, relatively simple project might require
the following work tasks for the communication activity:
• Develop list of clarification issues.
• Meet with stakeholders to address clarification issues.
• Jointly develop a statement of scope.
• Review the statement of scope with all concerned.
• Modify the statement of scope as required
De-composition Techniques
In case of complex project, the communication activities
can be broken down into
• Review the customer request.
• Plan and schedule a formal, facilitated meeting with all
stakeholders.
• Conduct research to specify the proposed solution and
existing approaches.
• Prepare a “working document” and an agenda for the
formal meeting.
• Conduct the meeting.
De-composition Techniques
• Jointly develop mini-specs that reflect data, functional,
and behavioral features of the software. Alternatively,
develop use cases that describe the software from the
user’s point of view.
• Review each mini-spec or use case for correctness,
consistency, and lack of ambiguity.
• Assemble the mini-specs into a scoping document.
• Review the scoping document or collection of use cases
with all concerned.
• Modify the scoping document or use cases as required.
De-composition Techniques
• Software project estimation prediction
Accuracy
of Project
Estimate
(Prediction)
Proper size
estimation
Ability to
translate
estimate into
effort, time &
money
Degree of
abilities of
software
team
Stability of
product
requirements
De-composition Techniques
• Software Sizing
• size refers to a quantifiable outcome of the software
project.
• size can be measured in lines of code (LOC).
• size can represented as function points (FP)
De-composition Techniques
• Software Sizing
• Analogy sizing (planner must identify type of
application & its magnitude on a qualitative scale)
• Divide the historical produce size data into size ranges.
• Compare the planned product with these prior products.
• Based on this comparison, select the size that seems most
appropriate for the new product.
• Function point sizing (information domain
characteristics), Function points are derived using an empirical
relationship based on countable (direct) measures of software’s
information domain (external inputs, external outputs, external
interface, internal logical files etc) and qualitative assessments
of software complexity.
De-composition Techniques
• Software Sizing
• Standard component sizing (generic components of a
particular application like every mis application have to input
data, reporting etc). Historical data may also be used.
• Change sizing (existing software modifications e.g addition,
modification, deletion etc.)
• User stories sizing
• It represent the relative sizing of the user story. It is a unit of
estimation used by Agile teams to estimate User Stories.
When the product owner wants some features to be
developed he/she desires to know how soon the team can
complete the features and how many resources it will take to
complete the work.
11
Decomposition Techniques
• Process-based estimation
• decomposition based on tasks required to complete the software
process framework
• Problem-based estimation
• using lines of code (LOC) decomposition focuses on software
functions
• using function point (FP) decomposition focuses on information
domain characteristics
Empirical Estimation Models
• An estimation model for computer software uses
empirically derived formulas to predict effort as a function
of LOC.
• Structure of estimation model
E = A + B x (ev)C
Models
• Walston-Felix model
• Bailey-Basili model
• Boehm simple model
• Doty model for KLOC > 9
13
Empirical Estimation Models
• Experiential Models
• Typically derived from regression analysis of
historical software project data with estimated
person-months as the dependent variable
• Static Estimation Model
• does not include time as an independent variable
• Constructive Cost Model (COCOMO)
• Dynamic Estimation Models
• usually takes time or development phase into
account
• Software Equation Model
14
Make Buy Decision
• Based on Data
• It may be more cost effective to acquire a piece of
software rather than develop it.
• Decision tree analysis provides a systematic way
to sort through the make-buy decision.
• As a rule outsourcing software development
requires more skillful management than does in-
house development of the same product.
Make up or Buy Decision
• Software may be purchased (or licensed) off-the-shelf.
• “full experience” or “partial-experience” software
components may be acquired and then modified and
integrated to meet specific needs.
• Software may be custom built by an outside contractor to
meet the specifications.
Make up or Buy Decision
For expensive software products, the following guidelines
can be applied:
1. Develop specifications for function and performance of
the desired software.
2. Define measurable characteristics whenever possible.
3. Estimate the internal cost to develop and the delivery
date.
4. Select three or four candidate applications that best
meet your specifications. OR Select reusable software
components that will assist in constructing the required
application.
Make up or Buy Decision
4. Develop a comparison matrix that presents a head-to-
head comparison of key functions.
5. Alternatively, conduct benchmark tests to compare
candidate software.
6. Evaluate each software package or component based
on past product quality, vendor support, product
direction (identification and selection of implementation
strategy, execution) , reputation etc.
7. Contact other users of the software and ask for
opinions.
Make up or Buy Decision
Following points may also influence make/buy decision:
• Delivery time of both products.
• Will the cost of acquisition plus the cost of customization
be less than the cost of developing the software
internally?
• Will the cost of outside support (e.g., a maintenance
contract) be less than the cost of internal support?
19
Decision Process
1. Develop specifications.
2. Estimate internal cost & delivery.
3. Select 3 or 4 candidate packages.
4. Select reasonable components.
5. Build a cost-benefit comparison matrix (key
function performance) or use conduct
benchmark tests of candidate software
6. Evaluate each software package or
component based on history with the
product or vendor.
7. Contact other users.
Cost Estimation Techniques
• Manual software Estimating Methods
• Manual Project Level Estimates using rules of thumb
• Manual Phase Level Estimates using ratios and percentages
• Manual Activity Level Estimates using work breakdown structure
• Automated Software Estimating Methods
• Automated Project Level Estimates using rules of thumb
• Automated Phase Level Estimates using ratios and percentages
• Automated Activity Level Estimates using work breakdown
structure
Cost Estimation Techniques
•The most accurate forms of software cost
estimation are the
•Manual activity-level estimates using
work-breakdown structures and
•Automated activity-level or task-level
estimates (micro-estimation) cost
estimating at either the activity or the task
level, and used for larger projects only.
Manual Project Level Estimates using
rules of thumb
• Oldest method
• Not accurate
• In use due to simplicity for smaller projects.
• Example
Examples of rules of thumb using the lines-of-code-metrics
might be “JAVA applications average 500 code statements
per staff month” or “JAVA applications cost an average of
Rs 1000 per line of code to develop.”
Manual Project Level Estimates using
rules of thumb
• Its simple method and easy to do.
• However, simplistic estimates using rules of thumb should
not serve as the basis of contracts or formal budgets for
software projects.
• Calendar months = (Function points) 0.4
Manual Phase Level Estimates using
ratios and percentages
• Its start with overall project level estimates
• Then ratios and percentages are assigned to various phases of
the project.
• Number of phases would run from five to eight
• Requirements gathering, analysis & design, coding, testing,
installation and training.
• Example
We are going to develop an application of 100 functional points
or having 10,000 LOC. Using rule of thumb from manual project
estimation, we assume that this project will average 500 code
statements per month. Then effort will take 20 months
10,000=500xmonths
Manual Phase Level Estimates using
ratios and percentages
• Typical effort percentages of five phases are
• Requirements 10%
• Analysis and design 20%
• Coding 30%
• Testing 30%
• Installation & training 5%
Manual Phase Level Estimates using
ratios and percentages
• Issues
• In real world, percentages vary widely for every activity on the basis
of type of projects
• Many kinds of software work span over multiple phases or run the
entire duration of the project like documentation
• Activities that are not phased, may accidently be omitted from the
estimates
Manual Phase Level Estimates using
ratios and percentages
• Issues
Example- 1: smaller projects coding is 60%, larger projects coding is
15-20%, however testing % may be increased.
Fix percentage can not be used
Example-2: week estimation of activities span over multiple phases
like documentation, starts during requirements phase and end after
testing
These must be considered
Example-3
Quality assurance, technical writing & integration are not identified as
phases. In complex projects it takes 25-30% effort.
That’s why most manual estimates tends towards excessive
optimism for both cost and schedule.
Manual Phase Level Estimates using
ratios and percentages
Slightly more useful than overall project estimates and
are just about as easy to prepare.
However, they are far from sufficient for contracts, budgets, or
serious business purposes
Manual Activity Level Estimates using
work breakdown structure
• Estimation of each activity or task using a formal work-
breakdown structure is the most accurate of the manual
methods.
Conditions of Manual Estimation
• Can be used for early estimates before requirements
• Small projects, which can be completed with one or two
programmers
• Low value projects with no critical business impacts
Not use full in situation like
• contract purposes for software development and
maintenance
• Larger projects
• Projects with significance business impact.
Automated Estimating Methods
• Its same as in manual method
• Just easier and simpler due to automated tool
• Its also called Macro-estimation
• Its starts with general equitation's of staffing, effort etc

Más contenido relacionado

Similar a project planning components.pdf

UNIT V - 1 SPM.pptx
UNIT V - 1 SPM.pptxUNIT V - 1 SPM.pptx
UNIT V - 1 SPM.pptxDevnath13
 
Using Benchmarking to Quantify the Benefits of Software Process Improvement
Using Benchmarking to Quantify the Benefits of Software Process ImprovementUsing Benchmarking to Quantify the Benefits of Software Process Improvement
Using Benchmarking to Quantify the Benefits of Software Process ImprovementQuantitative Software Management, Inc.
 
Softwareenggineering lab manual
Softwareenggineering lab manualSoftwareenggineering lab manual
Softwareenggineering lab manualVivek Kumar Sinha
 
process models- software engineering
process models- software engineeringprocess models- software engineering
process models- software engineeringArun Nair
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notesSiva Ayyakutti
 
Software Project management
Software Project managementSoftware Project management
Software Project managementsameer farooq
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metricsSHREEHARI WADAWADAGI
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3Azhar Shaik
 
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptxUNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptxLeahRachael
 
Software vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdfSoftware vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdfavishekpradhan24
 
Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2Rupesh Vaishnav
 
Wbs, estimation and scheduling
Wbs, estimation and schedulingWbs, estimation and scheduling
Wbs, estimation and schedulingSulman Ahmed
 

Similar a project planning components.pdf (20)

Proj Mgmt.ppt
Proj Mgmt.pptProj Mgmt.ppt
Proj Mgmt.ppt
 
Cost estimation
Cost estimationCost estimation
Cost estimation
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
UNIT V - 1 SPM.pptx
UNIT V - 1 SPM.pptxUNIT V - 1 SPM.pptx
UNIT V - 1 SPM.pptx
 
Using Benchmarking to Quantify the Benefits of Software Process Improvement
Using Benchmarking to Quantify the Benefits of Software Process ImprovementUsing Benchmarking to Quantify the Benefits of Software Process Improvement
Using Benchmarking to Quantify the Benefits of Software Process Improvement
 
Softwareenggineering lab manual
Softwareenggineering lab manualSoftwareenggineering lab manual
Softwareenggineering lab manual
 
SE Unit-1.pptx
SE Unit-1.pptxSE Unit-1.pptx
SE Unit-1.pptx
 
process models- software engineering
process models- software engineeringprocess models- software engineering
process models- software engineering
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
 
Software Project management
Software Project managementSoftware Project management
Software Project management
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metrics
 
OOSE UNIT-1.pdf
OOSE UNIT-1.pdfOOSE UNIT-1.pdf
OOSE UNIT-1.pdf
 
Unit 1.pdf
Unit 1.pdfUnit 1.pdf
Unit 1.pdf
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
 
Unit 5
Unit   5Unit   5
Unit 5
 
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptxUNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
UNIT 1-IDENTIFY THE NEED FOR SOFTWARE ENGINEERING DEVELOPMENT.pptx
 
Software vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdfSoftware vjhghjjkhjkkkghhjhEngineering.pdf
Software vjhghjjkhjkkkghhjhEngineering.pdf
 
Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2
 
Wbs
WbsWbs
Wbs
 
Wbs, estimation and scheduling
Wbs, estimation and schedulingWbs, estimation and scheduling
Wbs, estimation and scheduling
 

Más de saman Iftikhar (14)

This-that-these-those.pdf
This-that-these-those.pdfThis-that-these-those.pdf
This-that-these-those.pdf
 
02Data updated.pdf
02Data updated.pdf02Data updated.pdf
02Data updated.pdf
 
Clustering.pdf
Clustering.pdfClustering.pdf
Clustering.pdf
 
networking lab
networking labnetworking lab
networking lab
 
Science
Science Science
Science
 
O p
O pO p
O p
 
Interface andexceptions
Interface andexceptionsInterface andexceptions
Interface andexceptions
 
Ethical principles in psychological research
Ethical principles in psychological researchEthical principles in psychological research
Ethical principles in psychological research
 
polysemy tag detect in tag sets
polysemy tag detect in tag setspolysemy tag detect in tag sets
polysemy tag detect in tag sets
 
Selection
SelectionSelection
Selection
 
Pipeline
PipelinePipeline
Pipeline
 
Context diagram
Context diagramContext diagram
Context diagram
 
Database
DatabaseDatabase
Database
 
Flags registers
Flags registersFlags registers
Flags registers
 

Último

Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfayushiqss
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...kalichargn70th171
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfproinshot.com
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionOnePlan Solutions
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxalwaysnagaraju26
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456KiaraTiradoMicha
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedDelhi Call girls
 

Último (20)

Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
ManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide DeckManageIQ - Sprint 236 Review - Slide Deck
ManageIQ - Sprint 236 Review - Slide Deck
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 

project planning components.pdf

  • 1. SOFTWARE PROJECT PLANNING AND COSTING Software Cost Estimation SE518 Lecture-3
  • 2. Project Planning Components • Software Scope • Resources • Project Estimation • De-composition Techniques • Empirical estimation models • Make or Buy Decision • Estimation Tools (Manual and Automated)
  • 3. De-composition Techniques Software project estimation is a form of problem solving. If the problem is complex, it must be decomposed to smaller problems. Decomposition have two point of views 1. Decomposition of the problem 2. Decomposition of the process In estimation we use one or both methods of partitioning
  • 4. De-composition Techniques Decomposition of the process 1. Framework selection (communication, planning etc) 2. How do we accomplish this framework activity?” For example, a small, relatively simple project might require the following work tasks for the communication activity: • Develop list of clarification issues. • Meet with stakeholders to address clarification issues. • Jointly develop a statement of scope. • Review the statement of scope with all concerned. • Modify the statement of scope as required
  • 5. De-composition Techniques In case of complex project, the communication activities can be broken down into • Review the customer request. • Plan and schedule a formal, facilitated meeting with all stakeholders. • Conduct research to specify the proposed solution and existing approaches. • Prepare a “working document” and an agenda for the formal meeting. • Conduct the meeting.
  • 6. De-composition Techniques • Jointly develop mini-specs that reflect data, functional, and behavioral features of the software. Alternatively, develop use cases that describe the software from the user’s point of view. • Review each mini-spec or use case for correctness, consistency, and lack of ambiguity. • Assemble the mini-specs into a scoping document. • Review the scoping document or collection of use cases with all concerned. • Modify the scoping document or use cases as required.
  • 7. De-composition Techniques • Software project estimation prediction Accuracy of Project Estimate (Prediction) Proper size estimation Ability to translate estimate into effort, time & money Degree of abilities of software team Stability of product requirements
  • 8. De-composition Techniques • Software Sizing • size refers to a quantifiable outcome of the software project. • size can be measured in lines of code (LOC). • size can represented as function points (FP)
  • 9. De-composition Techniques • Software Sizing • Analogy sizing (planner must identify type of application & its magnitude on a qualitative scale) • Divide the historical produce size data into size ranges. • Compare the planned product with these prior products. • Based on this comparison, select the size that seems most appropriate for the new product. • Function point sizing (information domain characteristics), Function points are derived using an empirical relationship based on countable (direct) measures of software’s information domain (external inputs, external outputs, external interface, internal logical files etc) and qualitative assessments of software complexity.
  • 10. De-composition Techniques • Software Sizing • Standard component sizing (generic components of a particular application like every mis application have to input data, reporting etc). Historical data may also be used. • Change sizing (existing software modifications e.g addition, modification, deletion etc.) • User stories sizing • It represent the relative sizing of the user story. It is a unit of estimation used by Agile teams to estimate User Stories. When the product owner wants some features to be developed he/she desires to know how soon the team can complete the features and how many resources it will take to complete the work.
  • 11. 11 Decomposition Techniques • Process-based estimation • decomposition based on tasks required to complete the software process framework • Problem-based estimation • using lines of code (LOC) decomposition focuses on software functions • using function point (FP) decomposition focuses on information domain characteristics
  • 12. Empirical Estimation Models • An estimation model for computer software uses empirically derived formulas to predict effort as a function of LOC. • Structure of estimation model E = A + B x (ev)C Models • Walston-Felix model • Bailey-Basili model • Boehm simple model • Doty model for KLOC > 9
  • 13. 13 Empirical Estimation Models • Experiential Models • Typically derived from regression analysis of historical software project data with estimated person-months as the dependent variable • Static Estimation Model • does not include time as an independent variable • Constructive Cost Model (COCOMO) • Dynamic Estimation Models • usually takes time or development phase into account • Software Equation Model
  • 14. 14 Make Buy Decision • Based on Data • It may be more cost effective to acquire a piece of software rather than develop it. • Decision tree analysis provides a systematic way to sort through the make-buy decision. • As a rule outsourcing software development requires more skillful management than does in- house development of the same product.
  • 15. Make up or Buy Decision • Software may be purchased (or licensed) off-the-shelf. • “full experience” or “partial-experience” software components may be acquired and then modified and integrated to meet specific needs. • Software may be custom built by an outside contractor to meet the specifications.
  • 16. Make up or Buy Decision For expensive software products, the following guidelines can be applied: 1. Develop specifications for function and performance of the desired software. 2. Define measurable characteristics whenever possible. 3. Estimate the internal cost to develop and the delivery date. 4. Select three or four candidate applications that best meet your specifications. OR Select reusable software components that will assist in constructing the required application.
  • 17. Make up or Buy Decision 4. Develop a comparison matrix that presents a head-to- head comparison of key functions. 5. Alternatively, conduct benchmark tests to compare candidate software. 6. Evaluate each software package or component based on past product quality, vendor support, product direction (identification and selection of implementation strategy, execution) , reputation etc. 7. Contact other users of the software and ask for opinions.
  • 18. Make up or Buy Decision Following points may also influence make/buy decision: • Delivery time of both products. • Will the cost of acquisition plus the cost of customization be less than the cost of developing the software internally? • Will the cost of outside support (e.g., a maintenance contract) be less than the cost of internal support?
  • 19. 19 Decision Process 1. Develop specifications. 2. Estimate internal cost & delivery. 3. Select 3 or 4 candidate packages. 4. Select reasonable components. 5. Build a cost-benefit comparison matrix (key function performance) or use conduct benchmark tests of candidate software 6. Evaluate each software package or component based on history with the product or vendor. 7. Contact other users.
  • 20. Cost Estimation Techniques • Manual software Estimating Methods • Manual Project Level Estimates using rules of thumb • Manual Phase Level Estimates using ratios and percentages • Manual Activity Level Estimates using work breakdown structure • Automated Software Estimating Methods • Automated Project Level Estimates using rules of thumb • Automated Phase Level Estimates using ratios and percentages • Automated Activity Level Estimates using work breakdown structure
  • 21. Cost Estimation Techniques •The most accurate forms of software cost estimation are the •Manual activity-level estimates using work-breakdown structures and •Automated activity-level or task-level estimates (micro-estimation) cost estimating at either the activity or the task level, and used for larger projects only.
  • 22. Manual Project Level Estimates using rules of thumb • Oldest method • Not accurate • In use due to simplicity for smaller projects. • Example Examples of rules of thumb using the lines-of-code-metrics might be “JAVA applications average 500 code statements per staff month” or “JAVA applications cost an average of Rs 1000 per line of code to develop.”
  • 23. Manual Project Level Estimates using rules of thumb • Its simple method and easy to do. • However, simplistic estimates using rules of thumb should not serve as the basis of contracts or formal budgets for software projects. • Calendar months = (Function points) 0.4
  • 24. Manual Phase Level Estimates using ratios and percentages • Its start with overall project level estimates • Then ratios and percentages are assigned to various phases of the project. • Number of phases would run from five to eight • Requirements gathering, analysis & design, coding, testing, installation and training. • Example We are going to develop an application of 100 functional points or having 10,000 LOC. Using rule of thumb from manual project estimation, we assume that this project will average 500 code statements per month. Then effort will take 20 months 10,000=500xmonths
  • 25. Manual Phase Level Estimates using ratios and percentages • Typical effort percentages of five phases are • Requirements 10% • Analysis and design 20% • Coding 30% • Testing 30% • Installation & training 5%
  • 26. Manual Phase Level Estimates using ratios and percentages • Issues • In real world, percentages vary widely for every activity on the basis of type of projects • Many kinds of software work span over multiple phases or run the entire duration of the project like documentation • Activities that are not phased, may accidently be omitted from the estimates
  • 27. Manual Phase Level Estimates using ratios and percentages • Issues Example- 1: smaller projects coding is 60%, larger projects coding is 15-20%, however testing % may be increased. Fix percentage can not be used Example-2: week estimation of activities span over multiple phases like documentation, starts during requirements phase and end after testing These must be considered Example-3 Quality assurance, technical writing & integration are not identified as phases. In complex projects it takes 25-30% effort. That’s why most manual estimates tends towards excessive optimism for both cost and schedule.
  • 28. Manual Phase Level Estimates using ratios and percentages Slightly more useful than overall project estimates and are just about as easy to prepare. However, they are far from sufficient for contracts, budgets, or serious business purposes
  • 29. Manual Activity Level Estimates using work breakdown structure • Estimation of each activity or task using a formal work- breakdown structure is the most accurate of the manual methods.
  • 30. Conditions of Manual Estimation • Can be used for early estimates before requirements • Small projects, which can be completed with one or two programmers • Low value projects with no critical business impacts Not use full in situation like • contract purposes for software development and maintenance • Larger projects • Projects with significance business impact.
  • 31. Automated Estimating Methods • Its same as in manual method • Just easier and simpler due to automated tool • Its also called Macro-estimation • Its starts with general equitation's of staffing, effort etc