Function Point Analysis: Measurement Practices for Successful Software Projects is a comprehensive presentation of the principles of function point analysis (FPA) and a guide to its effective use in managing the development and deployment of software. Written for both information technology (IT) practitioners and managers, it describes how to use this proven-but-underutilized software-sizing metric to achieve successful software projects.
Completely up-to-date, the book introduces the latest rules and guidelines released in the International Function Point Users Group (IFPUG) Counting Practices Manual 4.1.
Function Point Analysis presents fundamental counting techniques for basic-to-advanced technologies. It explains the calculations for determining function point size, an indication of a software application's overall functionality and complexity. Moving beyond mechanics, the book features the most common uses of FPA and reveals experience-based techniques for applying the methodology with success.
The book covers such important topics as:
Numerous detailed examples and case studies demonstrate the FPA methodology in action. As a reference, tutorial, and practical guide, Function Point Analysis: Measurement Practices for Successful Software Projects raises the level of awareness and understanding of FPA and its role in bringing proven quality standards to the software development industry.
Basic Counting Rules.
Preparing for Certification.
Function Points and the Executive.
Function Point Utilization.
Industry Benchmarking Data.
The International Function Point Users Group.
The Need for Software Measurement.
Basic Software Measurement Elements.
Software Measurement Model: Quantitative and Qualitative Elements.
World-Class Measurement Program.
Industry Leader Level.
Establishing a World-Class Measurement Program.
Gap Analysis Phase.
Return on Investment.
Unit of Work.
Time to Market.
Function Points in the Lifecycle.
Function Point Measures.
Using Function Point Measurement Data Effectively.
Developing a Measurement Profile.
Available Industry Comparisons.
Project Manager Level: Estimating Software Projects.
Using Function Points.
IT Management Level: Establishing Performance Benchmarks.
Industry Best Practices.
Organization Level: Establishing Service-Level Measures.
Project and Application Outsourcing.
How IT Is Using Industry Data.
Benchmarking. Concerns with Industry Data.
What Role Do Function Points Play?
Sources of Industry Data.
The Gartner Group.
Rubin Systems, Inc.
Software Productivity Research.
The David Consulting Group.
The Benchmarking Exchange.
Hackett Benchmarking & Research.
Hope for the Future.
The Function Point Counting Process.
The Process Used to Size Function Points.
Types of Counts.
Identifying the Counting Scope and the Application Boundary.
Internal Logical Files.
External Interface Files.
Complexity and Contribution: ILFs and EIFs.
An Example of Counting ILFs and EIFs.
Complexity and Contribution: EIs.
An Example of Counting EIs.
Complexity and Contribution: EOs.
An Example of Counting EOs.
Complexity and Contribution: EQs.
An Example of Counting EQs.
General System Characteristics.
1. Data Communications.
2. Distributed Data Processing.
4. Heavily Used Configuration.
5. Transaction Rate.
6. Online Data Entry.
7. End User Efficiency.
8. Online Update.
9. Complex Processing.
11. Installation Ease.
12. Operational Ease.
13. Multiple Sites.
14. Facilitate Change.
Value Adjustment Factor.
Final Adjusted Function Point Count.
Counting a Catalog Business: An Example.
Function Point Calculations and Formulas.
Development Project Function Point Count.
Enhancement Project Function Point Count.
Application Function Point Count.
Three Case Studies.
Answers to the Three Case Studies.
A Short Case Study in Project Management.
A Function Point Counting Exercise in Early Definition.
Functionality of Web-Based Applications.
Data Warehouse Applications.
Functionality of Data Warehouse Applications.
Concerns about Productivity Rates for Data Warehouse Applications.
Counting GUI Functionality.
GUI Counting Guidelines.
Exercise in Counting a GUI System.
1. Determine the Type of Function Point Count.
2. Identify the Counting Scope and the Application Boundary.
3 and 4. Identify All Data and Transactional Functions and Their Complexity.
5. Determine the Unadjusted Function Point Count.
6. Determine the Value Adjustment Factor.
7. Calculate the Final Adjusted Function Point Count.
Functional Description of Personnel Query Service.
Starting Personnel Query Service.
Add and Delete Title, Location, and Organization Records.
Add and Delete an Employee's Picture.
Object Model for Personnel Query Service.
System Diagram for Personnel Query Service.
Function Point Analysis for Personnel Query Service.
Basic Tool Selection Criteria.
Selecting a Function Point Repository Tool.
Selecting a Project-Estimating Tool.
Conducting a Proof of Concept.
1. Identification of the Current Estimating Problem.
2. Definition of the Deliverable.
3. Process and Tool Selection.
4. Project Selection.
5. Review of the Estimating Process with the Project Managers.
6. Sizing and Complexity Analysis.
7. Identification of Project Variables.
8. Analysis of the Data.
9. Review of the Estimate.
10. Assessment of the Process.
Practice Certified Function Point Specialist Exam.
Answer Sheet: Part I.
Answer Sheet: Part II.
Answer Sheet: Part III.
Writing this book has been a process, a journey, and a wonderful learning experience.
We have been immersed in the world of function points and software metrics for more than ten years. We both are proud of our accomplishments and contributions to the advancement and utilization of the function point methodology. We recognize a responsibility, as experts in this field, to communicate our experiences and to express our opinions in such a way that others can gain from what we have observed, learned, and practiced. You could say that we believe and that we are extending the wisdom of the message. We have also found our writings to be an opportunity for continued learning. While writing this book, we had the good fortune to receive comments and constructive criticisms from a significant number of book reviewers and industry experts. Their thoughtful comments and contributions have given us greater insight into the software community views of software measurement and management and, in particular, function points. We thank all of you who participated in the review process.
Our second book was in many ways easier, but in some ways more challenging, than the first. We endeavored to write a book that was significantly better than the first. We achieved success with our first book, but we knew that there was so much more to share. The process of writing becomes easier once you understand that it is a process similar to developing software. Our challenge was to identify the content that would serve a diverse audience while not losing sight of the most important audience, the practitioner. After all, it is the practice, not the theory, of function points that will sustain this valuable software management methodology.