Functional Point Analysis And Database Computer Science Essay

Published:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

TWF Property Group who is our client is a leading property rental management company which provides property rental service across Singapore. The current TWF Property Group had a headquarters located in the central city and several branches across the city. Each branch not only uses spreadsheet with alphabet label tab to record their clients and renters information, they also file a hard-copy into a filing cabinet in alphabet order for reference.

The staffs' information is stored in a spreadsheet format and was printout in hardcopy and kept by the branch manager locked in a key press cabinet. The branch manager had to send monthly reports in spreadsheet format via email to the HQ on rent reports and staff management. Each time a renter walk-in to a branch to enquiry about other property availability in other location, the staff had to call the other location branch to retrieve the information for the renters.

TWF Property Group Headquarters management has decided to centralized and restructure all the processes to increase productivity and upholding the motto: 'Serving You Better'. TWF Property Group had enraged Optus Ltd for developing the Property Rental System.

1.1 PLANNING

The objective of this report is to gain a better insight of the current situation that TWF Property Group is facing. Here are some main issues:

Each branch is using their set of spreadsheet template to record information.

Lack of centralized system to search for renter inquiries, client information, staff information, owner properties information and renter information.

Frustrated renters due to long hours of waiting time for search property inquiries.

As the Project Manager of Optus Ltd, we had undertaken the task to develop a Property Rental System that has to be interactive and user friendly, it must also be able to handle the renters' inquiries and demands. Hence we decided to develop this new system known as 'Property Match System (PMS)' and detailed study of the user requirements. We will use Function Point Analysis (FPA), Line of Codes (LOC) and COCOMO methods to start planning the new system's requirements and make the necessary assumption and cost estimate on the new system.

FUNCTION REQUIREMENTS

After a detail study of the user requirement, the system 'Property Match System' is determined to consist of ten modules based on the functionality. The modules below had been justified and highlighted to fix the scenario requirements in each module description.

Branch Modules

This module will be consisted of the unique branch number, address, telephone number, fax number and the manager.

Manager Module

The module is only accessible by the manager as it contains confidence information such as car allowance, monthly bonus and date of join. It also able to review the performance of the manager by extracting query from the Rental Agreement

Staff Module

Lots of users/staffs will be accessing the system, ranging from normal staffs, supervisors, managers and the management. This module consisted of the staff information like staff number, name, address, telephone number, sex, date of birth, national insurance number (NIN), position, salary, and the date the staff joins the company. It will also contain the Next-Of-Kin, emergency contact number, address and the relationship. A separate screen will be provided to show the NOK of the staff.

Access control will be set according to on the different level based on their job position and job scope since not all members of staff are assigned to a supervisor. Search queries function will be built for Managers and Supervisor to update the staff information.

Property Module

This module will contain information on each branch property for rent, which includes the property number, address, and property type, number of rooms, monthly rent and the contact details and address of the property owner. This module is built to support two types of property owners - Private and Business. The staff could select the property type from the checkbox allocated on the Property screen. All the property will consist of a unique owner number. View queries function will be built to allow staff to search and update.

Renter Module

The Renter modules will consist of renter name, contact, address, preferred type of accommodation and the maximum rent the renter is willing to pay. It will also have renter unique number across the branches. Once the information is stored, the data can be pulled out from the database into another entry screen, thus saving time for the staff to re-key in the information.

Renter Appointment History Module

Whenever the clients who are interested to view the various properties, viewing history will be logged in the screen which includes the renter name, address of the renter, contacts, and the address of the property, the date of viewing and any comments. Hence a renter not only can view once but many properties. Search queries had to be pulled out information from Renter and Property modules.

Rental Agreement Module

After the renter had decided to rent out the property, an agreement had to be made between the property and the renter. This agreement will consist of the rental agreement, the name, address, property number and address, monthly rent agreed, date of the rental period from the start to finish. After the agreement had been entered into the system, the staff would click on the print button to print the auto-generated property agreement and inform the Property Owner and the Renter to sign a formal agreement.

Advertising Modules

As required, property details are advertised on local and national newspaper showing it details. It includes information on property number, address, type, and date of the advert, name of the newspaper and the cost of the advert.

Newspaper Advert Module

Newspaper Advert modules will contain the newspaper name, address, telephone number, fax number and contact name. This is very important as normally the staff will contact the newspaper press to make any last minute adjustment to the address and pricing before submitting.

Main Menu Module

The main menu will be displayed after the staff login with their login unique id and password. The staff will be shown with the required functions. Hence, setting the right access control level for according to the job title and job scope will ensure that this is what they do in their job requirement.

