Revised approach for the prediction of functional size of mobile application

Ziema Mushtaq (MANUU, Hyderabad, India)
Abdul Wahid (School of CSIT, MANUU, Hyderabad, India)

Applied Computing and Informatics

ISSN: 2634-1964

Article publication date: 4 August 2020

Issue publication date: 5 January 2024

1006

Abstract

Mobile applications affect our everyday activities and have become more and more information centric. Effort estimation for mobile application is an essential factor to consider in the development cycle. Due to feature complexities and size, effort estimation of mobile applications poses a continued challenge for developers. This paper attempts to adapt COSMIC Function Point and Unified Modeling Language (UML) techniques to estimate the size of a given mobile application. The COSMIC concepts capture data movements of the functional processes whereas the UML class analyzes them. We utilize the Use Case Diagrams, sequence diagrams and class diagrams for mapping the Function user requirements for sizing mobile applications. We further present a new size measurement technique; Unadjusted Mobile COSMIC Function points (UMCFP) to get the functional size of mobile application using Mobile Complex Factors as an input. In this study eight mobile applications were analyzed using UMCFP, Function Point Analysis and COSMIC Function Point. The results were compared with the actual size of previous Mobile application projects.

Keywords

Citation

Mushtaq, Z. and Wahid, A. (2024), "Revised approach for the prediction of functional size of mobile application", Applied Computing and Informatics, Vol. 20 No. 1/2, pp. 181-193. https://doi.org/10.1016/j.aci.2019.03.002

Publisher

:

Emerald Publishing Limited

Copyright © 2019, Ziema Mushtaq and Abdul Wahid

License

Published in Applied Computing and Informatics. Published by Emerald Publishing Limited. This article is published under the Creative Commons Attribution (CC BY 4.0) license. Anyone may reproduce, distribute, translate and create derivative works of this article (for both commercial and non-commercial purposes), subject to full attribution to the original publication and authors. The full terms of this license may be seen at http://creativecommons.org/licences/by/4.0/legalcode


1. Introduction

Many organizations depend on mobile applications to support their business and create global platform for their users. During the development of mobile applications, software development companies pass through the challenging aspect of its effort estimation. The cost of the project can be calculated once its efforts are estimated that depends on the overall size of an application. The overall cost is calculated by estimating overall efforts, cost, contingency and profit. Inappropriateness in effort estimation may lead to overestimation or underestimation i.e., over budgeting or under budgeting, both can cause software industry to be in a failed state, therefore, afford estimation is a crucial step that is an important role in the success of software development company, to carry out effort estimation for mobile application development it is necessary to know all the functional and Non-functional requirement of a mobile application. Thus, effort estimation, has acquired a huge importance in software development process as it depicts whether the project development is going in a profit or loss. The reviewed research papers [1,2] advocates the effectiveness of COSMIC FP for Mobile application size estimation. However, it was reported that the popularity of COSMIC FP was not enough to quantify it as a standard approach for mobile application effort estimation. Therefore COSMIC FP approach needs to continuously review and refine the way data movements are counted. Different researchers highlighted the need and importance of inclusion of functional user requirements used in estimating the size of mobile applications. Therefore the need of the hour is to further refine the parameters used in COSMIC FP with improving method of counting data movements. This may lead to more effective COSMIC FP estimation of size and efforts for mobile application development projects.

This paper uses UML modeling to provide functional user requirements of mobile applications and adapts COSMIC FP measuring approach for the estimation of functional size of mobile applications. The proposed model which is to be developed next is expected to deliver efficient results by minimizing the gap between actual and estimated efforts. The size is used as an input in Cost or Effort Estimation models which should be accurate; because the accurate calculation show real cost and effort estimations in mobile application development. To make Size estimation process more stabilize we conducted a revised research work to frame out the list of Mobile Complexity Factors and weighting factors on the basis of feedback from the industry people and researchers so to make sure the MCF’s are in line with the modern Mobile application development.

2. Related work

