Broadening the applicability of software complexity metrics with biological analogues
Loading...
Authors
Hathaway, Charles
Issue Date
2018-05
Type
Electronic thesis
Thesis
Thesis
Language
ENG
Keywords
Computer science
Alternative Title
Abstract
Software metrics represent an application of conventional computer science to itselfin an attempt to quantify the complexity of software systems. Many of the conventional metrics proposed in academia and industry find their roots in a top-downcomposition that has parallels to the way conventional AI has been done prior to the surge in machine learning techniques. As software becomes increasingly networked together, the need for bottom-up approaches to software complexity becomes more apparent. The complexity concepts created for biological systems, such as ecological biodiversity, neural pattern recognition, and genetic mutation rate, offer ”proof of concept” illustrations that show how such bottom-up metrics can provide insights into the behavior of complex systems. Thus computational analogs to these biological complexity metrics may offer deeper understanding of how complexity occurs in contemporary networked computing systems.
This dissertation compares traditional software metrics to these bio-inspired measures in several contexts, applying them to tasks such as bug-finding, measuring student comprehension, and using metrics as a way of quantifying generative justice (a form of justice which originates from the groups that require it, rather than an external entity). Chapters 5 and 6 compare taint analysis, measured using standard complexity metrics, with an ecosystem approach that examines interactive complexity. Chapter 3 examines the use of traditional complexity metrics to measure student comprehension of computer science basics. A discussion of how traditional metrics fail to enable critical examination of participation diversity in open source projects, in contrast to entropy measures inspired by biodiversity, is provided in chapter 4. Combining these bio-inspired and traditional metrics utilizing machine learning techniques, also inspired by biology and neurology, chapter 7 demonstrates that greater results can be achieved with both angles than a single perspective.
This dissertation compares traditional software metrics to these bio-inspired measures in several contexts, applying them to tasks such as bug-finding, measuring student comprehension, and using metrics as a way of quantifying generative justice (a form of justice which originates from the groups that require it, rather than an external entity). Chapters 5 and 6 compare taint analysis, measured using standard complexity metrics, with an ecosystem approach that examines interactive complexity. Chapter 3 examines the use of traditional complexity metrics to measure student comprehension of computer science basics. A discussion of how traditional metrics fail to enable critical examination of participation diversity in open source projects, in contrast to entropy measures inspired by biodiversity, is provided in chapter 4. Combining these bio-inspired and traditional metrics utilizing machine learning techniques, also inspired by biology and neurology, chapter 7 demonstrates that greater results can be achieved with both angles than a single perspective.
Description
May 2018
School of Science
School of Science
Full Citation
Publisher
Rensselaer Polytechnic Institute, Troy, NY