SlideShare a Scribd company logo
1 of 29
Cost Estimating
Body of Knowledge - Software:
past, present, and future
Megan Jones
Eric van der Vliet
Introduction
• ICEAA has maintained a Cost Estimating Body of Knowledge (CEBoK)
for many years – it serves as the foundation for CCEA/PCEA
certification
• While there is a CEBoK module on software cost estimating, ICEAA
recognizes that
• Software is an ever-increasing portion of total systems cost
• There are unique aspects of software cost estimating that merit special attention
• Recognizing these facts, ICEAA decided to develop a Cost Estimating
Body of Knowledge – Software (SCEBoK) and plans to finish the initial
version in late 2022
• This briefing provides an overview of CEBoK-S
Why is Software Cost Estimating Important?
Software is increasingly embedded (in
everything)
2016-2018
2015: Established the Software Cost Estimation Training and Certification
Steering Committee with ICEAA, Nesma, and IFPUG
2016: Started the Software Certification Curriculum Working Group in
2016 to identify important topics, structure a table of contents for
a software cost estimating curriculum
2017: First appearance of the content that would become the Software
Cost Estimating Body of Knowledge. Seven software estimation
training sessions featured at the ICEAA Professional Development
& Training Workshop In Portland, Oregon, USA
2018: 14 Software CEBoK Training offerings at the 2018 ICEAA
Workshop
2019
ICEAA and Nesma sign a MOU committing to continue the project
16 Software CEBoK training offerings at the 2019 ICEAA Workshop
The same training is offered October 2019 at the IWSM-Mensura
Conference in Haarlem, Netherlands
ICEAA begins negotiating contracts to accelerate the effort using paid vs.
volunteer contributions
ICEAA has partners with the U.S. Defense Acquisition University (DAU)
to use their existing course materials, known as BCF-250:
Software Cost Estimating, as one of the foundations for SCEBoK
2020
ICEAA partners with the U.S. Defense Acquisition University (DAU) to
use their existing software cost estimating course materials as one
of the foundations for SCEBoK (along with previously-presented
software training slides and other sources)
Establishes the ICEAA SCEBoK Review Group (ISRG) to collaborate and
best develop an industry and globally accepted product
Contracts a project manager to integrate the source material with ISRG
feedback and to create a written, readable SCEBoK body of
knowledge and a series of PowerPoint slides to use when training
SCEBoK content
Re-brands as Cost Estimating Body of Knowledge-Software (CEBoK-S) to
reduce confusion between CEBoK and SCEBoK
Expected Rollout: Late 2022
• First edition will be in PowerPoint format
• Will be available for learning and instructing
• ICEAA is preparing a standalone specialty certification
for Software Cost Estimating, due in 2023
• Eventual goal is to offer an online narrative-format
body of knowledge
CEBoK-S Target Audiences
 Commercial organizations
 Original Equipment Manufacturers (OEMs)
 Government organizations
 Consulting firms
 Quasi-government organizations (e.g., Federally Funded Research &
Development Centers)
 Academic institutions
CEBoK-S Goals
CEBoK-S will be developed to:
 Provide users with an understanding of software estimating that will
compliment and enhance cost estimates and analyses
 Factually and objectively present all software sizing methods to allow
users to draw their own conclusions about the merits of any given
method
 Provide guidance to the essential considerations in software cost
estimating
 Ensure content is not biased towards or focused on the the US
Government or US Department of Defense
CEBoK-S and CEBoK ®
CEBoK-S will be a supplement to ICEAA’s Cost Estimating
Body of Knowledge (CEBoK®)
 Fundamental cost estimating lessons will not be repeated in CEBoK-S
 CEBoK-S should be used in conjunction with CEBoK
 References and links will cross between core CEBoK lessons and CEBoK-S modules
