一句话:提出开源可扩展的跨工具审计框架 Bluejay,利用多工具 API 收集并合成团队实践测量,以仪表板审计敏捷团队实践。
本文提出 Bluejay,一个面向敏捷软件团队的开源可扩展跨工具审计框架。问题在于,敏捷团队需在每次迭代中遵循多种团队实践(TP),如估算用户故事点数和协调代码库管理与功能交付;教师手动审计学生团队是否遵循这些实践并持续改进,既繁琐、耗时又易错,尤其当实践涉及多个工具(如 Pivotal Tracker 与 GitHub、部署到 staging 服务器)时更为困难。现有系统通常仅限单一工具。Bluejay 通过多工具 API 收集原始数据,将其合成为 TP 测量,并以仪表板展示审计结果。其关键设计思想是将 TP 表达为类似服务等级协议(SLA)合规性建模与审计的术语,从而复用该生态中的成熟工具来描述、审计和报告 TP。目前 Bluejay 已接入五种广泛使用的开发工具,并可通过 REST API 连接任何服务进行定制。
Agile software teams are expected to follow a number of specific Team Practices (TPs) during each iteration, such as estimating the effort ("points") required to complete user stories and coordinating the management of the codebase with the delivery of features. For software engineering instructors trying to teach such TPs to student teams, manually auditing teams if teams are following the TPs and improving over time is tedious, time-consuming and error-prone. It is even more difficult when those TPs involve two or more tools. For example, starting work on a feature in a project-management tool such as Pivotal Tracker should usually be followed relatively quickly by the creation of a feature branch on GitHub. Merging a feature branch on GitHub should usually be followed relatively quickly by deploying the new feature to a staging server for customer feedback. Few systems are designed specifically to audit such TPs, and existing ones, as far as we know, are limited to a single specific tool. We present Bluejay, an open-source extensible platform that uses the APIs of multiple tools to collect raw data, synthesize it into TP measurements, and present dashboards to audit the TPs. A key insight in Bluejay's design is that TPs can be expressed in terminology similar to that used for modeling and auditing Service Level Agreement (SLA) compliance. Bluejay therefore builds on mature tools used in that ecosystem and adapts them for describing, auditing, and reporting on TPs. Bluejay currently consumes data from five different widely-used development tools, and can be customized by connecting it to any service with a REST API. Video showcase available at governify.io/showcase/bluejay
@inproceedings{paperbot6264,
title = {Bluejay: A Cross-Tooling Audit Framework For Agile Software Teams},
author = {César García and Alejandro Guerrero and Joshua Zeitsoff and Srujay Korlakunta and Pablo Fernandez and Armando Fox and Antonio Ruiz-Cortés},
booktitle = {ICSE},
year = {2021},
doi = {10.1109/icse-seet52601.2021.00038}
}