Top Banner
Function Point Analysis Lecture 12
27

Lecture 12 - Function Point Case

Jul 11, 2016

Download

Documents

Jahanzeb
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Lecture 12 - Function Point Case

Function Point AnalysisLecture 12

Page 2: Lecture 12 - Function Point Case

Job

JobAssignment

Dependent

Employee

Salaried Emp

Hourly Emp

Currency

Location

HR APPLICATION

Currency

Fixed Assets

E/R Model

Page 3: Lecture 12 - Function Point Case

Determine Unadjusted FPStep 1: Identify data functions

• Internal Logical Files (ILF)• External Logical Files (EIF)

Step 2: Identify complexity of data functions• Data Element Type (DET)• Record Element Type (RET)

Step 3: Identify transaction functions• External Inputs (EI)• External Output (EO)• External Inquiries (EQ)

Step 4: Identify complexity of transaction functions• Data Element Type (DET)• File Type Referenced (FTR)

Page 4: Lecture 12 - Function Point Case

Identification of ILFsEmployee• Is the group of data or control information is logical and user

identifiable?• No. Employee must include salaried employee, hourly employee,

and dependent to represent user requirement to add employee.• Is the group of data maintained through an elementary

process within the application boundary?• Yes. Maintain Employee Use Cases

Page 5: Lecture 12 - Function Point Case

Identification of ILFsSalaried Employee• Is the group of data or control information is

logical and user identifiable?• No. Salaried Employee must include employee, hourly

employee, and dependent to represent user requirement to add employee.

• Is the group of data maintained through an elementary process within the application boundary?• Yes. Maintain Employee Use Cases. There is no

separate process that maintains Salaried Employee only.

Page 6: Lecture 12 - Function Point Case

Identification of ILFsHourly Employee• Is the group of data or control information is

logical and user identifiable?• No. Hourly Employee must include employee, salaried

employee, and dependent to represent user requirement to add employee.

• Is the group of data maintained through an elementary process within the application boundary?• Yes. Maintain Employee Use Cases. There is no

separate process that maintains Hourly Employee only.

Page 7: Lecture 12 - Function Point Case

Identification of ILFsDependent• Is the group of data or control information is

logical and user identifiable?• No. Dependent must include employee, salaried

employee, and hourly employee to represent user requirement to add employee.

• Is the group of data maintained through an elementary process within the application boundary?• Yes. Maintain Employee Use Cases. There is no

separate process that maintains Dependent only.

Page 8: Lecture 12 - Function Point Case

Identification of ILFsCurrency• Is the group of data or control information is

logical and user identifiable?• Yes. User requires that local currencies be converted

to enable the HR application to maintain all needed employee data.

• Is the group of data maintained through an elementary process within the application boundary?• No. The user stated that the data is retrieved from the

currency application system

Page 9: Lecture 12 - Function Point Case

Identification of ILFsLocation• Is the group of data or control information is logical and user

identifiable?• Yes

• Is the group of data maintained through an elementary process within the application boundary?• No. Maintained by FAS

Page 10: Lecture 12 - Function Point Case

Identification of ILFsJob Assignment• Is the group of data or control information is logical and user

identifiable?• Yes.

• Is the group of data maintained through an elementary process within the application boundary?• Yes. The process is that of entering job assignment information

into the HR system.

Page 11: Lecture 12 - Function Point Case

Identification of ILFsJob • Is the group of data or control information is logical and user

identifiable?• Yes. The user requires the ability to inquire and report on job

information.• Is the group of data maintained through an elementary

process within the application boundary?• Yes. Maintain job use cases.

Page 12: Lecture 12 - Function Point Case

Identification of ILFs• Job and Job Assignment are ILFs• Currency and Location are not ILFs• Employee, Salaried Employee, Hourly Employee,

Dependent?• They must be lumped together.

• Is this group an ILF?• Ask both questions again for this group. Answer is yes

to both.• ILFs are: Employee, Job, Job Assignment

Page 13: Lecture 12 - Function Point Case

Identification of EIFsCurrency• Is the group of data or control information is logical and

user identifiable?• Yes.

• Is the data referenced by the application being counted? • Yes.

• Is the group of data not maintained by the application being counted?• Yes.

• Is the group of data maintained by another application?• Yes

Page 14: Lecture 12 - Function Point Case

Identification of EIFsLocation• Is the group of data or control information is logical and

user identifiable?• Yes.

• Is the data referenced by the application being counted? • Yes.

• Is the group of data not maintained by the application being counted?• Yes.

• Is the group of data maintained by another application?• Yes

Page 15: Lecture 12 - Function Point Case

Identification of EIFs• Currency and Location are EIFs

Page 16: Lecture 12 - Function Point Case

Data Functions - Complexity• Data Element Type (DET)

• Unique, user recognizable, non-repeated field• Record Element Type (RET)