SCEBoK Lesson Summary
Lesson 0: Setting
the stage for
SCEBoK
Lesson 1:
Introduction
Lesson 2:
Software
Development
paradigms
Lesson 3: SCEBoK
Five-step
Estimating Process
Lesson 4:
Estimating Custom
Software
Development
Lesson 5:
Software
Sustainment
Lesson 6:
Estimating
Procured Software
Solutions
Summary,
Templates
Lesson Z:
Commercial
Estimating
Models
Lesson X:
Software Size
Lesson Y:
Productivity
11
Lessons 1--6
Lesson 0: Setting the Stage for CEBoK-S
Outline and overview of content
Lesson 1: Introduction
Why software cost and schedule estimating is important
Lesson 2: Software Development Paradigms
Explore each software development paradigm with descriptions
and considerations
Lessons 1-6
Lesson 3: CEBoK-S Five-step Estimating Process
Step 1: Develop the scope of the estimate
Step 2: Collect and analyze historical data
Step 3: Create the software estimate
Step 4: Adjust the estimate for risk and uncertainty
Step 5: Document and present the estimate
Lessons 1-6
Lesson 4: Estimating Custom Software Development
• Creating a Software Development Estimate
• Software Schedule Estimating
Lesson 5: Software Sustainment
• Definition of Software Sustainment
• Importance of Software Sustainmnet
• Cost Estimating Techniques
• Software Obsolescence
Lessons 1-6
Lesson 6: Estimating Procured Software Solutions
• Description of COTS software and its importance
• Primary COTS cost drivers
• Best practices in COTS projects
• Description of ERP and its importance
• Primary ERP system cost drivers and estimating techniques
Lesson Supplements: X & Y
Lesson X: Software Size
• Dimensions of software size, methods, and units of measure
• Software size consideration
Lesson Y: Productivity
Lesson Z: Commercial Estimating Models
Software-intensive program1
Investment:
• Program/project management
• Systems engineering
• BPR/ Change management
• System Development
• System Procurement
• Hardware (make and/or buy)
• Software (buy)
• System level integration & test
• System
deployment/implementation
Operations & support (O&S)2
• Help desk/service desk support
• Technology refresh/upgrade
• System sustainment
SCEBoK
Lessons 2, 4
SCEBoK Lesson 5
SCEBoK
Lesson 6
1. Adapted from Standard IT LCC WBS V5, US Dept of Homeland Security
2. O&S contains continuation of many investment categories + those new
ones listed here… See definitions in notes
SCEBoK Lesson 6
Software life cycle (example)
• Investment
• Plan (sourcing, business case, governance)
• Develop and/or procure
• Custom Software Development
• Requirements  implementation
• Software procurement
• System Integration
• Deployment
• Software Sustainment
SW Changes (Maintenance, Enhancements, Cyber)
Recurring Software Licenses
Other components (6)
End of life
A. Review: Drawing the Line between Software
Development, Procurement, and Sustainment
17
Estimating the
Investment
Stage of
Software
Custom
software
developmen
t?
Procure or
Lease?
2. SaaS
Lease
Procure 1. COTS
Purchase
Can only do a Rough
Order of Magnitude
(ROM) estimate
Three major
options: COTS
products glued
together,
Enterprise
solution, or
Data
Warehouse??
Multiple COTS
Products “glued”
together
4. ERP
3. SOA
Enterprise Solution
Do you
know
software
architectur
e ?
Refer to Lesson 4:
Custom Software
Development
No
Yes
C. Identify the Type of
Procured Software Solution (1 of 2)
18
No
Yes
5. EDW
Enterprise Data Warehouse (EDW)
Lesson 6: Estimating Procured
Solutions
Standalone
COTS
Package(s)
Yes
No
6. Hybrid – select most
appropriate approaches from
Lessons 6 and/or 4
OPTIMISM
Innate bias - Planning Fallacy
Project managers are risk-seeking
1 COST, SCHEDULE,
TECHNICAL MISALIGNMENT
Like a three-legged stool, all need to
be consistent in order for a project to
balance
2 MOORE’S LAW
Exponential growth in technology
Paired with projects that take a decade
or longer to complete means that
either there is a continual requirements
update process, or the product is
obsolete on delivery
3
BLACK SWANS
Unpredictable, rare, unprecedented
events that have a huge impact
Why Cost and Schedule Growth
Occur
Numerous Reasons, Both
Internal and External
“The Non-Secret of Good Cost
[and Schedule] Estimating:
Don’t Drink the Kool-Aid”-Lawrence
Goeller, OSD Cost Analysis
Improvement Group
4 LAKE WOBEGON
Project managers and staff are not like
the children of Garrison Keillor’s
fictional town – they are not all above
average
5
Source: Christian B. Smart, Solving for Risk Management: Understanding the
Critical Role of Uncertainty in Project Management
Summary of Development Paradigms and
Methods
20
Paradigm Method Estimating Level/Approach Logically Associated
Associated contract
contract type
Predictive/
Plan-driven
Waterfall While the CES/WBS may contain activity-level and CSCI-level elements, development effort is
usually estimated at the top-level, for the overall software development effort. Any activities not
included in the CER/Analogy used for estimating are estimated separately.
Firm fixed price
(FFP)
Predictive-
with-
modifications
Incremental Each increment is estimated separately, using size (ESLOC or FP) and other relevant cost drivers
for that increment. Upfront requirements and software testing follow traditional waterfall steps,
with incremental portions of software requirements proceeding through mini-waterfall cycles of
analysis, design, and coding. It is easier to estimate the expected size and productivity of each
increment
Time and materials
or Cost-
reimbursable
Predictive-
with-
modifications
Evolutionary Each “pass” is estimated separately, using size (ESLOC or FP) and other relevant cost drivers for
that pass. In this paradigm, the expected size and productivity of each pass or prototype is closely
tied to previous passes, depending on the feedback received for that pass. Therefore, creative
approaches to estimating later passes is needed.
Time and materials
or Cost-
reimbursable
Predictive-
with-
modifications
Spiral Similar to the Evolutionary paradigm in that cost drivers for each spiral will usually be dependent
on results/analysis of the previous spiral. However, in this paradigm the unique development
activities for each spiral need to be considered, as well as the additional risk and opportunity
assessment and planning effort associated with this paradigm. Size is ESLOC or FP.
Time and materials
or Cost-
reimbursable
Agile Iterative /
Scrum
Sprints are time-boxed, fixed-duration, full-development cycles that ideally, result in working
software at the end of each sprint. Size and productivity are fluid compared to other paradigms
and emerge as development progresses, rather than being predictable at the onset. Estimating
cost and schedule are more difficult than for waterfall due to a lack of relevant and comparable
historical data, and scope flexibility. Estimates based on relative average effort per sprint or
average person hours per sprint, but consistency issues abound. Highly flexible, (but difficult to
estimate.) Minimum viable product (MVP) size may be estimated from a statement of objectives
(SOO) or technical baseline, if available.
Time and materials
or Cost-
reimbursable
Part
predictive/
part agile
Hybrid-agile No standard definition of a hybrid-agile method, but typically consists of a variation of:
1. a formal, upfront, waterfall-like requirements phase to fix the high-level scope;
2. a series of partial-scrum-like build iterations (consisting of analysis, design and coding phases);
3. followed by a waterfall-like testing phase. Estimate based on
Once the development in step 2 begins, cost and schedule are fixed and delivered software size
Fixed price with
incentives or time
and materials
Agile paradigm:
overview (1 of 2)
• Stresses iterative and incremental development
and evolution of requirements  Change-driven
• Agile  an umbrella term for a suite of methods
and practices based on values of the Agile
Manifesto1
• Individuals and interactions over processes and
tools
• Working software over comprehensive
documentation
• Customer collaboration over contract negotiation
• Responding to change over following a plan
• Works well with smaller teams, interim products,
highly engaged customers
21
Adapted from www.agilealliance.org
Agile versus waterfall: overview1 (1 of 3)
22
1. AGILE ASSESSMENT GUIDE Best Practices for Agile
Adoption and Implementation, September 2020 GAO-20-
Differentiator Agile methods Predictive methods
Focus of work Change-driven based on product value:
fixed time and cost, estimated scope
Project plan: fixed scope, estimated cost and
duration
Frequency of
deployment
Iterative, early & frequent (2-3 weeks) One big release (end of project)
Quality Continuous inspection and testing during
every iteration (impact on rework)
Testing phase inspects out poor quality at the
end (impact on rework)
Customer involvement Co-located, daily review via product owner
owner
Interaction with customers at beginning and
end
Risk of changing
requirements
Minimizes risk by engaging customer to
prioritize requirements to be developed
first
Fixed requirements with high risk due to
incomplete or incorrect requirements or change
change
Development teams Self-organized, may split effort between
Development and Operations
Hierarchical or matrix, fully dedicated to
development
Operations and Security
Security Considerations
With DevSecOps, continuous deployment,
deployment, continuous testing during
development. Can reduce integration costs
costs
Little to no consideration of operations or
security during development. Separate teams.
Operations and security concerns handled post-
post-development
Prototypical contract
type(s)
Time and materials (T&M) or cost-
reimbursable
Firm fixed price (FFP) or fixed price with
incentives 23
Agile versus waterfall: overview (2 of 3)
Adapted from https://www.process.st/waterfall-vs-
agile/
24
Agile versus waterfall: overview (3 of 3)
Topic Agile Predictive / waterfall Hybrid-agile (Partly predictive/partly agile)
agile)
Fixed Cost & schedule Scope (requirements) Initial high-level scope fixed, but is flexible to
prioritization and change during development
Estimated Scope (features) Cost & schedule Cost & schedule initially estimated, but
becomes fixed during development
Driver Change-driven Plan-driven Hybrid
Development
risks1
Cost & schedule mostly fixed.
Delivered size may fall short
Scope fixed  cost & schedule
overruns
Cost & schedule mostly fixed during build.
Delivered scope may fall short
Agile paradigm:
Iterative development (2 of 2)
Advantages:
 Adaptable and embraces change
 Prioritizes customer satisfaction and communication
 Focus on business need and business value
 Sustainable development pace