Several approaches were proposed to quantify Function User Requirements with the help of UML Diagrams. Mapping between COSMIC rules and UML components enables the modeler’s in software companies to assemble estimation oriented models so that the measurer can apply COSMIC rules in a precise and genuinely manner. By applying UML modeling with COSMIC rules it become easier for the COSMIC approach to be well fit in the software estimation process in particular and software development process in general. The first concept was given by Bévo et al. [3] where the author has mapped COSMIC rules with UML diagrams to represent function processes of application software. Van den Berg et al. [4] studied both FPA and COSMIC to represent Function user requirements (FUR) in the form of UML diagrams. This study advocates class diagrams, use case diagrams, behavioral diagrams to be used to show flow of events, functional processes, etc. In another study [5] the COSMIC concepts like functional processes, data groups, data movements, data attributes are established that are used with UML mapping. In a research study [6] COSMIC concept was used with state diagrams to see the dependence of functions with components of UML diagrams. The study of Lavaza L., [17] proposed the concept of mapping between UML diagrams and COSMIC rules. He used class diagram and component diagram to identify the functional processes and data movements with respect to each functional process. The mapping between COSMIC rules and UML diagrams are represented through Functional Requirement Model; where each Functional process was divided into four data movements Entry, Exit, Read and Write. Class diagrams, Use case diagram and sequence diagrams were mostly used in this research study to size the functional processes of mobile application. The calculation and identification of data movements in functional process are done on the basis of the instruction contained in the functional process. Data movement is a functional component that carries a single type of data group. Each data movement corresponds to certain data manipulations.

3. Process flow

In this study following methodology has been followed to achieve the desired results. The set of activities that involves several list of actions are described below:

  • Systematic review: It is a survey based study where the primary endpoint is to see the resemblance of selected parameters with modern day mobile application development. The detailed information for COSMIC FSM is analyzed that is to be used later in the measurement process. The concept of UML modeling is also revised in order to provide better understanding for mapping the parameters/mobile application requirements with COSMIC FSM approaches.

  • Mapping and measurement: This level of approach is composed of UML representation of mobile applications. Where different UML representations in the form of class diagrams are used in order to determine the aggregate number of COSMIC data movements/activities (READ, WRITE, ENTRY, EXIT) of different functional processes that count the overall size of a mobile application according to COSMIC rules.

  • Evaluation: New Mobile Sizing parameters are included for Mobile application cost estimation approach that is used to predict the Functional size of a mobile application which allows calculating Unadjusted Mobile COSMIC Function point (UMCFP). In this study eight mobile applications were analyzed to calculate the functional size and the estimated result was compared with the result of actual estimations of previous mobile applications. The Sequential process flow of this research work is shown below (see Figure 1).

4. COSMIC FP and UML representations

For the proposed sizing metrics, the mapping stage requirement is an important step to identify and count the summation of data movements in a mobile application to calculate the overall function size of any mobile application. In this study, Identification of data movements is carried out using COSMIC rules. The data movements are calculated using COSMIC concepts and UML diagrams. This concept of Mapping is used where UML diagrams represent functional processes, sub processes and hence data movements of mobile applications by applying COSMIC concepts. The mapping concepts between COSMIC and UML used in this study is shown in below Table 1 where the particular UML diagrams are used to represent respective COSMIC component:

Use case diagrams, Sequence diagrams and mostly class diagram are used for decomposition of user requirements into functional processes and sub functional processes to count the total number of data movements that represents the functional size of mobile application which is represented in Unadjusted Mobile COSMIC function points (UMCFP).

In the mapping process mostly class diagrams and Use case diagrams represent the functional process of a mobile application. Each class diagram represents the functional requirements that are to be delivered to the user. Once use case model where use case diagrams are used and the conceptual model where class diagrams are used is done, the next step is to apply COSMIC rules for each functional process that has instruction in it to identify and categorize it into Four major categories i.e., Read, Write, Entry and Exit according to the instruction in that particular process. Once all the identification of data movements is done, the next step is to calculate the Number of Reads, Number Of Writes, Number of Entries and Number of Exits against each functional process to obtain the size of mobile application represented as Unadjusted Mobile COSMIC Function points (UMCFP). The overall step of mapping for the proposed sizing approach is shown below in the Figure 2.

