Effective Use of Function Points for Analogous Software Estimation

Similar documents
2011 SCEA Conference Presentation Function Point Analysis: One Size Fits All

INDEX. As-is analysis, tool supporting, 302 Attributes, FPA, Availability, software contract requirement, 258

Introduction to Function Points

Presented at the 2013 ICEAA Professional Development & Training Workshop -

Information Technology Project Management. Copyright 2012 John Wiley & Sons, Inc.

NYS Forum Project Management Work Group Presents

CSSE 372 Software Project Management: Software Estimation Fundamentals

Why SNAP? What is SNAP (in a nutshell)? Does SNAP work? How to use SNAP when we already use Function Points? How can I learn more? What s next?

SELECTION OF DIRECT AND DERIVED FUNCTION POINT ESTIMATION METHODS

Wave of the Future: Function Point Sizing & COTS Support

CMMI and FPA. the link and benefit of using FPA when rolling out CMMI. Christine Green IFPUG - Certified Function Point Specialist EDS

What Function Points Are and Are Not

LEVERAGE EARNED VALUE MANAGEMENT WITH FUNCTION POINT ANALYSIS

Agile Software Development Cost Risk for Information Technology Programs

We prefer Facts to Stories

If necessary, adjust the language of the virtual conference room in the toolbar located in top right hand corner

Chapter 5: Software effort estimation- part 2

Boundaries, Boundaries Everywhere!

DOCUMENTING FUNCTION POINT MEASUREMENTS. By Thomas Stein CFPS, CPA, CDFM

A public Benchmark Repository The added value of the ISBSG Ton Dekkers April 2008

Software Project Management. Software effort

Don t Leave Home Without Your SOX!

Q/P Management Group, Inc.

Guerrilla Metrics To Survive Changing Administrations

The Zero Function Point Problem

Estimation Practices Understanding Software Size

Control Enhancement Projects based on Size Measurement

Software Size and Effort Estimation. Dr. Aleš Živkovič, CISA, PRINCE 2

First, a detailed description of function points Then, how to use function points and lines of code for cost estimation.

A Cost Model for Early Cost Calculation of Agile Deliveries

utip - Early Function Point Analysis and Consistent Cost Estimating

Saved by Facts! What Gets Measured, Gets Done. Pierre Almén, ImproveIT Fact-Based IT Improvements

Leadership Lessons from Agile and PMI s PM-2. Tim Kloppenborg, PhD, PMP Marcie Lensges, PhD

Effective Software Sizing A Galorath Web Seminar 01 September 2004

Risks Associated to Size Estimation of E-Commerce System using Function Point based Estimation Techniques

BASIS OF ESTIMATE AS APPLIED FOR THE SOFTWARE SERVICES INDUSTRIES TCM Framework: 7.3 Cost Estimating and Budgeting

Software Quality Management

Webinar: Agile Estimation Using Functional Metrics Revisited

Estimate and Measure Agile Projects with Function Points

HOW GOOD AN ESTIMATION PROCESS?

Software Cost Estimating Body of Knowledge

Scaled agile deliveries; do we still need estimates? ICEAA Workshop 2018

Copyright Total Metrics

Software Project Management

SYED AMMAL ENGINEERING COLLEGE (An ISO 9001: 2008 Certified Institution)

Personal Software Process SM for Engineers: Part I

Figure 1 Function Point items and project category weightings

Proposing New Model for Effort Estimation of Mobile Application Development

Using Software Measurement in SLAs:

Changing from FPA to COSMIC A transition framework

Software sizing the weakest link in estimating?

Managing Agile at Scale

Establishing a Requirements Baseline by Functional Size Measurement Patterns

Functional Size Measurement Revisited. Cigdem Gencel 1 Onur Demirors 2. Abstract

Managing a Large Agile Software Engineering Organization. Paul Beavers BMC Software

Project Tracking Using Functional Size Measurement

Received on: Accepted on: Abstract

Agile Essentials Track: Business Services

From requirements to project effort estimates work in progress (still?)

Should Function Point Elements be Used to Build Prediction Models?

Function Point Analysis and Agile Methodology

Software Project Planning The overall goal of project planning is to establish a pragmatic strategy for controlling, tracking, and monitoring a comple

Are we measuring the right thing?

A Function Point Overview with Potential Application in Systems Engineering

Becoming More Agile: How to Adopt Agile Development Methodology

IMPROVE YOUR ESTIMATION MATURITY USING FUNCTIONAL SIZE MEASUREMENT AND INDUSTRY DATA

Using Business Analysis to Meet IT Challenges. UW Tech Talks February 14, 2018 Piet Niederhausen, Enterprise Business Architect, UW-IT

VANCOUVER Chapter Study Group. BABOK Chapter 6 Requirements Analysis

