You are on page 1of 11

Journal of Web Engineering, Vol. 17, No.

6 (2018) 1851-1861
©Journal of Web Engineering

Modern Metrics (MM): Size Estimation of Modern Software and


its Metrics Analysis
John T Mesia Dhas
Research Scholar, Department of Computer Science and Engineering
Vel Tech Rangarajan Dr. Sagunthala R&D Institute of Science and Technology
Chennai, Tamil Nadu
jtmdhas@ymail.com

Dr. C.R. Bharathi


Associate Professor, Department of Electronics and Communication Engineering
Vel Tech Rangarajan Dr. Sagunthala R&D Institute of Science and Technology
Chennai, Tamil Nadu
crbharathi@veltechuniv.edu.in

T.S.Shiny Angel
Assistant Professor, Department of Software Engineering
SRM Institute of Science and Technology
Chennai
shinyangeldavid@gmail.com

J. Sheeba
Associate Professor
Mohamed Sathak A.J Academy of Architecture
Chennai
sheeba4archi@gmail.com
Abstract: The actual size estimation of the modern versatile software is very hard with existing methods. A novel
method Modern Metrics (MM) analyse all the possible functional units and complexity factors of the modern
software and give the actual size of the software. This new method considers internal operations, Data Base, System
Development Life Cycles, output formats, international standards and multiple software usage. It increases the
accuracy of the results and also reflects good results in cost, size and time constraints. This paper explains the
procedure for finding the size of the software using MM and also compare with traditional Function Point (FP)
methods.

Keywords: Modern Metrics (MM), Function Points (FP), Modern Metric Size (MMSize), Modern Function Points (MFP)

I. INTRODUCTION
Technology of man reduces the radius of the Globe. Every day the existing technologies are changing and a
new one is emerging. The modern technologies are giving abundant to the people for their fertile living.
Computers, software and internet are playing vital role in the dynamic face of the World. Now the calculating
machine is enhanced in to governance machine. Millions of people are working with Information Technology
(IT) and IT enabled services, millions of software are developed. So regulations, standardisation and
authentication are required in this field. Many organisations and protocols are available for doing those things.
But the size estimation of the software is one of the challenging issues in the software industry.
Many empirical methods are available to measure the size of the software. But which will not give the
accurate size of the modern versatile software. So a new technique is required, its metrics should accept all the
requisites of the modern software. A new technique to measure the size of the modern software is Modern
Metrics (MM).
Modern Metrics (MM) is an Indian Metrics (IM) which will give the size of modern software through some
basic calculations based on Modern Function Points (MFP). It analyses all the functional parameters based on
user and developer perspectives. It is very simple. Its cost, size and time are rationally less to the traditional
Function Points (FP).
II. MODERN METRICS
Modern Metrics (MM) is a simple technique which will give the size of the software based on updated
Modern Function Points (MFP).

1
Journal of Web Engineering, Vol. 17, No.6 (2018) 1851-1861
©Journal of Web Engineering

A. Architecture of MM

The architecture of Modern Metrics is shown in the following Fig. 1

Fig.1. Architecture of MM
.

A. Functional Units of MM

There are eight functional units are present in MM:


a) External Inputs (EI): Input given to the system through input devices.
b) Internal Inputs (II): The constants and internal assignments of the system.
c) External Outputs (EO): The results received from the system through output devices.
d) Internal Operations (IO): The complete individual operational cycle of the function in the
system but which is not under any other functional unit.
e) Data and Text (DT): 8000 words (manual typing speed of a person per day) [21] in a text
document is a functional unit of DT. The DT may not take part any operation and it may
be historical data, help files, images or other text documents.
f) External Inquiries (EQ): The external questions raised from the user during the execution
time for checking the accuracy of the system.
g) Internal Logical Files (ILF): It is a supporting software or data present in the system for
executing the software successfully.
h) External Interface Files (EIF):. It is a supporting software or data present in the external
system for executing the software successfully.

B. Functional Units with Metric Values of MM

