webinar function point primer june 2008
play

Webinar: Function Point Primer June 2008 Sheila P. Dennis, CFPS - PowerPoint PPT Presentation

Webinar: Function Point Primer June 2008 Sheila P. Dennis, CFPS Vice President, Software Sizing Services David Consulting Group sdennis@davidconsultinggroup.com 1 About David Consulting Group DCG is an international IT process improvement


  1. Webinar: Function Point Primer June 2008 Sheila P. Dennis, CFPS Vice President, Software Sizing Services David Consulting Group sdennis@davidconsultinggroup.com 1

  2. About David Consulting Group • DCG is an international IT process improvement and measurement company currently managing active engagements with over 20 Fortune 1,000 companies and government agencies around the world. • DCG’s focus is directed toward practical implementations that measure results, improve IT processes and deliver value. • DCG is a recognized world leader in Software Sizing. It’s founders “wrote the book” on Function Point Analysis. • DCG consistently promises and delivers positive change in its consulting engagements. • DCG makes all of this possible through the expertise and commitment of its consultants who are organized into the following Consulting Practices: • Software Process Improvement ­ including CMMI and Six Sigma • Software Sizing ­ using IFPUG Function point Counting and other techniques • Software Measurement ­ including estimating, benchmarks and outsourcing SLA definition, measurement and monitoring • IT Performance Improvement ­ focused on IT Operations through ITIL and IT Governance • IT Decisions Coaching – helping individuals and teams in IT to 2 increase value by making better decisions.

  3. Agenda Function Point Analysis, Uses and Benefits • Objectives of Function Point Analysis • Benefits of Function Point Analysis • Function Point Counting Process Function Point Counting Rules • Types of Function Point Counts • Steps in Counting • Data Functions • Transactional Functions • General System Characteristics 3

  4. Why Function Point Analysis? Function Point Analysis is a standardized method for measuring the functionality delivered to an end user. • Consistent method • Easy to learn • Available early in the lifecycle • Acceptable level of accuracy • Meaningful internally and externally • Objectives • Measure functionality that the user requests and receives • Measure software development and maintenance independently of technology used for implementation 4

  5. Benefits of Using Function Points A vehicle to estimate cost and resources required for • software development, enhancement and maintenance A tool to quantify performance levels and to monitor • progress made from software process improvement initiatives A tool to determine the benefit of an application to an • organization by counting functions that specifically match requirements A tool to size or evaluate purchased application packages • 5

  6. FP Evaluates These Components Overview • Data Functions • Internal Groupings of data called Internal Logical Files (ILF) • External Groupings of data or External Interface Files (EIF) External • The term file does not refer to files in the physical sense, Inquiry External External rather refers to logical data stores, entities, objects or super­ classes Input Output • Transaction Functions • External Inputs (EI) • External Outputs (EO) Internal • External Inquires (EQ) Logical Files • General System Characteristics Application External • We will explore the definitions of each of these Interface components as we go forward. File 6

  7. Function Point Process Process 1. Determine the type of Function Point count 2. Identify the counting scope and application boundary 3. Count the data functions to determine their contribution to the unadjusted function point count (Determine the complexity and weight) 4. Count the transactional functions to determine their contribution to the unadjusted function point count (Determine the complexity and weight) 5. Determine the value adjustment factor ­ 14 General System Characteristics 6. Calculate adjusted function point count using the appropriate formulas 7

  8. Types of Function Point Count Step 1: Type of Count • Development Project Function Point Count • Measures the functions provided to users with first install of the software delivered when project is complete • Enhancement Project Function Point Count • Measures the modifications to existing application add, change or delete user functions delivered when project is complete • When functionality is installed, the application count must be updated to reflect changes in the application functionality 8

  9. Types of Function Point Count Step 1: Type of Count Application Function Point Count • • Measures an installed application • Also referred to as the baseline or installed count • Provides count of the current functions provided to users • Number is initialized when the development project function point count is completed • It is updated every time completion of an enhancement project alters the application's functions 9

  10. Scope and Boundary Step 2: Boundary Definition: • • A function point count provides an answer to a business problem • Purpose: • Determines the type of function point count and scope of required count • Influences the positioning of the boundary between the software under review and the surrounding software 10

  11. Diagramming an Application Boundary Step 2: Boundary External External External Input Output Inquiry External External Internal Input Interface File Logical File Other Internal Applications Logical File Other Applications External Application Output Boundary 11

  12. Step 3: Data Data Functions Step 3: Data • Data functions represent the functionality provided to the user to meet internal and external data requirements • Internal Logical Files (ILFs) • External Interface Files (EIFs) • The term file here does not mean file in the traditional data processing sense; in this case, file refers to a logically related group of data and not the physical implementation of those groups of data 12

  13. Step 3: Data Internal Logical Files Step 3: Data • An internal logical file (ILF) is a user identifiable group of logically related data or control information maintained within the boundary of the application • The primary intent of an ILF is to hold data maintained through one or more elementary processes of the application being counted 13

  14. Step 3: Data ILF Identification Rules Step 3: Data To identify ILFs, look for groups of data or • control information that satisfy the definition of an ILF • All of the following counting rules must apply for the information to be counted as an ILF: • The group of data or control information is logical and user identifiable • The group of data is maintained through an elementary process within the application being counted 14

  15. ILF Examples Step 3: Data • Count as Internal Logical Files • Application transaction data maintained within the application • ILFs maintained by more than one application (Shared data) 15

  16. External Interface Files Step 3: Data • An external interface file (EIF) is a user identifiable group of logically related data or control information referenced by the application, but maintained within the boundary of another application • The primary intent of an EIF is to hold data referenced through one or more elementary processes within the application of the application counted; this means an EIF counted for the application must be an ILF in another application 16

  17. EIF Identification Rules Step 3: Data • To identify EIFs, look for groups of data or control information that satisfy the definition of an EIF • All of the following counting rules must apply for the information to be counted as an EIF: • The group of data or control information is logical and user identifiable • The group of data is referenced by, and external to, the application being counted • The group of data is not maintained by the application being counted • The group of data is maintained in an ILF of another application 17

  18. EIF Examples Step 3: Data • Count as External Interface Files • Reference data or edit criteria obtained or read from ILFs maintained by other applications • Information not maintained within counted application, but required to produce outputs/inquiries 18

  19. ILF/EIF Difference Step 3: Data The primary difference between an internal logical file (ILF) and an external interface file (EIF) is that an EIF is not maintained by the application being counted, while an ILF is. 19

  20. Step 3: Data ILF/EIF Complexity Matrix Step 3: Data Assign each identified ILF and EIF a functional complexity based on the number of data element types (DETs) and record element types (RETs) associated with the ILF or EIF, within that application (Sum of all fields of all subgroups INTERNAL LOGICAL OR of the logical data (Data SubGroups) EXTERNAL INTERFACE FILES: grouping) Record Data Elements Element EIF 1­19 20­50 51+ Types ILF L = 5 L = 7 <2 Low Low Average A = 7 A = 10 2­5 Average High Low H = 10 H = 15 >5 Average High High 20

  21. Internal Logical File Example Step 3: Data Entity Element Length INSTRUCTOR Name 30 Address 50 City 30 State 20 Zip 9 Telephone 10 Course Number 5 (Sum of all fields of all subgroups INTERNAL LOGICAL OR of the logical data (Data SubGroups) ­ 1 EXTERNAL INTERFACE FILES: grouping) ­ 7 Record Data Elements Element EIF 1­19 20­50 51+ Types ILF L = 5 L = 7 <2 Low Low Average A = 7 A = 10 2­5 Average High Low H = 10 H = 15 >5 Average High High 21

Recommend


More recommend