How the functional size measurement methods (FSMM) work

All FSMM must fulfill the mandatory requirements of ISO/IEC 14143-1. It means that regardless the rules of the measurement methods, all these methods should focus on measuring the functional user requirements.

Based on the standard ISO/IEC 14143-1, a FSMM "shall include the following activities in order to derive Functional Size:

  1. determine the Scope of the FSM (purpose for measuring the software);
  2. identify the Functional User Requirements within the Scope of the FSM; 
  3. identify the Basic Functional Components (BFC) within the Functional User Requirements  (A BFC is an elementary unit of Functional User Requirements defined by and used by an FSM Method for measurement purpose) 
  4. classify BFCs into BFC Types, if applicable; 
  5. assign the appropriate numeric value to each BFC;
  6. calculate Functional Size".

This means that the Functional User Requirements (FUR) are characterized in terms of Basic Functional Components (BFC). That is data moving in or out of a process, and data accessing to storage or being retrieved from storage.

For example, the BFC for the COSMIC Functional Size Measurement Method is the data movement, categorized into four BFC types: Entry (E), Exit (X), Read (R), and Write (W).

In the case of the IFPUG functional size measurement method, the BFC types are: External Input (EI), External Output (EO), External Inquiry (EQ), Internal Logical File (ILF), and External Interface File (EIF). These five elements are the BFCs for this method.