CCE Theses and Dissertations

Campus Access Only

All rights reserved. This publication is intended for use solely by faculty, students, and staff of Nova Southeastern University. No part of this publication may be reproduced, distributed, or transmitted in any form or by any means, now known or later developed, including but not limited to photocopying, recording, or other electronic or mechanical methods, without the prior written permission of the author or the publisher.

Date of Award

2012

Document Type

Dissertation - NSU Access Only

Degree Name

Doctor of Philosophy in Computer Science (CISD)

Department

Graduate School of Computer and Information Sciences

Advisor

Francisco J Mitropoulos

Committee Member

Michael J. Lazlo

Committee Member

Sumitra Mukherjee

Keywords

Dynamic, Metrics, Performance, Software Quality, Static

Abstract

Performance is an aspect of software quality that is often not considered at early stages of software design. Common approaches to performance analysis include utilizing profiling tools after the software has been developed to find bottlenecks and executing simulation models that are either manually constructed or derived from UML design diagrams. Many projects attempt to correct performance issues by adding more powerful hardware instead of attacking the root cause. Software metrics have been used to predict many aspects of software quality such as maintainability and fault-tolerance by correlation and regression analysis. Metrics proposed by Chidamber and Kemerer, also known as the CK metric suite, have been studied extensively in software quality model analyses. These studies examined maintainability, fault tolerance, error proneness, and scalability of the software as it evolved through time. Correlations were made between metrics and the likely quality models they represented. Other metrics such as Cyclomatic Complexity by McCabe and class couplings by Martin have also been used in quality predictions. No research has been conducted to analyze relationship between performance and metrics. The goal of this research was to construct a decision tree that used software metrics to forecast performance characteristics. The relationship between metrics and performance was derived by correlation between static code metrics and three runtime variables: number of objects, method call frequency, and average method call lengths on selected software benchmarks. The decision tree was constructed using the C4.5 algorithm implemented in the WEKA software. Pearson correlation coefficients were obtained for the combined datasets from all benchmarks. The decision trees and Pearson statistics showed that weighted methods per class (WMC), total lines of code (TLOC), and coupling between objects (CBO) have significant correlation with software performance. WMC showed positive correlation with number of objects and calls. CBO correlated positively with average method call lengths and negatively with number of objects. TLOC correlated positively with number of calls.

To access this thesis/dissertation you must have a valid nova.edu OR mynsu.nova.edu email address and create an account for NSUWorks.

Free My Thesis

If you are the author of this work and would like to grant permission to make it openly accessible to all, please click the Free My Thesis button.

  Contact Author

  Link to NovaCat

Share

COinS