University of Hawaii

Electrical Engineering

IEEE Event: Finding and Fixing the Roots of Software Bugginess

Date: 2018-03-21           Add to Google Calendar
Time: 6:00pm
Location: i-Lab (Building #37)
Speaker: Rick Kazman

Sponsored by the University of Hawai'i IEEE Student Branch and IEEE Hawai'i Computer Society Chapter


Locating and fixing bugs is the most expensive maintenance activity over the lifetime of the vast majority of software projects. Our recent research has shown that defective files seldom exist alone; they are architecturally connected, and they exhibit design flaws that are the root causes of their bugginess. Thus removing the architecture roots of bugginess is the key to reducing overall defect rates in  project. We prosecute this strategy by modeling architectures using a novel representation called design rule space (DRSpace), created by combining both structural and evolutionary information. We can automatically extract DRSpaces, discover flaws in these DRSpaces, and group these flaws into architecture anti-patterns. We will show that these patterns are not only the root causes of normal bugs, but also security bugs. Finally, we will show how we can build economic models of the architecture so that management can make informed decisions about the costs and benefits of refactoring activities.

Speaker Bio

Rick Kazman is a Professor at the University of Hawaii at Manoa and a Research Scientist at the Software Engineering Institute of Carnegie Mellon University. He is also the chair of IEEE TCSE (Technical Council on Software Engineering) and TAC (Technical Activities Committee) chair. His primary research interests are software architecture analysis, including the SAAM (Software Architecture Analysis Method), the ATAM (Architecture Tradeoff Analysis Method), the CBAM (Cost-Benefit Analysis Method) and the Dali and Titan tools. He is the author of over 200 publications, and co-author of several books, including Software Architecture in Practice, Designing Software Architectures: A Practical Approach, Evaluation Software Architectures: Methods and Case Studies, and Ultra-Large-Scale Systems: The software Challenge of the Future.

Kazman received a B.A. (English/Music) and M. Math (Computer Science) from the University of Waterloo, an M.A. (English) from York University, and a Ph.D. (Computational Linguistics) from Carnegie Mellon University. How he ever became a software engineering researcher is anybody's guess. When not architecting or writing about architecture, Kazman may be found cycling, playing the piano, practicing Tae Kwon Do, or (more often) flying back and forth between Hawaii and Pittsburgh.