Automated diagnosis techniques help to localize faults that are the root causes of discrepancies between expected and observed behavior of systems. As such, these techniques are a natural companion to testing efforts, which aim at exposing such discrepancies. In software development, automated testing and diagnosis can reduce the effort, which shortens the test-diagnose- repair cycle, and can hence be expected to lead to more reliable systems, and a shorter time-to-market. This tutorial discusses state-of-the-art techniques, offered within the GZOLTAR toolset, to support developers performing these tasks.
This tutorial aims to give an overview of automated testing and diagnosis. The emphasis is on techniques that take as input coverage information of the running system. We discuss a particular technique called spectrum-based fault localization, which is well-suited for diagnosing software systems, and which can easily be integrated with existing testing schemes. The tutorial consists of three parts: in the first part we introduce the techniques for testing and debugging, in the second we show innovative techniques to visualize the diagnostic report’s results, and in the third part the participants will have the opportunity to use the techniques in practice.
University of Lisbon, Portugal
Prof. Rui Abreu holds a Ph.D. in Computer Science – Software Engineering from the Delft University of Technology, The Netherlands, and a M.Sc. in Computer and Systems Engineering from the University of Minho, Portugal. His research revolves around software quality, with emphasis in automating the testing and debugging phases of the software development life-cycle as well as self-adaptation. He is the recipient of 6 Best Paper Awards, and his work has attracted considerable attention. Before joined IST, ULisbon as an Associate Professor with Habilitation and INESC-ID as a Senior Researcher, he was a member of the Model-Based Reasoning group at PARC’s System and Sciences Laboratory and an Assistant Professor at the University of Porto. He has co-founded DashDash in January 2017, a platform to create web apps using only spreadsheet skills — the company has secured $9M in Series A funding in May 2018.
University of Porto, Portugal
Bruno Lima received his Master’s degree in Informatics and Computing Engineering from the Faculty of Engineering of the University of Porto (FEUP) in 2014. He conducted a master’s thesis on "Component Testing and Certification for an Ambient Assisted Living Ecosystem", as a member of the AAL4ALL research team at INESC TEC. Currently, he is PhD student and assistant lecture at the Department of Informatics Engineering of the Faculty of Engineering of the University of Porto. He is also a researcher at INESC TEC where he participates in research projects in the area of e-health and software engineering. His research interests include software engineering, certification and software testing, particularly in the scope of e-health and ambient assisted living systems.