The eight functional units are ordered according to their complexity, the metrics are: Low, Average,
High or Very High, using a set of prescriptive standards tabulated in TABLE I.
TABLE I. FUNCTIONAL UNITSWITH WEIGHTING FACTORS

Weighting Functional Units


Factors EI II EO IO DT EQ ILF EIF
Low 3 3 4 3 4 3 7 5
Average 4 4 5 4 5 4 10 7
High 6 6 7 6 7 6 15 10
Very High 9 9 10 9 10 9 22 14

B. The Metrics and its Weighting Factors of MM


The numeric weighting factor for the functional metrics are in the following TABLEII,
TABLE II. NUMERIC WEIGHTING FACTOR

Weightage EI II EO IO DT EQ ILF EIF

2
Journal of Web Engineering, Vol. 17, No.6 (2018) 1851-1861
©Journal of Web Engineering

Low 3 3 4 3 4 3 7 5
Average 4 4 5 4 5 4 10 7
High 6 6 7 6 7 6 15 10
Very High 9 9 10 9 10 9 22 14

C. MM Complexity Adjustment Factors (MMCAF)


The following TABLE III is calculated the degree of influence of Complexity Adjustment Factors
(CAF):
TABLE III. CAF

S. Factors Scale of Factors


No Nil Secondar Modera Averag Important Essential Value
(0) y (1) te (2) e (3) (4) (5)
1 Does the system need reliable backup and recovery?[16]
2 Is data communication essential? [16]
3 Are there dispersed processing functions? [16]
4 Is performance multifaceted and precarious? [16]
5 Will the system run in an existing heavily used operational
environment? [16]
6 Does the system essential on line data entry?[16]
7 Does the on line data entry needs the input transaction to be
built over multiple screens or operations? [16]
8 Is the master file updated on line?[16]
9 Is the inputs, outputs, files, or inquiries multifaceted?[16]
10 Is the inner processing multifaceted?[16]
11 Is the code planned to be reusable?[16]
12 Are conversion and installation built-in in the design?[16]
13 Is the system planned for many installations in different
organizations?[16]
14 Is the application planned to ease change and comfort of use
by the user?[16]
15 Is the system using indexed or list data (single index or multi
index)?
16 Whether the system using more than one SDLC models?
17 Is the system using more than one programming language,
Data Base Management System (DBMS), Web tools, Drivers
etc.?
18 Is the networking environment using more than one network
topologies?
19 Is the system installed in different nations and uses different
social, cultural, economic and environmental law?
20 Is the system giving multiple form of output?
21 Is the trial version and model version of software
development affecting the system?
22 Is User Interface influencing the system?
Total CAF

D. Different function Point types of E-Commerce System

The following table i list out all the function point types and its functional units of Modern Software

TABLE IV E-Commerce Function Points

S.No Application Type Functional Type Functional Unit


1 Application Programs Application External Inputs (AEI) EI
Application Internal Inputs (AII) II
Application External Output (AEO) EO
Application Internal Operations (AIO) IO
Application External Inquiries (AEQ) EQ
Application Internal Logical Files (AILF) ILF
Application External Interface Files (AEIF) EIF
2 Web Pages Webpage External Inputs (WEI) EI
Webpage Internal Inputs (WII) II
Webpage External Outputs (WEO) EO
Webpage External Inquiries (WEQ) EQ

3
Journal of Web Engineering, Vol. 17, No.6 (2018) 1851-1861
©Journal of Web Engineering

Webpage Multimedia System Files (WMSF) II


Webpage Multimedia Drivers (WMD) ILF
Webpage Navigation Points (WNP) EIF
Webpage Dynamic Points (WDP) ILF
3 Database Database External Input (DEI) EI
Database Internal Inputs (DII) II
Database External Outputs (DEO) EO
Database External Queries (DEQ) EQ
Database Size (DS) II
Database Keys (DK) ILF
Database Table Relationships (DTR) ILF
Database Remote Accessing (DRA) EIF
4 Networking & Security User Names (SUN) EI
Securities Security Passwords (SP) EI
Security Outputs (SO) EO
Security Algorithms (SA) ILF
Security Encryption Keys (SEK) ILF
Security Decryption Keys (SDK) ILF
Networking System Distribution (NSD) EIF
6 Documents Document External Inputs (DEI) EI
Document External Inquiries (DEQ) EQ

