2. Jira核心概念入门
Jira 之所以能支撑从需求收集到缺陷跟踪的完整研发协同,是因为它把“工作”拆解成一组彼此关联的核心对象。理解这些对象各自的含义以及它们之间的从属、引用和驱动关系,是后续配置项目、设计流程、搭建看板的前提。本节围绕七个概念展开:项目、问题、工作流、看板、敏捷板、版本与组件,并说明它们如何组合成一条可运转的协作链路。
项目:一切工作的容器
项目(Project)是 Jira 中最高层的组织单位,它决定了问题编号前缀、可用的问题类型、工作流方案、权限方案和通知方案。例如创建一个键为 PAY 的支付项目后,其中新建的问题会自动获得 PAY-101、PAY-102 这样的编号。项目类型通常分为两类:业务项目(Business)偏向任务审批与通用协作,软件项目(Software)则额外提供敏捷板、版本、组件和开发面板等能力。研发团队绝大多数场景应选择软件项目。
项目不是“一个需求一个项目”,而是“一个相对独立的交付域一个项目”。判断标准可以看三点:是否有独立的负责人和权限边界、是否有独立的问题编号体系、是否有独立的发布节奏。如果三个答案都是“是”,就适合拆成独立项目;否则应通过组件或版本在同一个项目内区分。
问题:Jira 的最小工作单元
问题(Issue)是 Jira 中可被创建、分配、流转和关闭的最小单元,它可以是需求、任务、缺陷、子任务或史诗。每个问题由若干字段构成,关键字段包括:
- 问题类型:Story(用户故事)、Task(任务)、Bug(缺陷)、Epic(史诗)、Sub-task(子任务)等,决定图标、可用工作流和字段布局。
- 摘要与描述:摘要是一句话标题,描述承载验收标准、复现步骤等细节。
- 经办人(Assignee)与报告人(Reporter):前者是当前负责人,后者是提出者。
- 优先级与故事点:优先级用于排序,故事点用于估算工作量。
- 状态:由工作流驱动,如“待办 / 进行中 / 已完成”。
问题之间存在明确的层级与链接关系:Epic 是较大的需求容器,Story 和 Bug 可以挂到某个 Epic 下;Sub-task 必须依附于一个父问题,不能独立存在;此外还有“阻塞 / 被阻塞”“关联”“重复”等链接类型,用于表达问题之间的依赖。理解“Epic → Story → Sub-task”这条层级,是拆分需求的基础。
工作流:状态如何流转
工作流(Workflow)定义了问题从创建到关闭所经历的状态、状态之间的转换(Transition)以及触发条件。一个典型软件工作流包含:待办(To Do)→ 进行中(In Progress)→ 待评审(In Review)→ 已完成(Done)。每个转换可以绑定条件、校验器、后置函数,例如“只有经办人才能把问题从进行中转为待评审”“转为已完成时必须填写解决结果”。
工作流方案(Workflow Scheme)把工作流分配给项目中的问题类型,因此同一个项目里 Bug 和 Story 可以走不同的流程。设计工作流的原则是:状态数量与团队真实协作阶段匹配,转换路径清晰,避免出现“任何状态都能跳到任何状态”的网状结构。
看板与敏捷板:同一批问题的不同视图
看板(Board)是对项目问题的可视化视图,它不存储数据,只按筛选条件(Filter)和列映射(Column Mapping)展示问题。Jira 中常见两类板:
- Scrum 板:面向迭代(Sprint),有 Backlog、Sprint 容量、燃尽图,适合按固定周期交付的团队。
- Kanban 板:面向持续流动,强调在制品(WIP)限制和周期时间,适合运维、支持类团队。
板的列通常映射到工作流状态,例如“待办”列对应 To Do,“进行中”列对应 In Progress。拖动卡片即触发状态转换,因此板是工作流的可视化外壳:改列映射不会改变工作流本身,但会改变团队看到的工作方式。一个项目可以拥有多块板,分别服务不同角色或不同过滤条件。
版本与组件:给问题加上两个正交维度
版本(Version)和组件(Component)是项目内的两个分类字段,它们回答的是不同问题:
| 维度 | 回答的问题 | 典型取值 |
|---|---|---|
| 版本 | 这个问题在哪个发布批次交付? | v1.0、v1.1、2024-Q3 |
| 组件 | 这个问题属于系统的哪个模块? | 支付网关、用户中心、报表 |
版本有“未发布 / 已发布”状态,并支持“影响版本(Affects Version)”和“修复版本(Fix Version)”两个字段:前者说明缺陷在哪个版本被发现,后者说明计划在哪个版本修复。组件可以指定默认经办人,新建问题时选择组件即可自动分配。二者组合使用,就能在项目内按“模块 × 发布批次”快速筛选和统计。
七个概念如何串成一条协作链
把上述对象放在一起看,协作链路就清晰了:团队在项目中创建问题,问题按工作流流转状态;看板/敏捷板按筛选条件把问题可视化,拖动卡片即触发状态转换;版本标记问题属于哪个发布批次,组件标记问题属于哪个系统模块。版本与组件是两个正交维度,一个 Story 可以同时属于“支付网关”组件和“v1.1”版本。
掌握这七个概念后,后续配置项目、编写 JQL 查询、设计敏捷报表时,就能准确判断该操作影响的是哪一层对象:改字段影响问题,改状态影响工作流,改列影响看板,改批次影响版本,改模块归属影响组件。