A recent paper "Fault Analysis and Debugging of Microservice Systems: Industrial Survey, Benchmark System, and Empirical Study" published by the CodeWisdom team led by Prof. Xin Peng from Fudan University and jointly by Prof. Tao Xie from Peking University and Prof. Jun Sun from Singapore Management University, won the inaugural IEEE Transactions on Software Engineering (TSE) Best Paper award for 2018, which was selected from the 109 papers accepted by TSE in 2018. A selection committee followed a rigorous process in making its determination. This award is part of a Best Paper Award Program started in 2019 and sponsored by the IEEE Computer Society. The objective of this program is to acknowledge and reward the best articles published in the previous year in each Transactions and Magazine fully sponsored by the IEEE Computer Society.
Microservice architecture has been the mainstream of cloud-based software applications. However, the complexity and dynamism of microservice systems pose unique challenges to a variety of software engineering tasks such as fault analysis and debugging. In spite of the prevalence and importance of microservices in industry, there is limited research on the fault analysis and debugging of microservice systems. To fill this gap, the research team conducts an industrial survey to learn typical faults of microservice systems, current practice of debugging, and the challenges faced by developers in practice. The research team then develops a medium-size benchmark microservice system named TrainTicket (https://github.com/FudanSELab/train-ticket/), being the largest and most complex open source microservice system and replicates 22 industrial fault cases on it. Based on the benchmark system and the replicated fault cases, the research team conducts an empirical study to investigate the effectiveness of existing industrial debugging practices and whether they can be further improved by introducing the state-of-the-art tracing and visualization techniques for distributed systems. The results show that the current industrial practices of microservice debugging can be improved by employing proper tracing and visualization techniques and strategies. These findings also suggest that there is a strong need for more intelligent trace analysis and visualization, e.g., by combining trace visualization and improved fault localization, and employing data-driven and learning-based recommendation for guided visual exploration and comparison of traces.
Professor Tao Xie is a Chair Professor of the Department of Computer Science and Technology at Peking University, an IEEE Fellow, and an ACM Distinguished Scientist. He won an NSF China Overseas and Hong Kong/Macau Young Scholars Collaborative Research Award (formerly Overseas Distinguished Young Scholar) and its extension, and USA NSF Faculty Career Award. He is a co-Chair of the Technical Committee on Software Engineering of Association of Chinese Scholars in Computing (ACSIC), an upcoming Deputy Director of the CCF Technical Committee on Software Engineering, an ICSE 2021 PC Co-Chair, ISSTA 2015 PC Chair, and Tapia 2017/2018 program/general chair. He is also a Co-Editor-in-Chief of the Wiley Journal of Software Testing, Verification and Reliability (STVR).
Software architecture of TrainTicket, a medium-size benchmark microservice system