Disadvantages:
 Not structured enough for architecture design or re-design work
 May need to be combined with waterfall model to fit organizational needs
Appropriate when:
 Requirements are not well known upfront
 Flexibility and responsiveness to changing requirements are important
25
The next slides  look at 6 modern agile frameworks +
hybrids
Agile concepts and software estimating1 (1
of 2)
26
WORK
LEVEL
AGILE
DELIVERABLE
ESTIMATION
TYPE
LEVEL SOURCE OF
ESTIMATING
DATA
Organiza
tion
TYPE OF
ESTIMATE
???
Epics Solutions Long-term Portfolio Portfolio
backlog
Value
streams
Budget
indication /
Size-based
S/W
Cost
estimato
r
Features /
Capabilitie
s
Solution Long-term Solution Solution
Backlog
Value
stream
Budget
assignment
to value
stream
S/W
Cost
estimato
r
Features Releases Mid-term
(2-3
months)
Product
Manage
ment
Program
Backlog
Release
Train
Story point
based; Size
/ Effort
based
S/W
Cost
estimato
r
User
Stories
Release Short-term
(2-3 weeks)
Team Team Backlog Iteration
s
Story point
based
Dev
Team
1. Table prepared by Eric van Vliet, CGI Netherlands
Source: GAO-20-590G GAO Agile Assessment
Guide, 2020 Page 126
• Consistent sizing is
critical for software
cost estimating
• SLOC and Function
Points can be used for
software development
estimates AND life
cycle cost estimates
(LCCE)
C.1 Software sizing considerations (4 of 5)
Agile: Consistent sizing vs Relative Sizing
27
• Original size may be based on high-level estimate of product or release
backlog
• If estimate based on past project velocity, uncertainty with size
compounds
• Agile scope evolves:
• Minimum viable product (MVP) size may grow,
• Content of releases may grow
• Relative effort sizing becomes relevant during project
• Basis of effort, cost and schedule estimate changes
• Cannot fix all three sides of iron triangle
28
Step 4:
Conduct
Sensitivity,
Risk, and
Uncertainty
Analysis
Software Development Growth
3. Agile Scope Growth
Agile Velocity is NOT Productivity
• While Velocity, as a generic term, sounds like efficiency, it is NOT Productivity
• Velocity = Sum of Completed Relative Efforts / 1
• Completed relative effort is the estimated relative effort in story points, of a user story completed during
the sprint;
• 1 represents a single sprint, however the # of hours is variable across sprints, duration is fixed, effort
hours are not
• From GAO Agile Guide: “Beware of self-reporting: … velocity is a measure of the rate
at which the team delivers a user story. It is not comparable from team to team, and
should not be used to distinguish one team from another. It is very easy to show an
increase in velocity without adding value to the program by inflating story point
estimates. In other words, increasing velocity does not always indicate a change in
productivity.”1
• To mitigate inconsistencies related to Velocity  can use Productivity (in standard
sizing units per person hour) for agile projects
29
1. GAO-20-590G GAO Agile Assessment
Guide, page 106

More Related Content

What's hot

Custom Controls in ASP.net
Custom Controls in ASP.netCustom Controls in ASP.net
Custom Controls in ASP.netkunj desai
 
CS8494 SOFTWARE ENGINEERING Unit-2
CS8494 SOFTWARE ENGINEERING Unit-2CS8494 SOFTWARE ENGINEERING Unit-2
CS8494 SOFTWARE ENGINEERING Unit-2SIMONTHOMAS S
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)Er. Shiva K. Shrestha
 
Autosar basics by ARCCORE
Autosar basics by ARCCOREAutosar basics by ARCCORE
Autosar basics by ARCCOREARCCORE
 
Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5Mohammad Faizan
 
Automotive embedded systems part2 v1
Automotive embedded systems part2 v1Automotive embedded systems part2 v1
Automotive embedded systems part2 v1Keroles karam khalil
 
Software architecture design ppt
Software architecture design pptSoftware architecture design ppt
Software architecture design pptfarazimlak
 
Introduction to compiler
Introduction to compilerIntroduction to compiler
Introduction to compilerAbha Damani
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software EngineeringFáber D. Giraldo
 
Software Coding- Software Coding
Software Coding- Software CodingSoftware Coding- Software Coding
Software Coding- Software CodingNikhil Pandit
 
Lecture 8 (software Metrics) Unit 3.pptx
Lecture 8 (software Metrics) Unit 3.pptxLecture 8 (software Metrics) Unit 3.pptx
Lecture 8 (software Metrics) Unit 3.pptxironman427662
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement EngineeringSlideshare
 
Improving software econimics
Improving software econimicsImproving software econimics
Improving software econimicsKalica Wadhwa
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application DevelopmentBenny Skogberg
 
Software management disciplines
Software management disciplinesSoftware management disciplines
Software management disciplinesKuppusamy P
 

What's hot (20)

Software design
Software designSoftware design
Software design
 
Custom Controls in ASP.net
Custom Controls in ASP.netCustom Controls in ASP.net
Custom Controls in ASP.net
 
OOSE-UNIT-1.pptx
OOSE-UNIT-1.pptxOOSE-UNIT-1.pptx
OOSE-UNIT-1.pptx
 
CS8494 SOFTWARE ENGINEERING Unit-2
CS8494 SOFTWARE ENGINEERING Unit-2CS8494 SOFTWARE ENGINEERING Unit-2
CS8494 SOFTWARE ENGINEERING Unit-2
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
software characteristics
software characteristicssoftware characteristics
software characteristics
 
Autosar basics by ARCCORE
Autosar basics by ARCCOREAutosar basics by ARCCORE
Autosar basics by ARCCORE
 
Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5
 