Implementing COSMIC concepts to Function user requirements of mobile application and hence identification of data movements results in functional size of mobile application called as Unadjusted Mobile COSMIC Function Points(UMCFP).The measurement of data movements is done by applying COSMIC concepts for each functional process in mobile application. The COSMIC function size measurement is achieved by dividing the mobile application into two divisions, Source and Destination which constitutes Functional user, System and Storage where the flow of instruction defines different types of identification of data movements which is described in below Table 2.

The data flow between Functional users, System and Storage can be a type of Entry, Exit, Read, and Write data movements according to the instruction in the functional process. This flow of process from source to Destination within a particular system can be seen in the following steps of activities as shown below (see Figure 3).

5. Identification of Mobile Complexity Factors

Mobile size measures are the mobile application parameters that represent the functional behavior of Mobile application. This study proposes Mobile Complexity Factors (MCF) to obtain size measuring parameters that influence functionality of mobile application development. The idea behind this work is to standardize the approach to obtain the functional size of mobile application. The literature review of the studies [715] have identified around 104 parameters/factors used by various researchers in their research work to represent different parameters of mobile application development. The nine parameters that were selected as Mobile complex parameters are shown in below given Table 3.

6. Categorizing Mobile Complexity Factors into Function size measures and Non Function size measures

These nine parameters as shown in Table 3 were revised through a questionnaire where nine questions were prepared and were forwarded to more than 140 persons who are directly or indirectly influenced by mobile application development. Out of 140, only 40 responses were received which were statistically interpreted to collect the final list of parameters that constitutes Mobile Complexity Factors and are shown below in Figures 4–6.

After collecting responses from different respondents a statistical representation shown in above figures from Figures 4 through 6, only six factors proposed for Mobile Complexity Factors are divided into two categories: Function Size Measurers (FSM), parameters that provide functionality (i.e., Number of external inputs, Number of application processing points, etc.) and Non-Function Size Measurers (NFSM) those provide dimensionality (i.e., Number of screens etc.) in Mobile application development as shown in Tables 4 and 5 respectively.

7. Mobile application size metrics (COSMIC plus Function Point)

The revised list of parameters shown in Tables 4 and 5 constitute Mobile Complexity Factors that directly influence the size of a mobile applications, i.e., the values obtained from MCF are directly proportional to the functional size of a mobile applications. The size that is calculated on the basis of Mobile Complex Factors (MCF) is called as Unadjusted Mobile COSMIC Function Points (UMCFP). The count of data movements for Function size measures are calculated by applying the COSMIC FP approach while as the count for Non function size measurer is calculated directly. Each counted value for Function size measurer and Non function size measurer is multiplied with the weighting factors that range from simple to complex as shown in Tables 6 and 7 Respectively. The resultant value of Mobile Complexity Factor’s (MCF) i.e., summation of function size measurer and summation of the Non function size measurer provides, is called as Unadjusted Mobile COSMIC Function Points (UMCFP). The inclusion of weighting factor in both FSM and NFSM determines the substance of that parameter in the present MAD process. UMCFP in Mobile Application Development (MAD) determines the overall functional size of mobile application that is obtained by below following equation:

(1)UMCFP=Σi=13(FSMiWi)+Σi=13(NFSMiWi)
where FSMi is the count for Function Size measures and NFSMi is the count for Non-Function Size measurers and Wi is the weight for each FSM and NFSM parameter to overcome its difficulty level in development phase. The weighting factors for FSM ranges from simple to complex where 0.5 stands for Simple, 1.5 stands for Average and 3 stands for complex while as for NFSM the weighting factors ranges from simple to complex where 0.5 stands for simple, 1 stands for average and 1.5 stands for complex shown in the Tables 6 and 7 below.

These Mobile Size measurers including Both Function size measures and Non function size measures were applied on eight Mobile applications projects that were collected from industry people through purposive sampling. These MCF’s were mapped into data movements with the help of COSMIC FP concepts and UML class diagram as discussed in the earlier section iv.

8. Results