E. Algorithm for MM

Algorithm Modern Metrics


1. Declare and initialise variables
Initialise variables for functional units EI, II, EO, IO, DT, EQ, ILF and EIF as zero.
Initialize variables for count functions FEI, FII, FEO, FIO, FDT, FEQ, FILF and
FEIF as zero.
Initialise variables for finding average functional units AEI, AII, AEO, AIO, ADT,
AEQ, AILF and AEIF.
Initialise variables for weightage of functional units WEI, WII, WEO, WIO, WDT,
WEQ, WILF, and WEIF.
Initialise variables for unadjusted Function Points UEI, UII,UEO, UIO, UDT, UEQ,
UILF, and UEIF
Initialise variable for unadjusted Modern Metrics Function Point UMMFP
Initialise other variables CAF, MMCAF, MMSize
2. Analyse functions
a) External Input:
Analyse the entire function and find all the External Inputs and each
occurrence of it increases EI as one.
After completing the analysis and at least one EI value present in the
function then increment the value of FEI as one.
b) Internal Input:
Analyse the entire function and find all the Internal Inputs and each
occurrence of it increases II as one.
After completing the analysis and at least one II value present in the
function then increment the value of FII as one.
c) External Output:
Analyse the entire function and find all the External Outputs and each
occurrence of it increases EO as one.
After completing the analysis and at least one EO value present in the
function then increment the value of FEO as one.
d) Internal Operations
Analyse the entire function and find all the Internal Operations and each
occurrence of it increases IO as one.

4
Journal of Web Engineering, Vol. 17, No.6 (2018) 1851-1861
©Journal of Web Engineering

After completing the analysis and at least one IO value present in the
function then increment the value of FIO as one.
e) Data and Text
Analyse all the historical data, help files and other documents in the
function and count the words of it then perform the division operation,
which is the words count is divided by 8000 then take the quotient value, if
the quotient value is greater than zero then add quotient with DT and
increment the value of FDT as one.
f) External Inquiries
Analyse the entire function and find all the External Inquiries and each
occurrence of it increases EQ as one.
After completing the analysis and at least one EQ value present in the
function then increment the value of FEQ as one.
g) Internal Logical Files
Analyse the entire function and find all the Internal Logical Files and each
occurrence of it increases ILF as one.
After completing the analysis and at least one ILF value present in the
function then increment the value of FILF as one.
h) External Interface Files:
Analyse the entire function and find all the External Interface Files and each
occurrence of it increases EIF as one.
After completing the analysis and at least one EIF value present in the
function then increment the value of FEIF as one.
Step 2 is repeated until all the functions are analysed.
3. Find the average of functional units
AEI = EI / FEI
AII = II / FII
AEO = EO / FEO
AIO = IO / FIO
ADT = DT / FDT
AEQ = EQ / FEQ
AILF = ILF / FILF
AEIF = EIF / FEIF
4. Find the weightage of functional units
a) Weightage of External Input:
If AEI <= 3 then
WEI = 3
Elseif AEI > 3 and AEI <= 4 then
WEI = 4
Elseif AEI > 4 and AEI <= 6 then
WEI = 6
Else
WEI = 9
End If
b) Weightage of Internal Input:
If AII <= 3 then
WII = 3
Elseif AII > 3 and AII <= 4 then
WII = 4
Elseif AII > 4 and AII <= 6 then
WII = 6
Else
WII = 9
End If
c) Weightage of External Output:
If AEO <= 4 then
WEO = 4
Elseif AEO > 4 and AEO <= 5 then
WEO = 5

5
Journal of Web Engineering, Vol. 17, No.6 (2018) 1851-1861
©Journal of Web Engineering

Elseif AEO > 5 and AEO <= 7 then


