Presentation is loading. Please wait.

Presentation is loading. Please wait.

Alternative Software Size Measures for Cost Estimation

Similar presentations


Presentation on theme: "Alternative Software Size Measures for Cost Estimation"— Presentation transcript:

1 Alternative Software Size Measures for Cost Estimation
CS 510 Software Management and Economics Fall 2017 Anandi Hira, USC

2 COCOMO Effort Formulation
# of cost drivers Effort (person-months) = A (Size)E P EMi i=1 Where: A is a constant derived from historical project data (currently A = 2.94 in COCOMOII.2000) Size is in KSLOC (thousand source lines of code), or converted from function points or object points E is an exponent for the diseconomy of scale dependent on five additive scale factors according to b = *SSFi, where SFi is a weighting factor for ith scale factor EMi is the effort multiplier for the ith cost driver. The geometric product results in an overall effort adjustment factor to the nominal effort. Fall 2017 ©USC-CSSE

3 Software Estimation Accuracy
4x 2x Relative Size Range x 0.5x SLOC 0.25x Feasibility Plans/Rqts. Design/Architecture Develop and Test Need Estimates Here Phases and Milestones Fall 2017 ©USC-CSSE

4 IFPUG Function & SNAP Points
EI EIF EO EI EO EQ EI – External Input EO – Ext. Output EQ – Ext. Queries ILF – Internal Logical File EIF – External Interface File DET – Data Element Types RET – Record Element Types EQ ILF EI EO EQ Fall 2017 ©USC-CSSE

5 IFPUG Function Points (1/4)
EI – External Input EO – Ext. Output EQ – Ext. Queries ILF – Internal Logical File EIF – External Interface File DET – Data Element Types RET – Record Element Types Complexity for ILFs and EIFs 1 – 19 DETs 20 – 50 DETs > 50 DETs 1 RET Low Average 2 – 5 RETs High > 5 RETs Fall 2017 ©USC-CSSE

6 IFPUG Function Points (2/4)
Complexity for EIs 1 – 4 DETs 5 – 15 DETs > 15 DETs 0 – 1 FTRs Low Average 2 – 3 FTRs High > 3 FTRs Complexity for EOs and EQs 1 – 5 DETs 6 – 19 DETs > 19 DETs 0 – 1 FTRs Low Average 2 – 3 FTRs High > 3 FTRs FTR – File Types Referenced Fall 2017 ©USC-CSSE

7 IFPUG Function Points (3/4)
Fall 2017 ©USC-CSSE

8 IFPUG Function Points (4/4)
New Development Projects Enhancement Projects Total Project after Enhancements Fall 2017 ©USC-CSSE

9 Subcategory Rating Method Complexity Multiplier Factor
IFPUG SNAP Points (1/5) Subcategory Subcategory Rating Method Complexity Multiplier Factor Low Average High Total Data Operations Data Entry Validation # of nesting levels in longest chain 1 – 2 3 – 5 6 + 2 * #DET 3 * #DET 4 * #DET Logical Operations # of File Types Referenced 0 – 3 4 – 9 10 + 6 * #DET 10 * #DET Mathematical Operations 7 * #DET Internal Data Movement Data Configuration # of records configured 1 – 10 11 – 29 30 + 8 * #DET 12 * #DET Fall 2017 ©USC-CSSE

10 Subcategory Rating Method Complexity Multiplier Factor
IFPUG SNAP Points (2/5) Subcategory Subcategory Rating Method Complexity Multiplier Factor Low Average High Total Interface Design User Interface # of properties < 10 10 – 15 16 + 2 * #items 3 * #items 4 * #items Help Methods Help Method type and # of items User Manual Online/Context Online + Context 1 * #items Multiple Input Methods # DETs and # of additional input methods DETs 5-15 DETs 16 + DETs 3 * #meth. 4 * #meth. 6 * #meth. Multiple Output Methods # DETs and # of additional output methods Fall 2017 ©USC-CSSE

11 IFPUG SNAP Points (3/5) Subcategory Subcategory Rating Method
Complexity Multiplier Factor Low Average High Total Technical Environment Multiple Platforms # of platforms 2 3 4 + Same Family Diff. Family Internet Browsers 20 40 10 30 60 80 Database Technology # of DETs and database operations 1-19 DETs 20-50 DETs 51 + DETs 6 * #oper 9 * #oper 12 * #oper Batch Processes # file types referenced 1 – 3 4 – 9 10 + 4 * #DET 6 * #DET 10 * #DET Fall 2017 ©USC-CSSE

12 Subcategory Rating Method Complexity Multiplier Factor
IFPUG SNAP Points (4/5) Subcategory Subcategory Rating Method Complexity Multiplier Factor Low Average High Total Architecture Component Based Software Type of components and # of unique components In-house 3rd party N/A 3 * #comp 4 * #comp Multiple Input / Output Interfaces # DETs and # of additional interfaces 1 – 5 6 – 19 20 + 3 * # interfaces 4 * # interfaces 6 * # interfaces Fall 2017 ©USC-CSSE

