Presentation is loading. Please wait.

Presentation is loading. Please wait.

Mk II Function Point Analysis

Similar presentations


Presentation on theme: "Mk II Function Point Analysis"— Presentation transcript:

1 Mk II Function Point Analysis
Shun Han & Yan Wu CS580 Software Metrics & Models CS580 Software Engineering: Metrics & Models

2 CS580 Software Metrics & Models
Outline Introduction Measurement steps Case Study Evaluation Resources CS580 Software Metrics & Models

3 CS580 Software Metrics & Models
1. Introduction What’s Mk II Function Point? Relationship to IFPUG FPA Applicability of Mk II FPA CS580 Software Metrics & Models

4 CS580 Software Metrics & Models
Mk II FPA? Mark II FPA (Mk II) was developed by British consultant Charles Symons in 1988. Mk II FPA was proposed to improve the functional size scale( by comparison with the Albrecht method) so that it takes better account of the internal processing complexity of MIS Software. Mk II FPA has now found a wide user base in the UK, Europe and other parts of the world (except USA). CS580 Software Metrics & Models

5 Evolution of Functional Size Measurement
CS580 Software Metrics & Models

6 CS580 Software Metrics & Models
Mk II FPA & IFPUG FPA Both methods measure sizes of a software. Both assign weights to the function points. Mk II: Technical Complexity Adjustment IFPUG: The Value Adjustment Factor CS580 Software Metrics & Models

7 CS580 Software Metrics & Models
Mk II FPA & IFPUG FPA LT CS580 Software Metrics & Models

8 Base Logical Components
Mk II FPA assumes that all user functionality is expressed in terms of Logical Transactions. A LT contains Input, Processing, Output components. CS580 Software Metrics & Models

9 CS580 Software Metrics & Models
Mk II FPA & IFPUG FPA The MkII FP size scale was designed to be more sensitive to small changes in functionality than the stepped IFPUG scale and to be more sensitive to variations in the internal processing complexity of ‘data-rich’ systems typical of the MIS world. CS580 Software Metrics & Models

10 CS580 Software Metrics & Models
M = 0.9 * I * I 2 CS580 Software Metrics & Models

11 Applicability of MK II FPA
applied early in the software development process applied uniformly throughout the software's lifetime interpreted in business terms, and understood by users of the software. CS580 Software Metrics & Models

12 Applicability of MK II FPA
Used for sizing: a requirements specification or functional specification of a new application or of a change to an existing application the requirements met by an existing, operational application, whether it be a bespoke application or an implementation of a packaged business software solution, and whether a batch or on-line implementation. CS580 Software Metrics & Models

13 CS580 Software Metrics & Models
2. Measurement steps 1.Determine purpose & type of count 2. Identify the application boundary 3. Identify the Logical Transactions 4. Identify the data entity types 5. Count the input, processing, and output components 6. Calculate the Functional Size 7. Determine project effort 9. Score degree of influence 10. Calculate the technical complexity adjustment 11. Calculated adjusted FP 8. Calculate productivity CS580 Software Metrics & Models

14 Step 1. Determine the Viewpoint, Purpose and Type of the Count
Identify the customer for the count, and the purpose. The Project Viewpoint. The Application Manager Viewpoint. The Business Enterprise Viewpoint. CS580 Software Metrics & Models

15 Step 2. Define the Boundary of the Count
This is also linked with Step 1. Drawing the boundary determines the Logical Transactions to be included in the count. Input data from the user crosses the boundary to enter the application. Output data leaves the application and crosses the boundary to reach the user. Within the boundary are the Data Entity Types that are processed by the Logical Transaction Types of the application. CS580 Software Metrics & Models

16 Step 3 Identify the Logical Transactions
Each logical transaction is triggered by a unique event of interest in the external world, or a request for information and, when wholly complete, leaves the application in a self-consistent state in relation to the unique event. Logical transactions are the lowest level business processes supported by a software application. Each comprises three elements: input across an application boundary, some related processing, and output across the application boundary. CS580 Software Metrics & Models

17 Step 4 Identify and Categorize the Data Entity Types
An entity type is some type of thing in the real world about which the business user wants to hold information. Data element types hold information about entity types. Count the number of entity types referred to.   Count primary entities, not non-primary entities Count the Sub-Entities separately when different processing logic is used in the transaction in which the entities are involved. CS580 Software Metrics & Models