73R-13: Basis of Estimate

The value of professional training...

Create Cost Savings Using Size Measure

Establishing & Managing the Project Management Office PMO VALUE RING CERTIFIED PRACTITIONER

An Empirical Validation of Mobile Application Effort Estimation Models

Optimizing Your Finance Function

Producing Production Quality Software Lecture 14: Group Programming Practices Data Prof. Arthur P. Goldberg Fall, 2005

Spelunking Tools - Phoenix IEEE-CS May 3, Dan Houston, Ph.D. Estimation Techniques for Software Projects

PMI Agile Certified Practitioner (PMI-ACP) Duration: 48 Hours

Information Technology Estimation & Measurement

Software Estimation. Estimating Software Size

MTAT Software Economics. Session 6: Software Cost Estimation

Software Engineering in the Agile World. Table of contents

Project Risk Management (PRM)

Headquarters U.S. Air Force

Managing Risk in Agile Development: It Isn t Magic

Robin Yeman IS&GS Agile Transformation Lead ASPIRE. Lockheed Martin Business Unit Phone:

Éxito del Modelo de Productividad en Brasil (English Version)

Agile and Automated Testing. Helmut Steineder JIPP.IT GmbH 2015

Early Lifecycle Estimating for Agile Projects. Raymond Boehm Software Composition Technologies 96 Reids Hill Road Aberdeen, NJ USA

Cloudy skies. How to bring clarity to your cloud platform in order to optimize your investment. September 2016

Estimation - The Next Level

Functional Sizing in Brazil Mauricio Aguiar

Understanding Agile from a PMP s Perspective! Exploding the myth that Agile is not in the PMBOK

Software Estimation Inside Out. Tabinda Aftab Ephlux. White Paper

4-3 Software Measurement

From Estimate to Project Plan Daniel Horvath

DELIVER SOLUTION. Predictive versus Adaptive Approaches. Predictive Approach

SENG380:Software Process and Management. Software Size and Effort Estimation Part2

Annotation of Function Point Model over Size Estimation

From performance measurement to project estimating using COSMIC functional sizing

The Monitoring and Early Warning Indicators for a software project

Transcription:

Effective Use of Function Points for Analogous Software Estimation Dan French, PMP, CFPS, CSM Principal Consultant dfrench@cobec.com 202-827-1316 www.cobec.com

Agenda -Introduction -Definition of Analogous Estimation -Advantages and Disadvantages of Analogous Estimates -Best and Worst Times to Use the Analogous Estimation Technique -Common Mistakes Made -Proper Application of the Analogues Estimation Technique -Challenges of Using Software Lines of Code (SLOC) -What are Function Points (FP) -Background of Function Points -Why Function Points are preferable to SLOC when performing Analogous Estimating -Organizational Infrastructure Needed to Support Good Analogous Estimating -Sources of Information -Conclusion 2

Introduction B.S. in Economics from Virginia Tech Graduate of the Chubb Institute Top Gun Program Over 15 years experience in software cost estimation Counting function points for 17 years and been a Certified Function Point Specialist (CFPS) for 15 years Experience in a number of estimation techniques and tools including SEER-SEM, COCOMO, SLiM, Delphi, and Estimating by Analogy Chairman of the International Function Point Users Group (IFPUG) Functional Software Sizing Committee (FSSC) Former member of the IFPUG Conference Committee for 5 years GAO Cost Guide expert team member Project Management Institute (PMI) Project Management Professional (PMP) Agile Alliance Certified SCRUM Master (CSM) 3

What is an analogous estimate Analogous estimating is a technique which uses the values of parameters from historical data as the basis for estimating the same or similar parameter for a future activity. Example of parameters include scope, cost, duration or they could be measures of scale like size, weight or complexity. 1 1 http://www.projectmanagementlexicon.com/analogous-estimating/ 4

Advantages of Analogous Estimates It can be used early in the software development life cycle, even when detailed program requirements are unknown Can be developed quickly and economically Does not require significant amount of skill to create Easily understood by decision makers and other stakeholders If properly done, the estimate is defensible 5

Disadvantages of Analogous Estimates Appropriate analogous program may be difficult to find Lack of or inaccurate historical data High degree of subjectivity Higher degree of uncertainty and risk than more rigorous estimation methodologies Over confidence in similarity of selected program and resulting estimate Difficulty in assessing key factors that influence adjustments to project 6

Best and Worst Times to Use Best: Early in the project (Initiation analysis phase) When accurate and appropriate project actuals data is available, preferably organizational Good understanding of the desired high-level system functionality Clear understanding of differences between project being estimated and selected analogy Worst: Anytime none of the above apply 7