In this study eight Mobile applications were analyzed by applying COSMIC FP to get their functional size. The functional processes were identified and decomposed into four data movements, i.e., Read, Write, Entry, Exit and hence were mapped to the required MCF’s. The summation of all the data movements constitutes the Unadjusted Mobile COSMIC Function Points (UMCFP) to determine the functional size of a mobile application which is an aggregation of the Functional size measurer and Non function size measurer as shown in Table 8 below. The corresponding weights are multiplied to both Functiona size measurer and Non-functional size measurers (see Table 8).

After applying Eq. (1) we get the unadjusted size of Mobile Complex Factors known as Unadjusted Mobile COSMIC Function Points (UMCFP) that is basically the functional size of a mobile application which delivers the functionality of the application to the user. In Table 8 Number of External inputs represents data movements Read and Exit and Number of External inputs represents data movements Write and Entry. The comparison of results achieved using Function Point Analysis (FPA), COSMIC Function Point and UMCFP with the actual size of mobile applications is shown in below Tables 8 and 9 and the same is represented graphically in the Figure 7.

The difference between the results of Actual size and the estimated size that are shown graphically in Figure 7 seems significant as we tried to reduce the size by not including the unnecessary data movements. The resultant value (UMCFP) that determines the functional size of mobile applications may be influenced by other cost drivers including Technical and Environmental factors to calculate the overall size of Mobile application. The Mobile Estimation Model will be next prepared on the basis of resultant value produced as shown in Table 9. The cost drivers will be included to carry out overall efforts/cost of Mobile application development.

9. Findings

In this Research study, eight Mobile application projects are included for the case study. The Unadjusted Mobile COSMIC function points (UMCFP) for each of the projects are calculated with the help of COSMIC FP and UML metrics. The resultant value that is UMCFP for each of the eight case studies represents the functional size of Mobile application development which is may be influenced by the other cost drivers including Technical and Environmental factors. So in order to predict the overall size of a mobile application it is important to include the values of other cost drivers with the value of Unadjusted Mobile COSMIC function points. Various recommendations that were incorporated into the developing Cost Estimation approach on the basis of feedback from different respondents are listed below:

  • a)

    Collecting and Analyzing Mobile Application Parameters.

  • b)

    Inclusion of Revised list for Mobile Complexity Factors (MCF).

  • c)

    Categorization of MCF into Function size measures and Non-function size measures.

  • d)

    Proposing revised weighting factors for each parameter to constitute Function size measurer and Non function size measurer.

10. Conclusion and future scope

In this study, an attempt for making Mobile size measurer is designed that overcomes the challenges imposed by other different existing models being used for mobile application size estimation process [1,2]. This paper has demonstrated COSMIC Plus measurement procedure for sizing functional requirements of mobile applications using UML representations. Mostly use case diagrams, sequence diagrams and class diagrams are referred for mapping Function user requirements of different mobile applications. The COSMIC FP and UML mapping is constructed to provide the functional size of mobile applications in UMCFP measurement unit. Mapping the COSMIC concepts in mobile applications using UML diagrams is used to identify and quantify the amount of data movements in that particular application. Unadjusted Mobile COSMIC function point makes it possible to identify data movements of both Function size measurers and Non function size measurers to be estimated using COSMIC–UML approach. In this study 4 mobile applications were collected from industry people. The results are encouraging where the estimated size aligned with Actual size of the previous projects showed positive deviation. In future there is a need of Identification of Cost drivers and a model for estimation of efforts/cost in Mobile application development to achieve more accuracy in the resultant value.

Figures

Sequence of Process Flow.

Figure 1

Sequence of Process Flow.

Stepwise activity list for Mapping and measurement of Data movements in Mobile application.

Figure 2

Stepwise activity list for Mapping and measurement of Data movements in Mobile application.

Steps of activities to count Data Movements.

Figure 3

Steps of activities to count Data Movements.

Ranking of parameters to be Mandatory for Mobile application development by different Respondents.

Figure 4

Ranking of parameters to be Mandatory for Mobile application development by different Respondents.

Ranking of parameters to be Important for Mobile application development by different Respondents.

Figure 5

Ranking of parameters to be Important for Mobile application development by different Respondents.