WEO = 7
Else
WEO = 10
End If
d) Weightage of Internal Operations:
If AIO <= 3 then
WIO = 3
Elseif AIO > 3 and AIO <= 4 then
WIO = 4
Elseif AIO > 4 and AIO <= 6 then
WIO = 6
Else
WIO = 9
End If
e) Weightage of Data and Text:
If ADT <= 4 then
WDT = 4
Elseif ADT > 4 and ADT <= 5 then
WDT = 5
Elseif ADT > 5 and ADT <= 7 then
WDT = 7
Else
WDT = 10
End If
f) Weightage of External Inquiries:
If AEQ <= 3 then
WEQ = 3
Elseif AEQ > 3 and AEQ <= 4 then
WEQ = 4
Elseif AEQ > 4 and AEQ <= 6 then
WEQ = 6
Else
WEQ = 9
End If
g) Weightage of Internal Logical Files:
If AILF <= 7 then
WILF = 7
Elseif AILF > 7 and AILF <= 10 then
WILF = 10
Elseif AILF > 10 and AILF <= 15 then
WILF = 15
Else
WILF = 22
End If
h) Weightage of External Interface File:
If AEIF <= 5 then
WEIF = 5
Elseif AEIF > 5 and AEIF <= 7 then
WEIF = 7
Elseif AEIF > 7 and AEIF <= 10 then
WEIF = 10
Else
WEIF = 14
End If
5. Unadjusted Function Point calculation:
UEI = FEI * WEI
UII = FII * WII
UEO = FEO * WEO
UIO = FIO * WIO

6
Journal of Web Engineering, Vol. 17, No.6 (2018) 1851-1861
©Journal of Web Engineering

UDT = FDT * WDT


UEQ = FEQ * WEQ
UILF = FILF * WILF
UEIF = FEIF * WEIF
6. Unadjusted Modern Metrics Function Point calculation:
UMMFP = UEI + UII + UEO + UIO + UDT + UEQ + UILF + UEIF
7. Modern Metrics Complexity Adjustment Factor:
The Complexity Adjustment Factors (CAF) is valued using table III
MMCAF = (0.25 + 0.01 x CAF)
8. Modern Metrics Size calculation:
MMSize = UMMFP * MMCAF
9. Stop

F. First Page of Modern Metrics Size (MMSize) Estimation

Fig. 2. First Page

G. Calculating FUs of MM
All the classes and functions are analysed and listed the corresponding FU using following Fig. 3.
format. Each class uses separate sheet for the calculation and the columns count will be changed based on
number of functions present in a class.

7
Journal of Web Engineering, Vol. 17, No.6 (2018) 1851-1861
©Journal of Web Engineering

Fig. 3. Functional Units of MM

H. Unadjusted MM FPs
The Functional Units and its corresponding weightage is multiplied and find the UMMFP.
TABLE V. UNADJUSTED MM FPS

S. Functional Total Number of Total Average Functional Weigh Weightage UMMFP


No Units Functions(TF) Functional Units (AFU = TFU / ting (W) (TF * W)
Units (TFU) TF) Factor
1 EI
2 II
3 EO
4 IO
5 DT
6 EQ
7 ILF
8 EIF
Total UMMFP

I. MM Complexity Adjustment Factors (MMCAF)


The MMCAF is calculated using the following formula (MMCAF could not exceed 35%):
MMCAF = (0.25 + 0.01 x CAF) (1)
CAF is calculated using table III complexity factors
J. MMSize

MMSize is the size of the software based on Modern Metrics. It is calculated using the formula:
MMSize = UMMFP x MMCAF (2)

III. COMPARISON AND CASE STUDY


Here the Addhar Card Processing System software is used for analysing the performance of FP and
MM. It is a student project done at The Palm Consultancy Services, Chennai, India. The Operating System is
Windows 8, Programing Language is C#.Net, DBMS is SQL Server and the Web tool is Java Script. In this
study analyses the performance of traditional FP and MM with various parameters and the results are tabulated.
To find the size of the software, only one person was involved, he took 3 days (19 Hours) for traditional FP and
2 days (12 Hours) for MM

