论文标题

从RESTFUL API描述中收集基于服务的可维护性指标:静态分析和阈值推导

Collecting Service-Based Maintainability Metrics from RESTful API Descriptions: Static Analysis and Threshold Derivation

论文作者

Bogner, Justus, Wagner, Stefan, Zimmermann, Alfred

论文摘要

尽管许多可维护性指标是针对基于服务的系统的明确设计的,但缺乏工具支持的方法来自动收集这些指标。尤其是在微服务的背景下,权力下放和技术异质性可能对静态分析构成挑战。因此,我们提出了模块化且可扩展的RAMA方法(RESTFUL API度量分析仪),以从机器可读的界面描述中计算此类指标。我们还提供了典型的工具支持,Rama CLI目前解析了OpenAPI,RAML和WADL的格式,并计算了10种基于结构服务的指标。为了使Rama测量结果更加可行,我们还为基于四分位数的阈值范围(绿色,黄色,橙色,红色)设计了可重复的基准。在一个示例性的运行中,我们从1,737个公开可用的Restful API的界面描述中得出了所有RAMA CLI指标的阈值。研究人员和从业人员可以使用RAMA评估恢复服务的可维护性或支持对新服务界面指标的经验评估。

While many maintainability metrics have been explicitly designed for service-based systems, tool-supported approaches to automatically collect these metrics are lacking. Especially in the context of microservices, decentralization and technological heterogeneity may pose challenges for static analysis. We therefore propose the modular and extensible RAMA approach (RESTful API Metric Analyzer) to calculate such metrics from machine-readable interface descriptions of RESTful services. We also provide prototypical tool support, the RAMA CLI, which currently parses the formats OpenAPI, RAML, and WADL and calculates 10 structural service-based metrics proposed in scientific literature. To make RAMA measurement results more actionable, we additionally designed a repeatable benchmark for quartile-based threshold ranges (green, yellow, orange, red). In an exemplary run, we derived thresholds for all RAMA CLI metrics from the interface descriptions of 1,737 publicly available RESTful APIs. Researchers and practitioners can use RAMA to evaluate the maintainability of RESTful services or to support the empirical evaluation of new service interface metrics.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源