Ranking of parameters to be Moderate for Mobile application development by different Respondents.

Figure 6

Ranking of parameters to be Moderate for Mobile application development by different Respondents.

Comparative Analysis of Actual size and estimated size of Mobile applications.

Figure 7

Comparative Analysis of Actual size and estimated size of Mobile applications.

COSMIC and UML rules for mapping.

COSMIC ComponentUML Diagram
Functional UserUse case diagram
Functional processesUse case diagrams/Component diagram
Sub Functional processUse case diagrams/Component diagram
Data GroupsClass diagrams
Data attributesClass diagrams
Data movementsSequence diagrams

Cosmic rules for allocation of data movements.

Source to DestinationCommunication TypeAllocation of Data Movements
System to UserDirect communicationMark as a Read
System to systemDirect communicationMark as no data movement
System to storageDirect communicationMark as a Write
User to userDirect communicationMark as no data movement
User to systemDirect communicationMark as an Entry
User to storageIndirect communication through system
User to system Mark as an Entry
System to storage Mark as a Write
Storage to storageDirect communicationMark as no data movement
Storage to systemDirect communicationMark as one Read
Storage to userIndirect communication through system
Storage to system Mark as a Read
System to user Mark as an Exit

List of parameters constitutes MCF [16].

NumberMobile Complexity Factors (MCF)
1Number of external inputs.
2Number of external outputs.
3Number of multimedia components (images, videos).
4Number of animated files.
5Home screens, interactive screens.
6Number of links.
7Number of application processing points.
8Navigational structure.
9Number of mobile application development components.

List of Function size measures.

FactorFunction size parameter
M1Number of External Inputs
M2Number of External Outputs.
M3Number of Application Processing points.

List of Non-Function size measures.

FactorNon-Function size parameters
M4Number of multimedia components (images, videos).
M5Home screens, interactive screens.
M6Number of mobile application development components.

List of weighting factors for FSM.

Sr. NoValueDescription
W10.5Simple
W21.5Average
W33Complex

List of weighting factors for NFSM.

Sr. NoValueDescription
W10.5Simple
W21Average
W31.5Complex

Unadjusted Mobile COSMIC function points for eight case studies (Real life Mobile applications).

Project Id.Project NameNo. of External OutputsNo. of External InputsNo. of Application Processing PointsNo. of MultimediaNo. of ScreensNo. of Mobile Application Development ComponentsUMCFP
ValueweightValueWeightValueweightvalueWeightvalueWeightvalueWeight
P1Chat Application533493191.550.530.560.5341.5
P2Tourist Management Application933953973821.5201.5781.51115
P3Restaurant Application793823441.5231171831.5713.5
P4Workflow support & management46346346313150.5110.5435.0
P5Customer billing/relationship management463451.5150.5130.590.5131237.0
P6Financial transaction process/accounting;Workflow support & management211.5221.5100.540.520.540.574.5
P7Online System for University fraternities531.5511.575314190.5221577.5
P8Document management;Financial transaction process/accounting;Image, video or sound processing513603431.518190.5211441

Comparison of Actual size with Estimated FP, CFP and UMCFP.

Project IdActual SizeFunction Point(FP)COSMIC Function Point(CFP)Unadjusted Mobile COSMIC Function Point(UMCFP)
P1420416523341.5
P22310201025101115
P3158812901809713.5
P4465445584435.0
P5234230295237
P654516574.5
P7655500689577.5
P8287398398441

References

[1]Z. Mushtaq, Global J. Eng. Sci. Res. 5 (2018) 169176.

[2]I. Journal, Cost Estimation for Mobile Application Development: Review, 08(7) (2018) 2026.

[3]V. Bévo, G. Lévesque, A. Abran, Application de la méthode FFP à partir d’une spécification selon la notation UML: compte rendu des premiers essais d’application et questions, 9th International Workshop Software Measurement, Lac Supérieur, Canada, 1999.

[4]K. van den Berg, T. Dekkers, R. Oudshoorn, Functional size measurement applied to UML-based user requirements, 2nd Software Measurement European Forum (SMEF 2005), Rome, 2005.

