Function Points FAQs

Distributed Systems

Home

Issue Description

Sample Scenario

Technical Design

Scenario Resolution

General Discussion


ISSUE

Can you count Distributed Systems as being more than one application?

Sample Scenario

User Requirement

The Payroll Area needs to record the time sheets, sick leave and annual leave details during each pay week.When it has been checked, the paymaster calculates the pay amounts, superannuation levies and group tax.

Home


Technical Design

The user requires the computerised system to allow him the same freedom to enter the pay details and make corrections prior to calculating the pays.

The developer has recommended two strategies to solve these requirements:

  1. Provide the Pay Clerks with pre-formatted forms in which they can enter and change details.At the end of the week the forms are sent to the data entry area where they are entered via online transactions into the mainframe to be processed.Data is partially validated during the data entry process.Once accepted it proceeds through an edit program where it is further validated, before being accepted into payroll processing.Rejected transactions can be fixed online and put back into the processing stream.A number of reports will print directly after payroll processing. Other reports, may be printed by running the appropriate job.The Pay Clerks perform maintenance of dynamic data (such as Award Rates, Employee Salary Rates, etc.) online.

    OR

  2. Provide the Pay Clerks with their own PC workstations so they can directly key the data themselves via a GUI front-end. Validation and editing will be performed on data entry.At the end of the week the paymaster will run the payroll which involves transmitting the pay details to the mainframe where all payroll processing is performed.Some reports are printed by the mainframe directly after the payroll is processed.Other reports are transmitted back to the workstation where they may be printed when required.Maintenance of the dynamic data, (Award Rates, Employee Salary Rates, etc.) may be done online by the Pay Clerks using their PC workstation.Initial validation is done on the workstation and valid transactions are uploaded nightly to the mainframe where they update the master files.

Home


Scenario Resolution

Note: It is assumed in this case that the front-end and back-end constitute parts of the same system and are developed and maintained by the same project team, otherwise Section 3.3.5 Front End Systems - Counting Guidelines applies. See also Section 3.1.2 Positioning of Application Boundaries.

Transactions

The Payroll users' requirements are satisfied by a single application with one boundary, i.e. a conceptual interface between the user and the software.This conceptual interface is at the point of interaction of the user with the functions delivered by the software.The technical boundary between the workstation and the mainframe is inside a 'black box' and is not a user requirement.The transactions counted are the ones from a business user perspective, for example, Enter Pay Details, Change Pay Details, Delete Pay Details, plus similar maintenance transactions for each logical group of reference data (i.e. Award Rates and Employee Salary Rates).

For example, assume that in this scenario the time sheets and leave details are entered on-line and stored in the Payroll file on the PC before updating the Payroll file on the mainframe at the end of the week. In this situation, the Payroll file occurs twice (on the PC and the mainframe) but is counted only once.

Files

Although the same data may physically reside on both the PC and mainframe (e.g. updated on the mainframe and downloaded to the PC), from a business perspective each logical group of data occurs only once, and each is therefore counted as one Internal Logical File.

Home


General Discussion

Transactions are not complete and the business is not left in a consistent state until the data entered by the user has updated the master data on the mainframe.Creating an artificial boundary between two technical platforms creates situations where data enters and leaves the application boundary, but the data movement is not a user recognisable business event.Placing a boundary between technical platforms is not the business view and results in considerable over-counting due to the internal data transfers being incorrectly counted as Inputs, Outputs or Enquiries, and temporary or duplicated data being counted as Internal Logical Files.


Note: When determining the position of boundaries between applications remember to use the business view to partition the applications and not a technical delineation such as language, hardware or platform.

Contribution to VAF

The distribution of transactions and data across different platforms is considered a feature of the system and is assessed in the GSC's.

'Distributed Processing'

: Accounts for the data and transactions being on different processors.

'Data Communications'

: Accounts for two-way data transfer.

'End-User Efficiency'

: Accounts for the GUI front-end.

 Home

Issue Description

Sample Scenario

Technical Design

Scenario Resolution

General Discussion