☰
CoDiver Agile分析:3张图表看懂Sprint速度、燃尽图与范围蔓延
2026/10/20 3:17:40 网站建设 项目流程

【免费下载链接】CoDiver

An advanced, unified platform for code quality, architectural metrics, and Agile analytics. Features Python AST parsing, Java static analysis (code smells), and interactive project health dashboards built with Streamlit.

项目地址:https://gitcode.com/gh_mirrors/co/CoDiver
点击查看免费下载

CoDiver是一款开源的一体化软件度量平台,其中的 Agile 分析能力可以帮你用 Sprint 速度(Velocity)、燃尽图(Burndown Chart)和范围蔓延(Scope Creep)三组可视化指标,快速判断团队的交付节奏是否健康。无需手工算公式,只需上传一份 Sprint JSON 数据,Streamlit 仪表盘就会自动算出结果。

什么是 CoDiver 的 Agile 分析?

CoDiver 把三大能力集成在同一个界面上:

子系统能做什么底层技术
📊代码度量圈复杂度、认知复杂度、缺陷密度、COCOMO 估算ast、radon
🏛Java 静态分析God Class、设计/实现坏味道、命名规范检测javalang
🚀Agile 流程分析速度追踪、燃尽图、范围蔓延计算pandas、plotly

本文聚焦第三块:Agile 流程分析。上传 Sprint 数据后,页面会自动生成2 张趋势图 + 2 张指标卡,也就是标题里说的"3 张图表"——速度趋势图、燃尽图,以及范围蔓延百分比卡片。

架构细节可参考官方文档:docs/architecture.md

3步上手:从 JSON 到仪表盘

整个过程不到 1 分钟,无需任何命令行操作:

  1. 准备数据:把 Sprint 数据整理成 JSON 数组。仓库自带一份可直接使用的示例:data/sprintJSON.json,字段结构如下:
字段含义示例
sprint_daySprint 第几天1
planned_points当日计划点数50
completed_points当日完成点数10
added_points当日新增(插入)点数5
remaining_points当日剩余点数45
  1. 上传数据:在侧边栏的Universal Control Center中,通过 "Upload Sprint Data (JSON)" 入口上传该文件。上传组件定义在 app.py 中。

  2. 执行分析:点击侧边栏的Execute CoDiver Analysis按钮,切换到Agile Analytics标签页,即可看到指标卡与图表。Agile 结果的渲染入口是 render_agile_results。

💡 提示:你可以同时上传.py/.java源码文件,CoDiver 会按扩展名自动路由到对应分析引擎,一次点击同时出结果。

图表一:Sprint Velocity Trend 读懂团队交付能力

第一张图是Sprint Velocity Trend(Sprint 速度趋势图),以天为横轴、completed_points为纵轴绘制折线:

  • 📈 曲线稳步爬升 → 团队按节奏推进,交付可预测
  • ⚠️ 曲线后半段才陡升 → 前期堆积、后期赶工,Sprint 尾部风险高
  • 🧊 曲线中途走平 → 可能存在阻塞(技术债、外部依赖、需求不清)

配套的大数字卡片Average Velocity是各天completed_points的均值,核心公式见 analyze_agile_metrics。以示例数据为例:(10 + 15 + 20 + 50) ÷ 4 = 23.75,即团队平均每天完成约 24 个故事点。

🎯 实用技巧:连续 3 个 Sprint 的平均速度,比单次 Sprint 更能代表团队的真实产能,用它来给下个 Sprint 做规划。

图表二:Sprint Burndown Chart 看懂剩余工作量

第二张图是Sprint Burndown Chart(燃尽图),以sprint_day为横轴、remaining_points为纵轴,直观展示"还剩多少没干":

  • ✅健康形态:剩余点数逐日下降,Sprint 结束归零。示例数据45 → 33 → 15 → 0就是一条教科书式燃尽曲线
  • 🚨黄色信号:曲线比理想直线"平",说明进度落后,需要砍需求或加班
  • 🚨红色信号:曲线不降反升(剩余点数回升),几乎可以确定有需求插入或返工

图表的绘制逻辑在 render_agile_charts,基于plotly.express实现,支持鼠标悬停查看每日精确数值。

指标卡:Scope Creep 量化"需求膨胀"

Agile 项目中最常见的失控形式是范围蔓延(Scope Creep)——Sprint 进行到一半不断插入新需求。CoDiver 用一个百分比把它量化:

Scope Creep % = 全部新增点数 ÷ 全部计划点数 × 100

计算代码位于 src/software_metrics/calculators/agile.py。用示例数据算一下:(5 + 3 + 2 + 0) ÷ (50 × 4) = 10 ÷ 200 = 5%,右侧卡片会显示Scope Creep 5%。

经验参考阈值:

Scope Creep 占比状态建议动作
< 10%🟢 健康正常推进,保持当前节奏
10% ~ 25%🟡 需关注与产品负责人复盘,冻结低优先级需求
> 25%🔴 高风险立即调整 Sprint 范围,否则大概率延期

一次完整的分析长什么样?

上传 data/sprintJSON.json 后,Agile Analytics 页面从上到下依次呈现:

  1. Average Velocity卡片:23.75
  2. Scope Creep卡片:5%
  3. Sprint Velocity Trend折线图:完成点数 10 → 15 → 20 → 50
  4. Sprint Burndown Chart燃尽图:剩余点数 45 → 33 → 15 → 0

结论一目了然:这个 4 天迷你 Sprint 前期略慢、第 4 天冲刺收尾,新增需求仅占 5%,整体健康。页面编排逻辑可查阅 src/software_metrics/ui/dashboard.py。

常见问题 FAQ

Q:我的数据不是 JSON 格式,能用吗?A:先用 Excel 等工具导出为 JSON 数组,保证包含上文表格中的 5 个字段即可,字段名需完全一致。

Q:速度趋势图和燃尽图分别看什么?A:速度趋势回答"团队干得多快",燃尽图回答"还剩多少没干"。前者看产能,后者看进度,两者结合才能判断 Sprint 风险。

Q:能只跑 Agile 分析,不跑代码分析吗?A:可以。只上传 Sprint JSON 文件即可,页面只会出现 Agile Analytics 标签,源码文件是可选的。

Q:修改阈值后结果会变化吗?A:Agile 指标是纯数据计算,不受侧边栏"Complexity Warning Threshold"等参数影响(那些参数只作用于 Python/Java 代码分析)。

总结

CoDiver 的 Agile 分析把三件平时需要手工统计的事自动化了:

  • 🚀Sprint Velocity Trend:平均速度一眼可见,产能趋势不再靠感觉
  • 📉Sprint Burndown Chart:剩余工作量逐日可见,延期风险提前暴露
  • 🎯Scope Creep %:需求膨胀量化为百分比,复盘时拿数据说话

只需一份 JSON,三组图表即刻生成,是 Scrum Master、技术负责人做 Sprint 回顾时非常顺手的小工具。

【免费下载链接】CoDiver

An advanced, unified platform for code quality, architectural metrics, and Agile analytics. Features Python AST parsing, Java static analysis (code smells), and interactive project health dashboards built with Streamlit.

项目地址:https://gitcode.com/gh_mirrors/co/CoDiver
点击查看免费下载
上一篇:抖音下载神器:5分钟搞定无水印视频、音乐和直播的终极指南
下一篇:抖音去水印下载神器:5分钟搞定批量下载的终极指南

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询