skip to main content
research-article

A composite complexity measure for component-based systems

Published: 14 November 2011 Publication History

Abstract

The increasing importance of software measurement has led to design and development of new software measures. Controlling and minimizing software complexity is the most important objective of each software development paradigm because it affects all other software quality attributes like reusability, reliability, testability, maintainability etc. For this purpose, a number of software complexity measures have been reported to quantify different aspects of complexity. Component-based software development (CBSD) is an evolving paradigm where emphasis is laid on reuse of existing components and effective designing of new components. As the development of component-based software is rising, more and more complexity metrics are being developed for the same. In this paper, we have attempted to design a composite complexity measure to quantify important aspects of complexity of a component-based system. The proposed measure takes into account two major complexities of a component-based system : one due to individual component and the other due to its interaction with other components. Individual component complexity may arise due to size of a component, type and nesting level of control structures present in code component. Component's interaction complexity may be due to its interface with other components. Graph theoretic notions and concept of weights have been used to illustrate interaction among software components and to compute complexity. The proposed measure has been applied to four cases chosen for present study and yields quiet encouraging results which may further help in controlling the complexity of component-based systems so as to minimize both integration and maintenance efforts.

References

[1]
Chidamber, S. R., Kemerer, C.F. (1994): A Metrics Suite for Object Oriented Design, IEEE Transactions on Software Engineering, pp. 476--492.
[2]
Mark, L, Jeff, K.(1994): Object Oriented Software Metrics, Prentice Hall Publishing.
[3]
Basili, V.R., Biand, L., Melo, W.L. (1995): A validation of objectoriented design metrics as quality indicators, Technical report, Uni. of Maryland, Deptt. of computer science, MD, USA.
[4]
Basili, V. (1980): Qualitative Software Complexity Models: A Summary, In Tutorial on Models and Methods for Software Management and Engineering, IEEE Computer Society Press, Los Alamitos, CA.
[5]
Singh, R., Grover, P.S. (1997): A New Program Weighted Complexity Metric, Proc. International conference on Software Engg. (CONSEG'97), Chennai, India, pp. 33--39.
[6]
Brooks, I. (1993): Object Oriented Metrics Collection and Evaluation with Software Process, presented at OOPSLA'93 Workshop on Processes and Metrics for Object Oriented software development, Washington, DC.
[7]
Harrison, W. (1982). Magel, K, Kluezny, R., dekock, A.: Applying Software Complexity Metrics to Program Maintenance, IEEE Computer, 15, pp. 65--79.
[8]
Fothi, A. Gaizler, J., Porkol, Z. (2003): The Structured Complexity of Object-Oriented Programs, Mathematical and Computer Modeling, 38, pp. 815--827.
[9]
Da-wei, E. (2007): The Software complexity model and metrics for object-oriented, IEEE International Workshop on Anti-counterfeiting, Security, Identification, pp. 464--469.
[10]
Brooks, F.P. (1995): The Mythical Man Month: Essays on Sofware Engineering, Addison-Wesley.
[11]
Zuse, H. (1991): Software Complexity Measures and Methods, W.de Gruyter, New York.
[12]
Sellers, B. H. (1996): Object-Oriented Metrics : Measures of Complexity, Prentice Hall, New Jersey.
[13]
Curtis, B. (1980): Measurement and Experimentation in Software Engineering, Proc. IEEE conference, 68, 9, pp. 1144--1157.
[14]
Mishra, S. (2007): An Object Oriented Complexity Metric Based on Cognitive Weights, Proc. 6th IEEE International Conference on Cognitive Informatics (ICCI'07).
[15]
Usha Chhillar, Sucheta Bhasin (2011): A New Weighted Composite Complexity Measure for Object-Oriented Systems, International Journal of Information and Communication Technology Research, 1 (3).
[16]
Elish, M.O., Rine, D. (2005): Indicators of Structural Stability of Object-Oriented Designs: A Case Study, Proc. 29th Annual IEEE/NASA Software Engineering Workshop(SEW'05), 2005.
[17]
Halstead, M.H. (1977): Elements of Software Science, New York: Elsevier North Holland.
[18]
McCabe, T.J. (1976): A Complexity Measure, IEEE Trans. On Software Engg., SE-2, 4, pp. 308--320.
[19]
Aggarwal, K.K. (2006): Empirical Study of Object-Oriented Metrics, Journal of Object Technology, 5, pp. 149--173.
[20]
Usha Kumari, Sucheta Bhasin (2011): Application of Object- Oriented Metrics To C++ and Java : A Comparative Study, ACM SIGSOFT Software Engineering Notes, 36 (2), pp. 1--6.
[21]
Capretz, L.F (2005): Y : A New Component-Based Software Life Cycle Model, Journal of Computer Science, 1 (1), pp. 76--82.
[22]
Brown, Wallnau (1998): The Current State of CBSE, IEEE Software, 15 (5).
[23]
Gill, N.S, Balkishan (2008): Dependency and Interaction Oriented Complexity Metrics of Component-Based Systems, ACM SIGSOFT Software Engineering Notes, 33 (2), pp. 1--5.
[24]
Ravichandran, T., Rothenberger, M. (2003): Software Reuse Strategies and Component Markets, Communications of the ACM, 18 (5), pp. 410--422.
[25]
Dogru, A.H., Tanik, M. (2003): A process Model for Component Oriented Software Engineering, IEEE Software, pp. 34--41.
[26]
Vitharana, P., Zahedi, F.M., Jain, H. (2003): Design Retrieval and Assembly in Component-Based Software Development, Communications of the ACM, 46 (11), pp. 97--102.
[27]
Basili, V.R., Boehm, B. (2001): COTS-Based Systems Top 10 List, IEEE Computer, 34 (5), pp.91--93.
[28]
Noel SALMAN (2006): Complexity Metrics AS Predictors of Maintainability and Integrability of Software Components, Journal of Arts and Sciences, 5, pp. 39--50.
[29]
Jianguo Chen et.al (2011): Complexity Metrics for Component-based Software Systems, International Journal of Digital Content Technology and its Applications, 5 (3), pp. 235--244.
[30]
Sengupta, S., Kanjilal, A. (2011): Measuring Complexity of Component Based Architecture : A Graph Based Approach, ACM SIGSOFT Software Engineering Notes, 36 (1), pp. 1--10.
[31]
Sharma, A., Grover, P.S., Kumar, R. (2009): Dependency Analysis for Component-Based Software Systems, ACM SIGSOFT Software Engineering Notes, 34 (4), pp. 1--6.

Cited By

View all
  • (2020)Execution-history based reliability estimation for component-based software: considering reusability-ratio and interaction-ratioInternational Journal of System Assurance Engineering and Management10.1007/s13198-020-01035-1Online publication date: 25-Sep-2020
  • (2018)Investigating the Relationship between Code Smell Agglomerations and Architectural ConcernsProceedings of the VII Brazilian Symposium on Software Components, Architectures, and Reuse10.1145/3267183.3267184(3-12)Online publication date: 17-Sep-2018
  • (2017)Estimating actual execution time of Component-based software: Considering Interaction-metric2017 International Conference on Computing, Communication and Automation (ICCCA)10.1109/CCAA.2017.8229929(870-875)Online publication date: May-2017
  • Show More Cited By

Index Terms

  1. A composite complexity measure for component-based systems

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM SIGSOFT Software Engineering Notes
    ACM SIGSOFT Software Engineering Notes  Volume 36, Issue 6
    November 2011
    117 pages
    ISSN:0163-5948
    DOI:10.1145/2047414
    Issue’s Table of Contents

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 14 November 2011
    Published in SIGSOFT Volume 36, Issue 6

    Check for updates

    Author Tags

    1. component-based software
    2. component-based software development (CBSD)
    3. component-based system
    4. reliability
    5. reusability
    6. software measurement

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)5
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 07 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2020)Execution-history based reliability estimation for component-based software: considering reusability-ratio and interaction-ratioInternational Journal of System Assurance Engineering and Management10.1007/s13198-020-01035-1Online publication date: 25-Sep-2020
    • (2018)Investigating the Relationship between Code Smell Agglomerations and Architectural ConcernsProceedings of the VII Brazilian Symposium on Software Components, Architectures, and Reuse10.1145/3267183.3267184(3-12)Online publication date: 17-Sep-2018
    • (2017)Estimating actual execution time of Component-based software: Considering Interaction-metric2017 International Conference on Computing, Communication and Automation (ICCCA)10.1109/CCAA.2017.8229929(870-875)Online publication date: May-2017
    • (2015)Handling Complexity of a Model in System Design: Framework, Formalism and MetricsProcedia Manufacturing10.1016/j.promfg.2015.07.2443(1981-1988)Online publication date: 2015
    • (2014)In-out interaction complexity metrics for component-based softwareACM SIGSOFT Software Engineering Notes10.1145/2659118.265913539:5(1-4)Online publication date: 17-Sep-2014
    • (2014)Cyclomatic complexity metric for component based softwareACM SIGSOFT Software Engineering Notes10.1145/2557833.255785339:1(1-6)Online publication date: 11-Feb-2014
    • (2013)Supporting component presence notifications in software developmentProceedings of the 2013 IEEE 17th International Conference on Computer Supported Cooperative Work in Design (CSCWD)10.1109/CSCWD.2013.6580968(235-240)Online publication date: Jun-2013
    • (2012)Reviewing the challenges of security features in component based software development models2012 IEEE Symposium on E-Learning, E-Management and E-Services10.1109/IS3e.2012.6414955(1-6)Online publication date: Oct-2012

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media