Sizing Your Development Effort Using Function Point Analysis Mike Pasley Logic Central

Slides:



Advertisements
Similar presentations
FPA – IFPUG CPM 4.1 Rules.
Advertisements

Systems Investigation and Analysis
Systems Analysis and Design in a Changing World
Chapter 8: Evaluating Alternatives for Requirements, Environment, and Implementation.
Early Effort Estimation of Business Data-processing Enhancements CS 689 November 30, 2000 By Kurt Detamore.
Planning a software project: Function point analysis. José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática Aplicada.
Requirements Engineering n Elicit requirements from customer  Information and control needs, product function and behavior, overall product performance,
R&D SDM 1 Metrics How to measure and assess software engineering? 2009 Theo Schouten.
Software project management (intro)
1 PROJECT SIZING AND ESTIMATING - EFFECTIVELY USING FUNCTIONAL MEASUREMENT Southern California Software Process Improvement.
Requirements Analysis Concepts & Principles
Health Informatics Series
CS 551 Estimation Fall December QSE Lambda Protocol Prospectus Measurable Operational Value Prototyping or Modeling sQFD Schedule, Staffing,
Chapter 1 Assuming the Role of the Systems Analyst
8 Systems Analysis and Design in a Changing World, Fifth Edition.
Information Technology Project Management
The Art and Science of Estimating Software Development Cost Glenn Briskin Partner, Sierra Systems Group A. Nicklas Malik Technical Architect Certified.
Software Metric capture notions of size and complexity.
Copyright © The David Consulting Group, Inc. 1 UNDERSTANDING and EFFECTIVELY USING FUNCTIONAL MEASUREMENT Presented By The David Consulting Group.
AICT5 – eProject Project Planning for ICT. Process Centre receives Scenario Group Work Scenario on website in October Assessment Window Individual Work.
Requirements Analysis
Cmpe 589 Spring Software Quality Metrics Product  product attributes –Size, complexity, design features, performance, quality level Process  Used.
COCOMO Models Ognian Kabranov SEG3300 A&B W2004 R.L. Probert.
Topics Covered: Software requirement specification(SRS) Software requirement specification(SRS) Authors of SRS Authors of SRS Need of SRS Need of SRS.
Chapter 6 : Software Metrics
Function Point Analysis What is Function Point Analysis (FPA)? It is designed to estimate and measure the time, and thereby the cost, of developing new.
This chapter is extracted from Sommerville’s slides. Text book chapter
1 Estimation Function Point Analysis December 5, 2006.
Lecture 4 Software Metrics
1 Chapter 5 Software Project Planning. 2 Software Project Planning The overall goal of project planning is to establish a pragmatic strategy for controlling,
Project Planning and Estimation
Software complexity estimation by Adam Bondarowicz by Adam Bondarowicz.
Function Point Analysis. Function Points Analysis (FPA) What is Function Point Analysis (FPA)? Function points are a standard unit of measure that represent.
SEG3300 A&B W2004R.L. Probert1 COCOMO Models Ognian Kabranov.
Introduction to Software Project Estimation I (Condensed) Barry Schrag Software Engineering Consultant MCSD, MCAD, MCDBA Bellevue.
Estimating “Size” of Software There are many ways to estimate the volume or size of software. ( understanding requirements is key to this activity ) –We.
Effort Estimation In WBS,one can estimate effort (micro-level) but needed to know: –Size of the deliverable –Productivity of resource in producing that.
Functional Size Measurement Methodologies. What is FSM ? Definitions: Functional Size: A size of the software derived by quantifying the Functional User.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 15a: Product Metrics for Software Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Software Engineering (CSI 321) Project Planning & Estimation 1.
CSE SW Project Management / Module 13 - Function Points and Related Methods Copyright © , Dennis J. Frailey, All Rights Reserved CSE7315M13.
540f07cost12oct41 Reviews Postmortem u Surprises? u Use white background on slides u Do not zip files on CD u Team leader should introduce team members.
FUNCTION POINT ANALYSIS & ESTIMATION
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 SYS366 Week 1 - Lecture 1 Introduction to Systems.
Software Project Management
Requirement Elicitation Review – Class 8 Functional Requirements Nonfunctional Requirements Software Requirements document Requirements Validation and.
Chapter 1 Assuming the Role of the Systems Analyst.
 System Requirement Specification and System Planning.