8
Journal of Web Engineering, Vol. 17, No.6 (2018) 1851-1861
©Journal of Web Engineering

A. Traditional Function Point(FP) Method


The following TABLE VI tabulated all the Functional Units of traditional FP and calculates the
Unadjusted Function Points (UFP) of the software.
TABLE VI. TRADITIONAL FP
S. Functional Weighting Number of Weightage Total Total
No Units Factor Functions Weightage
Low 10 3 30
1 EI Average 8 4 32 152
High 15 6 90
Low 6 4 24
2 EO Average 12 5 60 224
High 20 7 140
Low 2 3 6
3 EQ Average 4 4 16 52
High 5 6 30
Low 18 7 126
4 ILF Average 6 10 60 246
High 4 15 60
Low 32 5 160
5 EIF Average 10 7 70 270
High 4 10 40
UFP 944

The various Complexity factors are valued and calculated the Complexity Adjustment Factors (CAF).
Complexity Adjustment Factor (CAF) of traditional FP = 1.25
Traditional FP size of the software = 1180 FP

B. Modern Metrics (MM) Method


The following TABLE VII displayed all the Functional Units of traditional FP and calculates theUnadjusted
MM Function Points (UMMFP) of the software.
TABLE VII. Updated UMMFP
S.No Functional Total Number Total Average Functional Weighting Weightage UMMFP
Units of Functions Functional Units (AFU = TFU / TF) Factor (W) (TF x W)
(TF) Units (TFU)

1 EI 33 69 2.090909091 Low 3 99

2 II 23 100 4.347826087 Average 4 92

3 EO 38 124 3.263157895 Low 4 152

4 IO 6 11 1.833333333 Low 3 18
5 DT 7 20 2.857142857 Low 4 28
6 EQ 11 16 1.454545455 Low 3 33
7 ILF 29 29 1 Low 7 203
8 EIF 46 87 1.891304348 Low 5 230
Total UMMFP 855

The various Complexity factors are valued and calculated MMCAF


MMCAF = 1.07
MMSize = 914.85 MMSize

C. Comparison of FP & MM with Intermediate Results

9
Journal of Web Engineering, Vol. 17, No.6 (2018) 1851-1861
©Journal of Web Engineering

The following bar chart shows the performance of MM over traditional FP based on intermediate results of
the calculation.
FP& MM Intermediate Results and Size of Aadhar Processing System

1400

1200

1000

800

600

400

200

0
EI EO EQ ILF EIF UFP CAF Size

FP MM

D. Comparison of FP & MM with other parameters

The following bar chart shows the performance of MM over traditional FP based on output of the
calculation.

FP & MM with other parameters


20
18
16
14
12
10
8
6
4
2
0
Time Days Person productivity

FP MM

E. Advantages of MM
The traditional FP has only five FUs but MM has eight FUs and FP has only 14 CAF but MM has 22
CAF. So MM will cover all the FUs of the modern software. So that the defects per FP is negligible.
The MM using very simple calculations, so the time, cost, size and effort are effective comparatively
the traditional FPs.

IV. CONCLUSION

10
Journal of Web Engineering, Vol. 17, No.6 (2018) 1851-1861
©Journal of Web Engineering

The MMSize is a novel method for the software size estimation, it covers all the Functional Units and
Complexity factors. Its results also good comparatively all other traditional methods. So MM method is the best
method for estimating the size of the modern software.

