Professional Documents
Culture Documents
Lecture 2 (Software Effort Estimation - 2)
Lecture 2 (Software Effort Estimation - 2)
Delivering the agreed functionality on time at the agreed cost with the required
quality.
This implies that the project manager has set the reasonable targets by performing
‘effort’ estimates.
EQ
Case Study as example (assume each module generates a file)
• Over-time Calculation Module of Payroll Software
Function-point Types •
•
Module A: Log in-Log out recorder
Module B: Total overtime working hours calculator
• Module C: Public holiday checker plugin
• Module D: Overtime salary calculator
• Data is retrieved and sent to a data store• Transactions which extract and •display
• File used by the system or application. User initiated transactions which provide
• Input transactions which update internal
which is actually maintained by differentdata from internal computer files.information but do not update computer
• Refers to a group of data items that isapplication. computer files.
Generally involves creating or printing
files
usually accessed together. • For e.g., Updates madereports.
in the internal files
• For e.g., Payroll software will retrieve
• For e.g., Module A, B and C will be information about the of payroll software by an input given by • For e.g., Display total working hours for
employees from an• For e.g., Overtime salary report printed on
accessed together by Module D. the user to Log in-Log out recorder. an employee.
external data-base. a paper.
Albrecht Complexity Multipliers
Each component is classified as having either high, average or low complexity.
Each sub-module maintains a separate record in the form of a file with attribute details
• Module A: Log in-Log out recorder: inTime, outTime (2 data types)
• Module B: Total overtime working hours calculator: overtime (1 data type)
• Module C: Public holiday checker plugin: day, month, year (3 data types)
• Module D: Overtime salary calculator: minWageAmount, topupWageAmount, publicHolidayWageAmount (3 data types)
Number of Records = 4
Number of Data types = 9
Component type = Logical internal file (ILF)
Obtained Complexity = Low
FP Count = 7
Function points to Lines of Code
Tables are available to convert FPs to lines of code for various languages.
Java: 53 lines of code (average) per FP
Visual C++: 34 lines of code (average) per FP
How many average lines of code should be needed to develop overtime calculation module of
payroll software system using Java programming language?
3.71 days
Various Parametric Models
Function Points Mark II
• Developed by Charles R. Symons
• Builds on work by Albrecht
• Work originally for CCTA (Central Computer and Telecommunications
Agency):
• Has developed in parallel to IFPUG FPs
• A simpler method