Submission note: "A thesis submitted in total fulfilment of the requirements for the degree of Doctor of Philosophy [to the] School of Engineering and Mathematical Science, Faculty of Science, Technology and Engineering, La Trobe University, Bundoora"
A component-based software system consists of integrated components that work together to perform specific tasks. Recent research results found that when integrating components for building a software system, developers need to consider complexity and criticality aspects of its integration structure. In this thesis, we propose a set of metrics for measuring the essential aspects of integrating components. Our set of metrics consists of two types: static and dynamic. Static metrics identify the complexity of interactions amongst the components of a system and their criticalities, such as bridge, link, inheritance and size criticality. These metrics help developers analyse the criticality of a software system. Dynamic metrics help predict the behavior of components during run time. We have validated our set of metrics theoretically and empirically. The theoretical validation is based on Weyuker’s properties and Kitchenham’s framework. For empirical validation, it is based on a smaller software project and a set of large-scale software projects. We are able to show how the metrics measure the complexity and criticality of a software system by employing a statistical calculation. For dynamic metrics, our studies show how to detect cycles to identify a new super-component and how active component metrics can be exercised to identify the usage of components. The set of metrics has been exercised to different standards, such as Corba Component Model, .NET platform and Java-based system. We have also applied the suite of metrics to the specification and testing stages of a component-based development. We demonstrate how it is applied to the UML specifications of a library system. In the testing stage, we are able to reduce the number of test cases by applying the metrics suite to a Personal Information Manager application. In conclusion, our studies validated that the proposed suite of metrics are useful for evaluating a Component Based System.
This thesis contained third party copyright material which has been removed. The thesis author retains all proprietary rights (such as copyright and patent rights) over all other content of this thesis, and has granted La Trobe University permission to reproduce and communicate this version of the thesis. The author has declared that any third party copyright material contained within the thesis made available here is reproduced and communicated with permission. If you believe that any material has been made available without permission of the copyright owner please contact us with the details.