Automotive embedded systems part2 v1
Automotive embedded systems part2 v1Automotive embedded systems part2 v1
Automotive embedded systems part2 v1
 
Software architecture design ppt
Software architecture design pptSoftware architecture design ppt
Software architecture design ppt
 
Introduction to compiler
Introduction to compilerIntroduction to compiler
Introduction to compiler
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software Engineering
 
Software Coding- Software Coding
Software Coding- Software CodingSoftware Coding- Software Coding
Software Coding- Software Coding
 
Lecture 8 (software Metrics) Unit 3.pptx
Lecture 8 (software Metrics) Unit 3.pptxLecture 8 (software Metrics) Unit 3.pptx
Lecture 8 (software Metrics) Unit 3.pptx
 
Requirement Engineering
Requirement EngineeringRequirement Engineering
Requirement Engineering
 
Improving software econimics
Improving software econimicsImproving software econimics
Improving software econimics
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
 
Command Pattern
Command PatternCommand Pattern
Command Pattern
 
An introduction to software engineering
An introduction to software engineeringAn introduction to software engineering
An introduction to software engineering
 
Software management disciplines
Software management disciplinesSoftware management disciplines
Software management disciplines
 

Similar to CEBoK for Software Past Present Future - Megan Jones

Software sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol DekkersSoftware sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol DekkersNesma
 
Ravi_Rajana_Mainframes
Ravi_Rajana_MainframesRavi_Rajana_Mainframes
Ravi_Rajana_MainframesRavi Rajana
 
How should we estimates agile projects (CAST)
How should we estimates agile projects (CAST)How should we estimates agile projects (CAST)
How should we estimates agile projects (CAST)Glen Alleman
 
CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5SIMONTHOMAS S
 
project planning components.pdf
project planning components.pdfproject planning components.pdf
project planning components.pdfsaman Iftikhar
 
Lecture5
Lecture5Lecture5
Lecture5soloeng
 
Critical steps in Determining Your Value Stream Management Solution
Critical steps in Determining Your Value Stream Management SolutionCritical steps in Determining Your Value Stream Management Solution
Critical steps in Determining Your Value Stream Management SolutionDevOps.com
 
Cmgt 410 cmgt410 cmgt 410 education for service uopstudy.com
Cmgt 410 cmgt410 cmgt 410 education for service   uopstudy.comCmgt 410 cmgt410 cmgt 410 education for service   uopstudy.com
Cmgt 410 cmgt410 cmgt 410 education for service uopstudy.comUOPCourseHelp
 
Great news! Executive leadership has reviewed and approved the C
Great news! Executive leadership has reviewed and approved the CGreat news! Executive leadership has reviewed and approved the C
Great news! Executive leadership has reviewed and approved the Cjesseniasaddler
 
Crear wbs para proyectos de software
Crear wbs para proyectos de softwareCrear wbs para proyectos de software
Crear wbs para proyectos de softwareRobert Caraguay
 
Building a Credible Performance Measurement Baseline (v3)
Building a Credible Performance Measurement Baseline (v3)Building a Credible Performance Measurement Baseline (v3)
Building a Credible Performance Measurement Baseline (v3)Glen Alleman
 
Boost Your IT Career with IEEE's Software Engineering Certifications
Boost Your IT Career with IEEE's Software Engineering Certifications Boost Your IT Career with IEEE's Software Engineering Certifications
Boost Your IT Career with IEEE's Software Engineering Certifications Ganesh Samarthyam
 
Stepwise Project planning in software development
Stepwise Project planning in software developmentStepwise Project planning in software development
Stepwise Project planning in software developmentProf Ansari
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycleshubhamkumar2004
 
Software Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer ScienceSoftware Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer ScienceArti Parab Academics
 
Earned Value + Agile = Success
Earned Value + Agile = SuccessEarned Value + Agile = Success
Earned Value + Agile = SuccessGlen Alleman
 
Lect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost EstimationLect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost EstimationMubashir Ali
 