It is a requirement to have each employee maintaining a strong password on the login screen to the system. Apart from it being the core modules, it must also be user-friendly and easy for the staff to navigate.

2.1 ASSUMPTION

Given the requirement of the system by scenario, we can establish the list of assumptions to give boundary / scope of the new system and to control the system development accordingly.

List of assumptions based on the following modules:

Branch Module

The feature is only accessible to supervisors and managers. It will have all the branch details.

Manager Module

The system will be only accessible by the managers in the Staff module as Access Control Level (ACL) is implemented on the system.

Staff Module

Firstly, the system is going to be accessible by different Staff, the Access Control Level (ACL) will be implemented. Secondly, the system stores the Next-Of-Kin information.

Property Module

The Property could be either Business Type or Private Type, a check box will be provided to the Staff to input the data according. The system will contain the details of the Property which are for renting out.

Renter Module

The system will only stores

Renter Appointment Module -

Rental Agreement Module - The system will stored the valid rental agreement for record and audit purposes.

Advertising Module

Newspaper Advert Module

Main Menu Module

ESTIMATION

In order to work out and calculate the cost of the project, the effort needed to build the project and the time for the project to complete; we need to measure the size of the application. We have chosen three ways to do that.

Functional Point Analysis (FPA)

Functional Point Analysis is a method to measure the functional size of an information system. Simply to understand it better, a function point is to software as Mile is to Distance or Kilogram is to weight. In short, it is a Unit of Measure for software.

Lines of Code (LOC)

Line of Code (LOC) is a method based on the estimation of the Line of code use in the project, by counting the number of lines in the text of the application's source code. Hence the system is developed using a specific tools and programming languages.

Constructive Cost Model (COCOMO)

COCOMO is a model that allows users to estimate the cost, effort, and schedule when planning a new software development activity.

3.1 FUNCTIONAL POINT ANALYSIS

With the function point analysis method, it breaks the system to smaller component; hence it is easy to understand and analyses. Functional Point Analysis system can be broken into three major parts:

Data Functions Type

• Internal Logical Files (ILF)

Each Logical Master file is counted.

• External Interface Files (EIF)

All readable interfaces that are used to transmit information to another are counted.

Transactional Functions Type

• External Inputs (EI)

• External Outputs (EO)

• External Enquiries (EQ)

General System Characteristics

3.1.1 Internal Logical Files (ILF) / Files

Branch Module

Manager Module

Staff Module

Property Module

Renter Module

Renter Appointment Module

Rental Agreement Module

Advertising Module

Main Menu Module

3.1.2 External Interface Files (EIF) / External Files

Map Location

Currency Convertor

Export to Print to Template Form from Account Software

3.1.3 External Inputs (EI) / User Inputs

Advertise No

Agree Monthly Rental

Branch Address

Branch Fax

Branch Tel

Branch Uni No

Date of Advertise

Date of View

Manager Car Allowance

Manager DOJ

Manager IC

Newspaper Address

Newspaper Contact

Newspaper No

Newspaper Name

Prop Monthly Rent

Prop No of Rooms

Prop Own Name of Business

Prop Own Type of Business

Prop Owner Name

Prop Owner Tel

Prop Owner Uni ID

Property Address

Property No

Property Type

Property Uni No

Rental Period End

Rental Period Start

Renter Address

Renter Comments

Renter Max Rent

Renter Name

Renter Prefer Accom

Renter Tel

Renter Uni No

Staff Address

Staff Date of Join

Staff DOB

Staff Gender

Staff Name

Staff NIN

Staff NOK Name

Staff NOK Relationship

Staff NOK Tel

Staff Password

Staff Position

Staff Salary

Staff Supervisor IC

Staff Tel

Staff Uni No

View History ID

Edit Button

Add Button

Update Button

Del Button

Main Button

Search Button

List Button

Branch Button

Client Button

Renter Button

Staff Button

Advertise Button

Appointment Button

Manager Button

Export Button

3.1.4 External Internal Files (EIF)

External Output / User Output

General Module

Staff form screen

Branch form screen

Property form screen

Renter form screen

Main Menu form screen

Appointment form screen

Agreement form screen

Advertisement form screen

Date

Staff Module

Error / Invalid / Required message

Staff report

Manager Module

Error / Invalid / Required message

Performance Report

Branch Module

Error / Invalid / Required message

Branch Report

Property Module

Error / Invalid / Required message

Property Report

Renter Module

Error / Invalid / Required message

Renter Report

Renter Appointment Module

Error / Invalid / Required message

Appointment report

Advertising Module

Error / Invalid / Required message

Advertisement Report

Renter Agreement Module

Error / Invalid Date

Agreement Statement

Newspaper Advert Module