13 IFPUG SNAP Points (5/5) New Development Projects Enhancement Projects
Total Project after Enhancements Fall 2017 ©USC-CSSE

14 COSMIC Function Points (1/2)
Fall 2017 ©USC-CSSE

15 COSMIC Function Points (2/2)
Fall 2017 ©USC-CSSE

16 Software Estimation Accuracy
4x 2x Relative Size Range x IFPUG & COSMIC Methods 0.5x 0.25x Feasibility Plans/Rqts. Design/Architecture Develop and Test Need Estimates Here Phases and Milestones Fall 2017 ©USC-CSSE

17 Use Case - Written Brief Description
Bank Customer uses the ATM to withdraw money. Actors Bank Customer; Bank Preconditions There is an active network connection to the bank. The ATM has cash available Basic Flow Bank Customer inserts ATM/Debit card Validate user ATM displays and prompts for account Bank Customer selects account ATM displays alternatives Bank Customer selects withdraw option ATM prompts for amount Bank Customer enters an amount ATM sends info to Bank as transaction Fall 2017 ©USC-CSSE

18 Use Case – Written Cntd. Basic Flow Money is dispensed
ATM/Debit card is returned Receipt is printed Alternative Flows 2a. If user is not validated, then return error 8a. If Bank Customer enters an amount that cannot be created with the type of cash in the ATM machine, display a message that amount must be in multiple of 20. Ask Bank Customer to re-enter amount. 8b. If Bank Customer enters an amount that exceeds the withdrawal limit, display warning message and ask Bank Customer to re-enter amount. 8c. If Bank Customer enters an amount that exceeds the amount available in account, return warning message and ask Customer to re-enter. Fall 2017 ©USC-CSSE

19 Use Case - Diagram Withdraw Cash Transfer Funds Deposit Funds
Bank Customer Deposit Funds Bank Refill Machine Maintenance Person Fall 2017 ©USC-CSSE

20 Use Case Points (1/4) Use Case Complexity # of Transactions Weight
Simple 3 or fewer 5 Average 4 to 7 10 Complex More than 7 15 Actor Complexity Actor Type Weight Simple System through API 1 Average System through protocol Person through text-based interface 2 Complex Person through GUI 3 Fall 2017 ©USC-CSSE

21 Use Case Points (2/4) Tech-nical Factor Description Weight T1
Distributed System 2 T2 Performance Objectives T3 End-user Efficiency 1 T4 Complex Processing T5 Reusable Code T6 Easy to Install 0.5 T7 Easy to Use Tech-nical Factor Description Weight T8 Portable 2 T9 Easy to Change 1 T10 Concurrent Use T11 Security T12 Access for 3rd Parties T13 Training Needs Fall 2017 ©USC-CSSE

22 Use Case Points (3/4) Environ-mental Factor Description Weight E1
Familiar with Development Process 1.5 E2 Application Experience 0.5 E3 Object-Oriented Experience 1 E4 Lead Analyst Capability E5 Motivation E6 Stable Requirements 2 E7 Part-time Staff -1 E8 Difficult Programming Language Fall 2017 ©USC-CSSE

23 Use Case Points (4/4) Unadjusted Use Case Points Use Case Complexity
+ Actor Complexity Technical Complexity Factor (TCF) Environment Complexity Factor (EF) Unadj. Use Case Points x TCF x EF Use Case Points Fall 2017 ©USC-CSSE

24 Software Estimation Accuracy
4x 2x Relative Size Range x 0.5x Use Case Points 0.25x Feasibility Plans/Rqts. Design/Architecture Develop and Test Need Estimates Here Phases and Milestones Fall 2017 ©USC-CSSE

25 Agile Methodology Fall 2017 ©USC-CSSE

26 User Stories Structure Example
As a <Type of User>, I want <To Perform Some Task>, So that <I can achieve some Goal / Benefit / Value> As a Customer, I want to withdraw cash from an ATM, So that I don’t have to wait in line at the Bank Fall 2017 ©USC-CSSE

27 Story Points Planning Poker Development Team Planning Poker Cards
Fibonacci Series (1, 2, 3, 5, 8, 13, 21, …) Estimate Size (not effort) Fall 2017 ©USC-CSSE

28 Software Estimation Accuracy
4x 2x Relative Size Range x 0.5x Story Points 0.25x Feasibility Plans/Rqts. Design/Architecture Develop and Test Need Estimates Here Phases and Milestones Fall 2017 ©USC-CSSE

29 Software Estimation Accuracy
4x 2x Relative Size Range x IFPUG & COSMIC Methods Use Case Points 0.5x Story Points SLOC 0.25x Feasibility Plans/Rqts. Design/Architecture Develop and Test Need Estimates Here Phases and Milestones Fall 2017 ©USC-CSSE


Download ppt "Alternative Software Size Measures for Cost Estimation"

Similar presentations


Ads by Google