Function Points FAQs
Total Metrics consultants' resolutions to common FPA counting problems. The following Issues and Resolutions provide interpretations of the guidelines expressed in IFPUG CPM 4.3. They are the opinion only of Total Metrics and should not be considered to be that of IFPUG.
|
|
The IFPUG Counting Practices Manual (CPM) The issues and resolutions discussed in this document attempt to address counting issues commonly encountered in a modern computing environment. However, nearly every count raises its own unique issues. A 'recipe book' approach is inviting but is not practical since every application has to be assessed relevant to its own user business environment and user needs. A typical scenario has been provided with most issues and a counting resolution developed for its characteristics. These issues are provided as a guide for FP Analysts to develop resolutions for their own issues. |
|
|
|
Are there any types of applications for which IFPUG function points may not be a suitable measure of applications size? |
|
|
|
The positioning of an Application Boundary can be subjective. What factors should be considered when determining the position of Application Boundaries for applications? |
|
|
|
Should batch functions, which do not have any DETs that come from outside the application boundary, be counted as elementary processes? |
|
|
|
Where a function point count is constrained by time limitations and a lack of relevant documentation, how should functional complexity be determined? |
|
|
|
Within a development or enhancement project, it is possible for more than one independent business requirement (Change Request) to impact the same transaction. It is also possible that within the scope of one business requirement that the requirement itself changes during development. The IFPUG function point formulas for development and enhancement projects only consider delivered function points, can FPA be used to quantify the rework that may be involved in these two situations? |
|
|
|
Where an application provides Audit control functionality, how should this be counted? |
|
|
|
If the user asks for Backup should this functionality be counted as a user business requirement? |
|
|
|
There are different types of help and different implementation methods used to provide on-line Help for an application. Where on-line Help is provided, how should this functionality be counted? |
|
|
|
Some applications contain the ability to archive data. The archiving of data may either be a business user requirement or a technical implementation choice. Should the archiving of data be counted, if so, how should it be counted? |
|
|
|
Is the ability to restrict security access of users, considered to be a function or a feature of an application? |
|
|
|
How should system files which are maintained/accessed by most business transactions within an application be counted? |
|
|
|
How should system modules that are reused by transactions within the one application, or shared by multiple applications, be counted? |
|
|
|
Can you count Distributed Systems as being more than one application? |
|
|
|
How do you determine application boundaries and count transactions when user requested business functionality is provided by an Off-the-Shelf (OTS) Product? |
|
|
|
Can you count applications that use Robots/File Transfer Systems as being more than one application? |
|
|
|
Where the application boundary is drawn around the Robot/ File Transfer System, and the Robot is not considered part of the underlying technical infrastructure of another application, how should the robot functionality be counted? |
|
|
|
Many organisations have computer systems that have new Front End Systems which allow users to make enquiries on reference data which resides on older, legacy Host systems and to enter transactions whose prime objective is to update information on the Host systems. These systems exist only as a front end to the Host system, but are considered to be separate applications. Separate project teams develop and maintain these Front End Systems and separate Work Orders are received for enhancements to these systems. In FPA terms how should these systems be counted? |
|
|
|
Due to the unique characteristics of the application boundary between separately-counted front-end and core systems, it is possible for duplication of functionality to occur. Should logical transactions therefore be double counted, replicating the core system transaction in the front-end? |
|
|
|
Where a core application function is replicated by a core application function which satisfies a front-end system requirement, should separate transactions be counted? |
|
|
|
System interfaces can be physically implemented in multiple ways. To what extent should the physical interface solution impact the business functions counted? |
|
|
|
How should the functionality of a Data Warehouse be counted? |
|
|
|
How should Decision Engines be counted? |
|
|
|
In certain systems, processing rules are defined in Rule tables rather than in source code. How should the functionality of such systems be counted in the baseline? How should enhancements to systems that are mainly table driven be counted? |
|
|
|
What is the user requested business functionality provided by IVR systems? |
|
|
|
How is FPA applied to sizing Web Based applications? |
|
|
|
What is the user requested business functionality provided by an application which is used to perform 'what if' analyses for various types of business events and products? |
|
|
|
Middleware software does not exhibit the same characteristics as the MIS software that it typically interfaces to. Can FPA be used to count these types of applications? |
|
|
|
How should the functional size of applications and projects based upon package software be determined?How do the methods used to functionally size such applications and projects differ from those used to size custom developed applications and projects? |
|
|
|
How should data models be assessed when identifying logical files? |
|
|
|
How are RETs identified within a file? |
|
|
|
When reference data is sourced from another system but physically resides within the boundary of an application should it be counted as an ILF or EIF? |
|
|
|
When should data sourced from another system, which contributes to the update of internal logical files of the system being counted, be classified as an: External Interface File Internal Logical File External Input transaction? |
|
|
|
When Function Point counting an application that references data maintained by another application, we credit the application under study with an EIF. How do we establish the logical file structure and hence the number and complexity of data files we are referencing? |
|
|
|
What are the characteristics of Logical Files that are classified as Reference Tables? Are Translation tables considered to be Reference Tables? |
|
|
|
Where hierarchy table(s) exist which facilitate summation and reporting of primary level data, should these files be counted as logical files? |
|
|
|
|
|
|
|
When a transaction file is loaded into a system and the unprocessed version of the transaction data is stored on a file within the system, can this file be counted as an ILF? When transactions are processed in batch mode and errored transactions are written to a file, commonly called a suspense file, which can then be viewed/browsed and the transactions corrected, can this suspense file be counted as an ILF? These two issues are related issues and shall be treated jointly and severally in the discussion that follows |
|
|
|
Are Error Message Files viewed as a business requirement or an implementation issue? |
|
|
|
Are Queue Files viewed as a business requirement or an implementation issue? |
|
|
|
Are History Files viewed as a business requirement or an implementation issue? |
|
|
|
What factors should be considered when multiple applications share the same logical files? |
|
|
|
The positioning of an Application Boundary can be subjective. What factors should be considered when determining the position of Application Boundaries for applications? |
|
|
|
Should functionality, which is no longer used, but still exists within the application programs, be included within the scope of application baseline function point counts? Should functions/programs that exist in 'adhoc' program libraries be included? |
|
|
|
When is a DET considered to have entered or exited the application boundary? |
|
|
|
Within a development or enhancement project, it is possible for more than one independent business requirement (Change Request) to impact the same transaction. It is also possible that within the scope of one business requirement that the requirement itself changes during development. The IFPUG function point formulas for development and enhancement projects only consider delivered function points, can FPA be used to quantify the rework that may be involved in these two situations? |
|
|
|
How can we have our individual Applications managed in SCOPE databases at separate sites but collate the FP data for centralized reporting? |
|
|
|
We would like to have a master database where we keep all our applications and their corresponding releases. Is there a way we can create a database that can be accessed by multipul users? |
|
|