Error / Invalid / Required message

Newspaper Report

3.1.5 External Enquiries (EQ)

General

Selection of Branch menu screen

Selection of Staff menu screen

Selection of Property menu screen

Selection of Renter menu screen

Selection of Appointment menu screen

Selection of Advertise menu screen

Selection of Lease Agreement menu screen

Get branch info data

Get Staff data

Get Property data

Get Renter data

Get Appointment data

Get Advertise data

Get Rental Agreement data

Staff

Get Manager data

Rental Appointment

Get Renter Appointment History data

Advertising

Get Newspaper Advertise data

3.1.6 General System Characteristic

The general system characteristic is

Item

Factors

F1

Reliable on back-up and recovery

F2

Data communication

F3

Distributed functions

F4

Performance

F5

Run in existing heavily utilized operational environment

F6

Online data entry and update

F7

Multiple Operation Ease

F8

Online update for master files

F9

System complex

F10

Internal processing complex

F11

Code reusability

F12

Conversion and installation complex

F13

Multiple installation/site

F14

Ease of use by user

Each component is on a rating of 0 - 5 by it degree influence, whereby 0 is no essential, 3 is neutral and 5 is essential.

3.2 CALCULATING FUNCTION POINT TABLE

In order to calculating the Function Point, there is a need to identify the degree of complexity and weight-age for each component.

Function points are first computed by calculating an Unadjusted Function Point Count (UFC). The counts refer to the number of inputs, user output, user inquiries, files and external interfaces. They are multiplied in accord to the corresponding complexity weight, and the results are total up to providing the UFC.

Computing Unadjusted Function Point Count

Measurement Parameter

Count

Weighting Factor

Chosen Weighing Factor Value

Total

Simple

Average

Complex

No of user input

66

X

3

4

6

3

198

No of user output

26

X

4

5

7

5

130

No of inquiries

17

X

3

4

6

4

68

No of files

9

X

7

10

15

10

90

No of external interface

3

X

5

7

10

5

21

Count Total, Un-Adjusted Function Point (UFC)

507

Computing the sum of General System Characteristic

Beside the weighted function points, they are factors that affect the system/project. These factors which are number affect the size of the project effort and are rank on it degree of influence from "0"- no influence, "3" - neutral to "5" - essential.

The degree of influence summed up based on each given weight-age of the General System Characteristic (GSC).

Using the complexity table, we obtain with the total complexity factor by it weight-age.

Item

Factors

Weight

F1

Reliable on back-up and recovery

5

F2

Data communication

5

F3

Distributed functions

4

F4

Performance

5

F5

Run in existing heavily utilized operational environment

4

F6

Online data entry and update

5

F7

Multiple Operation Ease

4

F8

Online update for master files

5

F9

System complex

4

F10

Internal processing complex

3

F11

Code reusability

4

F12

Conversion and installation complex

3

F13

Multiple installation/site

2

F14

Ease of use by user

5

Total Complexity Multiplier:

58

The total Complexity Multiplier is 58.

Computing the Value Adjusted Factor

Thirdly, the Value Adjustment Factor (VAF) is calculated by 0.65 + (Sum of GSCs x 0.01) using the Fenton 1997 formula.

VAF = 0.65 + (58 x 0.01) = 1.23

Computing the Final Adjusted Function Point

Lastly, the Final Adjusted Function Point is UFC X VAF.

Final Adjusted Function Point = 507 * 1.23

= 411.38

3.3 COST, EFFORT AND TIME ESTIMATION

We will compute the cost, effect and time estimation based on the assumed monthly salary and value of output.

Description:

Value:

Final Adjusted Function Point

411.38

Assumed Productivity (P)

10 FP/pm

Average Monthly Salary

$4,000

Cost Per Function Point (C/FP)

$4,000 / 10 = $ 400

Overall Cost Estimation

Total FP X C/FP

= 411.38 Ã- $400

≈ $165,000

Human Effort (E)

Total FP / Assumed Productivity

411.38 / 10 ≈ 42 person month / 1 person for 42

Duration

Effort (E) / Person Assumption

≈ 42 / 5

≈ 9 months

We assume 5 people to complete the software in 9 months.

In order to factor the cost of hiring professionals to work on the project, we cater a reasonable monthly salary of $4000 to complete 10 FP per Month. Since we are assuming the cost, the overall project will cost $165,000. It will be impossible for the project to be completed for 42 months for 1 Person; hence we projected 5 people to complete the project in 9 months.

3.4 LINE OF CODE

LOC is a method use to calculated software development measure; a total count of estimate lines of code use in the entire project/system. It enables users to calculate the effort time and total cost needed for the project. LOC is also sometimes referred as SLOC (Source Lines of Code).