(Worthy & Heatley Networking Kimberly N. WorthyCIS 4.docx
(Worthy & Heatley Networking Kimberly N. WorthyCIS 4.docx(Worthy & Heatley Networking Kimberly N. WorthyCIS 4.docx
(Worthy & Heatley Networking Kimberly N. WorthyCIS 4.docxmercysuttle
 

Similar to CEBoK for Software Past Present Future - Megan Jones (20)

Software sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol DekkersSoftware sizing the cornerstone for iceaa's scebok - Carol Dekkers
Software sizing the cornerstone for iceaa's scebok - Carol Dekkers
 
Ravi_Rajana_Mainframes
Ravi_Rajana_MainframesRavi_Rajana_Mainframes
Ravi_Rajana_Mainframes
 
How should we estimates agile projects (CAST)
How should we estimates agile projects (CAST)How should we estimates agile projects (CAST)
How should we estimates agile projects (CAST)
 
CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5CS8494 SOFTWARE ENGINEERING Unit-5
CS8494 SOFTWARE ENGINEERING Unit-5
 
project planning components.pdf
project planning components.pdfproject planning components.pdf
project planning components.pdf
 
Lecture5
Lecture5Lecture5
Lecture5
 
Critical steps in Determining Your Value Stream Management Solution
Critical steps in Determining Your Value Stream Management SolutionCritical steps in Determining Your Value Stream Management Solution
Critical steps in Determining Your Value Stream Management Solution
 
Cmgt 410 cmgt410 cmgt 410 education for service uopstudy.com
Cmgt 410 cmgt410 cmgt 410 education for service   uopstudy.comCmgt 410 cmgt410 cmgt 410 education for service   uopstudy.com
Cmgt 410 cmgt410 cmgt 410 education for service uopstudy.com
 
Great news! Executive leadership has reviewed and approved the C
Great news! Executive leadership has reviewed and approved the CGreat news! Executive leadership has reviewed and approved the C
Great news! Executive leadership has reviewed and approved the C
 
Cost estamition
Cost estamitionCost estamition
Cost estamition
 
Crear wbs para proyectos de software
Crear wbs para proyectos de softwareCrear wbs para proyectos de software
Crear wbs para proyectos de software
 
Building a Credible Performance Measurement Baseline (v3)
Building a Credible Performance Measurement Baseline (v3)Building a Credible Performance Measurement Baseline (v3)
Building a Credible Performance Measurement Baseline (v3)
 
Boost Your IT Career with IEEE's Software Engineering Certifications
Boost Your IT Career with IEEE's Software Engineering Certifications Boost Your IT Career with IEEE's Software Engineering Certifications
Boost Your IT Career with IEEE's Software Engineering Certifications
 
Stepwise Project planning in software development
Stepwise Project planning in software developmentStepwise Project planning in software development
Stepwise Project planning in software development
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
Software Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer ScienceSoftware Engineering Fundamentals in Computer Science
Software Engineering Fundamentals in Computer Science
 
Earned Value + Agile = Success
Earned Value + Agile = SuccessEarned Value + Agile = Success
Earned Value + Agile = Success
 
DPPM1
DPPM1DPPM1
DPPM1
 
Lect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost EstimationLect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost Estimation
 
(Worthy & Heatley Networking Kimberly N. WorthyCIS 4.docx
(Worthy & Heatley Networking Kimberly N. WorthyCIS 4.docx(Worthy & Heatley Networking Kimberly N. WorthyCIS 4.docx
(Worthy & Heatley Networking Kimberly N. WorthyCIS 4.docx
 

More from Nesma

2024-04 - Nesma webinar - Benchmarking.pdf
2024-04 - Nesma webinar - Benchmarking.pdf2024-04 - Nesma webinar - Benchmarking.pdf
2024-04 - Nesma webinar - Benchmarking.pdfNesma
 
Agile Team Performance Measurement webinar
Agile Team Performance Measurement webinarAgile Team Performance Measurement webinar
Agile Team Performance Measurement webinarNesma
 
Software Cost Estimation webinar January 2024.pdf
Software Cost Estimation webinar January 2024.pdfSoftware Cost Estimation webinar January 2024.pdf
Software Cost Estimation webinar January 2024.pdfNesma
 
Nesma event June '23 - How to use objective metrics as a basis for agile cost...
Nesma event June '23 - How to use objective metrics as a basis for agile cost...Nesma event June '23 - How to use objective metrics as a basis for agile cost...
Nesma event June '23 - How to use objective metrics as a basis for agile cost...Nesma
 
Nesma event June '23 - NEN Practice Guideline - NPR.pdf
Nesma event June '23 - NEN Practice Guideline - NPR.pdfNesma event June '23 - NEN Practice Guideline - NPR.pdf
Nesma event June '23 - NEN Practice Guideline - NPR.pdfNesma
 
Nesma event June '23 - Easy Function Sizing - Introduction.pdf
Nesma event June '23 - Easy Function Sizing - Introduction.pdfNesma event June '23 - Easy Function Sizing - Introduction.pdf
Nesma event June '23 - Easy Function Sizing - Introduction.pdfNesma
 
Automotive Software Cost Estimation - The UCE Approach - Emmanuel Mary
Automotive Software Cost Estimation - The UCE Approach - Emmanuel MaryAutomotive Software Cost Estimation - The UCE Approach - Emmanuel Mary
Automotive Software Cost Estimation - The UCE Approach - Emmanuel MaryNesma
 
The COSMIC battle between David and Goliath - Paul Hussein
The COSMIC battle between David and Goliath - Paul HusseinThe COSMIC battle between David and Goliath - Paul Hussein
The COSMIC battle between David and Goliath - Paul HusseinNesma
 
Succesful Estimating - It's how you tell the story - Amritpal Singh Agar
Succesful Estimating - It's how you tell the story - Amritpal Singh AgarSuccesful Estimating - It's how you tell the story - Amritpal Singh Agar
Succesful Estimating - It's how you tell the story - Amritpal Singh AgarNesma
 
(Increasing) Predictability of large Government ICT Projects - Koos Veefkind
(Increasing) Predictability of large Government ICT Projects - Koos Veefkind(Increasing) Predictability of large Government ICT Projects - Koos Veefkind
(Increasing) Predictability of large Government ICT Projects - Koos VeefkindNesma
 
Agile Development and Agile Cost Estimation - A return to basic principles - ...
Agile Development and Agile Cost Estimation - A return to basic principles - ...Agile Development and Agile Cost Estimation - A return to basic principles - ...
Agile Development and Agile Cost Estimation - A return to basic principles - ...Nesma
 
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...Nesma
 
Project Succes is a Choice - Joop Schefferlie
Project Succes is a Choice - Joop SchefferlieProject Succes is a Choice - Joop Schefferlie
Project Succes is a Choice - Joop SchefferlieNesma
 
Afrekenen met functiepunten
Afrekenen met functiepuntenAfrekenen met functiepunten
Afrekenen met functiepuntenNesma
 
Agile teams get a grip - martijn groenewegen
Agile teams   get a grip - martijn groenewegenAgile teams   get a grip - martijn groenewegen
Agile teams get a grip - martijn groenewegenNesma
 
The fact that your poject is agile is not (necessarily) a cost driver arlen...
The fact that your poject is agile is not (necessarily) a cost driver   arlen...The fact that your poject is agile is not (necessarily) a cost driver   arlen...
The fact that your poject is agile is not (necessarily) a cost driver arlen...Nesma
 
Software sizing as an essential measure past present and future - Dan Galorat...
Software sizing as an essential measure past present and future - Dan Galorat...Software sizing as an essential measure past present and future - Dan Galorat...
Software sizing as an essential measure past present and future - Dan Galorat...Nesma
 
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...Nesma
 
Size matters a lot rick collins - technomics
Size matters a lot   rick collins - technomicsSize matters a lot   rick collins - technomics
Size matters a lot rick collins - technomicsNesma
 
Software estimation challenge diederik wortman - metri
Software estimation challenge   diederik wortman - metriSoftware estimation challenge   diederik wortman - metri
Software estimation challenge diederik wortman - metriNesma
 

More from Nesma (20)

2024-04 - Nesma webinar - Benchmarking.pdf
2024-04 - Nesma webinar - Benchmarking.pdf2024-04 - Nesma webinar - Benchmarking.pdf
2024-04 - Nesma webinar - Benchmarking.pdf
 
Agile Team Performance Measurement webinar
Agile Team Performance Measurement webinarAgile Team Performance Measurement webinar
Agile Team Performance Measurement webinar
 
Software Cost Estimation webinar January 2024.pdf
Software Cost Estimation webinar January 2024.pdfSoftware Cost Estimation webinar January 2024.pdf
Software Cost Estimation webinar January 2024.pdf
 
Nesma event June '23 - How to use objective metrics as a basis for agile cost...
Nesma event June '23 - How to use objective metrics as a basis for agile cost...Nesma event June '23 - How to use objective metrics as a basis for agile cost...
Nesma event June '23 - How to use objective metrics as a basis for agile cost...
 
Nesma event June '23 - NEN Practice Guideline - NPR.pdf
Nesma event June '23 - NEN Practice Guideline - NPR.pdfNesma event June '23 - NEN Practice Guideline - NPR.pdf
Nesma event June '23 - NEN Practice Guideline - NPR.pdf
 
Nesma event June '23 - Easy Function Sizing - Introduction.pdf
Nesma event June '23 - Easy Function Sizing - Introduction.pdfNesma event June '23 - Easy Function Sizing - Introduction.pdf
Nesma event June '23 - Easy Function Sizing - Introduction.pdf
 
Automotive Software Cost Estimation - The UCE Approach - Emmanuel Mary
Automotive Software Cost Estimation - The UCE Approach - Emmanuel MaryAutomotive Software Cost Estimation - The UCE Approach - Emmanuel Mary
Automotive Software Cost Estimation - The UCE Approach - Emmanuel Mary
 
The COSMIC battle between David and Goliath - Paul Hussein
The COSMIC battle between David and Goliath - Paul HusseinThe COSMIC battle between David and Goliath - Paul Hussein
The COSMIC battle between David and Goliath - Paul Hussein
 
Succesful Estimating - It's how you tell the story - Amritpal Singh Agar
Succesful Estimating - It's how you tell the story - Amritpal Singh AgarSuccesful Estimating - It's how you tell the story - Amritpal Singh Agar
Succesful Estimating - It's how you tell the story - Amritpal Singh Agar
 
(Increasing) Predictability of large Government ICT Projects - Koos Veefkind
(Increasing) Predictability of large Government ICT Projects - Koos Veefkind(Increasing) Predictability of large Government ICT Projects - Koos Veefkind
(Increasing) Predictability of large Government ICT Projects - Koos Veefkind
 
Agile Development and Agile Cost Estimation - A return to basic principles - ...
Agile Development and Agile Cost Estimation - A return to basic principles - ...Agile Development and Agile Cost Estimation - A return to basic principles - ...
Agile Development and Agile Cost Estimation - A return to basic principles - ...
 
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...
Resolving Cost Management and Key Pitfalls of Agile Software Development - Da...
 
Project Succes is a Choice - Joop Schefferlie
Project Succes is a Choice - Joop SchefferlieProject Succes is a Choice - Joop Schefferlie
Project Succes is a Choice - Joop Schefferlie
 
Afrekenen met functiepunten
Afrekenen met functiepuntenAfrekenen met functiepunten
Afrekenen met functiepunten
 
Agile teams get a grip - martijn groenewegen
Agile teams   get a grip - martijn groenewegenAgile teams   get a grip - martijn groenewegen
Agile teams get a grip - martijn groenewegen
 
The fact that your poject is agile is not (necessarily) a cost driver arlen...
The fact that your poject is agile is not (necessarily) a cost driver   arlen...The fact that your poject is agile is not (necessarily) a cost driver   arlen...
The fact that your poject is agile is not (necessarily) a cost driver arlen...
 
Software sizing as an essential measure past present and future - Dan Galorat...
Software sizing as an essential measure past present and future - Dan Galorat...Software sizing as an essential measure past present and future - Dan Galorat...
Software sizing as an essential measure past present and future - Dan Galorat...
 
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
A benchmark based approach to determine language verbosity - Hans Kuijpers - ...
 
Size matters a lot rick collins - technomics
Size matters a lot   rick collins - technomicsSize matters a lot   rick collins - technomics
Size matters a lot rick collins - technomics
 
Software estimation challenge diederik wortman - metri
Software estimation challenge   diederik wortman - metriSoftware estimation challenge   diederik wortman - metri
Software estimation challenge diederik wortman - metri
 

Recently uploaded

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 

Recently uploaded (20)

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 

CEBoK for Software Past Present Future - Megan Jones

  • 1. Cost Estimating Body of Knowledge - Software: past, present, and future Megan Jones Eric van der Vliet
  • 2. Introduction • ICEAA has maintained a Cost Estimating Body of Knowledge (CEBoK) for many years – it serves as the foundation for CCEA/PCEA certification • While there is a CEBoK module on software cost estimating, ICEAA recognizes that • Software is an ever-increasing portion of total systems cost • There are unique aspects of software cost estimating that merit special attention • Recognizing these facts, ICEAA decided to develop a Cost Estimating Body of Knowledge – Software (SCEBoK) and plans to finish the initial version in late 2022 • This briefing provides an overview of CEBoK-S
  • 3. Why is Software Cost Estimating Important? Software is increasingly embedded (in everything)
  • 4. 2016-2018 2015: Established the Software Cost Estimation Training and Certification Steering Committee with ICEAA, Nesma, and IFPUG 2016: Started the Software Certification Curriculum Working Group in 2016 to identify important topics, structure a table of contents for a software cost estimating curriculum 2017: First appearance of the content that would become the Software Cost Estimating Body of Knowledge. Seven software estimation training sessions featured at the ICEAA Professional Development & Training Workshop In Portland, Oregon, USA 2018: 14 Software CEBoK Training offerings at the 2018 ICEAA Workshop
  • 5. 2019 ICEAA and Nesma sign a MOU committing to continue the project 16 Software CEBoK training offerings at the 2019 ICEAA Workshop The same training is offered October 2019 at the IWSM-Mensura Conference in Haarlem, Netherlands ICEAA begins negotiating contracts to accelerate the effort using paid vs. volunteer contributions ICEAA has partners with the U.S. Defense Acquisition University (DAU) to use their existing course materials, known as BCF-250: Software Cost Estimating, as one of the foundations for SCEBoK
  • 6. 2020 ICEAA partners with the U.S. Defense Acquisition University (DAU) to use their existing software cost estimating course materials as one of the foundations for SCEBoK (along with previously-presented software training slides and other sources) Establishes the ICEAA SCEBoK Review Group (ISRG) to collaborate and best develop an industry and globally accepted product Contracts a project manager to integrate the source material with ISRG feedback and to create a written, readable SCEBoK body of knowledge and a series of PowerPoint slides to use when training SCEBoK content Re-brands as Cost Estimating Body of Knowledge-Software (CEBoK-S) to reduce confusion between CEBoK and SCEBoK
  • 7. Expected Rollout: Late 2022 • First edition will be in PowerPoint format • Will be available for learning and instructing • ICEAA is preparing a standalone specialty certification for Software Cost Estimating, due in 2023 • Eventual goal is to offer an online narrative-format body of knowledge
  • 8. CEBoK-S Target Audiences  Commercial organizations  Original Equipment Manufacturers (OEMs)  Government organizations  Consulting firms  Quasi-government organizations (e.g., Federally Funded Research & Development Centers)  Academic institutions
  • 9. CEBoK-S Goals CEBoK-S will be developed to:  Provide users with an understanding of software estimating that will compliment and enhance cost estimates and analyses  Factually and objectively present all software sizing methods to allow users to draw their own conclusions about the merits of any given method  Provide guidance to the essential considerations in software cost estimating  Ensure content is not biased towards or focused on the the US Government or US Department of Defense
  • 10. CEBoK-S and CEBoK ® CEBoK-S will be a supplement to ICEAA’s Cost Estimating Body of Knowledge (CEBoK®)  Fundamental cost estimating lessons will not be repeated in CEBoK-S  CEBoK-S should be used in conjunction with CEBoK  References and links will cross between core CEBoK lessons and CEBoK-S modules
  • 11. SCEBoK Lesson Summary Lesson 0: Setting the stage for SCEBoK Lesson 1: Introduction Lesson 2: Software Development paradigms Lesson 3: SCEBoK Five-step Estimating Process Lesson 4: Estimating Custom Software Development Lesson 5: Software Sustainment Lesson 6: Estimating Procured Software Solutions Summary, Templates Lesson Z: Commercial Estimating Models Lesson X: Software Size Lesson Y: Productivity 11
  • 12. Lessons 1--6 Lesson 0: Setting the Stage for CEBoK-S Outline and overview of content Lesson 1: Introduction Why software cost and schedule estimating is important Lesson 2: Software Development Paradigms Explore each software development paradigm with descriptions and considerations
  • 13. Lessons 1-6 Lesson 3: CEBoK-S Five-step Estimating Process Step 1: Develop the scope of the estimate Step 2: Collect and analyze historical data Step 3: Create the software estimate Step 4: Adjust the estimate for risk and uncertainty Step 5: Document and present the estimate
  • 14. Lessons 1-6 Lesson 4: Estimating Custom Software Development • Creating a Software Development Estimate • Software Schedule Estimating Lesson 5: Software Sustainment • Definition of Software Sustainment • Importance of Software Sustainmnet • Cost Estimating Techniques • Software Obsolescence
  • 15. Lessons 1-6 Lesson 6: Estimating Procured Software Solutions • Description of COTS software and its importance • Primary COTS cost drivers • Best practices in COTS projects • Description of ERP and its importance • Primary ERP system cost drivers and estimating techniques
  • 16. Lesson Supplements: X & Y Lesson X: Software Size • Dimensions of software size, methods, and units of measure • Software size consideration Lesson Y: Productivity Lesson Z: Commercial Estimating Models
  • 17. Software-intensive program1 Investment: • Program/project management • Systems engineering • BPR/ Change management • System Development • System Procurement • Hardware (make and/or buy) • Software (buy) • System level integration & test • System deployment/implementation Operations & support (O&S)2 • Help desk/service desk support • Technology refresh/upgrade • System sustainment SCEBoK Lessons 2, 4 SCEBoK Lesson 5 SCEBoK Lesson 6 1. Adapted from Standard IT LCC WBS V5, US Dept of Homeland Security 2. O&S contains continuation of many investment categories + those new ones listed here… See definitions in notes SCEBoK Lesson 6 Software life cycle (example) • Investment • Plan (sourcing, business case, governance) • Develop and/or procure • Custom Software Development • Requirements  implementation • Software procurement • System Integration • Deployment • Software Sustainment SW Changes (Maintenance, Enhancements, Cyber) Recurring Software Licenses Other components (6) End of life A. Review: Drawing the Line between Software Development, Procurement, and Sustainment 17
  • 18. Estimating the Investment Stage of Software Custom software developmen t? Procure or Lease? 2. SaaS Lease Procure 1. COTS Purchase Can only do a Rough Order of Magnitude (ROM) estimate Three major options: COTS products glued together, Enterprise solution, or Data Warehouse?? Multiple COTS Products “glued” together 4. ERP 3. SOA Enterprise Solution Do you know software architectur e ? Refer to Lesson 4: Custom Software Development No Yes C. Identify the Type of Procured Software Solution (1 of 2) 18 No Yes 5. EDW Enterprise Data Warehouse (EDW) Lesson 6: Estimating Procured Solutions Standalone COTS Package(s) Yes No 6. Hybrid – select most appropriate approaches from Lessons 6 and/or 4
  • 19. OPTIMISM Innate bias - Planning Fallacy Project managers are risk-seeking 1 COST, SCHEDULE, TECHNICAL MISALIGNMENT Like a three-legged stool, all need to be consistent in order for a project to balance 2 MOORE’S LAW Exponential growth in technology Paired with projects that take a decade or longer to complete means that either there is a continual requirements update process, or the product is obsolete on delivery 3 BLACK SWANS Unpredictable, rare, unprecedented events that have a huge impact Why Cost and Schedule Growth Occur Numerous Reasons, Both Internal and External “The Non-Secret of Good Cost [and Schedule] Estimating: Don’t Drink the Kool-Aid”-Lawrence Goeller, OSD Cost Analysis Improvement Group 4 LAKE WOBEGON Project managers and staff are not like the children of Garrison Keillor’s fictional town – they are not all above average 5 Source: Christian B. Smart, Solving for Risk Management: Understanding the Critical Role of Uncertainty in Project Management
  • 20. Summary of Development Paradigms and Methods 20 Paradigm Method Estimating Level/Approach Logically Associated Associated contract contract type Predictive/ Plan-driven Waterfall While the CES/WBS may contain activity-level and CSCI-level elements, development effort is usually estimated at the top-level, for the overall software development effort. Any activities not included in the CER/Analogy used for estimating are estimated separately. Firm fixed price (FFP) Predictive- with- modifications Incremental Each increment is estimated separately, using size (ESLOC or FP) and other relevant cost drivers for that increment. Upfront requirements and software testing follow traditional waterfall steps, with incremental portions of software requirements proceeding through mini-waterfall cycles of analysis, design, and coding. It is easier to estimate the expected size and productivity of each increment Time and materials or Cost- reimbursable Predictive- with- modifications Evolutionary Each “pass” is estimated separately, using size (ESLOC or FP) and other relevant cost drivers for that pass. In this paradigm, the expected size and productivity of each pass or prototype is closely tied to previous passes, depending on the feedback received for that pass. Therefore, creative approaches to estimating later passes is needed. Time and materials or Cost- reimbursable Predictive- with- modifications Spiral Similar to the Evolutionary paradigm in that cost drivers for each spiral will usually be dependent on results/analysis of the previous spiral. However, in this paradigm the unique development activities for each spiral need to be considered, as well as the additional risk and opportunity assessment and planning effort associated with this paradigm. Size is ESLOC or FP. Time and materials or Cost- reimbursable Agile Iterative / Scrum Sprints are time-boxed, fixed-duration, full-development cycles that ideally, result in working software at the end of each sprint. Size and productivity are fluid compared to other paradigms and emerge as development progresses, rather than being predictable at the onset. Estimating cost and schedule are more difficult than for waterfall due to a lack of relevant and comparable historical data, and scope flexibility. Estimates based on relative average effort per sprint or average person hours per sprint, but consistency issues abound. Highly flexible, (but difficult to estimate.) Minimum viable product (MVP) size may be estimated from a statement of objectives (SOO) or technical baseline, if available. Time and materials or Cost- reimbursable Part predictive/ part agile Hybrid-agile No standard definition of a hybrid-agile method, but typically consists of a variation of: 1. a formal, upfront, waterfall-like requirements phase to fix the high-level scope; 2. a series of partial-scrum-like build iterations (consisting of analysis, design and coding phases); 3. followed by a waterfall-like testing phase. Estimate based on Once the development in step 2 begins, cost and schedule are fixed and delivered software size Fixed price with incentives or time and materials
  • 21. Agile paradigm: overview (1 of 2) • Stresses iterative and incremental development and evolution of requirements  Change-driven • Agile  an umbrella term for a suite of methods and practices based on values of the Agile Manifesto1 • Individuals and interactions over processes and tools • Working software over comprehensive documentation • Customer collaboration over contract negotiation • Responding to change over following a plan • Works well with smaller teams, interim products, highly engaged customers 21 Adapted from www.agilealliance.org
  • 22. Agile versus waterfall: overview1 (1 of 3) 22 1. AGILE ASSESSMENT GUIDE Best Practices for Agile Adoption and Implementation, September 2020 GAO-20-
  • 23. Differentiator Agile methods Predictive methods Focus of work Change-driven based on product value: fixed time and cost, estimated scope Project plan: fixed scope, estimated cost and duration Frequency of deployment Iterative, early & frequent (2-3 weeks) One big release (end of project) Quality Continuous inspection and testing during every iteration (impact on rework) Testing phase inspects out poor quality at the end (impact on rework) Customer involvement Co-located, daily review via product owner owner Interaction with customers at beginning and end Risk of changing requirements Minimizes risk by engaging customer to prioritize requirements to be developed first Fixed requirements with high risk due to incomplete or incorrect requirements or change change Development teams Self-organized, may split effort between Development and Operations Hierarchical or matrix, fully dedicated to development Operations and Security Security Considerations With DevSecOps, continuous deployment, deployment, continuous testing during development. Can reduce integration costs costs Little to no consideration of operations or security during development. Separate teams. Operations and security concerns handled post- post-development Prototypical contract type(s) Time and materials (T&M) or cost- reimbursable Firm fixed price (FFP) or fixed price with incentives 23 Agile versus waterfall: overview (2 of 3)
  • 24. Adapted from https://www.process.st/waterfall-vs- agile/ 24 Agile versus waterfall: overview (3 of 3) Topic Agile Predictive / waterfall Hybrid-agile (Partly predictive/partly agile) agile) Fixed Cost & schedule Scope (requirements) Initial high-level scope fixed, but is flexible to prioritization and change during development Estimated Scope (features) Cost & schedule Cost & schedule initially estimated, but becomes fixed during development Driver Change-driven Plan-driven Hybrid Development risks1 Cost & schedule mostly fixed. Delivered size may fall short Scope fixed  cost & schedule overruns Cost & schedule mostly fixed during build. Delivered scope may fall short
  • 25. Agile paradigm: Iterative development (2 of 2) Advantages:  Adaptable and embraces change  Prioritizes customer satisfaction and communication  Focus on business need and business value  Sustainable development pace Disadvantages:  Not structured enough for architecture design or re-design work  May need to be combined with waterfall model to fit organizational needs Appropriate when:  Requirements are not well known upfront  Flexibility and responsiveness to changing requirements are important 25
  • 26. The next slides  look at 6 modern agile frameworks + hybrids Agile concepts and software estimating1 (1 of 2) 26 WORK LEVEL AGILE DELIVERABLE ESTIMATION TYPE LEVEL SOURCE OF ESTIMATING DATA Organiza tion TYPE OF ESTIMATE ??? Epics Solutions Long-term Portfolio Portfolio backlog Value streams Budget indication / Size-based S/W Cost estimato r Features / Capabilitie s Solution Long-term Solution Solution Backlog Value stream Budget assignment to value stream S/W Cost estimato r Features Releases Mid-term (2-3 months) Product Manage ment Program Backlog Release Train Story point based; Size / Effort based S/W Cost estimato r User Stories Release Short-term (2-3 weeks) Team Team Backlog Iteration s Story point based Dev Team 1. Table prepared by Eric van Vliet, CGI Netherlands
  • 27. Source: GAO-20-590G GAO Agile Assessment Guide, 2020 Page 126 • Consistent sizing is critical for software cost estimating • SLOC and Function Points can be used for software development estimates AND life cycle cost estimates (LCCE) C.1 Software sizing considerations (4 of 5) Agile: Consistent sizing vs Relative Sizing 27
  • 28. • Original size may be based on high-level estimate of product or release backlog • If estimate based on past project velocity, uncertainty with size compounds • Agile scope evolves: • Minimum viable product (MVP) size may grow, • Content of releases may grow • Relative effort sizing becomes relevant during project • Basis of effort, cost and schedule estimate changes • Cannot fix all three sides of iron triangle 28 Step 4: Conduct Sensitivity, Risk, and Uncertainty Analysis Software Development Growth 3. Agile Scope Growth
  • 29. Agile Velocity is NOT Productivity • While Velocity, as a generic term, sounds like efficiency, it is NOT Productivity • Velocity = Sum of Completed Relative Efforts / 1 • Completed relative effort is the estimated relative effort in story points, of a user story completed during the sprint; • 1 represents a single sprint, however the # of hours is variable across sprints, duration is fixed, effort hours are not • From GAO Agile Guide: “Beware of self-reporting: … velocity is a measure of the rate at which the team delivers a user story. It is not comparable from team to team, and should not be used to distinguish one team from another. It is very easy to show an increase in velocity without adding value to the program by inflating story point estimates. In other words, increasing velocity does not always indicate a change in productivity.”1 • To mitigate inconsistencies related to Velocity  can use Productivity (in standard sizing units per person hour) for agile projects 29 1. GAO-20-590G GAO Agile Assessment Guide, page 106