ArticlePDF Available

Implementation of Function Point Analysis in Measuring The Volume Estimation of Software System in Object Oriented and Structural Model of Academic System

Authors:

Abstract and Figures

In the software development required a fidelity and accuracy in determining the size or value of the software to fit the operation is executed. Various methods of calculation has been widely applied to estimate the size, and one of them is by using the method of Function Point Analysis (FPA). The method is then applied by author to measure the complexity of an academic information system by using the two modeling approaches, namely object oriented and structural models. Measurements in this paper consists of several stages, namely describing the information system that will be built into the UML models and structured. Then the model is analyzed by calculating Crude Function Points (CRP), Relative Complexity Adjustment Factor (RCAF), and then calculate its function point. From the result of a calculation using the FPA to the academic system software development, FP values of object oriented model obtained for 174,64 and the FP value of structured models for 180,93. The result of function point that will be used by developers in determining the price and cost of software systems to be built.
Content may be subject to copyright.
International Journal of Computer Applications (0975 8887)
Volume 70 No.10, May 2013
1
Implementation of Function Point Analysis in Measuring
the Volume Estimation of Software System in Object
Oriented and Structural Model of Academic System
Dian Pratiwi
Trisakti University
Jl. Kyai Tapa No.1
Jakarta, 15000, Indonesia
ABSTRACT
In the software development required a fidelity and accuracy
in determining the size or value of the software to fit the
operation is executed. Various methods of calculation has
been widely applied to estimate the size, and one of them is
by using the method of Function Point Analysis (FPA). The
method is then applied by author to measure the complexity of
an academic information system by using the two modeling
approaches, namely object oriented and structural models.
Measurements in this paper consists of several stages, namely
describing the information system that will be built into the
UML models and structured. Then the model is analyzed by
calculating Crude Function Points (CRP), Relative
Complexity Adjustment Factor (RCAF), and then calculate its
function point. From the result of a calculation using the FPA
to the academic system software development, FP values of
object oriented model obtained for 174,64 and the FP value of
structured models for 180,93. The result of function point that
will be used by developers in determining the price and cost
of software systems to be built.
General Terms
Volume Software Estimation
Keywords
Function Point, Crude Function Point, Relative Complexity
Adjustment, UML
1. INTRODUCTION
The success of a software project is determined by various
factors that are related each other in the project. A project will
be called a success if all the requirements can be fulfilled, the
cost is not excessive (overflow), did not pass through the
schedule (deadline) that has been planned. This can be done
either with a way of estimating the size of software volume
systems that will provide the precision of the complexity and
value of the product prices on the software project. So that the
developer can plan resources, cost, and duration required
precisely to build a piece of software.
In this paper, we will discuss the use of Function Point
Analysis (FPA) method to measuring the volume estimated of
a software system, namely the academic system an
educational institution which will be compared on the
estimation of the model using the Unified Modeling Language
(UML) based object model with the Data Flow Diagram
(DFD) based structured model.
2. FUNCTION POINT ANALYSIS (FPA)
FPA method is a part of The FSM (Functional Size
Measurement) method was first introduced by Albrecht in
1979 as a method for measuring the amount of complexity
and functionality in a software project. In the FPA procedure
there are a variety of transactions, comprising the incoming
and outgoing data to be processed on the system. Each
transaction in the FPA will be mapped to the following
models
Fig 1: Function Point Method [2]
In the picture above can be seen, The Function Point Model
consists of [3] :
1. External Input (EI)
Functions that move data into the application without
presenting data manipulation.
2. External Output (EO)
Functions that move data to user and presents some data
manipulation.
3. External Inquiries (EQ)
Functions that move data to user without presenting data
manipulation.
4. Internal Logical Files (ILF)
The logic in the form of fixed data managed by the
application through the use of External Input (EI)
5. External Interface Files (EIF)
The logic in the form of fixed data used by the application
but did not run in it
In the computation phase, each transaction is sorted by the
amount of data that they use. Logical transaction or file sorted
based on the entities (called RET or Referenced Entity Types)
and attributes (called DET or Data Entity Types). Functional
transaction sorted based on the attribute numbers (DET),
which moved out of the line and the numbering of logical
International Journal of Computer Applications (0975 8887)
Volume 70 No.10, May 2013
2
transaction references. Then the whole categorized into ‘low’,
‘average’, or ‘high’ which each category given value as the
value of Function Point (FP) [1].
The stages are there in determining the function point is [5]:
1. Calculating The CFP (Crude Function Points)
The number of functional components of the system were
first identified and followed to evaluated the complexity
of quantization weight of each component. Weighting was
the summed and become the number of CFP. CFP
calculation involves five types of software system
components following :
The number of input applications
The number of output applications
The number of online query applications.
This application related to query against the data
stored
The number of logical files or tables which involved
The number of external interfaces
An output or input interface that can be connected to
the computer through data communications, CDs,
floppy disks, etc.
Then given a weighting factor to each of the above
components based on its complexity. The table below is
an example of the weighting blank :
Table 1. Blank of CFP Calculation [6]
2. Calculating the complexity of transcription factors of
RCAF (Relative Complexity Adjustment Factor) for the
project.
RCAF is to calculate the complexity assessment of
software system from several characteristics of subject.
Rating scale from 0 to 5 is given to each subject that most
affect the development effort required. Example of RCAF
assessment form can be seen as follows :
Table 2. RCAF Assessment Form [6]
3. Calculating Function Points by the formula [6]
FP = CFP x (0.65 + 0.01 x RCAF) (1)
3. OBJECT ORIENTED MODEL
Object oriented model that is intended in this paper is a model
using UML (Unified Modeling Language) which has several
UML diagrams as a form of visualization, specification, and
documentation of software systems. The division is in the
UML diagrams such as use-case diagram, class diagram,
sequence diagram, activity diagram, state-chart diagram,
collaboration diagram, component diagram, and deployment
diagram. Of the eight diagrams in the UML diagram, which
will be used in this paper is only two, in which the behavioral
models are use-case diagram, and structural models is a class-
diagram.
Use-case diagram is a diagram that shows the connection
between the actor, the subject (or system), and use-case. This
diagram describes the system in a box and use-case in an oval
shape. A use-case represents the functionality of the system,
and the actor who access it. While the class diagram is a
diagram that shows a collection of the declaration of the
model elements, such as classes, class content and
relationships between classes [4].
4. STRUCTURAL MODEL
A structured approach in this paper is to use a model of Data
Flow Diagram (DFD) and Entity Relationship Diagram
(ERD). DFD is a diagram to describe the system as a network
of functional process that connected to each other by the data
flow. While the ERD is a model from the logical structure of
database.
In DFD, there are some important components (according
Yourdan and De Marco) which is component as terminators in
a box of a source or destination, the components in the form
of a circle of as a description of the activities that will be/are
being implemented consisting of input and output, data store
component in the form of two horizontal lines are lined up as
an image of computerized storage, and data flow components
depicted in the form of an arrow as data transfer from one
section to another system.
In ERD, the modeling made up of several components,
namely the entities, attributes, relationships, cardinality ratio
and constraint participant. An entity is an object that will
store, produce information. Attributes are the characteristics
of the entity or relationship that provides a detailed
explanation of the entity or relationship. Relationship is the
relationship between one or more entities. The cardinality
ratio is a limit to the number of connection one entity to
another entity. While the constraint participant clarify whether
the existence of an entity depends on its relationship with
other entities
5. PROCEDURE & IMPLEMENTATION
In this study, will be built a system of academic services for
students at a university, where the system will provide
services such as filling the Study Plan Card or KRS online,
check the schedule of lectures, and check the courses value.
5.1 UML Modeling
Use-Case Diagram
International Journal of Computer Applications (0975 8887)
Volume 70 No.10, May 2013
3
Students
Filling The Study
Plan Card (KRS)
Checking The
Courses Schedule
Checking The
Courses Value
Confirming The Study
Plan Card (KRS)
Updating The Study
Plan Card (KRS)
«uses»
«extends»
Academic System
Fig 2: Use Case Diagram of Academic System
Class Diagram
Fig 3: Class Diagram of Academic System
Function Point Calculation
Function Point (FP) calculation could be mapped into use-
case and class diagram which have built before through
the FP equation, and the results of the two diagrams can
be analyzed following :
The number of input application = 7
Namely : login, logout, filling KRS, confirming KRS,
updating KRS, checking the courses schedule,
checking the courses value.
The number of output application = 5
Namely : KRS, subject, lecture schedule, lecturer,
classroom.
The number of online query = 7
Namely : showing courses schedule, saving KRS,
updating KRS, showing courses value, showing
lecturers name, showing classroom, verify the
username and password (login).
The number of logic file = 5
Namely : lecturer, courses value, subject, classroom,
student.
The number of external interface = 0
Table 3. CFP Calculation of Academic System based
on Object Oriented Model
Then calculate its RCAF :
Table 4. RCAF Calculation of Academic System based
on Object Oriented Model
Then, the FP of academic system based on UML
modeling can be calculated :
FP = CFP x ( 0.65 + 0.01 x RCAF )
= 148 x ( 0.65 + 0.01 x 53 )
= 174.64
5.2 Structural Modeling
Entity Relationship Diagram
Student
Name
NIM
Birth Date
Gender
Password
Address
KRSFilling
Year of Academic Semester
Lecturer Name
Time
Courses Name
Range of SKS
Room Code
Checking Values of
Courses Schedule
GPA GPA of Semester
Courses Code
Courses Name
Room Code Lecturer Name
Amount of SKS
Time
1 1
M
1
NN
11
Fig 4: ERD of Academic System
Data Flow Diagram
International Journal of Computer Applications (0975 8887)
Volume 70 No.10, May 2013
4
Fill The Study
Plan Card
(KRS) View Schedule
View The
Value of Study
Students
Login
KRS
NIM, Password
Semester
Semester
Semester
List of Course, Time,
Room, Lecturer
Code & Course’s
Name
Lecturer, amount of SKS Temporary Courses
Time & Rooms
Prerequisite
Confirmation Transcripts
Code & Course’s
Name
Courses
Schedule
Lecturer
Time & Rooms
Code & Course’s
Name
Grade, Amount of
SKS, GPA
1
24
3
Fig 5 : DFD of Academic System
Function Point Calculation
Same as in UML, function point calculation of structured
model can be done by mapping ERD and DFD that have
previously built into the formula of function point, and the
results of the two diagrams can be analyzed as follows :
The number of input application = 4
Namely : login, filling KRS, checking the courses
schedule, checking the courses value.
The number of output application = 3
Namely : KRS, courses schedule, transcripts
The number of online query = 9
Namely : login, showing courses schedule, filling
KRS, checking KRS, showing courses value, showing
lecturers name, showing classroom, checking
transcript, updating KRS.
The number of logic file = 6
Namely : lecturer, courses value, subject, classroom,
student, time
The number of external interface = 0
Table 5. CFP Calculation of Academic System based
on Structural Model
Table 6. RCAF Calculation of Academic System based
on Structural Model
Then the function point of academic system based on
structured modeling can be calculated :
FP = CFP x ( 0.65 + 0.01 x RCAF )
= 163 x ( 0.65 + 0.01 x 46 )
= 180.93
6. CONCLUSIONS
From this paper can be taken several conclusions including:
1. Function point analysis method can serve as an alternative
to calculating the volume of software system based on the
complexity, both for the object-oriented model as well as
a structured model.
2. The use of function point analysis method requires an
experienced professional intervention because its very
subjective calculations.
3. Due to the more calculation based on data processing
representation, function point analysis method must also
supported additional data to strengthen the estimated of
software system volume that have been produced.
4. Function point that is produced for object-oriented and
structured model not significantly different, where
function point of object-oriented is 174.64 and function
point of structured model is 180.93. So it can be stated
that the use of object-oriented method or structure method
quite good to give an idea has the estimation results of the
process estimation.
7. REFERENCES
[1] A. Zivkovic, R. Ivan, and H. Marjan, “Automated
Software Size Estimation based on Function Points using
UML Models”, Information and Software Technology,
Elseiver, 2005
[2] T. Fetcke, A. Abran, and T. Nguyen, “Mapping The OO-
Jacobsen Approach to Function Points”, Proceedings of
Tools 23’97 – Technology of Object Oriented Language
and Systems, IEEE Computer Society Press, California,
1998
[3] K.v.d. Berg, D. Ton, and O. Rogier, “Functional Size
Measurement Applied to UML-base User Requirements”,
Retrievable from doc.utwente.nl, 2005
[4] Anonymous, “UML 2.0 Superstructure (draft)”,
Retrievable from www.omg.org , 2003
[5] M.D. Kusrini, and Iskandar, “Pengukuran Volume
Software berdasarkan Kompleksitasnya dengan Metode
Function Point”, Retrievable from dosen.amikom.ac.id,
2006
[6] Cah, “The Function Point Method”, Pearson Education
Limited, Retrievable from www.cs.nott.ac.uk, 2004
... In addition, the prediction based on data flow diagram (DFD) has been considered before [5,6], [7], [25]. It was mostly based on DFD combined with Entity-Relationship Diagram (ERD) to calculate the number of Data Element Type (DET), Record Element Type (RET), File Type Referenced (FTR), and then based on FPA to determine the number of FPs. ...
... Dian Pratiwi [25] calculated the FPs both on the object-oriented model (UML use case diagram, class diagram) and structure model (ERD, DFD) and found that the difference between them is not much. ...
Conference Paper
Software effort estimation in a very early stage of the application development lifecycle is always a challenge for project managers. Many researchers have proposed different methods. They have certain advantages and limitations. This study proposed an approach called Early Effort Estimation from the data flow diagram with a complexity tag added that could estimate the effort estimation in a very early stage of the software development cycle. This method can be obtained by evaluating the customized data flow diagram, a data flow diagram with specific tag values. We also proposed a tool that implemented this method.
... In addition, the prediction based on data flow diagram (DFD) has been considered before [5,6], [7], [25]. It was mostly based on DFD combined with Entity-Relationship Diagram (ERD) to calculate the number of Data Element Type (DET), Record Element Type (RET), File Type Referenced (FTR), and then based on FPA to determine the number of FPs. ...
... Dian Pratiwi [25] calculated the FPs both on the object-oriented model (UML use case diagram, class diagram) and structure model (ERD, DFD) and found that the difference between them is not much. ...
Chapter
Full-text available
Software effort estimation in a very early stage of the application development lifecycle is always a challenge for project managers. Many researchers have proposed different methods. They have certain advantages and limitations. This study proposed an approach called Early Effort Estimation from the data flow diagram with a complexity tag added that could estimate the effort estimation in a very early stage of the software development cycle. This method can be obtained by evaluating the customized data flow diagram, a data flow diagram with specific tag values. We also proposed a tool that implemented this method.
... ditentukan tahapan-tahapan yang digunakan untuk mengukur kualitas dari software atau perangkat lunak. Setelah dilakukan pengamatan pada jurnal lainnya seperti, Kusrini & Yogyakarta, 2015;Metode, Metrik, Studi, Informatika, & Sains, 2013;Pratiwi, 2013;Rachmat & Kunci, 2017 yang juga menggunakan Function Point untuk mengukur perangkat lunak. ...
... They also used Service Oriented Architecture (SOA) and Model Driven Architecture (MDA) as their framework and used Unified Modeling Language (UML) as design tool. UML also used by [22] to analysis function point of AIS in Trisakti University. Their model scope only support for administrative purpose. ...
Article
Full-text available
Academic information system (AIS) was used by many higher education institutions (HEIs) to help in manage their academic affairs. Most of AIS used only for administrative purposes. With the emergence of Education 3.0 paradigm, the AIS must be support its characteristics. Education 3.0 characteristics involve learning and administrative purposes. Based on previous related studies, this research found that AIS must support learning purpose by integrating existing AIS with e-learning. The AIS also must support parents and industry involvement. To accommodate all new features above, the existing AIS must transform by following certain guide. A model needs to guide the transformation and Substitution Augmentation Modification Redefinition (SAMR) framework can be used for modeling.
Article
Full-text available
It is always better to have an idea about the future situation of a present work. Prediction of software faults in the early phase of software development life cycle can facilitate to the software personnel to achieve their desired software product. Early prediction is of great importance for optimizing the development cost of a software project. The present study proposes a methodology based on Bayesian belief network, developed to predict total number of faults and to reach a target value of total number of faults during early development phase of software lifecycle. The model has been carried out using the information from similar or earlier version software projects, domain expert’s opinion and the software metrics. Interval type-2 fuzzy logic has been applied for obtaining the conditional probability values in the node probability tables of the belief network. The output pattern corresponding to the total number of faults has been identified by artificial neural network using the input pattern from similar or earlier project data. The proposed Bayesian framework facilitates software personnel to gain the required information about software metrics at early phase for achieving targeted number of software faults. The proposed model has been applied on twenty six software project data. Results have been validated by different statistical comparison criterion. The performance of the proposed approach has been compared with some existing early fault prediction models.
Article
Full-text available
Key of successful software development is planning. To make a good planning is needed estimate the size of the software to be built. The size of the software is usually presented in the form of Lines of Code (LOC). Function Point Analysis (FPA) is the most common method used to estimate the size of the software in units LOC. Accuracy of the FPA can be improved by adjusting the weight values in the Function Point Complexity table. Previous research does the adjustment of the weight values of fuzzy logic Mamdani, and this study was conducted to analyze the accuracy of the result comparison between Mamdani method from previous studies with Tsukamoto method. The evaluation is done by comparing the relative error between the measurement of pure FPA, FPA with Mamdani modification, Tsukamoto modification, and with the actual value of the software LOC. A total of 13 software was used for testing. The result, FPA gives the best results with the smallest error that FPA with Mamdani modification (2.3%), FPA with Tsukamoto modification (2.75%) and the pure FPA (3.51%). The average yield obtained processing time are: the smallest is with pure FPA method 1.1 ms, while the Tsukamoto method obtained processing time 1.9 ms and the largest is the Mamdani method is 3 ms.
Conference Paper
Full-text available
In the software development indispensable is the suitability and accuracy in determining the size or value of the software to fit the operation to be performed. A wide variety of calculation methods have been widely used to estimate the size of the software, one of which is by using Function Point Analysis (FPA). Volume calculation software based on a scale of complexity. Since the point of measurement is highly subjective, in order to maintain consistency and validity of the results, the method should be run by an experienced professional. This method is then applied by the authors to measure the complexity of academic information system STIKOM Dinamika Bangsa Jambi using structured modeling approach. Measurements were performed in this study consisted of depictions information system is built into the structure. Which is then analyzed by counting models Crude Function Points (CRP), the relative complexity of Adjustment Factor (RCAF), and then calculate the point function. From the results of calculations using the FPA to software quality measurement academic system STIKOM Dinamika Bangsa Jambi obtained value FP 166.32 is good. Function point value produced will be used by developers in determining the price and the cost of software systems to be built or developed.
Article
Estimation of reliability and the number of faults present in software in its early development phase, i.e., requirement analysis or design phase is very beneficial for developing reliable software with optimal cost. Software reliability prediction in early phase of development is highly desirable to the stake holders, software developers, managers and end users. Since, the failure data are unavailable in early phase of software development, different reliability relevant software metrics and similar project data are used to develop models for early software fault prediction. The proposed model uses the linguistic values of software metrics in fuzzy inference system to predict the total number of faults present in software in its requirement analysis phase. Considering specific target reliability, weightage of each input software metrics and size of software, an algorithm has been proposed here for developing general fuzzy rule base. For model validation of the proposed model, 20 real software project data have been used here. The linguistic values from four software metrics related to requirement analysis phase have been considered as model inputs. The performance of the proposed model has been compared with two existing early software fault prediction models.
Article
Full-text available
Software volume measuring can be basic for planning resource, cost and duration of software development. It also become base to determine software price. In this paper, the writer explain a measurement software volume using function point method. An example also included to help understanding the method. The usage of function point method need profesional touch, because the measurement is very subjecctive. The method calculated based on data processing view. This method also needs additional data to improve the result. 1. Pendahuluan Pengukuran volume software telah menjadi suatu perbincangan hangat di kalangan pengembang dan pebisnis software. Bagi pengembang, mengukur volume dari software bermanfaat untuk merencanakan sumber daya, biaya dan durasi yang diperlukan untuk membangun software. Selain itu, pengembang juga dapat mengevaluasi kualitas produk dengan cara membandingkan volume sistem dengan banyaknya error (error-count) dalam software yang dikerjakan. Sementara dari perspektif bisnis, volume software dapat menjadi dasar untuk menentukan nilai harga dari produk software yang bersangkutan.
Conference Paper
Full-text available
The Function Point software measure does not require the use of a particular development technique. However, the high-level concepts of object-oriented development methods cannot be mapped directly to the concepts of Function Point Analysis. In order to apply this software measure early in the development process, the object-oriented concepts corresponding to transactional and data function types have to be determined. Object-oriented methods differ, especially in their early development phases. The Object-Oriented Software Engineering method of Jacobson et al. is based on so-called use cases. The viewpoint of this method is similar to Function Point Analysis in the sense that it concentrates on the application’s functionality from the user’s perspective. The OO-Jacobson approach identifies the functionality of an application with the requirements use case model. Data types are described with a domain or analysis object model on the requirements level. Our work proposes rules to map these models to the Function Point counting procedures. With the proposed rules, it is possible to count software developed with the OO-Jacobson method. Experimental counts have been conducted for three industry projects.
Article
There is a growing interest in applying standardized methods for Functional Size Measurement (FSM) to Functional User Requirements (FUR) based on models in the Unified Modelling Language (UML). No consensus exists on this issue. We analyzed the demands that FSM places on FURs. We propose a requirements space with several levels of refinement, and show how UML can be used to specify FURs at these levels. FSM can be applied at the product level of UML-based FURs. We discuss our experience for three case studies and with two FSM methods: Function Point Analysis (FPA) and COSMIC-Full Function Points (CFFP).
Article
A systematic approach to software size estimation is important for accurate project planning. In this paper, we will propose the unified mapping of UML models into function points. The mapping is formally described to enable the automation of the counting procedure. Three estimation levels are defined that correspond to the different abstraction levels of the software system. The level of abstraction influences an estimate's accuracy. Our research, based on a small data set, proved that accuracy increases with each subsequent abstraction level. Changes to the FPA complexity tables for transactional functions will also be proposed in order to better quantify the characteristics of object-oriented software.
Superstructure (draft)
  • Anonymous
Anonymous, " UML 2.0 Superstructure (draft) ", Retrievable from www.omg.org, 2003
The Function Point Method
  • Cah
Cah, "The Function Point Method", Pearson Education Limited, Retrievable from www.cs.nott.ac.uk, 2004
Mapping The OO-Jacobsen Approach to Function Points
  • T Fetcke
  • A Abran
  • T Nguyen
T. Fetcke, A. Abran, and T. Nguyen, "Mapping The OO-Jacobsen Approach to Function Points", Proceedings of Tools 23'97 -Technology of Object Oriented Language and Systems, IEEE Computer Society Press, California, 1998
UML 2.0 Superstructure (draft)
Anonymous, "UML 2.0 Superstructure (draft)", Retrievable from www.omg.org, 2003