微服务 API 模式如何影响可理解性?一项对照实验
软件工程
2024-09-12 v1
摘要
微服务通过远程应用程序编程接口(API)暴露其功能,例如基于 HTTP 或异步消息传递技术。为了解决该设计空间中的反复出现的问题,微服务 API 模式(MAPs)应运而生,以捕捉 API 设计社区的集体经验。目前,缺乏关于这些模式有效性的实证证据,例如它们如何影响可理解性和 API 可用性。因此,我们用 6 种微服务模式进行了一项对照实验,以评估它们对可理解性的影响,共有 65 名背景多样的参与者参与。此外,我们希望研究职业经验年限或 MAPs 经验等人口统计学特征如何影响模式的效果。针对每种模式,我们构建了两个 API 示例,分别采用模式版本“P”和功能等效的非模式版本“N”(共 24 个)。基于交叉设计,参与者需要回答理解问题,同时我们测量了时间。对于六种模式中的五种,我们发现了其对可理解性的显著积极影响,即参与者在“P”版本中回答得更快和/或更准确。然而,效应量大多较小,仅有一种模式显示出中等效应。表现与人口统计学特征之间的相关性似乎表明,某些模式可能会引入额外的复杂性;具有 MAPs 经验的人将从其效果中获益更多。这对 MAPs 及其他模式的培训和教育具有重要启示。
引用
@article{arxiv.2402.13696,
title = {How Do Microservice API Patterns Impact Understandability? A Controlled Experiment},
author = {Justus Bogner and Pawel Wójcik and Olaf Zimmermann},
journal= {arXiv preprint arXiv:2402.13696},
year = {2024}
}
备注
Accepted for publication at the 21st IEEE International Conference on Software Architecture (ICSA 2024)