Bayesian Hierarchical Modelling for Tailoring Metric Thresholds
Software is highly contextual. While there are cross-cutting ‘global’ lessons, individual software projects exhibit many ‘local’ properties. This data heterogeneity makes drawing local conclusions from global data dangerous. A key research challenge is to construct locally accurate prediction models that are informed by global characteristics and data volumes. Previous work has tackled this problem using clustering and transfer learning approaches, which identify locally similar characteristics. This paper applies a simpler approach known as Bayesian hierarchical modeling. We show that hierarchical modeling supports cross-project comparisons, while preserving local context. To demonstrate the approach, we conduct a conceptual replication of an existing study on setting software metrics thresholds. Our emerging results show our hierarchical model reduces model prediction error compared to a global approach by up to 50%.
I am open to random chats at any time.
Neil is an assistant professor in the software engineering group.
Neil serves on the steering committee for the International Working Conference on Source Code Analysis and Manipulation (SCAM), is program co-chair, International Conference on Software Architecture, 2018, and associate editor, Journal of Systems and Software.
Neil has worked as a postdoc in software engineering at UBC with Gail Murphy, completed his PhD in Computer Science at the University of Toronto, and received his masters and undergraduate degrees at the University of Victoria. Learn more at neilernst.net.