• User recognizable subgroup of data elements within an ILF or EIF

Page 17: Lecture 12 - Function Point Case

Data Functions - Complexity• Matrix for ILF & EIF

RET’s DET’s

1-19 20-50 51+1 L L A

2 to 5 L A H6 or more A H H

ILF Low 7

Average 10High 15

EIF Low 5

Average 7High 10

Page 18: Lecture 12 - Function Point Case

Determine ComplexityCount RETs• Employee (3 subgroups)

• Employee + Salaried Employee• Employee + Hourly Employee• Dependent

• Job (0 subgroups) – count as 1 RET• Job Assignment (0 subgroups) – count as 1 RET• Currency (0 subgroups) – count as 1 RET• Location (0 subgroups) – count as 1 RET

Page 19: Lecture 12 - Function Point Case

Determine ComplexityCount DETs• Employee

• < 20• Job

• < 20• Job Assignment

• < 20• Location

• < 20• Currency

• < 20

Page 20: Lecture 12 - Function Point Case

Determine Complexity

• Employee• 3 RETs, <20 DETs Complexity = Low

• Job• 1 RETs, <20 DETs Complexity = Low

• Job Assignment• 1 RETs, <20 DETs Complexity = Low

• Location• 1 RETs, <20 DETs Complexity = Low

• Currency• 1 RETs, <20 DETs Complexity = Low

Page 21: Lecture 12 - Function Point Case

Contribution of ILFs and EIFs• ILF

• Low 3 x 7 = 21• Avg 0 x 10 = 0• High 0 x 15 = 0

• EIF• Low 2 x 5 = 10• Avg 0 x 7 = 0• High 0 x 10 = 0

Total = 31

Page 22: Lecture 12 - Function Point Case

Transactional Functions• External Inputs

– Data Entry by User– Data or file feeds from External Systems– Maintains one or more ILFs

• External Outputs– Reports created by the system, with some processing/calculation

involved• External Inquiries

– Reports created by the system, with no processing/calculations involved

Page 23: Lecture 12 - Function Point Case

Identification of EIs, EQs, and EOs

Use Case Data Presented

File Maintained

Calculation Performed

Transaction Type

Add Employee Yes – PI EI Update Employee Yes – PI EI Delete Employee Yes – PI EI Inquire an individual employee Yes – PI No EQ View a list of employees Yes – PI Yes – total calculated EO Add Job Yes – PI EI Update Job Yes – PI EI Delete Job Yes – PI EI Inquire on individual jobs Yes – PI No EQ View a list of jobs Yes – PI Yes – total calculated EO Assign an employee to a job Yes – PI EI Transfer Employee Yes – PI EI Delete job assignment Yes – PI EI Inquire an individual job assignment Yes – PI No EQ View a list of job assignments Yes – PI Yes – total calculated EO Inquire on Location information Yes – PI No EQ

Page 24: Lecture 12 - Function Point Case

Transactional Complexity• Matrix of EI’s

FTR’s DET’s 1-4 5-15 16+

0-1 L L A2 L A H

3 or more A H H

Low 3Average 4

High 6

Page 25: Lecture 12 - Function Point Case

Transactional Complexity• Matrix of EO’s & EQ’s

FTR’s DET’s

1-5 6-19 20+0-1 L L A2-3 L A H

4 or more A H H

Low 4Average 5

High 7

Page 26: Lecture 12 - Function Point Case

Use Case Transaction

Type FTRs DETs Complexity

Add Employee EI Employee, Currency, Location

> 4 High

Update Employee EI Employee, Currency, Location

> 4 High

Delete Employee EI Employee, Job Assignment

1 Low

Inquire an individual employee

EQ Employee < 20 Low

View a list of employees EO Employee < 20 Low Add Job EI Job < 16 Low Update Job EI Job < 16 Low Delete Job EI Job Assignment,

Job 1 Low

Inquire on individual jobs

EQ Job < 20 Low

View a list of jobs EO Job < 20 Low Assign an employee to a job

EI Employee, Job, Job Assignment

> 4 High

Transfer Employee EI Employee, Job, Job Assignment

> 4 High

Delete job assignment EI Job Assignment < 20 Low Inquire an individual job assignment

EQ Job Assignment < 20 Low

View a list of job assignments

EO Job Assignment < 20 Low

Inquire on Location information

EQ Employee, Location

7 Average

Page 27: Lecture 12 - Function Point Case

Contribution of Transaction Functions• EI

• Low 5 x 3 = 15• Avg 0 x 4 = 0• High 4 x 6 = 24

• EQ• Low 3 x 3 = 9• Avg 1 x 4 = 4• High 0 x 6 = 0

• EO• Low 3 x 4 = 12• Avg 0 x 5 = 0• High 0 x 7 = 0

Total = 64