Background. Coping with the rapid growing complexity in contemporary software architecture, tracing has become an increasingly critical practice and been adopted widely by software engineers. By adopting tracing tools, practitioners are able to monitor, debug, and optimize distributed software architectures easily. However, with excessive number of valid candidates, researchers and practitioners have a hard time finding and selecting the suitable tracing tools by systematically considering their features and advantages. Objective. To such a purpose, this paper aims to provide an overview of the popular tracing tools on the market via a critical comparison. Method. Herein, we first identified 11 tools in an objective, systematic, and reproducible manner adopting the Systematic Multivocal Literature Review protocol. Then, we characterized each tool looking at the 1) measured features, 2) popularity both in peer-reviewed literature and online media, and 3) benefits and issues. Results. As a result, this paper presents a systematic comparison amongst the selected tracing tools in terms of their features, popularity, benefits and issues. Conclusion. Such a result mainly shows that each tracing tool provides a unique combination of features with also different pros and cons. The contribution of this paper is to provide the practitioners better understanding of the tracing tools facilitating their adoption.
翻译:面对当代软件结构迅速增长的复杂性,追踪已成为一种越来越关键的做法,并被软件工程师广泛采用。通过采用追踪工具,从业人员能够很容易地监测、调试和优化分布式软件结构。然而,由于大量有效候选人、研究人员和从业人员很难通过系统考虑其特点和优势来找到和选择适当的追踪工具。目标。为了达到这一目的,本文件旨在通过一个关键的比较,对市场上流行的追踪工具进行综述。方法。在这里,我们首先以客观、系统和可复制的方式确定了11个工具,采用了系统化的多语言文献审查协议。然后,我们把每个工具的特征描述为1:1)、2)受同行审查的文献和在线媒体的欢迎,3)益处和问题。结果。因此,本文件对选定的追踪工具的特征、受欢迎程度、益处和问题进行了系统比较。结论主要表明,每个追踪工具都以客观、系统、可复制的方式结合了各种特征。本文的贡献是让从业人员更好地了解这些工具的采用。