From Wikipedia, the free encyclopedia
Jump to: navigation, search

The MK II Method is one of the software sizing methods in functional point group of measurements. This is a method for analysis and measurement of information processing applications based on end user functional view of the system. The MK II Method (ISO/IEC 20968 Software engineering—Mk II Function Point Analysis—Counting Practices Manual[1]) is one of five currently recognized ISO standards for Functionally sizing software.


The MK II Method was defined by Charles Symons in book[2] published in 1991. UK Software Metrics Association[3] is now responsible for the method and its continuing development. The functional user requirements of the software are identified and each one is categorized into one of there types: inputs, exits and objects. In order to determine functional size of system these functional requirements are counted.

MkII FPA counting rules[edit]

MkII counting procedure contains several steps described below.

Determine the ViewPoint, Purpose and Type of the Count[edit]

Define the Boundary of the Count[edit]

Boundary of system represents logical line that separates users from a system. It is used to determine logical transactions such as inputs and exits that crosses boundary during the interaction between user and system.

Identify the Logical Transactions[edit]

Logical transactions are elementary processes triggered by unique events. Transactions consist of input that enters information across the boundary, processing that maintains the data and output that returns information back to the user. Each transaction must leave the system in a consistent state. There are two types of logical transaction that cross a boundary:

  • Inputs - processes that enter information into the system. Examples of these transactions are creating new records, updating records or deleting records.
  • Exits - processes that take information from the system and show it to user. Examples of these transactions are reports, notifications or searches.

Size of application is the sum of logical transactions - each transaction is counted once even though it may be executed from more than one point in the application.

Identify and Categorise Data Entity Types[edit]

Data entity types are logical data structures that contains information meaningful to the user. In MarkII method there is only one type of data entity types - Objects. Objects must be correctly identified so they can be counted.

Count the Input Data Element Types, the Data entity Types Referenced, and the Output Data Element Types[edit]

Count the Functional Size[edit]

Once the transactions and objects in the system are identified, they can be counted in order to find functional size of the system. Functional size of the system is represented as weighted counts of input/exit transactions and objects within the boundary of the system. Size can be expressed as following:

Size = Wi*∑Ni+ We*∑Ne + Wo*∑No

In the equation ∑Ni, ∑Ne and ∑No are total numbers of unique inputs, exits and objects within the system. Currently recommended values for weighting coefficients are Wi = 0.58, We = 1.66, and Wo = 0.26.

See also[edit]


  1. ^
  2. ^ Software Sizing and Estimating: Mk II Fpa (Function Point Analysis)
  3. ^

External links[edit]