Most Common Mistakes Using Analogous Estimates Use of aged actuals data (>5 years) Lack of technically or functionally appropriate program Selecting the wrong analogous program Improperly, or not bothering to, adjusting the estimate based on differences between the selected program and the estimated program Not using software size as the key comparative factor Using SLOC as the software size comparative factor Using estimate data from another project estimate 8

Proper Application of the Analogous Estimation Technique What is required to do a good, defensible and reliable analogous estimate? 1. Accurate project actuals data in an accessible project database 2. Requirements to a sufficient level of detail that the project can be appropriately matched 3. Proper adjustment of analogous project data 9

Project Data Typical project metrics captured for use in estimation include: Size (FP, Story Points, Cosmic FP, Use Case Points, SLOC) Effort (hours, person-months, FTEs) Duration (day, months) Cost Staff (headcount) Computer Resources (CPU, Workstations, Servers, bandwidth) Date 10

Requirements Requirements don t have to be highly detailed to do an analogous estimate but they should be of sufficient detail and quality that: They are verifiable and testable Provide sufficient understanding of desired system functionality Are good quality (no negative requirements) 11

Adjustments Adjustment are the critical and most challenging part of analogous estimating: They should reflect the differences between the estimated project and the target analogy Include factors such as platform, software language, team experience, development tools, development environment, and development methodology Don t rely on one person, make the adjustments using inputs from multiple SMEs 12

Challenges of Using Software Lines of Code (SLOC) No defined counting rules or standards organization Language and platform dependent Inconsistent rules mean there is no reliable and verifiable industry data Penalizes efficient software writing, incentivizes poor coding Heavily dependent upon developer skill and style Difficult to estimate early in lifecycle Function Points address and overcome these challenges 13

What are Function Points (FP)? Function Points are a unit of software size measure Measure the work product of software development Work product is measured in terms of functionality from user perspective Functions points do not measure internal architecture, effort, or technological complexity of an application 14

Function Point History Developed by Allan Albrecht of IBM in 1979 Created as an alternative to Source Lines of Code (SLOC) for measuring software size Counting Rules are established by the International Function Point Users Group (IFPUG) Current version is 4.3.1, Released in January 2010 International Standards Organization (ISO) Standard for software functional sizing (ISO/IEC 20926 SOFTWARE ENGINEERING - FUNCTION POINT COUNTING PRACTICES MANUAL) 15

Why Function Points are Preferable to SLOC When Performing Analogous Estimating Oldest and most utilized functional size metric Codified set of rules Platform and language independent Functional vs. technical viewpoint Can be applied to all software applications More accurate estimation Not dependent upon software developer skill level More consistent and accurate metrics 16

How FP Are More Effective When Used for Analogous Estimates? Size, based on requirements, is the most important factor for cost in software projects- Correlation (r 2 ) ranges between.7 and.8 SLOC does not allow for good comparisons between projects due to: 1. lack of consistent counting rules and standards 2. dependence upon developer skills 3. language and platform variances These factors all add significant uncertainty to any analogous effort. Function points minimize these risks 17

Organizational Infrastructure Needed to Support Good Analogous Estimating Senior management sponsorship and support Identified Key metrics and processes and procedure for data collection Time Tracking at project and preferably task level and accurate time recording Detailed and accurate project cost accouting Dedicated and properly trained Metrics Team responsible for: Regular (typically monthly) data collection Metrics database development and maintenance Process and procedure ownership, enforcement and maintenance 18

Sources of Information These organizations can assist in establishing a metrics program or providing industry data for use until a metrics program is established: International Function Point Users Group (IFPUG) (www.ifpug.org) International Software Benchmark Standards Group (www.isbsg.org) International Cost Estimating and Analysis Association (http://www.iceaaonline.com/) Systems and Software Consortium, Inc. (www.software.org) Software Engineering Institute (SEI) (www.sei.cmu.edu) Vendors : Q/P Management, David Consulting Group, QSM, Longstreet Consulting 19

Conclusions Analogous estimation is a good software estimation technique to use early in the software development lifecycle Must have good data upon which to base estimates Must properly adjust data to develop a good estimate Using function points as the size metric helps reduce risk and uncertainty 20

Additional Information 21

Types of Function Point Counts Function points are used to count both projects and applications There are 3 types of function point counts: Development Project Count of new software (including conversion functionality) Enhancement Project Count of enhancements to existing software functionality (added, changed, or deleted) Application Count of an application installed in production 22

Function Points Transaction Definitions Five Functional Components, 3 Transactional and 2 Data Transaction Functions External Inputs (EI) Batch transaction file, input screen, control information External Outputs (EO) Reports with calculations, output files with derived data External Inquiries (EQ) On-line query screen, interface file with no calculations or derived data Data Functions Internal Logical Files (ILF) Application file, internal database External Interface File (EIF) Reference 23