TheDeveloperBlog.com

Home | Contact Us

C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML

Software Engineering | Extended Function Point (EFP) Metrics

Software Engineering | Extended Function Point (EFP) Metrics with software engineering tutorial, models, engineering, software development life cycle, sdlc, requirement engineering, waterfall model, spiral model, rapid application development model, rad, software management, etc.

<< Back to SOFTWARE

Extended Function Point (EFP) Metrics

FP metric has been further extended to compute:

  1. Feature points.
  2. 3D function points.

Feature Points

  1. Feature point is the superset of function point measure that can be applied to systems and engineering software applications.
  2. The feature points are used in those applications in which the algorithmic complexity is high like real-time systems where time constraints are there, embedded systems, etc.
  3. Feature points are computed by counting the information domain values and are weighed by only single weight.
  4. Feature point includes another measurement parameter-ALGORITHM.
  5. The table for the computation of feature point is as follows:

Feature Point Calculations

Measurement Parameter Count Weighing factor
1. Number of external inputs (EI) - * 4 -
2. Number of external outputs (EO) - * 5 -
3. Number of external inquiries (EQ) - * 4 -
4. Number of internal files (ILF) - * 7 -
5. Number of external interfaces (EIF) - * 7 -
6.Algorithms used Count total → - * 3 -

The feature point is thus calculated with the following formula:

                FP = Count-total * [0.65 + 0.01 *∑(fi)]
                    = Count-total * CAF

where count-total is obtained from the above table.

                CAF = [0.65 + 0.01 * ∑(fi)]

and ∑(fi) is the sum of all 14 questionnaires and show the complexity adjustment value/factor-CAF (where i ranges from 1 to 14). Usually, a student is provided with the value of ∑(fi) .

6. Function point and feature point both represent systems functionality only.

7. For real-time applications that are very complex, the feature point is between 20 and 35% higher than the count determined using function point above.

3D function points

Three dimensions may be used to represent 3D function points?data dimension, functional dimension, and control dimension.

2. The data dimension is evaluated as FPs are calculated. Herein, counts are made for inputs, outputs, inquiries, external interfaces, and files.

3. The functional dimension adds another feature-Transformation, that is, the sequence of steps which transforms input to output.

4. The control dimension that adds another feature-Transition that is defined as the total number of transitions between states. A state represents some externally observable mode

Extended Function Point (EFP) Metrics

Now fi for average case = 3. So sum of all fi (i ←1 to 14) = 14 * 3 = 42
                                FP = Count-total * [0.65 + 0.01 *∑(fi ) ]
                                = 618 * [0.65 + 0.01 * 42]
                                = 618 * [0.65 + 0.42]
                                = 618 * 1.07 = 661.26

and feature point = (32 *4 + 60 * 5 + 24 * 4 + 80 +14) * 1.07 + {12 * 15 *1.07}
                            = 853.86

Example: Compute the 3D-function point value for an embedded system with the following characteristics:

  1. Internal data structures = 6
  2. External data structures = 3
  3. No. of user inputs = 12
  4. No. of user outputs = 60
  5. No. of user inquiries = 9
  6. No. of external interfaces = 3
  7. Transformations = 36
  8. Transitions = 24

Assume complexity of the above counts is high.

Solution: We draw the Table first. For embedded systems, the weighting factor is complex and complexity is high. So,

Extended Function Point (EFP) Metrics




Related Links:


Related Links

Adjectives Ado Ai Android Angular Antonyms Apache Articles Asp Autocad Automata Aws Azure Basic Binary Bitcoin Blockchain C Cassandra Change Coa Computer Control Cpp Create Creating C-Sharp Cyber Daa Data Dbms Deletion Devops Difference Discrete Es6 Ethical Examples Features Firebase Flutter Fs Git Go Hbase History Hive Hiveql How Html Idioms Insertion Installing Ios Java Joomla Js Kafka Kali Laravel Logical Machine Matlab Matrix Mongodb Mysql One Opencv Oracle Ordering Os Pandas Php Pig Pl Postgresql Powershell Prepositions Program Python React Ruby Scala Selecting Selenium Sentence Seo Sharepoint Software Spellings Spotting Spring Sql Sqlite Sqoop Svn Swift Synonyms Talend Testng Types Uml Unity Vbnet Verbal Webdriver What Wpf