REFERENCES
[1] Noureldin A.Z Adem, Zarinah M. Kasirun, “Automating Function Points Analysis Based on Functional and non-Functional
Requirements Text”, IEEE, 2010, Vol. 5, pp. 664-669.
[2] Juan J. Cuadrado-Gallego, Pablo Rodríguez-Soria,Alfonso González, Dácil Castelo, SaahilHakimuddin, “Early functional size
estimation with IFPUG unit modified”, 9th IEEE/ACIS International Conference on Computer and Information Science, IEEE
Computer Society,2010, pp. 729-733.
[3] Edilson J. D. Cândido, RoselySanches,”Estimating the size of web applications by using a simplified function point method”,
2004 IEEE, Supported by CNPq-Brazil.
[4] Luís M. Alves, Sérgio Oliveira, Pedro Ribeiro, Ricardo J. Machado, “An Empirical Study on the Estimation of Size and
Complexity of Software Applications with Function Points Analysis”, 2014 14th International Conference on Computational
Science and Its Applications, IEEE Computer Society, 2014, pp. 27-34.
[5] Erika Corona, Michele Marchesi, Giulio Barabino, Daniele Grechi, Laura Piccinno, “Size Estimation of Web Applications
through Web CMF Object”, WETSoM 2012, Zurich, Switzerland, IEEE, 2012, pp. 14-20.
[6] Archana Srivastava, Dr. Syed Qamar Abbas, Dr.S.K.Singh, “Enhancement in function point analysis”, International Journal of
Software Engineering & Applications (IJSEA), Vol.3, No.6, November 2012, pp. 129-136.
[7] Dr. N. Balaji, N. Shivakumar , V. VignarajAnanth, “Software Cost Estimation using Function Point with Non Algorithmic
Approach”, Global Journal of Computer Science and Technology Software & Data Engineering, Volume 13, Issue 8, Version
1.0, 2013, pp. 1-5.
[8] Capers Jones, “A new business model for Function Point metrics”, Capers Jones & Associates LLC, Version 8.0, May 8, 2008,
pp. 1-50.
[9] Capers Jones, “High Efficiency Defect Removal for Software Projects”, IFPUG Metric views February 2016, Vol-10, Issue-1,
pp. 5-8.
[10] Amit Javedekar, “SNAP: Going beyond Sizing non Functional Requirements”, IFPUG Metric views August 2015, Vol-9, Issue-
2, pp. 16-18.
[11] SushmithaAnantha, AmolkumarKeote, “Aligning Productivity Measurement with Agile Delivery”, IFPUG Metric views January
2015, Vol-9, Issue-1, pp. 4-6.
[12] “Metric views”, IFPUG MetricViews February 2016, Vol. 10, Issue 1, www.ifpug.org.
[13] “Metric views”, IFPUG MetricViews August 2016, Vol. 10, Issue 2, www.ifpug.org.
[14] “Metric views”, IFPUG MetricViews February 2017, Vol. 11, Issue 1, www.ifpug.org.
[15] John T MesiaDhas, C.R. Bharathi, ” Relative Analysis of Sizing Methods in the sense of E-Commerce system”, International
Journal of Applied Engineering Research ISSN 0973-4562 Volume 10, Number 18 (2015), pp. 39808-39816.
[16] MesiaDhas, John T, C.R. Bharathi, “ Risks Associated to Size Estimation of E-Commerce System using Function Point based
Estimation Techniques”, Indian Journal of Science and Technology, Vol 9(7), DOI: 10.17485/ijst/2016/v9i7/85148, February
2016.
[17] John T MesiaDhas, C.R. Bharathi, “ E-Commerce System Size using User Based Function Points”, International Journal of
Applied Engineering Research ISSN 0973-4562 Volume 12, Number 16 (2017), pp. 6115-6122 .
[18] T. S. Shiny Angel, John T. MesiaDhas, “Requirement Engineering Model for Web Applications”, Indian Journal of Science and
Technology, Vol 10(11), DOI: 10.17485/ijst/2017/v10i11/112289, March 2017.
[19] Futrell RT, Shafer DF, Shafer LI, “Quality software project management”, Upper River Saddle, USA: Prentice Hall; 2008.
[20]Capers Jones, “Software Engineering Best Practices: Lessons from Successful projects in the top companies”, Tata McGraw Hill,
2010, pp. 1- 643.
[21] Pam Morris, “The Cost of Speed Version 1.0”, Total Metrics, May 2010, www.totalmetrics.com.

11

You might also like