18 CS580 Software Metrics & Models
Step 5 Count the Input DETs, the Data Entity Types Referenced, and the Output DETs. For each Logical Transaction, count the number of Input Data Element Types (Ni) the number of Data Entity Types Referenced (Ne) the number of Output Data Element Types (No) CS580 Software Metrics & Models

19 Step 6. Calculate the Functional Size
The Functional Size (Function Point Index) is the weighted sum over all Logical Transactions, of the Input Data Element Types (Ni), the Data Entity Types Referenced (Ne), and the Output Data Element Types (No). FPI = Wi * ∑Ni + We * ∑ Ne + Wo * ∑ No The industry average weights are, respectively: Wi = We = 1.66 Wo = 0.26 CS580 Software Metrics & Models

20 CS580 Software Metrics & Models
3. Case Study CS580 Software Metrics & Models

21 Boundary and Primary entities
All the files involved in logical transactions are included in the boundary. EMPLOYEE, JOB, JOB_ASSIGNMENT and LOCATION therefore each represent primary entities. CS580 Software Metrics & Models

22 CS580 Software Metrics & Models
Logical Transactions LT1 LT2 LT3 LT4 LT5 LT6 LT7 LT8 LT9 CREAT-EMPLOYEE UPDATE-EMPLOYEE DELETE-EMPLOYEE CREAT-JOB UPDATE-JOB DELETE-JOB ASSIGN-EMPLOYEE-TO-JOB TRANSFER-EMPLOYEE EVALUATE-EMPLOYEE LT10 LT11 LT12 LT13 LT14 LT15 LT16 LT17 LT18 DELETE-ASSIGNMENT EMPLOYEE-REPORT JOB-REPORT JOB-ASSIGNMENT-REPORT LOCATION-REPORT EMPLOYEE-INQUIRY JOB-INQUIRY JOB-ASSIGNMENT-INQUIRY LOCATION-INQUIRY CS580 Software Metrics & Models

23 CS580 Software Metrics & Models
Example: LT1 CREAT-EMPLOYEE Input DETs Employee_Name Social_Security_Number Nbr_Dependents Type_Code Location_Name Supervisory_Level Standard_Hourly_Rate Collective_Bargaining_Unit_Number Data Entity Type references EMPLOYEE LOCATION Output DETs Error message CS580 Software Metrics & Models

24 CS580 Software Metrics & Models
Example2: LT15 EMPLOYEE-INQUIRY Input DETs Social_Security_Number Data Entity Type references EMPLOYEE Output DETs Employee_Name Nbr_Dependents Type_Code Location_Name Supervisory_Level Standard_Hourly_Rate Collective_Bargaining_Unit_Number Error message CS580 Software Metrics & Models

25 CS580 Software Metrics & Models
MK II FPA SNi = SNe =29 SNo =76 FPI = Wi * SNi + We * SNe + Wo * SNo =51* * *0.26 =97.48 IFPUG FPA UFP=26+69=95 CS580 Software Metrics & Models

26 CS580 Software Metrics & Models
Sizing Changes For each logical transaction required to be added, or to be changed or deleted for the Change, identify the affected input DET’s, output DET’s, and entity references. Categorize each affected component as added, changed or deleted. The functional size of Change work (i.e. the work output of the project)= added + changed + deleted functionality. The size of the software after the Change= the size of the software before the Change + added - deleted functionality. CS580 Software Metrics & Models

27 CS580 Software Metrics & Models
4. Evaluation In the case of Mark II FPs, the elementary process derives from Input, Processing and Output logic according to which each elementary process has an input, processing and output component and refers to logical files. According to IFPUG FPs, an elementary process must have one single priority: either input or output. Even Inquiry, with both natures, does not allow for any possible algorithm, but merely data retrieval. In addition the IFPUG technique considers Logical Files as independent objects to be counted and not only referred. In our opinion, Mk II Function Points constitute a metrics system with a conceptual model incompatible with IFPUG FPs. In fact, the basic objects measured are of a different nature. Therefore it is impossible to compare their results and it is meaningless to work to find an equivalence between the two different scales. CS580 Software Metrics & Models

28 CS580 Software Metrics & Models
Resources CS580 Software Metrics & Models

29 CS580 Software Metrics & Models
The end CS580 Software Metrics & Models


Download ppt "Mk II Function Point Analysis"

Similar presentations


Ads by Google