Function Points What is Function Point Analysis? Approach to - - PowerPoint PPT Presentation

function points what is function point analysis
SMART_READER_LITE
LIVE PREVIEW

Function Points What is Function Point Analysis? Approach to - - PowerPoint PPT Presentation

Function Points What is Function Point Analysis? Approach to estimating SW size, which is independent of language development methodology technology capability of the project team hardness of the problem


slide-1
SLIDE 1

Function Points

slide-2
SLIDE 2

What is Function Point Analysis?

  • Approach to estimating SW size, which is

independent of

– language – development methodology – technology – capability of the project team – hardness of the problem

  • User-centric approach--in terms of screens,

reports, etc., produced.

slide-3
SLIDE 3

Basic Transaction Types

  • External inputs—data that is entering the system

(logical transaction inputs, system feeds)

  • External outputs and external inquiries—data that

is leaving the system (online displays, reports, feeds to other systems)

  • Internal logical files—data that is manufactured

and stored within the system (logical groups of user defined data)

  • External interface files—data maintained outside

the system but necessary to satisfy a particular process requirement (interfaces to other systems.

slide-4
SLIDE 4

Functional Characteristics of a Software System

User User External system User User Plant Molds Parts Bill of Materials Internal logical files Plant Information Center External Interface File External Output List of Molds Work Centers Parts listing Order parts Pricing External Inquiries External Inputs Change Bill of Materials

slide-5
SLIDE 5

Internal Logical Files

User-identifiable group of logically related data or control information maintained within the boundary of the application. Some Examples

  • Application transaction data such as employee training

records, payroll records, product sales, etc.

  • Application security or password data maintained

within the application.

  • Help data maintained within the application.
  • Error files and their descriptions maintained within the

application.

slide-6
SLIDE 6

External Interface Files

User-identifiable group of logically related data or control information referenced by the application but maintained within the boundary of a different application. Some Examples

  • Application data extracted and read from other

applications.

  • Application security or password data maintained
  • utside the application.
  • Help data maintained outside the application.
  • Error files and their descriptions maintained outside the

application.

slide-7
SLIDE 7

External Inputs

An elementary process of the application that processes data (maintains one or more ILF) or control information which enters from outside the boundary of the application Some Examples

  • Transactional data that used to maintain an ILF, such as

a sale item or an insurance form.

  • Input that provides control information, such as an

earthquake sensor report.

  • Messages from other applications that require

processing.

slide-8
SLIDE 8

External Outputs

An elementary process of the application that generates data

  • r control information which exits the boundary of the
  • application. Further, the processing logic of the elementary

process of an EO must perform one of the following:

  • Contain at least one mathematical formula or

calculation.

  • Create derived data.
  • Maintain at least one ILF.
  • Alter the behavior of the application.
slide-9
SLIDE 9

Some examples of External Outputs

  • Reports that require the use of algorithms or calculations.
  • Data transfers, files, and/or messages sent to other

applications when data is calculated or derived.

  • A check that, when created, simultaneously updates the

check record with the check number.

  • Derived or calculated information displayed on a screen or

passed in a file.

  • Calculated responses returned by telephone.
  • Notification that a credit card is missing, with the calculated

totals of current charges.

slide-10
SLIDE 10

External Inquiries

An elementary process of the application that results in retrieval

  • f data or control information which exits the boundary of the
  • application. Further, the processing logic of the elementary

process of an EO must satisfy all of the following:

  • Contain no mathematical formula or calculation.
  • Creates no derived data.
  • Maintains no ILF.
  • Does no alter the behavior of the application.
slide-11
SLIDE 11

Some Examples of External Inquiries

  • Transactional data that is retrieved from one or

more ILFs and/or EIFs and displayed, e.g., an appointment, payment data.

  • User functions such as view, lookup, display, etc.
  • Log-on screens that provide application specific

security.

  • Retrieval of mail from mailbox.
slide-12
SLIDE 12

Function Point Weights

File Type Low Medium High External inputs 3 4 6 External outputs 4 5 7 External inquiries 3 4 6 External interfaces 5 7 10 Internal interfaces 7 10 15

slide-13
SLIDE 13

Computing UFC

  • Based on a set of requirements.
  • Enumerate the number of each of five types of

behaviors or transactions.

  • Determine the weight of each such behavior

by estimating for each such behavior whether it is low, medium, or high.

  • Adding the weighted values gives UFC.
slide-14
SLIDE 14

Questions about Computing UFC

  • How is complexity of transaction

determined?

– IFPUG makes this determination in terms of record types and data types, or file types, accessed.

  • How are requirements mapped onto the

categories of external and internal behaviors?

slide-15
SLIDE 15

Sample Requirements

  • The requirements state that the user needs

– to add an order – to initiate a change request to an order – to check the status of an order

  • Additionally, a regional report will be

generated

  • And, an order notification report will be

distributed.

slide-16
SLIDE 16

Context Diagram for the Sample Requirements

User User Order File Internal logical file Purchase Order Function Check order status Add order External inputs External Inquiries Initiate change req. User Order notification User External Output User Regional request

slide-17
SLIDE 17

Unadjusted Function Count

Function Type Value

Check order status

EQ 3

Add order

EI 3

Initiate change request

EI 3

Order notification

EO 4

Regional report

EO 4

Order file

ILF 7 Total UFC 24

slide-18
SLIDE 18

FP Value Adjustment Factors

Data Communications Ease of change

  • Dist. Functions

Online update Performance Complex processing Heavily used operational config.s Reusability of system code Transaction rate Installation ease Online data entry Operational ease Design for end-user efficiency Multiple sites

Each adjustment factor scored from 0 to 5

slide-19
SLIDE 19

Computing Function Points

∑ =

+ =

14 1

01 . 65 .

i i

F TCF

FP = UFC * TCF

Lines of code can be computed from number of FP

slide-20
SLIDE 20

FP to LOC Conversion

Language FI Assembly 320 C 150 Fortran/COBOL 105 ADA 71 Prolog/Lisp 64 Spreadsheet 6

slide-21
SLIDE 21

Computing Effort using FP

Productivity can be computed for past projects thus: productivity = size/effort Effort can be computed for new projects using productivity rate thus: effort = size/productivity

  • r

Effort = constant1 + size x constant2