Collecting service-based maintainability metrics from restful api descriptions: Static analysis and threshold derivation

Justus Bogner, Stefan Wagner, Alfred Zimmermann

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

9 Scopus citations

Abstract

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.

Original languageEnglish
Title of host publicationSoftware Architecture - 14th European Conference, ECSA 2020 Tracks and Workshops, Proceedings
EditorsHenry Muccini, Mirco Franzago, Paris Avgeriou, Barbora Buhnova, Javier Camara, Mauro Caporuscio, Anne Koziolek, Patrizia Scandurra, Catia Trubiani, Danny Weyns, Uwe Zdun
PublisherSpringer Science and Business Media Deutschland GmbH
Pages215-227
Number of pages13
ISBN (Print)9783030591540
DOIs
StatePublished - 2020
Externally publishedYes
Event14th European Conference on Software Architecture,ECSA 2020 - L'Aquila, Italy
Duration: 14 Sep 202018 Sep 2020

Publication series

NameCommunications in Computer and Information Science
Volume1269 CCIS
ISSN (Print)1865-0929
ISSN (Electronic)1865-0937

Conference

Conference14th European Conference on Software Architecture,ECSA 2020
Country/TerritoryItaly
CityL'Aquila
Period14/09/2018/09/20

Keywords

  • API documentation
  • Cohesion
  • Complexity
  • Maintainability
  • Metrics
  • Microservices
  • RESTful services
  • Size
  • Static analysis

Fingerprint

Dive into the research topics of 'Collecting service-based maintainability metrics from restful api descriptions: Static analysis and threshold derivation'. Together they form a unique fingerprint.

Cite this