Cost9b 1 Living with Function Points Bernstein and Lubashevsky Text pp
Estimation Questions How do you estimate? What are you going to estimate? Where do you start?
Cost23 1 Question of the Day u Which of the following things measure the “size” of the project in terms of the functionality that has to be provided in.
Internal Logical Files (ILF) An internal logical file (ILF) is a user identifiable group of logically related data or control information maintained within.
Systems Analysis and Design in a Changing World, Fifth Edition
Alternative Software Size Measures for Cost Estimation
Testing Techniques.
RET Rules One of the following rules applies when counting RETs:
Overview of MDM Site Hub
Systems Analysis – ITEC 3155 Evaluating Alternatives for Requirements, Environment, and Implementation.
Function Point Analysis
Mk II Function Point Analysis
Alternative Software Size Measures for Cost Estimation
Personal Software Process Software Estimation
Function Point.
Chapter 5: Software effort estimation- part 2
Software Metrics “How do we measure the software?”
More on Estimation In general, effort estimation is based on several parameters and the model ( E= a + b*S**c ): Personnel Environment Quality Size or.
COCOMO Models.
Software Sizing and Costing
COCOMO MODEL.
Presentation transcript:

Sizing Your Development Effort Using Function Point Analysis Mike Pasley Logic Central

Function Point Analysis C/S Order Entry System Proposal: planned budget-$100k, schedule- 18 Mos Common scenario: $150k, 24Mos –Pre-release bug fixes: $50k –Post-release bug fixes: $25k Unhappy Customers, sales personnel Going to competition Lost Business: another $200k

Function Point Analysis C/S Order Entry System Does Not Have To Be That Way!! Other companies, same application –$75k or less, 16 Mos –All Defect Removal: $15k What are they doing differently? –5 Steps to Software Quality Control (Applied Software Measurements - Capers Jones)

Function Point Analysis 5 Steps Establish Software Quality Metrics Program Establish Tangible Performance Goals Establish Meaningful Software QA Develop Leading Edge Corporate Culture Determine SW Strengths & Weaknesses Where to begin?

Function Point Analysis How would you build a house?

Function Point Analysis What Is Function Point Analysis? Synthetic metrics derived from enumerating and weighing five external attributes of software applications: –Inputs –Outputs –Inquiries –Internal Logical Files –External Interface Files Plus Factor: index of system's overall complexity

Function Point Analysis What Is Function Point Analysis? Function points are indicators of size based on the 'logical' view of a piece of software. Make it possible to measure the size of information systems according to what the user sees and interacts with –Quantify functionality delivered to user based primarily on logical design

Function Point Analysis Summary of Benefits Scheduling, effort, cost estimates –Easier –Greater Accuracy Improves communications, sharpens management judgement, improves development process GUI, Algorithms, Objects

Function Point Analysis Who Needs Function Points Anyone who has responsibility for estimating and sizing software or measuring productivity Anyone who is responsible for setting and meeting customer expectations for software projects

Function Point Analysis FPA fits Engineering Method Use of heuristics (a decision-making aid) to cause the best change in a poorly understood system given available resources

Function Point Analysis Engineering Method Steps Identify Problem Gather Information Search for Creative Solutions Do Preliminary Design Select Preferred Solution Prepare plans, specifications, reports Implement

Function Point Analysis Agenda Fundamentals Involved: 20 Minutes Simple Example: 10 Minutes Using Results: 10 Minutes Current Issues: 5 Minutes Reference Materials: 5 Minutes Questions & Answers: 10 Minutes

Function Point Analysis Development Goals Software should be completed Software should work

Function Point Analysis Relationship Goals Clients should be satisfied Developers should be satisfied Clients/Developer relationship should be trusting, respectful

Function Point Analysis Connections If everyone understands size of project, all parties will work better together Three blind men/elephant effect: –One near the tail described it as a snake –One near the leg described it as a tree trunk –One near the side described it as a wall –Each description gives an accurate picture of some aspects of the elephant, but a false picture of the elephant as a whole.

Function Point Analysis User Viewpoint Productivity: “Goods or services produced per unit of labor or expense” Customers do not buy lines of code Customers care about functionality Focus: “What” is being delivered without clouding the issue with “how” it is being done. –User business function and exists for business reasons not just for technical or design reasons

Function Point Analysis Terminology Application Boundary Inputs Outputs Inquiries Internal Logical Files External Interface Files

Function Point Analysis Application Boundary Drawn around entire application External Interface Files Internal Logical Files Inquiries InputOutput Boundary

Function Point Analysis External Inputs (EI) An elementary process in which data crosses the boundary from outside to inside. –Data input screen –Electronically –Another application –Business data: does update internal logical file –Control data: does not update internal logical file

