Empirical and Theoretical Validation of a Use Case Diagram Complexity Metric

A key artifact produced during object oriented requirements analysis is Use Case Diagram. Functional requirements of the system under development and relationship of the system and the external world are displayed with the help of Use Case Diagram. Therefore, the quality aspect of the artifact Use Case Diagram must be assured in order to build good quality software. Use Case Diagram quality is assessed by metrics that have been proposed in the past by researchers, based on Use Case Diagram countable features such as the number of actors, number of scenarios per Use Case etc., but they have not considered Use Case dependency relations for metric calculation. In our previous paper, we had proposed a complexity metric. This metric was defined considering association relationships and dependency prevailing in the Use Case Diagram. The key objective in this paper is to validate this complexity metric theoretically by using Briand‟s Framework and empirically by performing a Controlled experiment. The results show that we are able to perform the theoretical and empirical validation successfully.

[1]  Agarwal Schulz Validation of Object-Oriented Design Metrics , 2014 .

[2]  Ritu Sibal,et al.  Deriving Complexity Metric based on Use Case Diagram and its validation , 2014, 2014 IEEE International Symposium on Signal Processing and Information Technology (ISSPIT).

[3]  Rajib Mall,et al.  Model-Based Software Reliability Prediction , 2010, ICISTM.

[4]  Chris F. Kemerer,et al.  A Metrics Suite for Object Oriented Design , 2015, IEEE Trans. Software Eng..

[5]  Bente Anda,et al.  Towards an inspection technique for use case models , 2002, SEKE '02.

[6]  Mario Piattini,et al.  Using Metrics to Predict OO Information Systems Maintainability , 2001, CAiSE.

[7]  Sallie M. Henry,et al.  Software Structure Metrics Based on Information Flow , 1981, IEEE Transactions on Software Engineering.

[8]  Muhammad Bashir Abdullahi,et al.  Framework for an E-Voting System Applicable in Developing Economies , 2016 .

[9]  Ivar Jacobson,et al.  The Unified Modeling Language User Guide , 1998, J. Database Manag..

[10]  Norman E. Fenton,et al.  Software metrics: roadmap , 2000, ICSE '00.

[11]  Magne Jørgensen,et al.  Quality and Understandability of Use Case Models , 2001, ECOOP.

[12]  Mohsen Afsharchi,et al.  Software complexity level determination using software effort estimation use case points metrics , 2011, 2011 Malaysian Conference in Software Engineering.

[13]  Yuming Zhou,et al.  Measuring structural complexity for class diagrams: an information theory approach , 2005, SAC '05.

[14]  Ivar Jacobson,et al.  Unified Modeling Language , 2020, Definitions.

[15]  Maurice H. Halstead,et al.  Elements of software science , 1977 .

[16]  Mario Piattini,et al.  A conceptual modeling quality framework , 2011, Software Quality Journal.

[17]  Brian Henderson-Sellers,et al.  Sizing Use Cases: How to Create a Standard Metrical Approach , 2002, OOIS.

[18]  Barry W. Boehm,et al.  Quantitative evaluation of software quality , 1976, ICSE '76.

[19]  Mark Lorenz,et al.  Object-oriented software metrics - a practical guide , 1994 .

[20]  Victor R. Basili,et al.  The TAME Project: Towards Improvement-Oriented Software Environments , 1988, IEEE Trans. Software Eng..

[21]  Mario Piattini,et al.  Defining and validating metrics for assessing the understandability of entity-relationship diagrams , 2008, Data Knowl. Eng..

[22]  Baowen Xu,et al.  A complexity measure for ontology based on UML , 2004, Proceedings. 10th IEEE International Workshop on Future Trends of Distributed Computing Systems, 2004. FTDCS 2004..

[23]  M. Rizwan Jameel Qureshi,et al.  Management of Changes in Software Requirements during Development Phases , 2016 .

[24]  Lionel C. Briand,et al.  Empirical Studies of Quality Models in Object-Oriented Systems , 2002, Adv. Comput..

[25]  Hanêne Ben-Abdallah,et al.  Functional Size of Use Case Diagrams: A Fine-Grain Measurement , 2009, 2009 Fourth International Conference on Software Engineering Advances.

[26]  Magne Jørgensen,et al.  Estimating Software Development Effort Based on Use Cases-Experiences from Industry , 2001, UML.

[27]  H. R. Khataee,et al.  Estimating the Quality of an Object-Oriented Software System Using Graph Algorithms , 2012 .

[28]  Russell R. Hurlbut A Survey of Approaches For Describing and Formalizing Use Cases , 1998 .

[29]  Michele Marchesi OOA metrics for the Unified Modeling Language , 1998, Proceedings of the Second Euromicro Conference on Software Maintenance and Reengineering.

[30]  Carma L. McClure,et al.  A model for program complexity analysis , 1978, ICSE '78.

[31]  Victor R. Basili The Role of Controlled Experiments in Software Engineering Research , 2006, Empirical Software Engineering Issues.

[32]  B. H. Yin,et al.  The establishment and use of measures to evaluate the quality of software designs , 1978, SIGMETRICS Perform. Evaluation Rev..

[33]  Lionel C. Briand,et al.  Investigating quality factors in object-oriented designs: an industrial case study , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).

[34]  Sandeep K. Singh,et al.  Events - An Alternative to Use Case as Starting Point in Object-Oriented Analysis , 2009, 2009 Second International Conference on Emerging Trends in Engineering & Technology.

[35]  Marinos G. Georgiades,et al.  Formalizing and Automating Use Case Model Development , 2012 .

[36]  Sandeep K. Singh,et al.  Deriving System Complexity Metric from Events and its Validation , 2011, Int. J. Softw. Eng. Knowl. Eng..

[37]  Sandro Morasca,et al.  Property-Based Software Engineering Measurement , 1996, IEEE Trans. Software Eng..

[38]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[39]  Elaine J. Weyuker,et al.  Evaluating Software Complexity Measures , 2010, IEEE Trans. Software Eng..

[40]  Samira Si-Said Cherfi,et al.  Use Case Modeling and Refinement: A Quality-Based Approach , 2006, ER.

[41]  Souleymane Koussoube,et al.  An Ontology-Based Approach for Multi-Agent Systems Engineering , 2013 .

[42]  K. K. Aggarwal,et al.  Code and data spatial complexity: two important software understandability measures , 2003, Inf. Softw. Technol..

[43]  Jitender Kumar Chhabra,et al.  Evaluation of Code and Data Spatial Complexity Measures , 2009, IC3.

[44]  Fernando Brito e Abreu,et al.  Object-Oriented Software Engineering: Measuring and Controlling the Development Process , 1994 .

[45]  Cem Kaner,et al.  Software Engineering Metrics: What Do They Measure and How Do We Know? , 2004 .

[46]  David N. Card,et al.  Measuring software design complexity , 1988, J. Syst. Softw..