[5]M. Jenner, Automation of counting of functional size using COSMIC-FFP in UML, 12th International Workshop on Software Measurement (IWSM 2002), Magdeburg, Germany, 2002.

[6]M. Abu-Talib, A. Abran, O. Ormandjieva, Markov model and functional size with COSMIC-FFP, IEEE International Symposium on Industrial Electronics (IEEEISIE3006), Montreal, Canada, 2006.

[7]F. Paz, C. Zapata, J.A. Pow-Sang, An approach for effort estimation in incremental software development using cosmic function points, in: Proceedings of the 8th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement - ESEM ’14, 2014, http://dx.doi.org/10.1145/2652524.2652571.

[8]Silvia Abrah, in: Definition and Evaluation of a COSMIC Measurement Procedure for Sizing Web Applications in a Model-Driven Development Environment, 2018, http://dx.doi.org/10.1016/j.infsof.2018.07.012.

[9]Santillo, L. (2007). Seizing and Sizing SOA applications with COSMIC Function Points, Proceedings of the 4th Software Measurement European Forum (SMEF 2007), May, 9–11. Retrieved from http://www.agilemetrics.it/risorse/santillo2007fpsoa.pdf.

[10]B. Marín, N. Condori-Fernández, O. Pastor, A. Abran, Measuring the functional size of conceptual models in a MDA environment, in: The 20th International Conference on Advanced Information Systems Engineering (CAiSE 2008), Montpellier, France (accepted, 2008).

[11]C. Gencel, How to use COSMIC functional size in effort estimation models? Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), LNCS 5338 (2008) 196207, http://dx.doi.org/10.1007/978-3-540-89403-2-17.

[12]L. Buglione, F. Ferrucci, C. Gencel, C. Gravino, F. Sarro, Which COSMIC base functional components are significant in estimating web application development ? – A case study, in: IWSM/Mensura/Metrikon, 2010, pp. 205224, http://dx.doi.org/978-3-8322-9618-6.

[13]André Nitze, Measuring mobile application size using COSMIC FP, Software Metrik Kongress, 2013.

[14]N.A.S. Abdullah, N.I.A. Rusli, M.F. Ibrahim, A case study in COSMIC functional size measurement: angry bird mobile application, in: 2013 IEEE Conference on Open Systems, ICOS, 2013, pp. 139144, http://dx.doi.org/10.1109/ICOS.2013.6735063.

[15]L. De Marco, F. Ferrucci, C. Gravino, Approximate COSMIC size to early estimate web application development effort, in: Proceedings – 39th Euromicro Conference Series on Software Engineering and Advanced Applications, SEAA, 2013, pp. 349356, http://dx.doi.org/10.1109/SEAA.2013.41.

[16]Ziema Mushtaq, Abdul Wahid, Mobile complex factors: an approach for the prediction of mobile size parameters, Recent Pat. Comput. Sci. 12 (2019) 1, http://dx.doi.org/10.2174/2213275912666190218152109.

[17]L. Lavazza, V. Del Bianco, A case study in COSMIC functional size measurement: the rice cooker revisited, in: A. Abran, R. Braungarten, R.R. Dumke, J.J. Cuadrado-Gallego, J. Brunekreef (Eds.), Software Process and Product Measurement. IWSM 2009. Lecture Notes in Computer Science, Springer, Berlin, Heidelberg, 2009.

Acknowledgements

Publishers note: The publisher wishes to inform readers that the article “Revised approach for the prediction of functional size of mobile application” was originally published by the previous publisher of Applied Computing and Informatics and the pagination of this article has been subsequently changed. There has been no change to the content of the article. This change was necessary for the journal to transition from the previous publisher to the new one. The publisher sincerely apologises for any inconvenience caused. To access and cite this article, please use Mushtaq, Z., Wahid, A. (2019), “Revised approach for the prediction of functional size of mobile application” Applied Computing and Informatics, Vol. ahead-of-print No. ahead-of-print. https://10.1016/j.aci.2019.03.002. The original publication date for this paper was 26/03/2019.

Corresponding author

Ziema Mushtaq can be contacted at: Sheikhz123@gmail.com

Related articles