您的软件开发生命周期数据模板
您的软件开发生命周期数据模板
- 建议收集的属性
- 需要跟踪的关键活动
- Jira Software数据提取指南
软件开发生命周期属性
| 名称 | 说明 | ||
|---|---|---|---|
|
事件时间
EventTime
|
特定开发活动或事件发生的准确日期和时间。 | ||
|
说明
事件时间是记录活动发生时刻的时间戳,是所有流程挖掘分析的时间基础,为每个案例提供事件的时间顺序。 该属性对于计算所有基于时间的指标至关重要,包括周期时间、处理时间以及活动之间的等待时间。它支持按时间分析流程绩效,帮助识别开发生命周期中延迟发生的时间和位置。
为什么重要
该时间戳是正确排列事件顺序并计算所有基于持续时间的指标的基础,对于理解流程效率和识别延迟至关重要。
获取位置
这对应于问题变更日志或历史记录中每条记录的“created”时间戳。
示例
2023-10-26T10:00:00Z2023-11-15T14:35:10Z2024-01-05T09:00:00Z
|
|||
|
开发项目
DevelopmentItem
|
Jira Software中单个工作单元(如用户故事、缺陷或任务)的唯一标识符。 | ||
|
说明
开发项目是主要案例标识符,代表一个独立的工作单元,如功能、缺陷修复或任务。它关联该项目从构思和规划,到开发、测试及部署的全部活动。在Jira中,这通常对应问题键,例如“PROJ-123”。 分析该属性可以追踪每个工作项目完整的端到端生命周期,是构建流程图、计算周期时间以及识别不同项目在开发流程中流转差异的基础。
为什么重要
这是关联所有相关开发活动的关键字段,使您能够追踪单个工作项目从开始到结束的完整历程。
获取位置
这是Jira Software Issue API对象中问题的标准“key”字段。
示例
PROJ-101CORE-5432API-789
|
|||
|
活动
Activity
|
开发项目生命周期中发生的特定事件或状态变更的名称。 | ||
|
说明
此属性表示软件开发流程中的一个独立步骤或里程碑。这些活动来自Jira问题状态字段的变化,或代码提交、代码评审等其他重要事件。 在流程挖掘中,这些活动的顺序构成流程图。分析活动有助于识别流程、衡量具体阶段的持续时间,并发现偏离标准工作流的情况,例如返工循环或跳过质量关卡。
为什么重要
活动定义流程步骤,其顺序对于可视化流程、识别瓶颈和分析流程差异至关重要。
获取位置
通常源自Jira问题历史记录或变更日志中的“status”字段变更,也可以结合已连接开发工具中的数据进行丰富。
示例
开发已开始已完成代码评审QA测试已完成已部署到生产环境
|
|||
|
最后更新时间
LastDataUpdate
|
表示该流程数据最近一次从源系统刷新时间的时间戳。 | ||
|
说明
该属性记录最近一次从Jira Software提取数据的日期和时间,帮助您了解当前分析数据的新鲜度。 了解最后更新时间对于判断流程洞察的时效性非常重要。它有助于分析人员和业务用户确认所查看的是当前数据,并明确分析所包含事件的截止时间。
为什么重要
表示数据的新鲜度,对于确保分析结果和仪表板反映流程最新状态至关重要。
获取位置
该时间戳在数据提取、转换和加载(ETL)流程结束时生成并记录。
示例
2024-03-15T02:00:00Z2024-03-16T02:00:00Z
|
|||
|
源系统
SourceSystem
|
提取开发生命周期数据的系统。 | ||
|
说明
该属性标识数据来源。对于此流程,其值始终为“Jira Software”;如果在更大范围的分析中合并多个源系统,则该属性有助于区分不同来源的数据。 在更广泛的IT环境中,明确源系统可以确保数据血缘清晰,并帮助管理不同平台之间的数据质量和集成工作。
为什么重要
提供清晰的数据来源信息,在整合多个系统的数据,或开展数据治理和审计时至关重要。
获取位置
这是一个静态值,应在数据提取和转换过程中添加。
示例
Jira Software
|
|||
|
受派人
Assignee
|
当前负责处理开发项目的用户。 | ||
|
说明
受派人是当前阶段负责该工作项目的人员。在Jira中,这是一个标准字段,项目在不同人员和团队之间流转时,该字段也会随之变化。 分析受派人对于了解资源分配、工作负载分布和交接节点至关重要。它可以帮助回答以下问题:哪些开发人员或团队参与了特定阶段,谁构成了瓶颈,以及工作如何在组织内分配。
为什么重要
标识活动的负责用户或资源,支持工作负载分析、资源管理以及人员之间交接情况的了解。
获取位置
这是Jira Issue API响应中“fields”对象内的“assignee”字段。
示例
Alice SmithBob Johnson未分配
|
|||
|
团队名称
TeamName
|
负责工作项的开发团队。 | ||
|
说明
表示负责开发项的具体敏捷团队或功能团队。在Jira中,这通常通过自定义字段实现,也可以根据项目或特定组件等其他信息推导得出。 该属性对于团队级绩效分析至关重要。您可以按团队筛选仪表板,查看各团队的周期时间、返工率和吞吐量等指标。这对于“阶段间交接效率”和“开发人员工作负载与工作项进度”仪表板尤为重要。
为什么重要
支持对不同开发团队进行绩效衡量和比较,帮助识别高绩效团队并推广最佳实践。
获取位置
这通常是Jira中的自定义字段。请咨询Jira管理员,确认具体字段名称,可能是“Team”“Squad”或类似名称。
示例
Phoenix团队核心服务UI/UX复仇者联盟
|
|||
|
项目优先级
ItemPriority
|
分配给开发项目的优先级,用于表示其紧急程度。 | ||
|
说明
项目优先级定义工作项目的相对重要性或紧急程度。Jira提供标准“priority”字段,并支持配置Highest、High、Medium和Low等级别。 分析优先级对于检查流程遵循度和识别关键项目的瓶颈至关重要。例如,“Priority Item Conformance Check”仪表板依赖该属性,验证高优先级项目是否按预期加速处理,还是与低优先级项目一样滞留在队列中。
为什么重要
有助于分析高优先级项目是否比低优先级项目处理得更快,是否遵循更顺畅的路径,从而确保满足SLA。
获取位置
这是Jira Issue API响应中“fields”对象内的“priority”字段。
示例
最高高中低
|
|||
|
项目名称
ProjectName
|
开发项目所属的Jira项目名称。 | ||
|
说明
在Jira中,所有工作项目都按项目组织。项目名称提供高层背景,通常对应特定产品、团队或计划。 该属性是用于筛选和比较的重要维度。它支持跨不同项目或产品分析和对标软件开发生命周期流程,从而发现哪些项目效率更高、哪些项目返工更多,以及不同团队是否遵循不同的流程变体。
为什么重要
支持按项目、产品或团队细分流程分析,以比较绩效并识别最佳实践。
获取位置
这是Jira Issue API响应中“fields”对象内的“project”字段。
示例
移动应用开发核心平台数据科学
|
|||
|
项目状态
ItemStatus
|
开发项目在工作流中的当前状态。 | ||
|
说明
该属性反映开发项目在特定时间点所处的阶段,例如“In Progress”、“In Review”或“Done”。状态随时间发生的变化会生成流程挖掘所需的活动。 “Activity”属性表示状态变更事件,而“ItemStatus”表示项目状态。它可作为筛选和分析维度,帮助您查看当前处于特定状态的项目数量,或分析长期停留在某一状态的项目特征。
为什么重要
提供项目在生命周期中所处位置的快照,对于基于状态的分析和了解当前进行中工作的状态至关重要。
获取位置
这是Jira Issue API响应中“fields”对象内的“status”字段。
示例
To DoIn ProgressIn ReviewDone
|
|||
|
项目类型
ItemType
|
开发项目的分类,例如Bug、Story、Task或Epic。 | ||
|
说明
项目类型用于对所执行工作的性质进行分类。Jira使用标准“issuetype”字段区分不同类型的工作项目,而不同类型通常对应不同的工作流。 该属性对于比较分析至关重要。您可以按特定工作类型筛选流程,例如比较“Bug”和“Story”的生命周期,从而发现某些工作类型是否更容易出现延迟、返工或偏离标准流程的情况。
为什么重要
支持按工作类型细分流程分析,比较缺陷与新功能等不同工作的处理方式及其流程差异。
获取位置
这是Jira Issue API响应中“fields”对象内的“issuetype”字段。
示例
用户故事缺陷任务史诗
|
|||
|
事件结束时间
EventEndTime
|
活动或状态完成时的时间戳。 | ||
|
说明
该属性记录活动的完成时间,即某个案例中下一项活动的时间戳。 “EventTime”(StartTime)记录活动开始时间,EventEndTime记录活动结束时间。两者之差就是该活动的处理时间。这对于计算“平均阶段处理时间”KPI,以及构建分析活动持续时间的仪表板至关重要。
为什么重要
定义活动的结束点,使您能够计算流程各步骤的持续时间,这对瓶颈分析至关重要。
获取位置
这是一个派生属性。对于给定事件,其结束时间是同一案例中后续事件的开始时间。
示例
2023-10-26T12:30:00Z2023-11-15T18:00:15Z2024-01-05T11:45:00Z
|
|||
|
交接等待时间
HandoffWaitTime
|
两个连续活动之间的空闲时间。 | ||
|
说明
该指标计算一项活动完成到下一项活动开始之间的等待时间或排队时间,表示工作等待人员接手期间处于空闲状态的时长。 这是“平均交接等待时间”KPI和“阶段间交接效率”仪表板的关键指标。较长的交接时间通常意味着团队之间存在协调问题、资源受限或沟通低效,例如开发团队与QA团队之间。减少这段空闲时间,是缩短整体周期时间的重要手段。
为什么重要
突出流程中的空闲时间或排队时间,揭示团队或个人之间交接的低效环节和协调问题。
获取位置
这是一个计算指标。对于同一案例,它等于某项活动的开始时间减去前一项活动的结束时间。
示例
017280043200
|
|||
|
修复版本
FixVersion
|
开发项实际完成并发布所在的软件版本。 | ||
|
说明
Jira中的“Fix Version”表示包含该工作项已完成工作的发布版本,标志着开发工作的实际结果。 该属性提供实际发布背景,可与“PlannedReleaseVersion”进行比较,以分析交付绩效。它还可用于汇总特定版本交付的所有工作项,集中查看已完成的内容。
为什么重要
确认某项工作包含在哪个发布版本中,为发布分析和已交付功能跟踪提供事实依据。
获取位置
对应Jira Issue API响应中的“fixVersions”字段。
示例
v2.1.1热修复v3.0.0重大版本发布v2.2.0
|
|||
|
冲刺名称
SprintName
|
开发项所属敏捷冲刺的名称。 | ||
|
说明
对于采用Scrum的团队,Sprint是一个有明确时间边界的周期,团队在此期间完成一组工作。该属性记录工作项所属冲刺的名称或标识符。 按冲刺分析是敏捷流程挖掘的基础。它有助于评估各个冲刺的绩效、了解延期到下一冲刺的工作,并跟踪冲刺目标的完成进度。相比通用日期范围,它提供了更具体的时间背景。
为什么重要
为敏捷团队提供关键背景信息,使您能够按冲刺分析流程效率和吞吐量。
获取位置
此信息通常存储在由Jira Software(Agile)管理的“Sprint”自定义字段中,可通过Issue API访问。
示例
PROJ Sprint 1Q4-2023 Sprint 311月PI Sprint 2
|
|||
|
总周期时间
CycleTime
|
开发项端到端的总持续时间。 | ||
|
说明
周期时间衡量开发项从创建到最终解决的总耗时,例如部署到生产环境。它以案例为单位计算,即第一个事件与最后一个事件时间戳之差。 这是衡量整体流程速度和效率的核心KPI。“平均端到端周期时间”KPI和“整体SDLC周期时间分析”仪表板都直接基于该计算结果。缩短周期时间通常是流程改进计划的重点目标。
为什么重要
衡量开发流程的端到端速度,为整体效率和交付速度提供关键绩效指标。
获取位置
这是案例级计算属性。对于给定的“DevelopmentItem”,它等于最后一个事件的时间戳减去第一个事件的时间戳。
示例
12096002592000604800
|
|||
|
报告人
Reporter
|
最初创建或报告开发项目的用户。 | ||
|
说明
报告人是在Jira中创建问题的人员,可能是开发人员、QA测试人员、产品经理,也可能是通过服务台集成提交问题的客户。 分析报告人可以洞察工作来源。例如,您可以比较QA团队报告的缺陷与客户报告的缺陷是否具有不同的生命周期,也可以了解流程起点的沟通模式和信息流转。
为什么重要
标识工作项目的来源,可用于根据任务创建者或缺陷报告者分析相关模式。
获取位置
这是Jira Issue API响应中“fields”对象内的“reporter”字段。
示例
Charles DarwinMarie CurieIsaac Newton
|
|||
|
是否返工
IsRework
|
用于标识活动是否属于返工循环的标志。 | ||
|
说明
如果活动表示流程中的回退步骤,该布尔属性则为true,例如QA测试失败后返回“开发已开始”。该属性通过分析案例中的活动序列确定。 识别返工是提升流程效率和质量的基础。该属性直接支持“返工活动率”KPI和“返工循环频率与路径”仪表板,可量化无效工作量,并定位导致返工的质量问题根因。
为什么重要
明确标记属于低效返工循环的活动,从而精确衡量和分析流程浪费及质量问题。
获取位置
这是一个计算属性。您需要先定义预期流程,然后标记所有偏离流程、回退到较早阶段的活动。
示例
truefalse
|
|||
|
组件
Component
|
项目中的子部分或功能区域,工作项归属于其中。 | ||
|
说明
Jira使用组件将项目中的问题划分为更小、更易管理的部分。组件可以代表“用户身份验证”等功能区域、“后端API”等技术层,或“报表”等模块。 按组件分析可以更细致地了解开发流程,帮助识别应用程序的哪些部分更容易产生缺陷、开发周期更长或返工更多,从而定位技术债务或复杂性较高的区域。
为什么重要
支持按产品的功能区域或技术区域细分流程,帮助定位导致延迟或质量问题的组件。
获取位置
这是Jira Issue API响应中“fields”对象内的标准“components”字段。
示例
用户界面数据库API网关身份验证
|
|||
|
计划发布版本
PlannedReleaseVersion
|
计划部署该工作项的目标软件版本或发布版本。 | ||
|
说明
该属性通常对应Jira中的“Affects Version/s”字段,用于表示功能或修复计划发布的版本。它可作为工作完成的截止时间或目标。 这是“按时发布交付率”KPI的关键属性。通过比较实际部署日期与该版本关联的计划发布日期,您可以衡量计划执行情况和发布流程的可预测性。
为什么重要
定义目标交付日期或发布版本,用于计算按时交付率并分析计划执行情况。
获取位置
对应Jira Issue API中的“versions”或“fixVersions”字段。用于规划的具体字段可能有所不同。
示例
版本2.12024年第一季度发布Phoenix项目上线
|
|||
|
项目解决结果
ItemResolution
|
开发项目关闭时的最终结果或原因。 | ||
|
说明
Resolution解释项目为何进入关闭状态。状态可能是“Closed”,而解决结果可能是“Done”、“Won't Do”、“Duplicate”或“Cannot Reproduce”,为工作结果提供重要背景。 分析解决结果有助于区分成功完成的工作与被取消或拒绝的项目。这对于质量分析,以及了解有价值工作的真实吞吐量与最终被弃置项目所消耗的投入非常重要。
为什么重要
区分成功完成的项目与因其他原因关闭的项目,对于准确开展生产力和质量分析至关重要。
获取位置
这是Jira Issue API响应中“fields”对象内的“resolution”字段,通常仅在问题关闭时填充。
示例
DoneWon't Do重复无法复现
|
|||
软件开发生命周期活动
| 活动 | 说明 | ||
|---|---|---|---|
|
QA测试已完成
|
表示开发项目已通过全部质量保证检查,可以进入用户验收测试或发布等下一阶段。通常根据状态离开主要测试状态来推断。 | ||
|
为什么重要
这标志着重要质量门禁完成。分析QA阶段的持续时间,有助于优化测试流程和资源分配。
获取位置
根据Jira问题变更日志推断,即“status”字段从“In QA”变更为“Ready for UAT”或“Ready for Release”等后续状态时的时间戳。
采集
状态从“In QA”变更为“Ready for UAT”的时间戳。
事件类型
inferred
|
|||
|
QA测试已开始
|
该事件标志着开发项目正式进入质量保证测试阶段。通常根据Jira状态变更推断,例如问题转为“In QA”、“In Testing”或“Ready for Testing”。 | ||
|
为什么重要
这是质量验证周期的关键起点。衡量从“Development Completed”到该节点的时间,可以发现开发团队与QA团队之间的交接延迟。
获取位置
根据Jira问题变更日志推断,即“status”字段变更为“In QA”等指定QA测试状态时的时间戳。
采集
状态变更为“In QA”或“In Testing”的时间戳。
事件类型
inferred
|
|||
|
UAT已批准
|
表示用户验收测试顺利完成,相关方已批准发布。通常根据状态从“In UAT”变更为“Ready for Release”或“Done”等状态推断。 | ||
|
为什么重要
该里程碑确认业务验收完成,并批准项目部署到生产环境,是确保交付成果符合用户预期的关键门禁。
获取位置
根据Jira问题变更日志推断,即“status”字段从“In UAT”变更为工作流中的下一状态,表示已获批准时的时间戳。
采集
状态从“In UAT”变更为“Ready for Release”的时间戳。
事件类型
inferred
|
|||
|
已部署到生产环境
|
该事件标志着与开发项目相关的代码变更已在生产环境中上线。通常根据最终状态变更为“Done”或“Released”推断,也可以由集成的CI/CD工具明确记录。 | ||
|
为什么重要
这是流程的主要成功终点,对于计算端到端总周期时间、衡量部署频率和吞吐量至关重要。
获取位置
可以根据Jira问题变更日志中状态变更为“Released”或“Done”来推断。为提高准确性,也可以记录Jenkins、Bamboo等CI/CD工具推送的部署事件,或使用Jira中的Deployments功能。
采集
状态变更为“Done”或“Released”的时间戳。
事件类型
inferred
|
|||
|
开发已开始
|
表示开发人员开始积极处理开发项目的时刻。通常通过Jira工作流中的状态变更推断,例如问题状态变为“In Progress”。 | ||
|
为什么重要
这是衡量实际开发时间的关键里程碑,有助于区分等待时间和增值工作,是识别瓶颈的重要指标。
获取位置
根据Jira问题变更日志推断,即“status”字段首次变更为“In Progress”、“In Development”或类似进行中状态时的时间戳。
采集
状态变更为“In Progress”的时间戳。
事件类型
inferred
|
|||
|
开发项目已创建
|
这标志着生命周期的开始:新的开发项目,如用户故事、缺陷或任务,已正式记录到Jira中。系统会为每个问题明确记录创建时间戳。 | ||
|
为什么重要
该活动是流程的明确起点,对于计算端到端周期时间和跟踪新增工作总量至关重要。
获取位置
这是每个Jira问题的基础事件。创建时间戳存储在问题记录的“created”字段中,可通过Jira API访问。
采集
Jira Issue对象中的“created”时间戳字段。
事件类型
explicit
|
|||
|
QA测试未通过
|
表示QA团队发现缺陷,开发项目被退回开发人员处返工。通常根据状态反向变更推断,例如从“In QA”退回“In Progress”或“To Do”。 | ||
|
为什么重要
该活动对于识别返工循环至关重要。跟踪其发生频率有助于量化低质量带来的成本,并发现开发或需求方面的改进空间。
获取位置
根据Jira问题变更日志推断,即“status”字段从测试状态(如“In QA”)变更为较早的开发状态(如“In Progress”)时记录。
采集
状态从测试状态变更为开发状态的时间戳。
事件类型
inferred
|
|||
|
UAT已开始
|
标志着用户验收测试开始,由业务相关方或最终用户验证新功能。通常根据Jira状态变更推断,例如转为“In UAT”或“User Acceptance Testing”。 | ||
|
为什么重要
该活动跟踪发布前最终验证阶段的开始。分析其持续时间,有助于了解并减少因相关方可用性或反馈循环造成的延迟。
获取位置
根据Jira问题变更日志推断,即“status”字段更新为“In UAT”或类似指定状态时的时间戳。
采集
状态变更为“In UAT”的时间戳。
事件类型
inferred
|
|||
|
已准备发布
|
表示开发项目已通过全部检查,并已纳入特定软件发布版本,等待部署。通常根据问题状态变更为“Ready for Release”,或“Fix Version”字段已填充来推断。 | ||
|
为什么重要
该活动有助于跟踪发布准备情况,以及开发和测试全部完成后项目等待部署窗口的时间。
获取位置
通常根据Jira问题变更日志中状态变更为“Ready for Release”来推断。也可以根据“Fix Version/s”字段设置时的时间戳推断。
采集
状态变更为“Ready for Release”或“Fix Version”字段填充时的时间戳。
事件类型
inferred
|
|||
|
已完成代码评审
|
表示同级评审人员或负责人已从质量、规范和功能等方面完成代码评审。该事件可根据状态变更推断,例如从“In Review”转为“Ready for QA”,也可以由集成的开发工具明确记录。 | ||
|
为什么重要
这是关键质量门禁。分析其持续时间和返工等结果,有助于提升代码质量,减少流程后期发现的缺陷。
获取位置
通常根据Jira问题变更日志推断,即状态离开“Code Review”状态时记录。若集成Bitbucket或GitHub等代码仓库工具,也可以作为明确事件记录。
采集
状态从“In Review”变更为下一状态的时间戳。
事件类型
inferred
|
|||
|
开发已完成
|
表示开发人员已完成编码,项目可以进入代码评审或测试等下一阶段。通常根据Jira状态变更推断,例如从“In Progress”转为“In Review”或“Ready for QA”。 | ||
|
为什么重要
这标志着核心开发阶段结束,可用于分析编码时长,以及交接给质量保证团队的效率。
获取位置
根据Jira问题变更日志推断,记录“status”字段从开发进行中状态变更为“In Review”或“Ready for QA”等后续状态时的时间戳。
采集
状态从“In Progress”变更为“In Review”或“Ready for QA”的时间戳。
事件类型
inferred
|
|||
|
开发项目已关闭
|
这是最终管理操作,确认该项目不再需要后续工作。通常根据状态变更为“Closed”以及“Resolution”字段已设置来推断。 | ||
|
为什么重要
表示项目生命周期的绝对终点。将其与“Deployed to Production”进行比较,可以发现管理滞后或部署后的监控周期。
获取位置
根据Jira问题变更日志推断,即“status”字段变更为“Closed”且已设置解决结果时的时间戳。
采集
状态变更为“Closed”的时间戳。
事件类型
inferred
|
|||
|
开发项目已取消
|
表示开发项目在完成前终止。通常根据状态变更为“Canceled”、“Rejected”或“Won't Do”等终止状态推断,并且通常会设置相应的解决结果。 | ||
|
为什么重要
该活动跟踪未成功的流程结果。分析项目被取消的原因,可以发现规划、优先级排序或需求定义方面的问题。
获取位置
根据Jira问题变更日志推断,即问题“status”变更为“Canceled”或“Won't Do”且设置相应解决结果时的时间戳。
采集
状态变更为“Canceled”、“Rejected”或“Won't Do”的时间戳。
事件类型
inferred
|
|||
|
项目已准备开发
|
表示开发项目已完成定义、评审和优先级排序,可以交由开发人员开始处理。通常可根据工作流中的状态变更推断,例如从“Backlog”转为“To Do”或“Ready for Dev”。 | ||
|
为什么重要
跟踪该节点有助于衡量待办列表的准备程度,以及项目在开发开始前的等待时间,还能将规划和细化时间与实际开发时间区分开来。
获取位置
根据Jira问题变更日志推断。查找“status”字段变更为“Ready for Dev”、“To Do”或“Selected for Development”等值时的时间戳。
采集
状态变更为开发前准备状态的时间戳。
事件类型
inferred
|
|||
提取指南
立即在Jira Software中优化您的SDLC!
精准定位SDLC中的低效环节,将周期时间缩短30%。
无需信用卡,几分钟内即可开始优化。