In order to calculate LOC, a gearing factor had to be chosen. By using 'The David Consulting Group (DSG) number', the ranged can be from the minimum, the average, the median, the maximum.

We will estimate the entire project base derived from the FP Analysis. We will use the following Programming Language which is ASP (Web), JavaScript and SQL (Database).

Language

Average

Median

Low

High

ASP

56

50

32

106

SQL

31

30

13

80

JavaScript

54

55

45

63

With the chosen language, the estimated LOC per FP :

= ASP (50) + JavaScript (45) + SQL (80)

= 175

The round off estimated total Lines of Code

= 175 * 411.38 ≈ 72000

Why ASP, JavaScript and SQL is chosen as the programming languages.

Being User Friendly is the main factor of this Property Match System software. The three languages meet the software fundamental requirements.

Using SQL for JavaScript, this tremendously reduced the number of lines of code required especially in querying for table.

3.4.1 LOC Cost and Effort Estimation

Function

Estimated LOC

LOC/PM

$/LOC

Cost

Effort(Month)

Login

500

300

10

5000

1.666666667

Main Menu

1200

200

20

24000

6

Branch Menu

1000

200

15

15000

5

Staff Menu

1500

250

20

30000

6

Property Menu

1300

200

15

19500

6.5

Renter Menu

1300

200

15

19500

6.5

Renter Appointment Menu

1500

300

15

22500

5

Renter Agreement Menu

1000

200

15

15000

5

Advertising Menu

1000

200

10

10000

5

Newspaper Menu

1000

200

10

10000

5

Total:

72000

 

 

170500

51.67

After the expected value for estimation variable has been determined, historical LOC / FP data are applied and person months, costs etc are calculated using the following formula

Productivity = KLOC / Person-month

Quality = Defects (Total No. of errors found) / KLOC

Cost = $ / LOC

Total Project Cost = $170,500

Estimated Effort = 52

Ten functions had been chosen and derived from FP and the total estimated value of the LOC is 11300. The Staff Menu, the Property Menu, Rental Menu and the Property Menu have the most estimated LOC as it holds all the company staff, the client, and renter information.

CONCLUSION

Using the Function Point Analysis method, the estimated overall cost of Property Match System will be around $154,000. This estimated amount will be used to hire a team of programmers and professionals, consisting of eight members with the productivity of 20 FP/pm with an effort of 18 pm to finish the project in 18 months.

Using the LOC Analysis method, the estimate cost of system will cost $200,000. With this estimated amount, it will be used to hired a team of professionals and programmers of eight with the productivity of 1344 loc/pm with an effort of 20 pm to finish the project in 18 months

The LOC Analysis has given sustainable support to the estimation values of the cost, effort and time derived from the FP analysis. With the given estimation figures, the project is workable to be implemented.

Comparing the FP estimation with LOC method of software estimation, the effort values are yield different values with a variance of 10%, the estimated total budgets of both methods almost same with a difference of $1000.

Hence we decided to choose Function Point as our main factor to calculate the efforts, time and cost. Function Point Analysis does not depend on the language used, platform used, etc, unlike LOC Analysis.

REFERENCES

Function Point Languages Table - Version 4.0 Nov 2009 © Copyright 2009 by Quantitative Software Management, Inc. All Rights Reserved.

http://www.qsm.com/?q=resources/function-point-languages-table/index.html

Writing Services

Essay Writing
Service

Find out how the very best essay writing service can help you accomplish more and achieve higher marks today.

Assignment Writing Service

From complicated assignments to tricky tasks, our experts can tackle virtually any question thrown at them.

Dissertation Writing Service

A dissertation (also known as a thesis or research project) is probably the most important piece of work for any student! From full dissertations to individual chapters, we’re on hand to support you.

Coursework Writing Service

Our expert qualified writers can help you get your coursework right first time, every time.

Dissertation Proposal Service

The first step to completing a dissertation is to create a proposal that talks about what you wish to do. Our experts can design suitable methodologies - perfect to help you get started with a dissertation.

Report Writing
Service

Reports for any audience. Perfectly structured, professionally written, and tailored to suit your exact requirements.

Essay Skeleton Answer Service

If you’re just looking for some help to get started on an essay, our outline service provides you with a perfect essay plan.

Marking & Proofreading Service

Not sure if your work is hitting the mark? Struggling to get feedback from your lecturer? Our premium marking service was created just for you - get the feedback you deserve now.

Exam Revision
Service

Exams can be one of the most stressful experiences you’ll ever have! Revision is key, and we’re here to help. With custom created revision notes and exam answers, you’ll never feel underprepared again.