Function Point Analysis External Outputs (EO) An elementary process in which derived data passes across the boundary from inside to outside. –Creates reports –Creates output files sent to other applications –Created from internal logical files/external interface file

Function Point Analysis External Inquiries (EQ) An elementary process with both input and output components that result in data retrieval from one or more internal logical files and external interface files Sent outside the application boundary –Input process does not update ILF –Output side does not contain derived data

Function Point Analysis Internal Logical Files A User identifiable group of logically related data that entirely within the applications boundary and is maintained through External Inputs

Function Point Analysis External Interface Files (EIF) A User identifiable group of logically related data that is used for reference purposes only. –Resides entirely outside application –Maintained by another application –It is an ILF for another application

Function Point Analysis Application Boundary Drawn around entire application External Interface Files Internal Logical Files Inquiries InputOutput Boundary

Function Point Analysis General System Characteristics Data communications Distributed functions Perfomance objectives Heavily used configuration Transaction rate On-line data entry End-user efficiency On-line update Complex processing Reusability Installation ease Operational ease Multiple sites Facilitate change

Function Point Analysis Complexity of Files Data Element Type (DET) A unique user recognizable field from a business perspective which participates in a transaction or is stored on a logical data file. –Includes radio buttons, check boxes, command buttons, static images, and sound bytes Record Element Type (RET) –A user recognizable subgroup of data elements within an ILF or EIF. (orders types)

Function Point Analysis Determining File Complexity

Function Point Analysis Complexity of Transactions The complexity of an transaction is determined by counting the number of logical File Types Referenced (FTRs) and the number of Data Element Types.

Function Point Analysis Complexity of Outputs

Function Point Analysis Complexity of Inputs

Function Point Analysis Complexity of Inquiries Determined by using the more complex of its input and output components (usually this is the output component).

Function Point Analysis The total function points for the system are then determined by counting the number of elements with each type and complexity and applying a weighting factor according to the following table:

Function Point Analysis

File Complexity

Function Point Analysis Transaction Complexity

Function Point Analysis The total function points for the system are then determined by counting the number of elements with each type and complexity and applying a weighting factor according to the following table:

Function Point Analysis Results Unadjusted total: 29 function points Total then adjusted by a ranking of 0 to 5 to each of the 14 general system characteristics Maximum possible score of 70 for the general system characteristics (5 x 14). Formula: [.65 + (.01 x GCS score)] * Unadjusted Total Count can vary a maximum of 35% above or below the unadjusted count

Function Point Analysis Results Do The Sanity Check!!! –Validate Results Team Review All Components Included? User Viewpoint Only

Function Point Analysis Summary User Viewpoint Application Boundary –Transactions Inputs Outputs Inquiries –Files Internal External

Function Point Analysis User Viewpoint Productivity: “Goods or services produced per unit of labor or expense” Customers do not buy lines of code Customers care about functionality Focus: “What” is being delivered without clouding the issue with “how” it is being done. –User business function and exists for business reasons not just for technical or design reasons

Function Point Analysis Application Boundary Drawn around entire application External Interface Files Internal Logical Files Inquiries InputOutput Boundary

Function Point Analysis Benefits of Function Points Scheduling, effort, cost estimates Effects on communications, sharpens management judgement, improves development process GUI, Algorithms, Objects

Function Point Analysis Gather Documentation Users’ perceived objectives, problems and needs. Documentation regarding the current system, Refined objectives and constraints for the proposed system. Requirements documentation All Window and Report Layouts Interfaces with other systems Logical and/or preliminary physical data models

Function Point Analysis Economic Applications Production –FP per person-month –Work/hrs per FP –$Dev per FP –$Maint per FP Consumption –FP owned by enterprise –FP needed by end users –Build, lease, or purchase –Contract vs In- House –Value Analysis u Quality Test cases per FP Defects discovered per FP Defect Potential per FP Defect Removal per FP

Function Point Analysis Issues Too prone to human misinterpretation –the use of certification programs and exams has narrowed the range of counting variance to within about 10 percent. Too labor-intensive –automated counting tools Not adequate for non- business information systems –consumer devices, real -time, embedded –Continually revised, adapted (feature points, Engrg, object, etc) Standardization –20 variations, IFPUG dominant –International Standards Organization

Function Point Analysis Where to get more information and presentation references Int’l Function Point User Group ( Software Productivity Research ( Longstreet Consulting ( Geneer ( Capers Jones Books on Software Quality –Software Quality, Analysis & Guidelines –Applied Software Measurement

Function Point Analysis Questions ????

Function Point Analysis Contact Information Mike Pasley Address: Logic Central Web Page: