JIRA-软件精要-全-
JIRA 软件精要(全)
原文:
annas-archive.org/md5/b6c037b693cc758cbfd496ca63a7e3ae译者:飞龙
前言
敏捷软件开发是一种新颖且革命性的开发方式。许多组织已经采用敏捷方法,替代了传统的瀑布模型,因为敏捷使得开发团队能够生产出更高质量的软件、更高的客户满意度以及提高了效率。Jira 软件将敏捷的力量带入了 Atlassian Jira——最受欢迎的企业问题跟踪和项目管理系统。
使用 Jira 软件,你将能够享受 Jira 所有你喜爱的功能,如定制字段和灵活的工作流,同时还能利用敏捷方法来管理和运行你的项目。
本书的适用对象
如果你想开始使用敏捷方法来管理 Jira 软件,那么本书将是你的完美选择。也许你曾经使用敏捷方法来管理项目,或者只是想尝试敏捷——Jira 软件是开始的完美工具。
你需要熟悉 Jira 的基础知识,既要从最终用户的角度,也要从管理员的角度。对工作流、定制字段以及 Jira 的其他管理功能有经验会非常有帮助。虽然没有敏捷经验也没有关系,但有经验会更加有用。
本书涵盖的内容
本书共分为七章,首先介绍了 Jira 软件以及如何安装该软件。接着介绍了两种主要的敏捷方法论:Scrum 和 Kanban,并讲解了如何与 Jira 软件一起使用。最后两章将超越基础,探讨如何进一步定制 Jira 软件,从中获取更多的价值。
随着每一章的学习,你将了解重要的概念,包括敏捷方法论本身,以及如何利用 Jira 软件来充分发挥其作用。
第一章,Jira 软件基础,作为本书的起始章节,旨在指导你安装 Jira 软件并让它开始运行。本章也是一个温和的入门,涵盖了 Jira 软件中的基本概念和术语,为后续章节打下基础。
第二章,Jira 软件与 Scrum,讲述了如何使用 Jira 软件来支持 Scrum 方法论,首先是对 Scrum 的高层次概述,然后介绍如何用 Jira 软件进行 Scrum 项目管理。
第三章,Jira 软件与 Kanban,讲述了如何使用 Jira 软件来支持 Kanban 方法论。本章从介绍 Kanban 开始,并讲解如何使用 Jira 软件来管理基于 Kanban 的项目。
第四章,根据你的需求使用 Jira 软件,扩展了上一章内容,介绍了一些额外的定制选项,用于在 Jira 软件中管理 Scrum 项目。本章涵盖了一些关键的定制选项,包括看板列布局和泳道。
第五章,自定义 Jira 软件,涵盖了你可以为 Jira 软件进行的非敏捷自定义。这些内容包括 Jira 软件为你提供的自定义字段、屏幕布局和工作流等功能。
第六章,Jira 软件 – 高级,涵盖了 Jira 软件的一些高级用法,包括额外的自定义选项,以及如何将 Jira 软件与 Atlassian Confluence 和第三方插件集成。通过将 Jira 软件与这些附加工具集成,团队可以更高效地创建内容、报告项目进展,并超越现有的基本功能。
第七章,Jira 软件 – 发布和部署,介绍了如何使用 Jira 软件与 Atlassian Bamboo 配合,自动化构建、发布和部署流程。
获取本书的最大收益
由于 Jira Agile 是 Atlassian Jira 的附加扩展,你需要一个正在运行的 Jira 安装版本。你可以在 www.atlassian.com/software/jira/download 下载并安装 Jira 的最新版本。
Jira 和附加插件 Agile Cards for Jira,可以在 第五章,自定义 Jira 软件 中下载并安装它们,前提是你可以从 Jira 应用程序内部安装。但如果你的 Jira 安装无法连接互联网,你可以从 marketplace.atlassian.com/plugins/com.pyxis.greenhopper.jira 下载 Jira Agile,并从 marketplace.atlassian.com/plugins/com.spartez.scrumprint.scrumplugin 下载 Agile Cards for Jira。
使用的约定
本书中使用了多种文本约定。
CodeInText:表示文本中的代码词、数据库表名、文件夹名称、文件名、文件扩展名、路径名、虚拟网址、用户输入和 Twitter 用户名。举个例子:“JQL 查询 fixVersioninunreleasedVersions()ORfixVersionisEMPTY。”
粗体:表示一个新术语、一个重要单词或你在屏幕上看到的单词。例如,菜单或对话框中的单词会以这种方式出现在文本中。举个例子:“Sample Kanban Board 正在使用已保存的过滤器 Filter for Sample Kanban Project。”
警告或重要提示通常如下所示。
提示和技巧如下所示。
联系我们
我们始终欢迎读者的反馈。
一般反馈:发送电子邮件至 feedback@packtpub.com 并在邮件主题中注明书籍名称。如果你对本书的任何部分有疑问,请通过 questions@packtpub.com 与我们联系。
勘误表:尽管我们已经尽力确保内容的准确性,但难免会出现错误。如果你在本书中发现了错误,我们将非常感激你能向我们报告。请访问www.packtpub.com/submit-errata,选择你的书籍,点击勘误提交表格链接并填写相关信息。
盗版:如果你在互联网上遇到任何非法的我们的作品的复制品,无论是何种形式,我们将非常感激你能提供相关的地址或网站名称。请通过copyright@packtpub.com与我们联系,并附上相关材料的链接。
如果你有兴趣成为一名作者:如果你在某个领域有专业知识,并且有兴趣撰写或为一本书作贡献,请访问authors.packtpub.com。
评论
请留下评论。阅读并使用本书后,为什么不在你购买书籍的网站上留下评论呢?潜在读者可以看到并使用你公正的意见来做出购买决策,我们在 Packt 也能了解你对我们产品的看法,而我们的作者则可以看到你对他们书籍的反馈。谢谢!
欲了解更多关于 Packt 的信息,请访问packtpub.com。
第一章:Jira 软件基础
随着越来越多的人开始发现传统模型的问题以及敏捷方法所带来的好处,敏捷软件开发近年来逐渐获得了动力。在敏捷方法中,开发工作是在迭代周期中进行的,并且每个迭代都会进行改进。反馈尽早收集,从而改善客户参与度和团队协作。所有这些行动使得开发团队能够更好地预见和管理变化。
Atlassian 是流行的问题跟踪软件 Jira 的开发商,认识到敏捷方法所能带来的价值,并推出了一款特别为使用敏捷方法管理项目设计的解决方案,名为 Jira 软件。在本章中,我们将介绍 Jira 软件的基础知识。
在本章结束时,您将学到:
- 
Jira 软件及其提供的功能 
- 
如何安装和配置新的 Jira 软件实例 
- 
Jira 软件的关键概念和术语 
- 
如何使用项目模板创建新的敏捷项目 
介绍 Jira 软件
Jira 软件是 Jira 产品家族中的三大产品之一,与 Jira Core 和 Jira Service Desk 一同提供,是一个主要集中于使用敏捷方法管理软件开发项目的解决方案,因此得名 Jira 软件。它采用了经典 Jira(Jira Core)的一些功能,如可自定义字段和灵活的工作流,并结合了对敏捷方法的支持,为您提供了以敏捷方式运行项目的完整体验。
开箱即用,Jira 软件支持以下敏捷方法:
- 
Scrum:这是一种敏捷方法,开发团队通过迭代工作来完成项目。每个迭代或冲刺都有定义的时间框架和范围。Scrum 最适合软件开发项目。您可以在 en.wikipedia.org/wiki/Scrum_(software_development)了解更多关于 Scrum 的信息。
- 
看板:这是一种敏捷方法,专注于通过可视化工作流和进行中的任务来实现准时交付。看板最适合操作团队。您可以在 en.wikipedia.org/wiki/Kanban了解更多关于看板的信息。
当然,由于 Jira 软件与 Jira Core 捆绑在一起,您也可以选择不使用敏捷方法,例如将其作为一个简单的任务跟踪工具,管理非软件开发相关的项目。虽然我们将主要关注如何将 Jira 软件用于敏捷目的,但从第五章《自定义 Jira 软件》开始,许多概念和主题也适用于非敏捷项目。考虑到本书特别介绍的是 Jira 软件,我们将交替使用 Jira 和 Jira 软件 这两个术语,除非另有说明。
安装 Jira 软件
通常,了解某件事的最佳方式是动手操作,因此我们将安装一个 Jira 软件实例,并以此为基础进行后续章节和练习。
安装 Jira 软件是一个简单的过程。您需要的所有内容如下:
- 
一台运行 Windows 或 Linux 的服务器或虚拟机 
- 
一个数据库:Oracle、MySQL、Microsoft SQL Server 或 PostgreSQL 
- 
Oracle JDK 1.8 或更高版本 
- 
Jira 软件安装包 
您可以在confluence.atlassian.com/adminjiraserver075/supported-platforms-935390828.html找到支持的平台和系统的完整列表。
获取并安装 Jira 软件
对于本部分,我们将使用 TAR.GZ 或 ZIP 压缩包安装包,因为它适用于任何操作系统。您可以从www.atlassian.com/software/jira/download下载最新的 Jira 软件。默认情况下,下载页面将根据您计算机的操作系统自动选择安装包。您可以点击“所有服务器版本”链接以查看所有选项。
下载文件后,按照以下步骤安装 Jira 软件:
- 
解压安装包(例如 atlassian-jira-software-7.5.0.tar.gz)到您希望安装 Jira 软件的位置。例如,在 Linux 上,您可能希望将其安装在/opt目录下。我们将在本书的其余部分将该目录称为JIRA_INSTALL。
- 
确保 bin目录中的启动脚本文件是可执行的。对于 Linux 系统,它将是start-jira.sh;对于 Windows 系统,它将是start-jira.bat。
确保创建一个用户来运行 Jira 软件。您不应该在默认的管理员账户下运行该应用程序,如 root。
- 
为 Jira 创建一个单独的目录来存储其本地文件,如配置文件和日志。确保将该目录与 JIRA_INSTALL目录分开。Jira 将此目录称为jira.home,因此我们在本书的其余部分将其称为JIRA_HOME。
- 
用文本编辑器打开 jira-application.properties文件。您可以在JIRA_INSTALL/atlassian-jira/WEB-INF/classes目录下找到该文件。
- 
输入 JIRA_HOME目录的完整路径。因此,文件的内容将类似于:`jira.home = /opt/jira_home`
- 
保存文件并从控制台执行 bin目录中的适当启动脚本。您应该会在控制台中看到类似于以下截图的输出:

配置 Jira 软件
现在我们已经安装了 Jira,我们需要通过配置其区域设置、语言以及系统的其他方面来进行设置。Jira 附带了一个设置向导,将帮助我们完成这个过程。
我们可以通过打开浏览器并访问http://localhost:8080来访问向导。如果你是从安装 Jira 的同一台机器上访问,可以使用该地址。如果你使用的是其他计算机,请将localhost替换为实际的主机名。如果 Jira 成功启动,你应该会看到 Jira 设置向导的第一步,如下图所示。选择“为我设置”选项,Jira 会自动配置自己,这是快速建立试用环境的好方法。在本练习中,我们将使用“我自己设置”选项来探索所有可用的设置:

第二步是告诉 Jira 我们将使用什么类型的数据库以及如何连接到它。选择“内建”选项会创建一个内存数据库,适用于快速试用,但如果你想在生产环境中使用 Jira,则需要选择“我自己的数据库”选项。
选择你想使用的数据库类型。请注意,对于某些数据库,例如 MySQL,你需要先下载并安装驱动程序,然后才能继续。如果需要驱动程序,Jira 会提醒你。
一旦选择了数据库类型,输入连接详情。每种数据库类型都不同,如果不确定,请咨询你的数据库管理员(DBA)或参考数据库手册。使用“测试连接”按钮检查设置是否正确,确保 Jira 可以连接到数据库。
有时网络配置或防火墙规则可能会阻止 Jira 连接到数据库:

第三步是输入关于 Jira 安装的一些基本信息。这些设置可以稍后更改,因此如果不确定,也不必担心。需要注意的一项设置是 Base URL,它需要是 Jira 实例的完全合格 URL。如果设置不正确,可能会导致以后出现问题,例如电子邮件通知中的链接无法正常工作:

第四步是输入 Jira 软件的许可证密钥。如果你已有密钥,只需将其复制并粘贴到文本框中。如果没有密钥,可以通过点击页面上的“生成 Jira 试用许可证”链接来生成一个 30 天的试用许可证。
这需要你拥有 My Atlassian 门户的账号。如果你还没有账号,可以免费注册一个并生成试用许可证:

第五步,你将被要求创建管理员账号。这个账号是超级管理员账号,你将在紧急情况下使用,特别是当你将 Jira 与外部用户管理系统(例如 LDAP)集成时,如果你与所选管理系统之间的连接出现问题,这个账号会非常重要。
请将此账户的凭据保存在安全的地方,并避免丢失。

在第六步,也是最后一步,你将有机会设置 Jira 如何发送通知邮件。与之前的步骤不同,这是可选项,如果你没有准备好邮件服务器,可以跳过此步骤,并稍后进行设置:

就这样!恭喜,你的 Jira 已经安装、配置完成,且准备就绪。点击右下角的“带我进入 JIRA”按钮,退出向导界面:

点击“带我进入 JIRA”按钮后,你将自动使用之前创建的管理员账户登录。由于这是首次使用该账户,你需要设置一些个性化选项,例如首选语言和头像。设置完账户个性化后,你将看到欢迎界面,类似于以下截图:

创建示例项目
由于我们刚刚安装了一个全新的 Jira 实例,系统会要求我们创建一个新项目。你可以选择通过“导入问题”选项从现有数据(如 CSV 文件)或其他问题跟踪系统(如 Bugzilla)导入问题。你还可以选择通过“创建新项目”选项创建一个空项目并立即开始使用,或者通过“创建示例项目”选项使用 Jira 内置的示例数据来创建一个示例项目进行探索和实验,这也是我们接下来步骤中要做的事情:
- 
点击“创建示例项目”按钮。 
- 
从项目模板菜单中选择项目类型。我们将使用 Scrum 软件开发模板: 

- 输入新项目的名称和密钥:

- Jira 将创建一个新项目,并为其填充示例问题。你将进入新项目及其敏捷看板,在我们的案例中是 Scrum 看板。我们将在下一节讲解看板,并在第二章中讨论Jira 软件与 Scrum。
理解 Jira 及其敏捷功能
如果你之前使用过 Jira,尤其是在 Jira 7 之前,你可能会将 Jira 用于各种用途,包括但不限于敏捷软件开发。实际上,在 Jira 7 之前,要在 Jira 中启用敏捷功能,你需要安装 Atlassian 提供的单独附加组件——Jira Agile。从 Jira 7 开始,敏捷功能已与 Jira 软件产品包捆绑在一起,你无需额外安装附加组件。然而,有许多有用的第三方附加组件可以大大增强你的使用体验,我们将在后续章节中进行讲解。
由于本书主要关注如何使用 Jira 软件进行敏捷软件开发,我们将首先介绍一些敏捷概念,并查看它们在 Jira 中的表示和应用。
敏捷看板
敏捷看板,简称看板,是你作为最终用户在日常项目中使用的主要用户界面。敏捷看板允许你可视化项目中的任务及工作流中的可用步骤,并提供一个交互式方式来将任务从一个工作流步骤转移到另一个。根据你使用的看板类型,还会有额外的功能,提供一系列的功能——例如,有些可能允许你管理功能的待办事项列表,提供视觉提示来突出潜在的瓶颈等。结合额外的插件,你甚至可以拍摄敏捷看板的快照,并将其放置到物理白板上,反之亦然。以下截图显示了一个处于工作或冲刺模式的 Scrum 看板:

卡片
卡片就像你在白板上可能使用的便签纸。它捕捉了用户故事,并代表需要实现的需求或功能。在 Jira 中,每个卡片代表一个任务或问题。以下截图显示了卡片在敏捷看板上的样子:

问题和问题类型
Jira 中的每个工作单元,如故事或史诗,统一被称为问题。每个问题都有一个字段叫做问题类型,它表示问题的类型和目的。例如,在一个 Scrum 项目中,我们默认会有以下问题类型:
- 
史诗:这代表一个尚未细化为更细粒度需求的大型用户故事。在 Jira 中,史诗通常用于定义多个将成为其中一部分的故事的“主题”,以及大型开发项目中的模块或主要组件。 
- 
故事:这代表一个要实现的单一功能。它通常用于从最终用户的角度捕捉需求。因此,故事通常以非技术性语言书写,并关注功能的期望结果。 
- 
缺陷:这代表需要修复的产品缺陷或问题。 
- 
任务:这代表一个通用任务,不是缺陷也不是故事,但需要完成。 
正如我们将在后续章节中看到的,你可以自定义项目的问题类型列表,以更好地适应项目需求。
字段
每个问题由多个字段组成,如前面提到的问题类型字段以及其他字段,如摘要、描述和指派人。Jira 提供了一组默认字段,帮助你快速入门,但正如我们在第五章《自定义 Jira 软件》中将看到的那样,添加字段到你的项目非常简单。
工作流
工作流是 Jira 的核心,它在后台驱动着 Jira 及其敏捷看板的运作。正如我们将在后续章节中看到的那样,Jira 能够与您现有的工作流集成,或者根据您的开发过程进行适配和建模。刚开始时,您无需了解太多关于工作流的知识,因为 Jira 会为您处理这些内容。我们将在第五章中更详细地介绍工作流,定制 Jira 软件。
过滤器和 JQL
Jira 敏捷看板可以处理一个特定项目或多个项目。当您需要多个项目时,您将需要使用过滤器来定义哪些问题将被包含在内。因此,理解并有效使用Jira 查询语言(JQL)将非常有用。您可以在confluence.atlassian.com/jiracoreserver075/advanced-searching-935563511.html找到有关 JQL 的更多信息。
使用 Jira 敏捷项目模板进行敏捷开发
正如我们在创建示例项目时所看到的,Jira 提供了多个项目模板,如 Scrum 和 Kanban。项目模板使您可以基于预定义的设置创建新项目,这样当项目创建时,它将自动设置所有必要的配置,包括:
- 
问题类型方案:仅包含所选模板相关问题类型的问题类型方案,例如适用于 Scrum 的故事和史诗。 
- 
工作流:一个专门设计的工作流,使您在敏捷看板上处理问题时更加轻松。 
- 
屏幕:包含处理敏捷所需字段的一组屏幕,例如用来将故事与史诗关联的史诗链接,以及在将任务添加到 Scrum 冲刺时使用的冲刺字段。 
- 
敏捷看板:专门为新项目分配的敏捷看板,前提是模板为 Scrum 或 Kanban。 
正如我们将在后续章节中看到的那样,您可以为任何现有项目创建敏捷看板,即使它们不是作为 Scrum 或 Kanban 模板创建的。这些项目模板只是帮助您快速入门的工具。
概要
在本章中,我们回顾了 Jira 软件的一些基本概念以及它对敏捷方法的支持。我们从头开始安装了 Jira 软件实例,并使用带有示例数据的 Scrum 项目模板创建了一个项目,我们将在后续章节中使用该项目。
现在我们已经介绍了 Jira 软件的基本知识,接下来我们将开始探索如何使用它来运行敏捷项目,从下章的 Scrum 方法论开始。
第二章:Jira 软件与 Scrum
Scrum 是 Jira 软件支持的敏捷方法之一。与过去的方式不同,那时单一的项目经理会使用电子表格或 Microsoft Project 来跟踪项目进展,而在 Jira 软件和 Scrum 的帮助下,团队成员的参与被鼓励,以促进不同项目利益相关者之间的协作。在本章中,我们将探讨如何利用 Jira 软件释放 Scrum 的力量。
本章结束时,您将学习以下内容:
- 
Scrum 概述 
- 
设置 Scrum 看板 
- 
管理问题积压 
- 
估算工作量和团队的工作速度 
- 
运行 Scrum 冲刺 
- 
跟踪和审查冲刺进度 
Scrum
与传统的瀑布方法不同,瀑布方法中每个任务或项目阶段是顺序进行的,而 Scrum 提出了迭代的概念。从高层次看,在 Scrum 中,一个项目被分解为若干次迭代,称为冲刺。每个冲刺通常持续一到两周。项目团队完成部分工作,整个项目在所有冲刺完成后就结束了。通过这种方式,项目团队能够做到以下几点:
- 
在每次冲刺中持续交付,以便尽早收集反馈 
- 
在项目生命周期中适应变化 
- 
及早发现问题,而不是等到最后才发现,这样做成本很高 
- 
在每次冲刺结束时通过回顾会议持续改进流程 
Scrum 中的角色
在任何 Scrum 团队中,有三个主要角色。尽管每个角色都有其特定的职能和责任,但这三者需要共同协作,才能作为一个紧密的团队取得 Scrum 的成功。
产品负责人
产品负责人通常是负责拥有产品整体愿景和方向的产品经理或项目经理。作为产品负责人,他们负责将要添加到积压工作中的功能、每个功能的优先级,并计划通过冲刺交付这些功能。本质上,产品负责人是确保团队在每个冲刺中为利益相关者交付最大价值的人。
Scrum Master
Scrum Master 的工作是确保团队高效、有效地运行和使用 Scrum,因此他们需要对 Scrum 有深入的知识和经验。Scrum Master 有以下两个主要责任:
- 
指导并帮助团队中的每个人理解 Scrum;这包括产品负责人和交付团队,以及与项目团队互动的外部人员。在教练的角色中,Scrum Master 可能会帮助产品负责人理解并更好地管理积压工作和冲刺计划,同时向交付团队解释流程。 
- 
通过消除阻碍来改进团队的 Scrum 过程。障碍,也称为障碍因素,是指任何可能阻碍或负面影响团队采用 Scrum 的事物。这些问题可能包括不合理的产品待办事项列表,或者来自其他团队/管理层的支持不足。Scrum 大师有责任直接消除这些障碍,或者与团队合作找到解决方案。 
总体而言,Scrum 大师是 Scrum 的倡导者,负责教育、促进和帮助团队成员采用 Scrum,并实现其优势。
交付团队
交付团队主要负责执行和交付最终产品。然而,团队还负责提供任务估算,并协助产品负责人更好地规划冲刺和交付。
理想情况下,团队应由项目所需的跨职能成员组成,例如开发人员、测试人员和业务分析师。由于每个冲刺都可以看作是一个独立的小型项目,因此在任务执行并通过工作流传递时,随时拥有所需的所有资源至关重要。
最后但同样重要的是,团队还负责在每次冲刺结束时与产品负责人和 Scrum 大师一起回顾他们的表现。这有助于团队回顾他们的工作,并揭示如何在即将到来的冲刺中改进表现。
了解 Scrum 过程
现在,我们将简要介绍 Scrum 并概述 Scrum 规定的各种角色。让我们看看典型项目如何使用 Scrum 运行,以及一些关键活动。
首先,我们有待办事项列表,它是一个一维的列表,列出了团队需要实现的功能和需求。待办事项按优先级从上到下排列。虽然产品负责人是负责待办事项的人,并根据他们的愿景定义优先级,但团队中的每个人都可以通过添加新事项、讨论优先级以及估算实现所需的努力来为待办事项列表做出贡献。
然后,团队将开始规划下一个即将进行的冲刺。在此次冲刺规划会议中,团队将决定冲刺的范围。通常,待办事项中优先级最高的项目将被纳入其中。关键在于,在冲刺结束时,团队应交付一个经过充分测试的、潜在可交付的产品,其中包含所有已承诺的功能。
在冲刺期间,团队将每天举行一次 Scrum 会议,通常在每天开始时,每个团队成员会简要概述他们已经完成的工作、计划进行的工作以及可能遇到的任何障碍。会议的目的是确保每个人都在同一页面上,因此会议应该简短且高效。
在冲刺结束时,团队会召开冲刺回顾会议,团队会向利益相关者展示他们所完成的工作。在这个会议中,随着产品逐渐成型,新的变更通常会出现,这些变更将被添加到待办事项列表中,团队将在下一次冲刺开始前对这些变更重新进行优先级排序。
另一个名为冲刺回顾会议的会议也将在冲刺结束时召开,在这个会议中,团队将一起讨论他们做得对的地方、做得错的地方以及如何改进。
在整个过程中,Scrum 大师将充当裁判,确保所有这些活动都能正确执行。例如,Scrum 大师会在待办事项和冲刺规划会议期间指导产品负责人和团队,确保他们的项目范围和描述是准确的。Scrum 大师还将确保会议保持专注、高效,不会超时,并且团队成员之间保持尊重,不会打断对方讲话。
现在,你已经了解了使用 Scrum 的一些优势和不同的角色,以及一个简单的 Scrum 流程。接下来,我们来看看如何使用 Jira 软件通过 Scrum 来管理项目。
创建新的 Scrum 看板
使用 Jira 软件进行 Scrum 的第一步是为你的项目创建一个 Scrum 看板。如果你是通过使用 Scrum 项目模板创建项目的,如第一章《Jira 软件基础》所示,那么 Scrum 看板会在创建项目的同时自动为你创建。
然而,如果你想为现有项目创建一个看板,或者如果你希望你的看板跨多个项目,你需要单独创建它。要创建一个新的看板,请按照以下步骤操作:
- 
从顶部导航栏点击“看板”菜单项,并选择“查看所有看板”选项。 
- 
点击“创建看板”按钮。这将弹出“创建敏捷看板”对话框。 
- 
选择“创建 Scrum 看板”选项,如下图所示: 

- 
选择你希望创建看板的方式。这里有三个选项可以选择,如下所示: - 
使用新的软件项目创建看板:这与使用 Scrum 项目模板创建项目相同。将创建一个新项目,并为该项目创建一个新的 Scrum 看板。如果你想从零开始创建一个新的 Scrum 项目,可以选择此选项。 
- 
来自现有项目的看板:此选项允许你创建一个可以跨多个现有项目的看板。如果你已经有一个现有项目,并且想为其添加一个新的 Scrum 看板,可以选择此选项。 
- 
来自现有已保存筛选器的看板:此选项与现有项目选项类似,但允许你使用筛选器来定义哪些问题将被包含。如果你想为多个项目创建看板,并且希望更精细地控制要包含哪些问题,可以使用此选项。 
 
- 
如果您的项目中有许多任务,您还可以使用过滤器来限制要包括的任务数量。

- 填写看板所需的信息。根据您选择的选项,您可能需要提供项目详情或选择要使用的过滤器。以下截图展示了如何从两个现有项目创建看板的示例。点击“创建看板”按钮以完成:

了解 Scrum 看板
Scrum 看板是您和您的团队用于计划和执行项目的工具。它既是您的待办事项列表,也是您的冲刺活动看板。Scrum 看板有以下主要模式:
- 
待办事项:待办事项模式是您将计划冲刺、组织待办事项列表并创建任务的地方。 
- 
活跃冲刺:活跃冲刺模式是您的团队将在其中工作的冲刺阶段。 
- 
发布:发布模式显示了您为项目准备的所有版本(请参见本章后面的部分),以及每个版本的进度。 
- 
报告:报告模式是您可以跟踪冲刺进度的地方。 
- 
任务:任务模式是搜索模式,您可以在此处使用各种过滤选项和高级搜索查询来搜索项目中的任务。 
- 
组件:组件模式列出了项目中的所有组件。在 Scrum 中,史诗(epics)通常用来代替组件。 
以下截图展示了典型的 Scrum 看板在待办事项模式下的样子。在页面中央,您有待办事项列表,列出了所有任务。您可以上下拖动它们来重新排序优先级。在右侧,您有任务详细信息面板,点击待办事项中的任务时将显示该面板:

在待办事项规划会议期间,产品负责人和团队将使用此待办事项模式来添加新项目到待办事项列表,并决定它们的优先级。
创建新任务
当创建一个 Scrum 看板时,所有的任务(如果有的话,也称为用户故事,简称故事)都会被放入待办事项列表中。在冲刺计划会议中,您可以创建更多任务并将其添加到待办事项列表中,同时将需求转化为用户故事。创建新任务的步骤如下:
- 
浏览到您的 Scrum 看板。 
- 
从顶部的导航栏点击“创建”按钮,或者按下键盘上的 C 键。这将弹出创建任务对话框。 
- 
在“任务类型”字段中选择您要创建的任务类型(例如,故事)。 
- 
为任务提供附加信息,例如摘要和描述。 
- 
点击“创建”按钮来创建任务,如下图所示: 

创建任务屏幕可以自定义,添加额外的字段。我们将在第五章中讨论字段和屏幕的自定义,自定义 Jira 软件。
一旦您创建了问题,它将被添加到待办事项中。然后,您可以将其分配到史诗或版本中,并通过将其添加到冲刺中来安排完成时间。
在创建和完善用户故事时,您需要尽可能地将其拆解,这样在决定冲刺的范围时,团队就可以更轻松地提供估算。一种方法是使用 Bill Wake 定义的INVEST特性:
- 
独立:最好每个故事都能独立完成。虽然这并非总是可能,但独立的任务会使实现更容易。 
- 
可协商:开发人员和产品负责人需要共同合作,确保双方完全了解故事的内容。 
- 
有价值:故事需要为客户提供价值。 
- 
可估算:如果故事对开发团队来说过大或过于复杂,无法提供估算,那么需要进一步拆解。 
- 
小:每个故事需要足够小,通常是针对一个单一的功能,可以在一个冲刺中完成(大约两周)。 
- 
可测试:故事需要描述预期的最终结果,以便在实施后可以进行验证。 
创建新的史诗
史诗是大型用户故事,或是需要拆解成更小、更易管理的用户故事的大型工作。例如,一个史诗可能叫做“性能提升”,其中包含多个用户故事,如诊断性能问题和实施各种修复。史诗可以在一个冲刺中完成,但并不要求必须如此,通常它们会通过多个冲刺交付,并按照它们包含的用户故事的优先级顺序进行交付。在 Jira 软件中,史诗是问题类型设置为“史诗”的问题。
要从您的 Scrum 看板创建新的史诗,执行以下步骤:
- 
如果史诗面板被隐藏,可以通过点击左侧面板中的“史诗”来展开。 
- 
从“史诗”面板点击“创建史诗”链接。将鼠标悬停在面板上时,链接将出现。这将弹出创建史诗对话框,项目和问题类型字段已经为您预先选择: 

您还可以打开“创建问题”对话框,如前一节所示,并选择问题类型为“史诗”。
- 
在“史诗名称”字段中提供史诗名称。 
- 
在“摘要”字段中提供简要概述。 
- 
点击“创建”按钮。 
一旦您创建了史诗,它将被添加到史诗面板。
史诗不会以卡片的形式出现在冲刺或待办事项列表中。
创建史诗后,您可以开始在其中添加问题。这样做有助于您组织与同一功能或特性相关的问题。
有两种方法可以将问题添加到史诗中:
- 
通过直接在史诗中创建新问题,展开您想要的史诗,并点击“在史诗中创建问题”链接。 
- 
通过将现有问题拖动到史诗任务中,如下图所示: 

估算你的工作
估算是一门艺术,是 Scrum 的重要组成部分。团队能够准确估算将直接影响你们冲刺的成功与否。对于 Scrum 来说,估算意味着速度,换句话说,就是你们团队在一个冲刺周期内能够交付多少工作量。这与传统的按工时来测量和估算是不同的。
测量速度的概念是将估算与时间追踪解耦。因此,与其根据完成一个任务需要多少小时来估算工作量——这样往往会使人们为了保持估算的准确性而加班工作,不如通过使用一个任意的数字来进行测量,这样可以帮助我们避免这个陷阱。
一种常见的方法是使用所谓的故事点。故事点用于衡量完成一个任务所需的复杂性或努力程度,而不是完成它需要多长时间。例如,一个复杂的任务可能有 8 个故事点,而一个较简单的任务可能只有 2 个故事点。这并不意味着复杂的任务需要 8 小时来完成,它仅仅是一种衡量任务复杂性的方式。
在你用故事点估算完所有问题后,你需要确定你的团队在一个冲刺中能交付多少故事点。当然,在第一次冲刺时,你可能不知道这个数值,所以需要再次进行估算。假设你的团队在一个为期一周的冲刺中能够交付 10 个故事点的工作量,那么你可以创建包含总共 10 个故事点的任务集合。随着团队开始进行冲刺,你可能会发现 10 个故事点的估算值过高或过低,因此需要为第二次冲刺调整这个估算。记住,这里的目标不是第一次就做到完美,而是要持续改进你的估算,直到团队能够始终如一地交付相同数量的故事点工作量——也就是说,你们团队的速度。一旦你开始准确预测团队的速度,管理每个冲刺的工作量将变得更容易。
现在你已经知道了 Scrum 中的估算是如何工作的,接下来我们来看一下 Jira 软件如何让你估算工作量。
Jira 软件提供了几种方式来估算问题,默认的方法是使用故事点。你的待办事项中的每个故事都有一个叫做估算的字段,如下图所示。为了给故事提供一个估算值,你只需将鼠标悬停在该字段上,点击并输入故事点值:

一致性是估算中最重要的因素。宁可 consistently wrong 也不愿 inconsistent right and wrong。当然,最终的目标是从 consistently wrong 中改进,逐步做到 consistently right。
请记住,你在此提供的估算值是任意的,只要它能够反映问题之间的相对复杂度。这里有一些关于估算的要点:
- 
在估算问题时保持一致性。 
- 
在估算时请让团队参与进来。 
- 
如果估算结果不准确,那也没关系。这里的目标是改进和调整。 
对问题进行排名和优先级排序
在规划会议中,给问题排序是很重要的,这样列表才能反映它们之间的相对重要性。对于熟悉 Jira 的人来说,它有一个优先级字段,但由于它允许多个问题共享相同的优先级值,因此当两个问题都标记为“关键”时,这会变得有些混乱。
在 Scrum 中,你应该通过拖动问题上下排序,按照其重要性进行优先级排序。这通常是在整理 Backlog 时进行的。通过将最重要的问题排在 Backlog 的顶部,在进行 Sprint 规划时,你可以轻松地通过拖动 Sprint 底部来添加问题,稍后我们将看到这一点。
创建新版本
在软件开发团队中,你可能会使用版本来规划发布。使用版本可以帮助你规划和组织 Backlog 中的问题,并安排它们的完成时间。你可以创建多个版本,并据此规划你的路线图。
创建新版本,请按照以下步骤操作:
- 
如果版本面板被隐藏,点击左侧面板中的 VERSIONS 来展开它。 
- 
点击 Versions 面板中的 Create Version 链接。当你将鼠标悬停在面板上时,链接会显示出来。点击该链接会弹出“创建版本”对话框,项目字段会为你预先选中,截图如下所示: 

- 
在名称字段中为版本提供一个名称。 
- 
你还可以为版本指定开始日期和发布日期。这些字段是可选的,并且可以稍后更改。 
- 
点击创建按钮。 
一旦版本创建完成,它将被添加到 Versions 面板中。就像史诗一样,你可以通过将问题拖放到目标版本中来将问题添加到版本中。在 Scrum 中,版本可以跨多个 Sprint。点击版本后,将显示该版本中包含的问题。如下面的截图所示,版本 2.0 跨越了三个 Sprint:

规划 Sprint
Sprint 规划会议是项目团队在每个 Sprint 开始时聚集在一起,决定接下来应该关注和处理的事项。在 Jira 中,你将使用看板的 Backlog 模式来创建并规划新的 Sprint 范围。
现在我们来说明 Sprint 规划过程中一些关键的组件:
- 
Backlog:包括所有尚未进入任何 Sprint 的问题。换句话说,它包括所有尚未安排完成的问题。对于一个新建的看板,所有现有问题都会被放置在 Backlog 中。 
- 
冲刺:这些显示在待办事项之上。你可以拥有多个冲刺并进行提前规划。 
- 
问题详情:这是右侧的面板,显示你点击的任何问题的详细信息。 
- 
史诗:这是左侧的一个面板,显示你拥有的所有史诗。 
- 
版本:这是左侧的另一个面板,它显示了你拥有的所有版本。 
以下截图中突出显示的区域是新的冲刺,冲刺中的问题是团队承诺在冲刺结束时交付的内容:

开始一个冲刺
一旦所有史诗和问题都已创建,就该开始准备冲刺了。第一步是点击“创建冲刺”按钮,创建一个新的冲刺。
有三种方式将问题添加到冲刺中:
- 
通过从待办事项中拖动你想要的任务并将其放入冲刺中。 
- 
编辑问题的冲刺字段,并选择你要将问题添加到的冲刺。 
- 
通过将冲刺页脚拖动到待办事项中的问题,以便将其包括在冲刺中。如果你已经对待办事项进行了整理,这是一种快捷方式,可以让你专注于位于顶部的问题。 

你可以创建多个冲刺,并通过从待办事项中填充每个冲刺来规划当前冲刺之外的内容。
一旦你将所有想要包含在冲刺中的问题都选好,点击“开始冲刺”按钮。如以下截图所示,系统会要求你设置冲刺的开始和结束日期。默认情况下,Jira 会自动将开始日期设置为当前日期,结束日期设置为一周后的日期。你当然可以更改这些日期。一般的最佳实践包括以下几点:
- 
保持冲刺时间短,通常为一到两周。 
- 
保持冲刺的时长一致;这样,你将能够准确预测团队的速度: 

一旦开始了你的冲刺,你将进入看板的“活跃冲刺”模式。
请注意,开始一个冲刺前,你需要考虑以下事项:
- 
必须没有正在进行的冲刺。每个看板每次只能有一个活跃的冲刺。不过,有一个选项允许你运行并行冲刺,我们将在下一个章节中讲解。 
- 
你必须拥有所有项目的管理项目权限,这些项目都包含在看板中。我们将在第五章中讲解权限,定制化 Jira 软件。 
同时运行多个冲刺
默认情况下,每次只能有一个活跃冲刺。然而,有时你可能会有多个团队在同一个项目上工作,但在不同的领域。在这些情况下,你可能希望为每个团队运行不同的冲刺。你可以通过以下方法启用并行冲刺:
- 
使用管理员身份登录到 Jira,例如我们在安装过程中创建的用户。 
- 
浏览到管理控制台的应用程序(Applications)部分。 
- 
从左侧面板中选择 Jira 软件配置选项。 
- 
勾选“并行冲刺”(Parallel Sprints)选项以启用此功能。 
一旦启用了此选项,你将能够在同一个项目中启动多个冲刺。请注意,这是一个全局选项,因此所有项目都将允许并行冲刺。
正在进行冲刺
一旦你开始冲刺,你将进入“活动冲刺”(Active Sprints)模式;此时,所有属于该冲刺的问题将显示在此模式下。在“活动冲刺”模式下,看板将分为两个主要部分。
主要部分将包含当前冲刺中的所有问题。你会注意到它被分成了几个列。这些列表示问题可能处于的不同状态,应该反映出你团队的工作流。默认情况下,有三列:
- 
待办(To Do):问题等待开始处理 
- 
进行中(In Progress):问题当前正在处理中 
- 
已完成(Done):问题已经完成 
正如我们在下一章中所看到的,你可以通过将这些列映射到 Jira 工作流状态来定制它们。
如果你使用史诗(epics)来组织问题,此部分也会分成几个水平泳道。泳道帮助你在看板上将相似的问题分组。泳道按照标准(如负责人、故事或史诗)将问题分组。默认情况下,泳道是按故事分组的。
因此,你可以看到,列是按状态将问题进行分组,而泳道则按相似性将问题分组。如下面的截图所示,我们有三列和两个泳道:

游泳道和工作流列都可以根据团队最佳的工作方式进行自定义,我们将在第四章《根据你的方式使用 Jira 软件》中详细讨论。
第二部分将在你点击一个问题后出现在右侧,显示该问题的详细信息,如摘要、描述、评论和附件。
在典型的场景中,冲刺开始时,所有问题都会位于最左侧的待办(To Do)列。在每日的 Scrum 会议中,团队成员会审查看板的当前状态,并决定当天的工作重点。例如,每个团队成员可以接受一个问题,并通过拖拽问题卡片将其移动到进行中(In Progress)列。一旦完成了问题的处理,他们可以将问题卡片拖到已完成(Done)列。团队会在整个冲刺过程中不断循环此操作,直到所有问题都完成:

在冲刺期间,Scrum 大师和产品负责人需要确保除非紧急情况,否则不会打扰团队。Scrum 大师还应该协助移除那些阻碍团队成员完成分配任务的障碍。
产品负责人还应确保不会向冲刺中添加额外的故事,并且任何新的功能请求应添加到待办事项列表中,以便未来的冲刺使用。如果你尝试向当前活跃的冲刺中添加新问题,Jira 会发出警告。
完成一次冲刺
在冲刺结束的当天,你需要通过执行以下步骤来完成冲刺:
- 
转到你的 Scrum 看板并点击“活跃冲刺”。 
- 
点击“完成冲刺”链接。这将弹出“完成冲刺”对话框,概述冲刺的当前状态。如以下截图所示,本次冲刺共有六个问题,其中三个已完成,三个未完成: 

- 点击“完成”按钮以完成冲刺。
当你完成一个冲刺时,任何未完成的问题将自动移回待办事项列表的顶部。有时,如果只有一两个问题未完成,你可能会有延长冲刺的冲动,但不应该这样做。记住,这里的目标不是通过延长冲刺来使你的估算看起来更准确,也不是强迫你的团队更加努力地完成所有任务。你要确保团队在每个冲刺中都能稳定地完成相同数量的工作。如果你有未完成的工作,那就意味着你的团队的工作速度应该降低。因此,在下一个冲刺中,你应该计划减少工作量。
报告冲刺进度
随着团队忙碌地处理冲刺中的问题,你需要有一种方式来跟踪进展。Jira 通过报告模式提供了许多有用的报告。你可以在冲刺期间随时访问报告模式。这些报告在冲刺回顾会议期间也非常有用,因为它们提供了关于冲刺进展的详细见解。
冲刺报告
冲刺报告为你提供了冲刺进展的快速概览。它包括一个燃尽图(见下节)和一个汇总表,列出了冲刺中的所有问题及其状态,如下所示:

如前所述的冲刺报告所示,我们已经完成了六个问题。一个问题未完成,并被放回了待办事项列表。
燃尽图
燃尽图显示了剩余预计或理想工作的图示与实际进展的对比。灰色线表示项目预计的进度,红色线表示实际进展。在理想情况下,随着冲刺每天的进展,这两条线应尽可能靠近:

速度图表
速度图表展示了原本承诺的冲刺工作量(灰色条形)与实际完成的工作量(绿色条形),具体取决于你如何估算,例如在故事点的情况下。
图表将包括过去的迭代周期,你可以根据这些数据了解趋势并预测团队的工作速度。如下面的截图所示,从迭代 1 到 3,我们的工作量承诺过多,而在迭代 4 中,我们完成了所有已承诺的工作。因此,计算团队速度的一种方式是基于“已完成”一栏来计算平均值,这将给你一个关于团队实际速度的指示。
当然,这需要:
- 
确保你的迭代周期保持一致 
- 
确保团队成员在工作效率上保持一致 
- 
确保你的估算方法保持一致 
随着团队开始使用 Scrum,你可以期待看到团队的工作速度逐渐提高,因为你会不断优化工作流程。随着时间的推移,团队的工作速度将变得一致,并且可以作为可靠的工作量估算指标。这将帮助你避免对工作交付的过度承诺或承诺不足,如下图所示的工作速度图:

总结
在这一章中,我们介绍了如何使用 Jira 进行 Scrum 管理。我们探讨了 Scrum 看板,如何利用它组织问题积压、规划并执行迭代,以及如何通过报告和图表来回顾并跟踪进展。记住,成功执行迭代的关键要素是一致性、回顾和持续改进。如果你发现估算不准确,尤其是在初期的几个迭代中,那也是正常的;只需确保你进行回顾、调整和改进即可。
现在你已经了解了如何使用 Scrum 看板,下一章我们将介绍如何使用 Jira 进行 Kanban 管理。
第三章:Jira Software for Kanban
在过去的两章中,我们已经介绍了如何使用 Jira Software 来支持 Scrum 敏捷方法。Jira Software 还支持另一种敏捷方法——Kanban,许多敏捷团队选择使用 Kanban 而不是 Scrum。在本章中,我们将探讨如何在 Jira Software 中使用 Kanban。
在本章结束时,你将学会如何:
- 
使用 Kanban 可视化工作流 
- 
按 Kanban 方式处理问题 
- 
自定义你的 Kanban 看板 
- 
创建报告和图表以便改进 
Kanban
Kanban 是 Jira Software 支持的另一种敏捷方法。与围绕计划迭代(即冲刺)进行项目的 Scrum(详见第二章,Jira Software for Scrum)不同,Kanban 不进行迭代,或者说,Kanban 中的迭代使用是可选的。
简而言之,Kanban 有以下三个概念:
- 
可视化工作流:这将任务(问题)拆解并展示在看板上。你需要组织你的看板,使得每一列都代表你整体工作流中的一个状态,按照从左(开始)到右(完成)的顺序排列。 
- 
限制进行中的工作(WIP):这为工作流状态中的任务数设置最小和最大限制。 
- 
衡量前置时间:这计算完成一项任务所需的平均时间,并尽量保持时间低且可预测。 
虽然 Scrum 要求团队规划有管理范围的迭代冲刺,并专注于团队的速度,而 Kanban 则更具灵活性,重点更多地放在周期时间上。周期时间是衡量一个问题或工作单元从头到尾穿越团队工作流所需时间的指标。目标是减少周期时间,识别工作流中的问题和瓶颈,并加以解决,从而使流程能够顺利进行。正如我们将看到的,Jira 提供了许多工具来帮助实现这一目标。
创建一个新的 Kanban 看板
Jira Software 提供了一个简单易懂的向导,帮助你创建新的 Kanban 看板。你只需要选择是从头开始创建一个看板,还是从现有项目或筛选器创建,然后按照步骤进行操作。
要创建一个新的 Kanban 看板,执行以下步骤:
- 
从顶部导航栏点击“敏捷”菜单,并选择“管理看板”选项。 
- 
点击“创建看板”按钮。这将弹出“创建敏捷看板”对话框。 
- 
选择“创建 Kanban 看板”选项: 

- 
选择你希望创建看板的方式,并点击“下一步”按钮。创建看板有三个选项可以选择,如下图所示。以下是这些选项的解释: - 
使用新软件项目创建的看板:这与使用 Scrum 敏捷项目模板创建项目相同。将会创建一个新项目,并为该项目创建一个专用的 Kanban 看板。 
- 
从现有项目创建看板:这个选项允许你从现有的项目中创建一个新的看板,该看板将专门用于一个项目。 
- 
从现有保存的过滤器创建看板:这个选项允许你使用过滤器跨多个项目创建一个看板。因此,要使用此选项,首先需要创建一个包含所需项目和问题的过滤器。 
 
- 
如果你的项目中有许多问题,你也可以使用过滤器来限制要包含的问题数量。

- 填写看板所需的信息。根据你选择的选项,你可能需要提供项目详情或选择一个过滤器来使用。下图展示了使用过滤器创建看板的示例。点击“创建看板”按钮完成操作:

理解看板(Kanban)板
对于熟悉 Jira 软件中 Scrum 看板的人来说,看板的工作模式将非常类似于 Scrum 看板,只有一些细微的差异:
- 
没有待办事项视图。待办事项是看板的第一列——新问题将直接添加到待办事项列。 
- 
当前没有活跃的冲刺。由于看板没有迭代周期,你始终处于工作视图中。 
- 
一些列可能会有最小值和最大值,这些数值会显示在列名旁边。 
- 
一些列可能会被高亮显示为红色或黄色,如下图所示,其中“进行中”列被高亮显示为红色: 

那么,让我们更仔细地看看看板,并了解为何会有这些差异。首先,如前面章节所述,看板不使用离散的时间周期(例如迭代)来提前规划工作。相反,工作是持续进行的,从待办事项到完成再到发布。因此,看板没有为待办事项(或旧版本 Jira 软件中的计划模式)和当前的活跃冲刺(或工作模式)提供独立的视图;所有内容都合并到这个单一的看板视图中,展示了你所有的待办事项以及当前的进展,帮助团队在处理问题时进行追踪。
看板上的第一列是你的待办事项列,如果你没有使用自定义看板和/或工作流,默认名称为“待办事项”(Backlog)。任何新创建的问题都会自动放入这一列。但是,如果你有一个大型项目,随着问题数量的增加,你可能会发现很难维护此列。在这种情况下,Jira 提供了一个选项,可以像 Scrum 看板一样使用待办事项视图,这个选项称为Kanplan。我们将在第四章,根据你的方式使用 Jira 软件中介绍 Kanplan。
自定义你的看板
创建完看板后,你需要根据你的工作流和团队的工作负载来定制它。以下是一些关键的自定义内容:
- 
模拟工作流来设计看板列。 
- 
设置工作流状态的最小和最大约束,以便控制进行中的工作。 
- 
控制哪些问题将被包含并显示在看板上。 
- 
在看板上通过泳道对问题进行分类。 
- 
使用快速筛选器创建自定义过滤视图。 
使用看板可视化工作流。
Kanban 的核心概念之一是可视化团队的工作流,以更好地理解团队当前正在处理的工作、工作负载的情况,以及给定任务在工作流中的位置。所以第一步是设置看板列,直观地表示您的工作流是什么样的。
在 Jira 中,工作流状态在看板上表示为列。要自定义 Kanban 看板的列,请执行以下步骤:
- 
转到您想要自定义的看板。 
- 
点击看板下拉菜单并选择“配置”选项。 
- 
从左侧导航菜单中选择“列”。 
- 
点击“添加列”按钮。 
- 
为新列输入名称并选择类别。一般来说,如果列表示工作流的开始,那么它应该属于“待办”类别。如果表示结束,则应该属于“已完成”类别。否则,请使用“进行中”类别。 
- 
点击“添加”按钮以创建新列。 

创建新列后,它将被添加为列表中的倒数第二列。您可以通过将列左右拖动来重新排列其位置,使其在工作流中处于正确的位置。
通过这种方式添加列时,如果尚未存在同名的状态,也会为您创建一个相应的新状态。因此,您不必单独创建列和状态。
一般来说,您的看板应该反映工作如何在工作流中进展,因此您应该为团队成员将要处理的每个主要步骤设置一个列。例如,如果您的工作流中有“开发中”、“开发完成”和“测试中”三个步骤,您应该有两个列,一个用于“开发中”,另一个用于“测试中”。不应该为“开发完成”设置列,因为没有人会在该步骤处理问题。
设置列约束。
如前所述,Scrum 和 Kanban 之间的一个主要区别是,Scrum 限制每次迭代的工作量,而 Kanban 限制每个工作流状态的工作量。这是通过设置列约束来实现的。列约束告诉 Jira 在任何给定时间内某一列中应包含的最大和/或最小问题数。
要设置列约束,请执行以下步骤:
- 
转到您想要自定义的看板。 
- 
点击看板下拉菜单并选择“配置”选项。 
- 
从左侧导航菜单中选择“列”。 
- 
从列约束字段中选择你希望如何计算列约束。如果选择“无”选项,则此板将不应用列约束。 
- 
为状态在其对应的列中设置最小和最大约束值。例如,如下图所示,对于“已选择开发”列,团队应该至少有五个问题,并且在该状态下最多有十个问题: 

一旦你为工作流状态设置了最小和最大约束,Kanban 板将会告诉你这些约束是否被违反。例如,如下图所示,我们在“已选择开发”状态下只有一个问题,而该状态的最小约束是五个问题,因此该列被标记为黄色。
我们在“进行中”状态下也有六个问题,而该状态的最大约束是五个问题,因此该列被标记为红色:

当你开始看到这些约束违反时,意味着团队应该开始重新评估当前的工作负载。记住,Kanban 的目标是帮助你识别并提高效率,而不是妨碍你的工作。
列约束帮助你识别工作流中的瓶颈和低效之处,而不是限制你的工作过程。
控制显示在板上的问题
对于 Kanban 板,使用了两个查询来确定哪些问题将会显示:
- 
已保存的过滤器:已保存的过滤器包括将在 Kanban 板上显示的问题。过滤器查询字段显示已保存过滤器的 JQL 查询。根据板的创建方式,已保存的过滤器将自动创建或从现有的过滤器列表中选择。 
- 
Kanban 板子过滤器:子过滤器确定从已保存的过滤器中哪些问题会被视为未发布。正如我们将在本章后面的部分看到的,在 Kanban 中发布版本,一旦问题作为新版本的一部分被发布,它将从板上移除。 
如下图所示,Sample Kanban Board 使用了“Sample Kanban Project”的已保存过滤器,并且 JQL 查询为project="SampleKanbanProject"ORDERBYRankASC。这意味着 Sample Kanban Project 中创建的所有问题都会显示在板上。它还使用了 JQL 查询fixVersioninunreleasedVersions()ORfixVersionisEMPTY,这意味着那些将未发布版本作为修复版本的问题,或者字段没有值的问题,将被视为未发布并显示在板上:

你可以更改用于板的已保存过滤器和子过滤器。如果你只是想使用另一个过滤器中的不同已保存过滤器,请执行以下步骤:
- 
将鼠标悬停并点击已保存的过滤器名称,你会看到它变成一个选择列表。 
- 
从列表中选择新的已保存过滤器。如果您没有看到想要的过滤器,您可以输入过滤器的名称并搜索。请注意,您只能看到并选择您有访问权限的过滤器。 
您还可以更改当前正在使用的已保存过滤器的 JQL 查询:
- 点击已保存过滤器下的编辑过滤器查询链接。这将带您到问题导航器,这是您在 Jira 中创建和编辑过滤器的界面,如下图所示:

- 
如果您处于基本模式,您可以通过 UI 控件更新搜索过滤器的标准;如果处于高级模式,则可以直接编辑 JQL 查询。 
- 
点击顶部的保存按钮以更新您的过滤器。 
如前例所示,我们将过滤器的查询更改为 project="SampleKanbanProject"andissuetypein(Bug,Story,Task)ORDERBYRankASC,这将问题限定为仅 Bug、Story 和 Task 类型。
要更新看板的子过滤器,以自定义未发布问题的确定方式,请按照以下步骤操作:
- 
将鼠标悬停并点击看板子过滤器的内容。您将看到它变为可编辑的文本框。 
- 
输入新的 JQL 查询并点击更新按钮,如下所示: 

如前例所示,我们已将子过滤器的查询更改为 fixVersioninunreleasedVersions()ORfixVersionisEMPTYorresolutionisEMPTY,以便还包括检查没有分配解决方案的未发布版本的问题。
使用泳道组织您的看板
泳道是将您的问题分组并组织到看板上的一种有用方式。例如,您可以使用泳道来表示优先级,并根据所有者或类型划分问题。
默认情况下,当您首次创建一个新的看板时,将会有两个泳道,但您也可以创建自定义的泳道。例如,如下所示的截图,我们有三个泳道:Expedite 和 Everything Else 泳道是与看板一起创建的,中间的 Bugs 泳道是我们添加的自定义泳道:

要自定义看板的泳道,请执行以下步骤:
- 
转到您想要自定义泳道的看板。 
- 
点击看板下拉菜单并选择配置选项。 
- 
从左侧导航菜单中选择泳道。 
- 
在“基于泳道”字段中选择您希望根据其来设置泳道的标准。 
- 
通过输入泳道的名称和描述来创建一个新的泳道,并在基于查询时输入 JQL 查询。 
- 
通过上下拖动泳道的顺序来重新排列它们: 

如前述截图所示,我们根据查询创建了三个泳道。创建看板时,Expedite 和 Everything Else 泳道是默认存在的。我们新增了一个 Bugs 泳道,使用了 issuetype=Bug 的 JQL 查询,以便将所有 Bug 类型的问题归类在一起。
请注意,泳道的顺序很重要。顺序将决定每个泳道的位置以及一个问题属于哪个泳道。在这种情况下,"Expedite"泳道位于最上面,这将在最终的看板中反映出来。如果我们有一个 Bug 类型的问题,并且在优先级字段中其值为“Highest”,它将被归类到"Expedite"泳道,而不是" Bugs"泳道,因为顺序的原因。
JQL 选项是定义泳道最灵活的方式,但您也可以使用一些内置选项,例如“Assignee”,用于更简单的目的。下一张截图显示了一个包含四个泳道的看板,每个泳道显示一个用户的所有问题,因此您可以轻松了解每个用户被分配了多少个问题:

使用快捷筛选器创建自定义视图
默认情况下,看板将显示从所选筛选器返回的所有问题。然而,有时您可能需要进行额外的筛选,以便进一步缩小问题列表范围。这时,快捷筛选器就派上用场了。
快捷筛选器允许您基于 JQL 定义额外的筛选。这就像为看板创建一个自定义视图,只显示您目前感兴趣的那些问题。要创建新的快捷筛选器,请执行以下步骤:
- 
转到您想要添加快捷筛选器的看板。 
- 
点击“Board”下拉菜单并选择“Configure”选项。 
- 
从左侧导航菜单中选择“Quick Filters”。 
- 
输入新快捷筛选器的名称和描述。 
- 
输入筛选器的 JQL 查询。Jira 软件将帮助您构建并验证查询。 
- 
点击“Add”按钮以创建新的快捷筛选器: 

如前所示,我们已经创建了三个快捷筛选器,并且我们正在创建一个名为“Exclude Duplicated”的新筛选器,JQL 查询为resolutionnotin(Duplicate),用于将分辨率字段中值为“Duplicate”的所有问题从看板中移除。
一旦您创建了新的快捷筛选器,它们将显示在问题卡片的上方,如下图所示:

在看板中发布版本
使用 Kanban 时,任务并不按预定的计划发布,这与 Scrum 不同,后者通常在每次迭代结束时发布版本。在 Kanban 中,发布是由团队根据任务完成的情况自主决定的。其核心思想是根据团队的需要,持续发布新的功能和改进。
例如,一些团队可能会选择定期发布,比如每周五发布。其他团队可能会选择在完成一些有用的功能时才发布。
要从看板中发布版本,请执行以下步骤:
- 
点击看板右上角的“Release...”链接。 
- 
输入发布对话框中的版本号。 
- 
选择发布日期。 
- 
输入版本的简短描述。 
- 
点击“发布”按钮以发布版本,如下图所示: 

你必须拥有“管理项目”权限,才能发布版本,这些项目必须包含在看板中。我们将在第五章,自定义 Jira 软件中介绍权限。
一旦发布了一个版本,最后一列中的所有问题都会在它们的修复版本字段中添加版本号,并且会从看板上移除。
在看板中工作时,有一点需要注意的是,你不应该提前创建你想要发布的版本。
需要特别注意的是,在看板中,发布计划是需要持续优化的。仅仅因为某个规则规定发布必须在周五进行,而任务还没有完成,发布是没有意义的。团队需要查看当前的交付周期时间,然后根据是否合理来决定是否发布。
提升团队的表现
团队开始使用看板时,常见的一个问题是,我应该为每个工作流状态设置什么样的正确限制? 答案很简单:尝试并进行实验。
第一步是查看你的看板,看看是否有任何约束被违反。如果我们看看下面这个看板的例子,我们可以看到“进行中”这一列中的问题太多,同时“QA”这一列中的问题不够多。这告诉我们,我们的开发阶段存在瓶颈。这导致了开发工作堆积,而 QA 工程师却无所事事,无法高效工作:

所以,为了解决这个问题,团队需要仔细观察瓶颈——在这个例子中,是“进行中”这一列,并找出发生这种情况的原因。例如,也许你没有足够的开发人员来处理工作量,人们正在多任务处理,以尽量完成更多的工作。这通常会导致不必要的上下文切换,从而导致低效;或者任务过于复杂,需要拆分。
定义列的约束可以是一门艺术,一旦设置了约束,你需要定期审查并根据项目和团队的变化进行调整。在设置列约束时,记住你选择的限制应该考虑以下几点:
- 
限制设置过高:你会有闲置的任务等待,导致较差的交付/周期时间。 
- 
限制设置过低:你会有空闲的人在等待工作,这会导致低效的生产力。 
记住,使用看板时,你和你的团队应该持续改进流程;看板帮助你突出任何潜在的瓶颈,以便你和你的团队能够改进流程。
不要仅仅修复看板——要修复瓶颈的根本原因。
使用图表和报告改进流程
Jira 软件提供了许多有用的图表和报告,帮助你可视化团队的表现,并识别看板流程中的潜在瓶颈。要生成报告,请执行以下步骤:
- 
浏览到你想要生成报告的看板。 
- 
点击看板左侧面板中的报告标签。 
如下图所示,有多个报告可供选择。敏捷部分下的报告是专门为使用敏捷方法(如看板)设计的。当然,其他报告,如饼图报告,也非常有用,但由于这些是标准的 Jira 报告,我们将主要关注敏捷报告,即累积流量图和控制图:

由于看板是一个持续的过程,你应该定期运行这些报告。
累积流量图
Jira 软件提供的第一个有用的图表是累积流量图。此图显示了不同状态下的问题数量(y 轴),以不同颜色的条带表示,展示了一段时间内的变化(x 轴)。通过这种方式,你可以直观地识别出是否在团队工作流程的某个特定状态中存在瓶颈,因为你会看到表示该状态的颜色条带在扩展。
要生成看板的累积流量图,请执行以下步骤:
- 
点击看板左侧面板中的报告标签。 
- 
选择累积流量图选项: 

在前面的示例图表中,我们可以看到,在月末大约 11 月 29 日,正在进行的任务状态(用紫色条带表示)突然激增。这表明存在瓶颈,问题被卡在“进行中”状态,因此值得调查是什么原因导致的。
使用累积流量图时,你可以将鼠标悬停在图表上,查看哪些问题正在移入不同的状态,从而更清楚地了解发生了什么。如果你的图表变得比较复杂,你可以通过选择性地隐藏状态(列)、泳道和问题(通过快速过滤器)来细化显示,只显示你感兴趣的数据,如下图所示:

控制图
第二个有助于衡量团队表现的有用图表是控制图。控制图显示了团队在一段时间内的平均交付时间,并在图表上绘制问题,这样你就可以看到以下内容:
- 
任何超出标准差的异常值,也称为离群值 
- 
完成任务的平均时间 
- 
团队的滚动平均值及其与平均值的比较 
要为看板生成控制图,执行以下步骤:
- 
点击看板左侧面板上的报告标签。 
- 
选择控制图选项。 
如下图所示,控制图显示了:
- 
看板上的问题由绿色圆点表示。空心绿色圆点表示一个单独的问题,而实心绿色圆点(更大)表示多个问题。你可以点击这些圆点查看问题的详细信息。 
- 
时间段在x轴上以日期形式显示。 
- 
问题完成所需的时间在y轴上表示。 
- 
问题完成的平均持续时间,显示为红线。 
- 
问题的平均提前时间,显示为蓝线。向下趋势的蓝线表示效率的提升。 
- 
标准差,显示为浅蓝色带: 

通常,你会希望看到蓝线呈下降趋势;这表明平均提前时间有所减少。这意味着问题没有被卡在工作流状态中,并且能够快速完成,团队也没有超负荷工作。
你还希望标准差较低。这表示每个问题与滚动平均值(蓝线)的比较情况。蓝带越窄,表示每个问题交付时间越接近平均时间。这意味着团队更有可能以相同的速度交付工作。
自定义控制图
控制图有多个自定义选项,允许你微调图表上显示的数据。这些选项显示在图表本身的下方,如下图所示:

当你首次开始使用控制图时,应识别并移除异常值,因为它们通常会扭曲数据并给出不正确的读数。
异常值是位于浅蓝色带上方的绿色圆点;这些通常是由于人为错误导致的错误创建或转换的问题。你可以通过为每个问题添加标签并创建新的快速筛选器来轻松过滤掉这些问题。执行以下步骤:
- 
审查每个异常问题,并在确认其为异常值后,为其添加标签(outlier)。 
- 
为看板创建一个新的快速筛选器,使用以下 JQL: labelsnotin(outlier)。
- 
从控制图中的快速筛选器字段选择新的快速筛选器。 
你可以使用此技巧过滤掉其他可能扭曲图表的问题,如重复问题。
摘要
在本章中,我们介绍了如何使用 Jira 软件进行看板管理。我们了解了看板板以及如何配置它以模拟现有的工作流程,并设置列约束以限制进行中的工作,这是看板的核心概念。我们还了解了一些可用的图表,这些图表有助于你识别流程中的潜在瓶颈,以便你和你的团队可以共同解决这些问题并改进流程。
现在,我们已经介绍了如何使用 Jira 进行 Scrum 和看板管理,接下来我们将在下一章探讨 Jira 为这两种敏捷方法带来的一些独特功能,即 Scrumban 和 Kanplan。
第四章:按照您的方式使用 Jira 软件
在前几章中,我们已经介绍了如何使用 Jira 来支持 Scrum 和 Kanban 敏捷方法论。Jira 提供了一组工具来支持这两种方法论,并且具有合理的默认设置,让您能快速上手。但是,您通常需要根据需求自定义默认的设置,以便更好地满足您的需求。在本章中,我们将介绍一些 Jira 软件提供的重要选项,帮助它更好地适应您管理项目的方式。我们还将扩展介绍 Jira 软件所提供的一些混合方法论,您可以将 Scrum 和 Kanban 的优点结合起来。
在本章结束时,您将学会如何:
- 
管理您的 Scrum 看板配置 
- 
控制哪些问题将被包含在看板上 
- 
自定义 Scrum 看板的列布局 
- 
使用泳道将问题分组 
- 
使用快速过滤器在 Scrum 看板上过滤问题 
- 
结合 Scrum 和 Kanban 的力量,通过 Scrumban 和 Kanplan 实现 
管理您的看板
当您首次使用 Jira 内建的 Scrum 或 Kanban 模板创建敏捷看板时,正如前几章所述,系统会使用一组默认设置创建看板,而您作为创建者将自动被设置为看板的管理员。
作为管理员,您可以通过多种方式进一步自定义敏捷看板,包括:
- 
看板范围——哪些项目/问题将被包含在看板上 
- 
看板的权限——谁将有权访问看板 
- 
看板的布局——看板的垂直列和水平泳道 
- 
自定义过滤器——在看板上过滤内容的其他方式 
首先,要开始自定义您的敏捷看板:
- 
进入您想要自定义的敏捷看板。 
- 
点击看板下拉菜单并选择“配置”选项。 
- 
从左侧导航菜单中选择“常规”。正如下面的截图所示,INFRA 看板已经设置了两个管理员。您可以通过将鼠标悬停在字段上并更新值来添加和删除管理员: 

以下表格总结了配置字段:
| 字段 | 描述 | 
|---|---|
| 看板名称 | 敏捷看板的名称。 | 
| 管理员 | 可以配置敏捷看板设置的用户。您可以通过直接选择用户或选择一个组来添加更多管理员。 | 
| 已保存的过滤器 | 这控制哪些问题将被包含在敏捷看板上。如果您使用敏捷模板创建了看板,那么这里的过滤器会自动为您创建,并包含项目中的所有问题。您可以选择使用不同的过滤器,或点击编辑过滤器查询链接以更改当前过滤器。 | 
| 共享 | 这控制谁将有权访问过滤器。实际上,过滤器应该与有权访问看板的用户共享。 | 
| 过滤器查询 | 显示由已保存过滤器使用的实际过滤器查询。 | 
| 排名 | 此项显示是否当前启用了排名功能。您需要启用排名功能才能对问题进行排名并创建冲刺。 | 
| 看板中的项目 | 看板上包含的项目。这是根据看板使用的保存过滤器自动确定的。 | 
控制看板范围
当我们谈论敏捷看板的范围时,指的是将会显示在看板上的问题。如果在创建新项目时创建了看板,或者从现有项目中获取了看板,那么看板的范围将是所选项目,这意味着该项目中的所有问题都会显示在看板上。
Jira 控制看板范围的方式是通过使用所谓的保存过滤器。保存过滤器是一个已经保存在系统中的搜索查询,查询结果返回的问题就是将出现在看板上的问题。当您从项目中创建看板时,系统会自动为您创建一个新的保存过滤器,并将其查询参数设置为所选项目。例如,在下图中所示,INFRA 看板是从基础设施支持项目创建的,因此 Jira 会自动创建一个名为“Filter for INFRA board”的保存过滤器,并将过滤器查询设置为project = INFRA ORDER BY Rand ASC。
这个保存的过滤器实际上是说,所有项目设置为 INFRA 的项目的问题都将包含在此看板中,并且它们将按“排名”字段升序排列:

保存的过滤器是 Jira 的标准功能,广泛应用于敏捷看板以外的其他区域。它使用Jira 查询语言(JQL)。你可以通过confluence.atlassian.com/jiracoreserver073/advanced-searching-861257209.html了解更多关于 JQL 的信息。
您可以通过点击“编辑过滤器查询”链接来更改保存过滤器的查询,或者使用另一个保存的过滤器来更改看板的范围。请注意,要更改当前保存过滤器的查询,您需要具备相应的权限。因此,如果您没有权限,最好的选择是创建一个新的保存过滤器,并将您的看板设置为使用该过滤器。我们将在下一节介绍过滤器权限。
管理看板权限
在上一节中,我们了解了 Jira 使用保存的过滤器来确定哪些问题将出现在敏捷看板上。现在让我们来看看如何管理看板的访问权限。
在访问敏捷看板时,有两个关键的权限级别,如下所示:
- 
访问看板本身——基于保存的过滤器 
- 
访问看板上的问题——基于项目权限 

对敏捷看板的访问权限由保存筛选器上的权限控制,或者由筛选器共享的对象决定。如果用户有权限访问筛选器,那么该用户将可以访问看板。对于作为看板的一部分自动创建的筛选器,默认共享给项目中的所有成员。如果你是筛选器的拥有者,你可以点击“编辑筛选器共享”链接,然后选择要与之共享筛选器的对象,如下图所示。对于这个特定的筛选器,它与Sample Scrum Project项目中的所有成员共享:

保存的筛选器决定了对敏捷看板的访问权限,接下来由项目的权限来决定用户是否可以查看其中的问题。这意味着,如果用户有权访问保存的筛选器,但没有访问项目的必要权限,那么用户将看到一个空白的看板,上面没有任何问题。
由于一个保存的筛选器可以包含多个项目,因此敏捷看板将在“项目”板块中列出所有相关的项目。如果你是某个项目的管理员,你可以点击“查看权限”链接来查看和更新其权限。我们将在第五章,自定义 Jira 软件中详细讨论权限,因为这是一个复杂的话题。现在,简单来说,如果用户能够访问敏捷看板,但无法查看其所有问题,这通常是由于项目权限设置所致。
启用排序
排序功能允许你通过拖拽问题到待办事项和冲刺中来优先排序问题。问题在排序中的位置越高,重要性越大。如果排序功能被禁用,当你尝试将问题拖到待办事项中时,会显示类似于Ranking is disabled, as the Filter Query for this board is not ordered by Rank的错误消息。
如果你通过使用敏捷模板创建了敏捷看板,选择了新项目或现有项目选项,那么排序功能会默认启用。然而,如果出于某种原因它被禁用,你可以按照以下步骤启用排序:
- 
转到你想要自定义的敏捷看板。 
- 
点击“看板”下拉菜单并选择“配置”选项。 
- 
从左侧导航菜单中选择“常规”。 
- 
点击底部的“添加排序”按钮以启用排序: 

启用排序后,你会注意到筛选器查询值会自动更新。所以,在之前的截图中,查询project = "Sample Scrum Project"会被更改为project = "Sample Scrum Project" ORDER BY Rank ASC。请确保不要删除查询中的ORDER BY Rank ASC部分,因为这是启用查询和看板排序的关键代码。
自定义看板布局
Jira 的敏捷面板就像白板一样,所有的故事卡片都会放置在上面。面板由两个关键组件组成,即列和泳道:
- 
列:用于表示故事卡状态的垂直列 
- 
泳道:帮助你更好地对面板上的故事卡进行分类的水平行 
在接下来的章节中,我们将深入探讨这两个组件,以及作为面板管理员的你如何自定义它们,以最大化面板的使用效果。
与列的操作
列表示问题可以处于的状态。在一个简单的面板中,如下图所示,我们有三个列,每个列都映射到一个问题状态:
- 
待办:等待处理的问题映射到“待办”工作流状态 
- 
进行中:当前正在处理的问题映射到“进行中”工作流状态 
- 
完成:已完成的问题映射到“完成”工作流状态: 

这是一个非常简单的设置,其中问题从开始到结束仅有三个步骤。通常,你将拥有一个比这更复杂的现有工作流。
Jira 和工作流
在我们深入自定义列之前,我们首先需要快速了解与 Jira 相关的工作流。如你所知,Jira 使用工作流将问题从一个状态移动到下一个状态。Jira 还通过将其列映射到工作流状态来利用此功能。然而,如果你不熟悉 Jira 中的工作流,请不用担心——我们将在第五章,自定义 Jira 软件中详细介绍工作流。
由于 Jira 中的工作流通常会变得非常复杂,因此有时在敏捷环境中使用传统的 Jira 工作流会很困难。因此,Jira 引入了所谓的 敏捷简化工作流。
敏捷简化工作流指的是直接在 Jira 中管理的工作流,这些工作流被简化和优化以适应敏捷使用。
这让你可以:
- 
从敏捷面板管理你的工作流,该工作流被管理为面板列。 
- 
可以自由地将问题从一个状态(列)移动到另一个状态,而不受工作流条件和验证器的限制。 
- 
不会有中间的屏幕来在状态之间移动问题,使得在面板上移动卡片(问题)变得更加容易 
- 
当问题被移动到适当的状态(列)时,自动设置分辨率值(根据你的定义) 
如果你是通过使用内置的敏捷模板创建了敏捷面板,那么你很可能正在使用敏捷简化工作流。
创建新列
如果你是面板管理员,你可以自定义面板的列,以更好地反映你的工作流:
- 
导航到你想自定义的 Scrum 面板。 
- 
点击面板下拉菜单并选择“配置”选项。 
- 
从左侧导航菜单中选择“列”。 
在列管理页面中,您可以自定义以下选项:
- 
列:您可以添加、删除和重命名列。 
- 
列布局:您可以重新排列列的顺序。 
- 
问题状态映射:您可以将列与问题状态映射。对于每一列,您可以将一个或多个问题状态映射到它。 
- 
列约束:您可以为列添加约束,限制在任何给定时间内,状态下可以有多少个问题。 
我们从创建新列开始。根据您是否使用敏捷简化工作流,有两种方法可以创建新列并将其映射到问题状态。
您可以通过查看“简化工作流”字段来判断是否正在使用简化工作流,查看该字段是否显示为“使用敏捷简化工作流”,如下图所示:

要使新列可用,它需要至少映射一个状态。如果您使用敏捷简化工作流,这是一个非常简单的过程。敏捷简化工作流会为您处理这个问题,因此您不必担心手动列状态映射。建议在可能的情况下使用敏捷简化工作流。要添加新列,请执行以下步骤:
- 
点击“添加列”按钮。新列将添加到倒数第二个位置的列表中。 
- 
输入新列的名称并选择类别。将创建一个具有相同名称的新问题状态,并将其映射到新列。通常情况下,如果新列将是看板上的第一列,请选择“待办”作为类别。如果它将是最后一列,请选择“已完成”类别。否则,请选择“进行中”类别。 
如果您没有使用敏捷简化工作流,您需要执行以下步骤:
- 
按照前面的列表创建新列。 
- 
创建新的工作流状态,以便映射到新列,并添加工作流使用的状态。 
- 
手动拖动并将状态放入新列,如下图所示: 

您还可以通过从“未映射状态”部分拖动要映射的状态并将其放入目标列来将额外的状态映射到列。一旦您将至少一个状态映射到新列,它将在活跃的冲刺模式下显示在看板上。
推荐每个工作流状态对应一个列,以保持流程的逻辑性和简洁性。然而,您也可以将多个状态映射到同一列,如前面的截图所示。正如您所看到的,我们将“完成”和“已修复”两个状态映射到了“完成”列。如果您为现有项目创建 Scrum 面板,且项目已有工作流,或者如果您的工作流复杂,无法一一映射到面板的列时,通常需要这样做。当您将多个状态映射到同一列时,例如我们示例中的“完成”列,并将问题移入该列时,您将能够选择适当的状态,如下图所示:

在使用简化的敏捷工作流时,您将看到一个复选框选项,称为“在映射的工作流状态中设置解决方案”。如果勾选此选项,当问题移动到相应的列时,它将自动分配“完成”这一解决方案值。Jira 利用解决方案值来判断问题是否已完成,因此为表示工作流结束状态/列分配值非常重要。
如果您没有使用简化的敏捷工作流,则此选项不可用;解决方案必须通过工作流转换屏幕进行设置。
设置列布局
一旦您创建了所有新的列并将其映射到工作流状态,您可以通过拖放的方式,左右调整列的位置,如下图所示。列的顺序应反映您的工作流,从左到右排列,以便直观地表示问题在工作过程中的逻辑流动:

正如我们将在第六章中看到的,Jira 软件 – 高级,只要您的 Jira 敏捷看板的列布局与您的物理看板相同,您将能够将问题从看板导出到物理看板,并将其重新导入。
与泳道一起工作
泳道是看板上列的横向对应物。与始终映射到问题状态的列不同,您可以根据多个标准来设置泳道:
- 
查询:这些是通过 JQL 构建的 Jira 搜索查询。使用此选项时,每个泳道只会显示其对应查询的结果。例如,您可以为每个优先级值创建一个查询,从而根据问题的重要性对其进行分组。 
- 
故事:每个泳道将映射到一个故事。所有属于该故事的子任务将显示在该泳道中。 
- 
指派人:每个泳道将根据问题的指派人进行映射。 
- 
史诗:每个泳道将映射到一个史诗。所有属于该史诗的问题将显示在该泳道中。 
- 
项目:每个泳道将映射到一个项目。如果只有一个项目,则只有一个泳道。 
使用泳道是将任务分组和分类到 Scrum 看板上的一个很好的方法。例如,使用“分配人”选项,你可以通过查看看板轻松了解每个团队成员的工作负载。
下图显示了一个基于任务优先级的 Scrum 看板,使用了查询选项创建了三个泳道:

设置泳道
如果你是看板管理员,可以自定义看板的泳道,以更好地组织你的故事卡:
- 
导航到你希望自定义的 Scrum 看板。 
- 
点击看板下拉菜单,选择“配置”选项。 
- 
从左侧导航菜单中选择泳道。 
- 
从“基础泳道”字段中选择你希望基于其创建泳道的标准。 
- 
如果你选择根据查询来创建泳道,你需要为每个泳道输入名称及其相应的 JQL 查询,如下图所示: 

使用快速过滤器
当你的项目团队很大时,看板可能会变得非常繁忙。有时你希望缩小范围,专注于符合特定标准的任务,比如 bugs 或分配给特定用户的任务。
通过使用快速过滤器,我们可以通过筛选掉不符合标准的任务来去除不必要的噪音,让你专注于你关心的任务,如下图所示:

你可以把快速过滤器看作是 Scrum 看板的附加视图。例如,前图展示了 Scrum 看板的四个快速过滤器:仅故事、仅 Bugs、仅我的任务和最近更新。通过使用“仅 Bugs”快速过滤器,你可以看到仅显示 bug 任务的看板视图。你可以通过点击过滤器来切换它的开启和关闭状态。开启时,它将以蓝色突出显示,并更新看板,仅显示符合过滤器标准的任务。再次点击过滤器将取消应用。你可以在看板上同时应用多个快速过滤器,只有符合所有过滤器标准的任务才会显示。
创建新的快速过滤器
所有敏捷看板都自带两个默认的快速过滤器:
- 
仅我的任务:显示分配给当前登录用户的任务。 
- 
最近更新:此选项显示在过去 24 小时内更新的任务。 
如果你是看板管理员,你可以为看板创建新的快速过滤器,帮助你和团队更好地可视化任务。为此,请执行以下步骤:
- 
导航到你希望自定义的敏捷看板。 
- 
点击看板下拉菜单,选择“配置”选项。 
- 
从左侧导航菜单中选择快速过滤器。 
- 
在“名称”字段中输入过滤器的名称。这里输入的名称将在敏捷看板上显示。 
- 
在 JQL 字段中输入过滤器的搜索查询,如下图所示。 
- 
点击“添加”按钮来创建新的过滤器。 
一旦创建,新的快速筛选器将对所有使用该看板的人可用:

在我们的示例中,如上图所示,JQL 查询issuetype = Bug意味着将包含所有类型为Bug的问题。
Scrumban
第一个混合敏捷方法叫做Scrumban。正如你从名字中猜到的,它是一种基于 Scrum 的方法论,但融合了 Kanban 的一些元素。正如我们在第二章《Jira 软件与 Scrum》中看到的,Scrum 方法论围绕着整理待办任务列表并以迭代的方式执行项目,这些迭代被称为 sprint。虽然这种方法是规划和管理项目的好方式,但在实际可视化 sprint 执行时,它有时会显得不足,这正是 Kanban 擅长的地方。所以,Jira 并没有强迫你在这两种方法论中做选择,而是让你可以以 Scrum 为基础,同时融合 Kanban 的一些特性和优势,这种混合方法就叫做 Scrumban。
在第三章《Jira 软件与 Kanban》中,我们介绍了列约束以及 Jira 如何利用这些约束在 Kanban 看板上可视化工作流中的瓶颈。这同样的方法也让 Jira 能够在 Scrum 中使用 Kanban 的一部分特性。例如,我们已经设置了一个约束,在我们的 Scrum 看板上,进行中列的任务最少应该有三个,最多不超过五个,如下图所示:

就像 Kanban 一样,一旦你对某列设置了约束,如果违反了该约束,该列将被突出显示。如以下截图所示,进行中列的最大约束是三个问题,但目前有四个,因此它被红色高亮显示。审查中的列的最小约束是两个问题,但目前只有一个,因此它被黄色高亮显示:

列约束并不会阻止你违反这些限制。它们只是帮助标记出可能存在问题的区域。为列设置限制可能会比较棘手,尤其是当你刚开始时。你应该根据直觉开始,进行几个 sprint 后,随着你和团队对工作流的理解加深,再逐步完善这些限制。开始时的一种方法是基于团队成员人数来设定限制。例如,如果你的团队有五个开发人员,那么你在进行中的列(假设这指的是开发过程)的最大限制应该不超过五个,因为五个人同时处理六个问题并不合逻辑。
如我们在前面的截图中所见,进行中列的最大限制已被超出。这可能意味着团队,尤其是开发人员,已经过度承诺了他们的任务;有人可能决定并行处理两个任务。这造成了瓶颈,问题没有迅速完成,无法移动到评审中列,导致了最低限制的违规,审阅者正在等待工作。这些数据在你的冲刺回顾会议中非常有用,可以帮助你回顾问题并改进流程。
如你所见,设置列约束是有情境的,并且基于你团队的组成及其能力。随着情况的变化,你需要相应地调整这些限制。记住,目标是衡量、识别并改进。
Kanplan
第二种混合敏捷方法叫做Kanplan。顾名思义,这种方法更倾向于看板,而不是 Scrum。简而言之,Kanplan 允许你拥有更强大的待办事项,同时又允许你享受看板的灵活性。
正如我们在前一章节中所看到的,默认情况下,看板没有真正的待办事项。你通常会将看板上的第一个列用作待办事项列。虽然这种方法在刚开始时有效,但随着列中的项目数量增加,它很快就会变得很难管理。这使得很难全面掌握所有待处理的问题,并且当你的团队尝试优先处理任务时,尤其是当他们为看板定义了自定义泳道时,也会遇到麻烦。
要为看板板块启用待办事项,请按照以下步骤操作:
- 
进入你想为其添加待办事项的看板板块。 
- 
点击“板块”下拉菜单,选择“配置”选项。 
- 
从左侧面板中选择“列”选项。 
- 
将一个或多个工作流状态拖动到左侧的看板待办事项区域: 

如前面的截图所示,我们的看板列设置中有一个待办事项列,但由于我们现在要使用待办事项功能,因此将待办事项状态移到看板待办事项列中。
新的看板待办事项与任何板块列的功能类似:你可以将多个状态映射到它,因此,任何处于已映射状态中的问题都会出现在新的待办事项中。请注意,由于这个原因,任何不在映射状态中的问题将不会出现在新的待办事项中,所以请确保你添加了所有适当的状态。
将你现有的所有状态映射到默认的待办事项列,并将其映射到新的看板待办事项中,是确保你不会遗漏任何问题的最简单方法。
一旦你为看板启用了待办事项功能,当你进入项目时,你会看到左侧导航面板顶部出现一个新的待办事项选项。点击它后,会显示一个非常类似于 Scrum 的界面,如下图所示:

就像 Scrum 的待办事项列表一样,所有问题都是从上到下排序的。你可以拖动任何问题上下移动待办事项队列以设置优先级。对于那些位于最底部的问题,你可以右键点击问题并直接将其发送到顶部。
Kanban 待办事项列表与 Scrum 待办事项列表之间的一个关键区别是,由于 Kanban 没有冲刺,你不会创建冲刺然后将问题添加到冲刺中。相反,你将问题添加到工作流中的下一个状态或列。在前面的截图中,示例是“已选择开发”列。如果你熟悉 Scrum,那就是你新的冲刺所在,你会将问题添加到该冲刺中。而在 Kanban 中,你正在优先排序并将问题从待办事项列表的待办项移入行动项。通过这种变化,你的新的 Kanban 看板将类似于以下截图所示,焦点将放在已优先排序的实际问题上,而不再有一个庞大的、让人不知所措的待办事项列来分散团队的注意力:

这并不是新的 Kanplan 待办事项列表的全部功能。通过利用 Scrum 中相同的待办事项功能,你现在还可以访问一些功能,例如以视觉方式管理与你的史诗相关的问题,就像在 Scrum 中一样。这对于刚开始转向使用 Kanplan 的 Scrum 团队特别有帮助。你的待办事项列表的史诗面板应该默认启用,但如果由于某些原因它没有启用,你可以始终通过进入你的敏捷看板配置面板中的列管理页面手动启用它:

总结
在本章中,我们研究了在 Jira 中定制和管理你的敏捷看板的不同方式。我们涉及的一些重要内容包括管理敏捷看板的权限和范围、定制看板的列、将看板列映射到 Jira 工作流状态,以及使用泳道将相似问题分组,以便更好地分类我们的任务。
我们还讨论了一些 Jira 中的概念,如权限和工作流。在接下来的章节中,我们将更深入地探讨 Jira 的这些核心功能,以及如何定制和管理它们以满足你的特定需求。
第五章:自定义 Jira 软件
在前面的章节中,我们使用 Jira 的敏捷项目模板创建了 Scrum 和 Kanban 项目。使用这些模板时,系统会自动创建并应用一组默认配置到我们的项目中,例如我们可以创建的任务类型以及在创建新任务时需要填写的字段。当你的项目变得更加复杂,并且出现新的需求时,你会很快发现需要能够对项目设置进行更细致的控制。
到本章结束时,你将学会如何:
- 
创建你自己的问题类型并使其可供项目使用 
- 
添加新的自定义字段以收集更多来自用户的相关数据 
- 
自定义工作流以更好地模拟你的流程 
- 
用不同级别的权限控制来保护你的 Jira 
- 
管理从 Jira 发送的电子邮件通知,以提醒用户问题的更改 
自定义问题类型
每个问题都有一个类型(因此称为“问题类型”),该类型由问题类型字段表示。这样,你可以知道问题是什么类型;例如,问题是一个缺陷还是一个功能。Jira 自带一组预定义的任务类型,例如 Story、Epic 和 Task。
默认的任务类型适用于简单的软件开发项目,但并不一定满足其他需求。由于不可能创建一个适合所有人需求的系统,Jira 允许你创建自己的问题类型并将其分配给项目。例如,对于帮助台项目,你可能希望创建一个名为票据的自定义问题类型。你可以创建这个自定义问题类型并将其分配给帮助台项目,用户将能够在系统中记录票据,而不是记录缺陷,如下所示:
- 
以 Jira 管理员身份登录 Jira。 
- 
浏览至 Jira 管理控制台。 
- 
选择“问题”标签页,然后选择“问题类型”选项: 

- 
点击“添加问题类型”按钮。 
- 
输入新问题类型的名称和描述。 
- 
选择新问题类型是标准问题类型还是子任务问题类型: 

- 点击“添加”来创建新的问题类型。
创建新的问题类型后,你需要将其添加到项目中。这可以通过将新的问题类型添加到项目使用的问题类型方案来完成。问题类型方案包含一组问题类型,并可以应用于一个或多个项目。通过这种方式,一个项目可以拥有自己的问题类型,或者与其他类似项目共享一组问题类型。要将新问题类型添加到问题类型方案:
- 
浏览至 Jira 管理控制台。 
- 
选择“问题”标签页,然后选择“问题类型方案”选项。 
- 
查找项目使用的“问题类型方案”并点击其“编辑”链接。 
- 
将新问题类型从右侧的“可用问题类型”栏拖动到左侧的“当前方案中的问题类型”栏。 
- 
点击“保存”按钮: 

添加新的自定义字段
就像问题类型一样,Jira 自带了许多内置字段。你已经在前面的章节中见过其中的一些。例如,在为敏捷看板创建新故事时,存在一些字段,如摘要、优先级和受让人。这些字段构成了问题的骨架,你无法将它们从系统中删除。因此,它们被称为系统字段。
虽然 Jira 内置的字段已经非常适合敏捷软件开发的需求,但大多数组织很快就会发现,它们有一些特殊的需求,不能仅通过默认的字段来解决。为了帮助你将 Jira 定制到符合你组织需求,Jira 允许你创建并添加你自己的字段,称为自定义字段。
Jira 提供了多种类型的自定义字段,从简单的文本字段、选择列表,到更复杂的字段,如级联选择列表和用户选择器。如果你觉得这些还不够,Atlassian Marketplace 上还有更多自定义字段可以选择,那里你可以找到更多与 Salesforce.com 等服务兼容的专用字段。要开始向 Jira 添加新的自定义字段,请:
- 
浏览到 Jira 管理控制台。 
- 
选择“问题”标签,然后选择“自定义字段”选项。 
- 
点击添加自定义字段按钮。这将带你进入过程的第一步,在这里你可以选择自定义字段类型。 
- 
搜索并选择你希望添加的自定义字段类型,然后点击下一步。这将带你进入过程的第二步,你可以在这里指定自定义字段的名称和选项: 

如果你没有找到你需要的字段类型,请从左侧选择“所有”选项,然后再搜索一次。
- 为名称和描述字段输入值。如果你正在创建基于选择的自定义字段,如选择列表,你还需要添加其选择项(你可以稍后更新此列表):

- 
点击创建按钮。这将带你进入过程的最后一步,在这里你可以指定希望添加字段的屏幕。 
- 
选择屏幕并点击更新。以下截图显示了新创建的字段已被添加到两个支持的屏幕上: 

在创建了自定义字段后,你可以随时回来并对其进行自定义。例如,在创建原始选择列表字段时,我们添加了三个选项。如果需要更多选项,我们可以编辑该字段并添加更多选项。
自定义 Jira 工作流
到目前为止,我们创建的所有 Scrum 和 Kanban 项目都有自己独立的工作流,称为Software Simplified Workflow,适用于项目 X,这就是所谓的简化工作流。简化工作流是一种特别为敏捷项目设计的工作流,通过最小的限制来工作。这意味着:
- 
Scrum 和 Kanban 都预定义了一组状态/列。 
- 
看板管理员可以通过简单地添加和删除列来轻松进行更改。 
- 
问题可以在状态/列之间自由移动,没有任何限制。 
- 
移动问题时不会有中间屏幕。 
这对于大多数标准敏捷项目来说很有用,目标是拥有一个简单的工作流,并允许团队成员根据需要自由地在看板上移动问题。然而,有时你的流程可能会有特殊的要求,工作流也需要反映这些要求。例如,你可能有一个验证要求,只有当质量保证工程师签字确认后,问题才能关闭;或者你可能有一个安全要求,只有某个特定组的成员才能将问题移动到目标状态。
这些要求在敏捷环境中可能看起来违反直觉,但请记住,没有一种适合所有人的解决方案,而 Jira 允许你自定义项目中使用的工作流,以最好地满足你的所有需求。
Jira 提供了一个非常直观的图形工具,帮助你作为 Jira 管理员创建和自定义工作流。以下是 Jira 在工具中如何可视化表示工作流的截图:

每个状态表示为一个框,每个过渡表示为两个状态之间的线。点击任何一个状态或过渡时,右侧会出现一个属性面板,允许你进一步自定义它。
创建工作流
那么,来看看如何在 Jira 中创建和设置一个新的工作流。要创建一个新的工作流,你只需要一个名称和描述:
- 
浏览到 Jira 管理控制台。 
- 
选择“问题”选项卡,然后选择“工作流”选项。 
- 
点击“添加工作流”按钮。 
- 
在“添加工作流”对话框中输入新工作流的名称和描述。 
- 
点击“添加”按钮来创建工作流。 
新创建的工作流只包含默认的创建和打开状态,因此你需要通过添加新的状态和过渡来进行配置,使其更有用。让我们从使用以下步骤将新状态添加到工作流开始:
- 
点击“添加状态”按钮。 
- 
从下拉列表中选择一个现有的状态。如果你需要的状态不存在,你可以通过输入状态名称并按下回车键来创建一个新的状态。 
- 
如果你希望用户能够将问题移动到这个状态,无论它当前的状态是什么,请勾选“允许所有状态过渡到此状态”选项。这将创建一个全局过渡,这是一种方便的方式,允许问题从任何状态使用这个过渡来达到目标状态。 
- 
点击“添加”按钮,将状态添加到你的工作流中。你可以重复这些步骤,将尽可能多的状态添加到你的工作流中: 

尽量重用现有的状态,这样你就不会管理许多相似的状态。
现在,状态已添加到工作流中,需要通过转换将它们连接起来,这样问题才能从一个状态流转到另一个状态。创建转换有两种方式:
- 
单击“添加转换”按钮,或者您可以按照下一步操作 
- 
选择起始状态,然后单击并拖动箭头到目标状态。 
两个选项都会弹出添加转换对话框,如下图所示:

从上面的截图中,您可以选择使用“新建转换”标签创建新转换,或者使用“重用转换”标签重用现有转换。
创建新转换时,您需要配置以下内容:
- 
来源状态:起始状态。当问题处于所选状态时,转换将可用。 
- 
目标状态:目标状态。一旦执行转换,问题将被置于所选状态。 
- 
名称:转换的名称。该名称将显示给用户。通常,给转换命名时最好以动词开头,例如 关闭问题或提交审核。
- 
描述:可选的文本描述,说明此转换的目的。此内容不会显示给用户。 
- 
屏幕:可选的中间屏幕,当用户执行转换时显示。例如,您可以显示一个屏幕以捕获转换过程中的附加数据。如果不选择屏幕,转换将立即执行。以下截图展示了一个工作流屏幕: 

如果您想重用现有的转换,只需选择“重用转换”标签,选择来源状态和目标状态,然后选择要重用的转换,如下图所示:

Jira 只会根据目标状态选择列出有效的转换。
您可能在想,什么时候应该创建新的转换,什么时候应该重用现有的转换。这两者的主要区别在于,重用转换时,所有重用的转换实例,也称为公共转换,将共享相同的配置集,例如条件和验证器。此外,对转换所做的任何更改都会应用到所有实例。一个好的使用场景是,当您需要多个相同名称和设置的转换时,例如“关闭问题”;您可以创建一个转换,并在需要关闭问题时重用它,而不是每次都创建单独的转换。稍后,如果需要为转换添加新的验证器以验证用户输入,您只需做一次更改,而不是每个“关闭问题”转换都做多次更改。
另一个需要记住的好实践是,工作流中不要有死胡同状态,例如,允许已关闭的问题重新打开。这可以防止用户不小心关闭问题后无法纠正错误。
现在我们已经看到如何向工作流添加新状态和过渡,接下来看看如何向过渡添加条件、验证器和后续功能。
向过渡添加条件
新的过渡默认没有任何条件。这意味着任何有权限访问该问题的人都可以执行该过渡。通过向工作流过渡添加条件,你可以控制谁或者何时可以执行问题的过渡。
条件在过渡执行之前生效。
Jira 允许你向过渡添加任意数量的条件:
- 
选择你要向其添加条件的过渡。 
- 
点击条件链接。 
- 
点击添加条件链接。这将带你到添加条件到过渡页面,在那里列出了你可以添加的所有可用条件。 
- 
选择你要添加的条件。 
- 
点击添加按钮以添加条件。 
- 
根据条件,你可能会看到添加参数到条件页面,你可以在其中指定条件的配置选项。例如,用户属于组条件会要求你选择要检查的组。 
新添加的条件会附加到现有条件列表的末尾,形成一个条件组。默认情况下,当有多个条件时,使用逻辑AND将条件组合在一起。这意味着所有条件都必须通过,整个条件组才能通过。如果某个条件失败,整个组都会失败,用户将无法执行过渡。你可以切换为使用逻辑OR,这意味着组内只需一个条件通过,整个组即可通过。这是一个非常有用的功能,它允许你组合多个条件,形成更复杂的逻辑单元。
例如,用户属于组条件允许你指定一个单一组,但使用AND运算符,你可以添加多个用户属于组条件,确保用户必须存在于所有特定组中才能执行过渡。如果使用OR运算符,则用户只需属于列出的其中一个组。唯一的限制是不能为同一条件组使用两种运算符。
每个过渡只能有一个条件组,每个条件组只能有一个逻辑运算符。
向过渡添加验证器
像条件一样,过渡默认没有与之关联的任何验证器。这意味着过渡一旦执行就会完成。你可以向过渡添加验证器,以确保只有在满足特定条件时才允许执行。一个很好的验证器使用案例是在过渡有工作流屏幕以捕获用户输入时,你需要验证输入,比如日期格式。
验证器在过渡执行过程中发挥作用。
执行以下步骤向过渡添加验证器:
- 
选择你要添加验证器的过渡。 
- 
点击“验证器”链接。 
- 
点击“添加验证器”链接。这将带您进入“添加验证器到转换”页面,该页面列出了您可以添加的所有可用验证器。 
- 
选择您想要添加的验证器。 
- 
点击“添加”按钮以添加验证器。 
- 
根据验证器的不同,您可能会看到“添加参数到验证器”页面,您可以在其中为验证器指定配置选项。例如,权限验证器会要求您选择要验证的权限。 
与条件类似,当有多个验证器添加到转换时,它们会形成一个验证器组。与条件不同,您只能对该组使用逻辑AND。这意味着,要完成转换,添加到转换中的每个验证器必须通过其验证标准。转换不能使用逻辑OR来选择性地通过验证。
以下截图显示了一个验证器被应用到转换上,验证用户是否为“解决方案详细信息”字段输入了值:

向转换添加后置功能
默认情况下,转换会创建多个后置功能。这些后置功能为 Jira 的内部操作提供关键服务,因此无法从转换中删除。它们执行以下操作:
- 
将问题状态设置为目标工作流步骤的关联状态 
- 
如果在转换期间输入了评论,可以将评论添加到问题中 
- 
更新问题的变更历史并将问题存储在数据库中 
- 
重新索引问题,以保持索引与数据库同步 
- 
触发一个可以由监听器处理的事件 
如您所见,这些后置功能提供了一些基本功能,例如在转换执行后更新搜索索引和设置问题状态,这些功能对 Jira 至关重要。因此,Jira 在您创建新转换时会自动为您添加这些功能,而不是让用户手动添加,以避免遗漏一个或多个功能。
后置功能在转换成功执行后发生。
执行以下步骤以向转换添加后置功能:
- 
选择您希望添加后置功能的转换。 
- 
点击“后置功能”链接。 
- 
点击“添加后置功能”链接并选择您要添加的后置功能。 
- 
点击“添加”按钮以添加后置功能。 
- 
根据后置功能的不同,您可能会看到“添加参数到功能”页面,您可以在其中为后置功能指定配置选项。以下截图显示了来自“更新问题字段”后置功能的示例: 

就像条件和验证器一样,多个后置功能在一个转移中形成一个后置功能组。转移执行后,组内的每个后置功能会按列表中出现的顺序依次执行,从上到下。如果组内的任何后置功能在处理过程中遇到错误,您将收到错误提示,且其余后置功能不会被执行。
由于后置功能是按顺序执行的,其中一些具有修改值和执行其他任务的能力,因此,它们的执行顺序往往非常重要。例如,如果您有一个后置功能将问题的指派人更改为当前用户,另一个后置功能更新问题字段的值为问题的指派人显然,更新指派人的后置功能需要首先执行,因此,您需要确保它排在另一个后置功能之前。
您可以通过点击“向上移动”和“向下移动”链接来调整后置功能在列表中的位置。请注意,并非所有后置功能都可以重新定位。
管理 Jira 权限
安全性是当今数字世界中最重要的优先事项。确保只有授权人员才能访问存储在 Jira 中的数据,以防止任何潜在的信息泄露,是每个 Jira 管理员需要时刻关注的事情。为了确保有适当的安全控制措施,Jira 提供了多种选项来控制对其存储数据的访问权限。
全局权限
全局权限顾名思义,是 Jira 中最高级别的权限。这些是全局应用于 Jira 的粗粒度权限,控制广泛的安全级别,例如管理各种配置设置的能力。
全局权限只能授予给用户组。因此,您需要将用户组织成逻辑组,以便全局权限生效。例如,您需要将所有管理员分配到一个组中,如JIRA-administrators组,这样您就可以授予他们管理权限:
- 
进入 Jira 管理控制台。 
- 
选择“系统”选项卡,然后选择“全局权限”选项。 
- 
从“添加权限”部分选择您希望分配的权限。 
- 
选择要授予权限的组。 
- 
点击“添加”按钮来添加分配: 

拥有 Jira 管理员全局权限的用户不能授予自己 Jira 系统管理员的全局权限。
项目权限
如您所见,全局权限主要控制管理级别的访问权限,在大多数情况下,您需要能够控制对项目的访问权限,例如谁能查看并创建新问题。这就是权限方案派上用场的地方。
权限方案定义了 Jira 中可用的权限列表,例如谁可以删除问题,谁可以添加评论,并允许将每个权限授予不同的用户。权限类型与用户定义的映射构成了权限方案。定义好权限方案的映射后,您可以将其应用于一个或多个项目。这为您提供了为每个项目定义独特权限设置的灵活性,并允许将相同的权限设置共享和应用于多个项目。要开始使用权限方案,请执行以下步骤:
- 
浏览至 Jira 管理控制台。 
- 
选择“问题”标签,然后选择“权限方案”选项。默认情况下,应该已经定义了两个权限方案: - 
默认权限方案: 非敏捷项目使用的默认方案。 
- 
默认软件方案: 所有敏捷(Scrum 和 Kanban)项目使用的默认方案。 您可以通过点击“权限”链接更新现有方案的权限设置,这将影响所有使用该方案的现有项目,或者通过点击“添加权限方案”按钮来创建一个新方案。 
 
- 
- 
一旦您选择或创建了要配置的权限方案,您将进入编辑权限页面,如下图所示: 

在此页面上,您将看到一份项目级权限列表,每个权限都有简短的描述,以及与每个权限相关联的用户、组和角色。您会注意到,在默认权限方案中,大多数权限选项都通过项目角色与默认用户相关联。如果您正在查看一个新的权限方案,则不会有用户与任何权限关联。这是您查看项目权限设置的单页视图,您还可以添加和删除用户。要将权限授予用户:
- 
点击“授予权限”按钮或特定权限的“编辑”链接。 
- 
选择您希望授予用户的权限。 
- 
选择用户选项以指定授予权限的对象。点击“查看更多”链接以查看更多选项。 
- 
点击“授予”按钮来授予所选权限。 
- 
重复此过程,以授予更多用户该权限: 

如用户自定义字段值这样的权限选项是一种非常灵活的方式,允许最终用户控制访问权限。例如,您可以创建一个名为编辑者的自定义字段,并设置“编辑问题”权限,只允许自定义字段中指定的用户编辑问题。自定义字段不需要出现在通常的视图/编辑屏幕上,权限依然会被应用。例如,您可以让自定义字段出现在名为“提交给经理”的工作流过渡中;一旦用户选择了经理,只有该经理才能编辑问题。
问题权限
项目级别的权限与权限方案通常是满足安全要求所需的一切。然而,有时你可能需要更进一步,按每个问题控制访问权限。例如,当你有内部和外部用户(如客户)在同一个项目上工作,并且有些问题你不希望与外部客户共享时,便可以使用问题安全方案。
问题安全允许用户通过从系统的“安全级别”字段中选择预配置的安全级别来设置问题的查看权限(不能编辑)。从大体上看,问题安全的工作方式与权限方案类似。Jira 管理员首先创建并配置一组问题安全方案并设置安全级别。然后,项目管理员可以将其中一个方案应用到他们的项目中,允许用户(拥有设置问题安全的项目权限)选择方案中的安全级别并将其应用到单个问题上。
使用问题安全的起点是问题安全方案。Jira 管理员负责创建和设计安全级别,以便尽可能地复用:
- 
浏览到 Jira 管理控制台。 
- 
选择“问题”标签,然后选择“问题安全方案”选项。与权限方案不同,问题安全方案没有默认可用的选项。 
- 
点击“添加问题安全方案”按钮。 
- 
输入新方案的名称和描述。 
- 
点击“添加”按钮以创建新的问题安全方案。 
- 
点击我们刚刚创建的问题安全方案的“安全级别”链接。新的问题安全方案不包含任何安全级别,因此我们需要手动添加它们。 
- 
在“添加安全级别”部分输入新安全级别的名称和描述,然后点击“添加安全级别”按钮。重复此步骤以添加更多安全级别。设置完安全级别后,我们现在可以分配用户,以便他们可以查看每个安全级别的权限。 
- 
点击你希望分配用户的安全级别旁边的“添加”链接。 
- 
选择你希望分配给安全级别的选项。 
- 
点击“添加”按钮以分配用户。 
如下图所示,我们定义了两个安全级别,内部专用和公开。当问题设置为“仅限内部”安全级别时,只有 demo-project-members 组的成员才能查看该问题;其他人将收到安全错误。当问题设置为“公开”安全级别时,Jira 中的任何人都可以查看该问题,前提是他们也满足项目在权限方案中设置的项目级别权限:

故障排除权限
获取正确的权限设置对于保护组织数据至关重要,特别是对于包含敏感信息并需要严格权限控制的项目。而且,在 Jira 中有不同级别的权限控制,这可能让人感到沮丧和困惑,尤其是当用户无法访问他们应该访问的问题时。
为了帮助解决这个问题,Jira 提供了权限助手,帮助管理员定位阻止用户访问某些功能的设置。使用权限助手的方法如下:
- 
浏览到 Jira 管理控制台。 
- 
选择系统选项卡,然后在底部选择权限助手选项。 
- 
在用户字段中指定遇到访问问题的用户。 
- 
指定用于测试的问题。 
- 
选择用户没有的权限(例如,编辑问题)。 
- 
点击提交: 

如前面的截图所示,用户 Patrick Li 无法编辑问题 DEMO-3,因为他不在“仅内部”问题安全级别中,而该级别是 默认权限方案 所要求的。
管理 Jira 通知
随着您的团队开始使用 Jira 来日常管理项目,每个成员需要在他们正在处理的任务发生变更时收到通知,比如质量保证人员拒绝了工程师提交的漏洞修复,或者产品经理对新功能发表评论。这对于处于不同时区的分布式团队尤其重要,因为在这种情况下,简单地走到某人面前进行快速交谈并不可行。为了促进团队内部的协作,Jira 使用邮件通知来保持每个人对项目中问题变更的最新了解,并且它提供了一种非常灵活的方式,让您定义这些通知何时以及如何发送。
启用外发邮件
为了让 Jira 发送外发邮件通知,您需要是 Jira 系统管理员(例如,初始设置时创建的用户是系统管理员)才能配置邮件服务器详情。请按照以下步骤管理外发邮件服务器:
- 
浏览到 Jira 管理控制台。 
- 
选择系统选项卡,然后选择外发邮件选项。这将打开外发邮件页面: 

- 
点击配置新 SMTP 邮件服务器按钮。 
- 
输入您的邮件服务器的一般详情,包括名称、描述、发件人地址和邮件前缀。 
- 
从服务提供商字段中选择邮件服务器类型。 
- 
输入邮件服务器的连接详情。 
- 
点击测试连接按钮以验证配置。 
- 
点击添加按钮以注册到邮件服务器: 

一旦你为 Jira 实例设置了 SMTP 邮件服务器,你将能够发送测试电子邮件来验证连接性,这在排查问题时非常有用,正如我们将在本章后面看到的那样。你还可以通过禁用外发邮件按钮来禁用所有外发电子邮件通知,如果你在执行其他维护任务时希望暂时禁用所有电子邮件通知,这个选项会很有用。
配置通知方案
配置好 SMTP 邮件服务器后,下一步是为以下问题配置规则:
- 
Jira 应该什么时候发送电子邮件通知? 
- 
谁应该接收这些电子邮件通知? 
Jira 使用通知方案来控制前述两个问题。在 Jira 中,每个用户操作(如编辑问题)都可以触发一个事件,并且对于每个事件,你可以定义一个将接收通知的用户列表。这种事件与通知的映射关系构成了通知方案。一旦你定义好了通知方案,就可以将该方案应用于不同的项目。这样,每个项目都可以有自己独特的通知设置,而多个项目也可以共享相同的通知设置。要配置通知方案,请执行以下步骤:
- 
进入 Jira 管理控制台。 
- 
选择“问题”标签,然后选择“通知方案”选项。这将打开通知方案页面。默认情况下,只有一个通知方案,称为“默认通知方案”,所有项目都会使用它。你可以选择点击它的“通知”链接来编辑该默认方案,这会影响所有项目,或者通过点击“添加通知方案”按钮来创建一个新的方案。 
- 
一旦你准备好通知方案,Jira 将显示可用事件的列表,以及将接收通知的用户(如果有的话),如下图所示: 

- 
你可以通过点击你想要的事件旁的添加链接,来添加新的用户以接收通知。Jira 随后会显示一份所有可用的选项清单,你可以使用这些选项来定义通知接收者。正如下图所示,有许多选项,从静态选项(例如 Jira 中的特定用户或确切的电子邮件地址),到更动态的选项(例如某个组中的所有用户或问题自定义字段中的所有用户)。 
- 
选择通知接收者选项并点击“添加”。你可以重复这个过程,为事件添加更多接收通知的用户: 

排查通知问题
通常,作为管理员,当人们没有收到预期的 Jira 通知时,找出原因可能会变得困难且令人沮丧。与通知相关的问题通常有两个常见原因:外发邮件服务器连接问题或通知方案配置错误。
排查外发邮件服务器问题相对简单。你只需要通过“外发邮件管理”部分中的“发送测试邮件”选项尝试发送一封测试邮件。如果你收到了测试邮件,那么外发邮件服务器配置就没有问题,你可以将注意力集中在通知配置上。如下面的截图所示,测试邮件投递失败,错误信息显示 Jira 无法连接到配置的 SMTP 服务器:

排查通知设置并不是一件简单的事,因为你需要考虑很多因素。为了帮助解决这个问题,Jira 提供了一个新功能,叫做通知助手。通知助手可以通过帮助 Jira 管理员定位为什么某个用户会或不会收到通知,节省管理员的时间。管理员只需告诉助手用户是谁,用户应该收到哪些问题(或来自目标项目的示例问题)的通知,以及触发通知的事件:
- 
浏览到 Jira 管理控制台。 
- 
选择“系统”标签,然后选择“通知助手”选项。 
- 
在“用户”字段中指定应该接收通知的用户。 
- 
指定要测试的问题。 
- 
选择通知事件类型。 
- 
点击提交。 
然后,通知助手会处理输入内容,并根据通知方案设置报告该用户是否应该收到通知以及原因:

正如从前面的截图中看到的,用户 Patrick Li 在更新 DEMO-2 问题时并未收到通知,因为通知设置为只有当前指派人会收到邮件,而 Patrick Li 并不是该任务的指派人。
总结
在本章中,我们探讨了如何在默认的敏捷模板之外自定义 Jira。我们讨论了如何创建新的问题类型和自定义字段,如何编写包含自定义权限和验证的工作流。我们还介绍了 Jira 的权限层次结构,以及如何保护系统免受未经授权的访问。最后,我们介绍了如何管理 Jira 中的电子邮件通知,以便团队成员能够及时了解项目中的变化。
在下一章,我们将探讨一些高级话题,比如将 Jira 与其他工具集成,以便扩展其默认功能的使用。
第六章:Jira 软件 – 高级版
在前几章中,我们讨论了如何使用 Jira 来运行和管理 Scrum 和看板项目,并根据需要定制 Jira,使其更加灵活和适应性。在本章中,我们将深入探讨 Jira 的一些额外功能,以及如何与其他系统集成,以为你和你的团队提供完整的端到端体验。
到本章结束时,你将学会如何:
- 
使用仪表盘展示和共享项目信息 
- 
创建并将史诗与需求页面关联 
- 
从需求页面创建用户故事 
- 
在日历上展示冲刺 
- 
捕捉冲刺会议记录 
- 
分享项目进展报告 
- 
打印出你的敏捷卡片并将它们钉在物理看板上 
展示敏捷报告
正如我们在第二章(Jira 软件用于 Scrum)和第三章(Jira 软件用于看板)中看到的,Jira 附带了多个报告,你可以生成这些报告以更好地了解项目的进展。然而,它们通常需要你去看板生成报告。展示和共享项目信息的更好方法是利用 Jira 内置的一些协作功能。
使用 Jira 仪表盘
显示和共享项目及冲刺进展的最简单方法是使用 Jira 的仪表盘功能。仪表盘充当项目的门户页面,你可以通过向仪表盘添加小工具,展示关于项目的不同信息。
Jira 附带了多个专为展示敏捷相关信息设计的小工具,包括:
- 
冲刺燃尽图小工具:此工具在仪表盘上显示你的冲刺燃尽图。该图表会自动更新,以反映当前的数据。 
- 
剩余天数小工具:此工具显示冲刺预计完成之前剩余的天数。它作为一个提醒,告诉你还剩多少时间。 
- 
冲刺健康小工具:此工具显示一个条形图,展示冲刺进展的信息;例如,还剩多少工作需要完成。 
使用 Jira 仪表盘的优势在于,你不仅限于使用专门为敏捷设计的小工具。Jira 还提供了许多其他有用的小工具,可以帮助你深入了解你的项目和冲刺。它们如下:
- 
筛选结果小工具:你可以选择一个筛选器,并在表格中显示结果。你可以用它来展示冲刺中最重要的问题。 
- 
二维筛选统计小工具:与筛选结果小工具类似,但它不是展示问题列表,而是根据你选择的字段,展示筛选结果的统计细分。 
- 
饼图小工具:你可以选择一个筛选器,结果会显示为饼图,其中每个扇区根据你选择的字段展示;例如,优先级。 
如你所见,你可以通过将敏捷和非敏捷小工具结合,构建一个非常实用的仪表板。你甚至可以创建你自己的小工具,或从第三方供应商下载小工具,以展示符合你需求的信息。
为你的项目和冲刺创建一个仪表板,请执行以下步骤:
- 
从仪表板菜单中选择“管理仪表板”选项。 
- 
点击“创建新仪表板”按钮。 
- 
输入你新仪表板的名称。 
- 
选择你想要的共享方式。仪表板默认是私有的,所以为了让其他人查看仪表板,你必须将其共享给他们。如以下截图所示,我们正在将仪表板共享给“最高机密项目”的成员。 
- 
点击“添加”按钮以创建仪表板: 

确保在选择好与谁共享仪表板后,点击“添加”按钮。
创建新的仪表板后,你可以开始通过小工具向其添加内容:
- 
点击“添加新小工具”链接。你点击哪个链接都没关系,因为你可以在添加小工具后,随时通过拖动它们重新定位。 
- 
通过点击其“添加小工具”按钮,从“添加小工具”对话框中选择你想要添加的小工具。 
- 
在添加完你想要的所有小工具后,关闭对话框: 

添加小工具后,你需要配置每个小工具,以显示你想要的数据。对于大多数小工具,你只需选择要使用的看板、冲刺、项目或筛选器:

你还可以配置仪表板的布局。默认情况下,仪表板分为两列,宽度相等。你可以通过点击“编辑布局”按钮,然后选择你想要的布局来进行更改。
使用墙板
另一个你可以利用的 Jira 功能是墙板。你可以将墙板看作是 Jira 仪表板,通过投影仪或大屏幕显示在大墙上。
使用墙板是与团队和其他同事共享项目资讯的好方法。以下截图展示了墙板的一个例子。通过将敏捷项目的数据提取出来,并投射到大屏幕上,大家可以轻松快速地获取他们所需的信息。当人们走过你们团队的工作区域时,他们会清楚地了解团队的进展:

要为你的敏捷项目设置墙板,首先需要创建一个仪表板。请注意,并非所有小工具都与墙板兼容,但所有预装的敏捷小工具都是兼容的。一旦你准备好了仪表板,点击“工具”菜单并选择“以墙板查看”选项,连接到大屏幕,你就拥有了一个超棒的墙板。
如果你有多个仪表板,可以创建一个墙面板幻灯片。只需从工具菜单中选择“设置墙面板幻灯片”选项,如下图所示,来设置幻灯片。选择要包含在墙上的仪表板,并设置幻灯片显示方式(显示选项),然后使用“以墙面板幻灯片查看”选项进行展示:

将 Jira 与 Confluence 集成
Confluence 是 Atlassian(Jira 的开发商)提供的团队协作解决方案,使团队能够共同协作并创建内容。组织通常使用它来创建和共享与项目相关的信息,如功能和设计规格。Jira 与 Confluence 无缝集成,提供完整的敏捷体验。在接下来的部分中,我们将介绍如何将 Jira 与 Confluence 集成,以便:
- 
创建带有设计文档的史诗任务和用户故事 
- 
在日历上管理和查看你的冲刺 
- 
捕获你的冲刺计划会议记录 
- 
在每次冲刺结束时创建回顾报告 
- 
分享并发布发布信息 
设置与 Confluence 的应用链接
如果你还没有将 Jira 和 Confluence 集成在一起,你需要创建一个新的应用链接。要与 Confluence 创建应用链接,请执行以下步骤:
- 
浏览到 Jira 管理控制台。 
- 
选择“应用程序”选项卡,然后选择“应用链接”选项。 
- 
输入 Confluence 实例的 URL 并点击“创建新链接”按钮,如下图所示: 

- 如果 Jira 和 Confluence 共享相同的用户仓库(例如 LDAP),请勾选“服务器具有相同的用户和用户名”选项。
如果你为两个应用程序提供了共享用户仓库,如 LDAP,启用此选项后,用户将体验无缝集成。否则,他们将被提示授权访问另一个应用程序中的内容。
- 
如果你在 Jira 和 Confluence 上都拥有管理员账户,请勾选“我在两个实例上都是管理员”选项。这将使你能够从 Confluence 创建到 Jira 的双向链接。 
- 
点击继续按钮: 

- 验证屏幕上的信息是否正确。如果两个应用程序能够成功通信,它将显示 URL 和应用程序的名称与类型,如下图所示。然后,点击继续按钮:

- 继续使用屏幕向导,一旦应用链接成功创建,你将看到成功消息,并且会列出新的 Confluence 应用链接:

从史诗任务创建 Confluence 页面
Jira 是一个很好的工具,用于跟踪和管理项目的日常活动,但它不是记录任务详细信息的最佳工具,比如设计文档和功能规范。使用 Confluence 作为文档平台,你可以通过几种方式创建设计文档并将其链接到你的史诗。
第一个选项是直接从敏捷看板的待办事项中创建你的文档,即 Confluence 页面:
- 
浏览到你的敏捷看板并进入其待办事项。 
- 
从左侧打开史诗面板。 
- 
选择并展开你想要为其创建 Confluence 页面的史诗。 
- 
从史诗中点击“链接页面”链接。 
- 
从对话框中点击“创建页面”按钮,如下图所示: 

- 
点击“创建页面”按钮后,你将被带到 Confluence,新的浏览器标签页中会显示创建对话框,如下图所示。默认情况下,对话框会预先选择“项目需求”模板(也称为蓝图),但如果你愿意,你也可以选择使用其他模板。另请注意,顶部的“选择空间”字段会预先选择你上次访问的 Confluence 空间,因此请确保选择正确的空间来创建你的新页面。 
- 
选择正确的空间后,点击“创建”按钮来创建你的新页面: 

- 如果这是你第一次使用产品需求模板,你会看到一个“开始使用”信息对话框,如下图所示。只需勾选底部的“以后不再显示”选项,然后点击“创建”按钮来创建你的新页面:

- 再次点击“创建”按钮以开始编辑新页面。
Confluence 会为你提供一个新页面和编辑器,并带有预定义的模板。你只需填写模板中的信息,如目标和需求。需要注意的几点事项:
- 
确保为你的页面命名。一个好的做法是将页面命名为链接的史诗(epic)名称。 
- 
在 Jira 中通过点击“链接到相关 Jira 史诗”功能文本标签来引用该史诗。这样,需求页面和史诗问题之间就会创建一个引用链接。 
页面创建后,如果你返回 Jira,史诗的“链接页面”链接会变为“1 个链接页面”,点击该链接会显示实际的链接页面,如下图所示:

如果你已经为项目创建了需求页面,而不是从史诗中创建新的页面,你可以通过点击“链接页面”按钮来直接链接到这些页面。点击后,你将看到一个搜索框,你可以输入页面标题,找到你想要的页面,并选择它来创建链接。下一张截图会说明这一点:

如果你无法看到链接的页面,请确保 Confluence 启用了远程 API。详细信息请参见 confluence.atlassian.com/x/vEsC。
从 Confluence 创建用户故事
如果你使用的是产品需求蓝图,正如我们之前看到的,页面上有一部分内容用于列出该功能的所有需求。团队定义完所有需求后,你可以直接在页面上创建用户故事。为此,请执行以下步骤:
- 
转到 Confluence 中的产品需求页面。 
- 
高亮你希望创建用户故事的需求文本。你高亮的文本将成为用户故事的摘要,如下截图所示: 

- 
点击 Jira 图标。这将打开“创建问题”对话框,如下截图所示。 
- 
确保选择的项目和问题类型正确。你可以点击“编辑”链接进行更改。 
- 
为用户故事输入描述。 
- 
如果产品需求页面已经链接到 Jira 中的史诗,你将看到“链接到史诗”选项。如果你不希望用户故事被添加到史诗中,请取消勾选此选项。 
- 
点击“创建”按钮以创建用户故事: 

如果你的页面中有多个需求列在“需求”表格里,你可以点击底部的“从此表格创建 x 个问题”选项,Confluence 会自动为每个需求创建一个用户故事。
创建用户故事后,你将看到每个需求旁边会添加一个 Jira 问题,显示它们的关键和状态。随着问题的处理,状态会自动更新。你还会在页面顶部的面包屑导航旁看到一个 Jira 链接按钮,点击该按钮将显示所有当前与此页面链接的 Jira 问题,包括任何史诗和用户故事。请参考以下截图:

当前,Jira 链接按钮仅在使用 Confluence 默认主题时可用。
使用团队日历规划你的冲刺
当你和你的团队进行冲刺时,看到冲刺与团队其他活动如何契合通常很有帮助:例如,如果团队成员在冲刺进行到一半时有假期或旅行计划,或者有其他交付承诺可能会干扰到冲刺。
解决此问题的关键是将所有信息可视化地展示在一个日历上,供整个团队查看和共享,这样每个人都能保持信息的更新,就像在敏捷看板上列出任务一样。要做到这一点,请执行以下步骤:
- 
浏览到你团队的团队日历。 
- 
点击“添加事件”按钮。 
- 
选择“Jira 敏捷冲刺”选项作为事件类型: 

- 
选择属于你 Scrum 看板的项目。 
- 
输入事件名称。 
- 
点击“确定”按钮以创建事件。 
Confluence 的团队日历是一个独立的产品,你可以从 Atlassian Marketplace 获取,网址是marketplace.atlassian.com/plugins/com.atlassian.confluence.extra.team-calendars/cloud/overview
创建事件后,团队日历将获取选定项目的所有冲刺,并在日历上显示它们。如以下截图所示,我们有两个冲刺,冲刺 2 和冲刺 3。我们还可以看到 Tom Johnson 将在冲刺 2 开始时休假,这可能会影响团队按时完成所有任务的能力。此外,如果你在日历上显示了所有团队成员的假期计划,那么在进行冲刺计划时,你将能够获得所有必要的信息,从而帮助你决定冲刺的工作量以及冲刺的时长。

日历设置完成后,你还可以分享和嵌入它。一个好的使用方法是,在同一个项目空间中创建一个新的 Confluence 页面,这个页面包含了所有的需求文档,命名为“项目日历”,然后将日历嵌入到页面中。要将日历嵌入到页面中:
- 
点击页面顶部的“创建”按钮。 
- 
为选择空间字段选择项目空间。 
- 
现在选择“空白页面”选项并点击“创建”按钮。 
- 
将页面命名为“项目日历”。 
- 
选择并将团队日历宏添加到页面中。 
- 
点击“添加现有日历”选项。 
- 
搜索你创建的日历,点击“添加”按钮。 
- 
点击“保存”按钮以创建页面: 

在你创建页面后,你将把项目的所有信息汇总在一个地方,并与项目的 Confluence 空间一起,便于访问。你还可以采取一个额外的步骤,在你的 Scrum 看板上创建一个快速快捷方式链接,直接链接到项目日历页面,这样当你需要时,只需点击即可访问。
要创建指向页面的链接:
- 
浏览到你的 Scrum 看板。 
- 
从左侧点击“添加链接”选项。 
- 
输入项目日历页面的 URL。 
- 
输入链接的标签,即项目日历。 
- 
点击“添加”按钮以创建链接。 
链接将显示在左侧的“项目快捷方式”部分,如下方截图所示。因此,在你的冲刺计划会议中,或在进行当前冲刺的工作会议时,你可以轻松访问项目日历,并获取最新信息:

记录冲刺会议笔记
正如我们所看到的,你可以使用 Confluence 的团队日历来规划和可视化你的冲刺。另一个冲刺规划会议的重要组成部分是记录会议内容,捕捉讨论的要点、做出的决策,并能在冲刺的上下文中回顾这些会议记录。
就像需求文档一样,Confluence 也是一个很好的地方来捕捉和存储这些信息。在你的 Scrum 看板中,你可以像处理史诗一样创建并链接每个冲刺到 Confluence 中的页面。要为冲刺创建会议记录:
- 
浏览到你的 Scrum 看板。 
- 
点击左侧的“待办事项”以显示所有冲刺。 
- 
点击链接页面链接,选择你想要创建会议记录的冲刺。 
- 
如果你想创建新的会议记录页面,请点击“创建页面”按钮;如果你已经准备好会议记录,可以点击“链接页面”按钮: 

如果你点击“创建页面”按钮,你将被带到 Confluence 页面,并显示创建对话框。对话框会预选“会议记录”模板。确保选中了正确的空间,然后点击“创建”按钮;你就可以开始输入会议内容。一旦你创建并保存了会议记录,页面上将显示一个 Jira 链接,指向该冲刺,如下图所示,冲刺页面也会列出所有与之关联的会议记录:

创建回顾报告
除了创建会议记录外,另一个很棒的功能是在每次冲刺结束时创建回顾报告。记住,敏捷方法的一个核心理念是持续改进,因此,在每个冲刺结束时,整个团队应该聚集在一起,讨论他们做得好的地方以及冲刺中出现的问题;还要总结经验教训,并讨论如何在下一个冲刺中作为团队改进流程。
要为你的冲刺创建回顾报告,执行以下步骤:
- 
浏览到你的 Scrum 看板。 
- 
点击左侧的“报告”。 
- 
选择要报告的冲刺并选择“冲刺报告”。 
- 
点击“链接页面”链接。 
- 
点击“创建页面”按钮: 

- 
点击 Confluence 创建对话框中的“下一步”按钮。 
- 
输入报告标题或保留默认标题。 
- 
将所有参加回顾会议的团队成员添加进去。 
- 
点击“创建”按钮,开始撰写报告。 
和所有其他报告一样,报告与冲刺之间会创建一个参考链接,便于你在两者之间轻松切换。
在 Confluence 中展示你的项目
Jira 和 Confluence 之间的最后一个集成功能是基于特定版本创建项目报告。你可以创建两种类型的报告:
- 
变更日志报告:变更日志报告列出了选定版本中所有相关的问题。这可以避免你手动编写问题列表并逐一输入。对于向客户和其他利益相关者沟通特定版本中的变更,这是一种非常有效的方式。 
- 
状态报告:状态报告是一个实时报告,展示项目的状态,通过多个饼图呈现。 
为了创建这些报告,你将从 Confluence 开始,而不是从 Jira:
- 
登录 Confluence,并浏览到你的项目空间。 
- 
点击顶部的“创建”按钮,或按下键盘上的 C 键。 
- 
在创建对话框中选择 Jira 报告并点击“创建”。 
- 
选择你要创建的报告并点击“下一步”按钮。在我们的示例中,我们正在创建一个状态报告: 

- 
选择要报告的项目和版本。这些字段会根据来自 Jira 的数据自动填充。 
- 
输入报告的标题。 
- 
点击“创建”按钮开始创建报告。 
默认的报告模板将根据你提供的信息自动填充,因此你只需点击“保存”按钮创建报告,无需做进一步更改。以下截图显示了默认的状态报告:

离线使用 Jira 敏捷看板
Jira 将敏捷方法的优势带入了基于 Web 的系统,让大家无论是否同处一个物理空间,都能访问和共享进展和报告。然而,有时拥有一个实体的看板和卡片仍然很有用,这样的会议(例如每日立会)会显得更具互动性和新鲜感,而不是让每个人都一直盯着电脑显示器看。
你可以使用名为 Agile Cards 的第三方插件来完成这项工作——它可以将 Jira 中的问题打印出来。你可以通过 通用插件管理器(UPM)搜索并安装该插件,或从以下链接下载,并通过 UPM 手动上传到 Jira:
marketplace.atlassian.com/plugins/com.spartez.scrumprint.scrumplugin
一旦你安装了 Agile Cards 插件,你将在你的看板上看到一个新的打印图标。以下截图展示了 Scrum 看板的 Backlog 视图中的新图标。该图标在活动冲刺模式和看板模式中也可用:

print 功能也可以在 Jira 外部使用;例如,当你在问题导航器中进行搜索,或查看单个问题时。
当你点击打印图标时,会打开一个新标签页,每个问题都会转化为一张卡片,如以下截图所示:

在打印完敏捷卡片后,你可以将它们剪下来并钉到物理看板上,在团队会议中使用它们。这个附加组件的第二个功能是,它还允许你通过拍摄物理看板的照片并将其导入 Jira 来同步物理看板与敏捷看板。
为了将物理看板的内容传输到 Jira 的敏捷看板,我们需要在物理看板上添加一项新的信息,称为分隔符。分隔符是一张纸,你需要将其放置在物理看板每一列之间,这样当你拍摄物理看板的照片时,敏捷卡片就能确定列与 Jira 的敏捷看板之间的匹配关系。要为你的看板生成分隔符:
- 
浏览到你想要同步的敏捷看板。 
- 
选择新的敏捷卡片菜单,然后选择“同步物理任务看板”选项。 
- 
如果这是第一次同步两个看板,请点击“物理看板设置”选项卡: 

- 
将左侧所有与物理看板对应的列拖动到“物理看板布局”部分。 
- 
点击“打印分隔符”按钮以打印分隔符。 
- 
将分隔符图像钉到物理看板上,如下图所示。这将帮助敏捷卡片确定每个卡片属于哪个列: 

在物理看板上设置好分隔符后,现在可以同步到 Jira 敏捷看板:
- 
拍一张你的看板照片,并将其发送到你的计算机。 
- 
转到你想要同步的敏捷看板。 
- 
选择新的敏捷卡片菜单,然后选择“同步物理任务看板”选项。 
- 
点击“看板同步”选项卡。 
- 
选择并上传第 1 步拍摄的照片。如果照片处理成功,你将获得所有更改的摘要。 
- 
查看结果并点击“自动更改状态”链接来更新所有问题,或者点击每一列的批量编辑链接并分别处理它们。 
敏捷卡片有其他几个自定义选项,例如让你自定义卡片的布局,决定打印时包含哪些字段。你可以通过confluence.spartez.com/x/GwAt了解更多信息。
总结
在这一章节中,我们介绍了 Jira 提供的一些附加功能和能力,现在你可以根据自己的需求创建 Scrum 和看板。我们探讨了使用 Jira 的一些非敏捷特性,如小工具和仪表板,更好地展示数据并促进协作。我们还研究了将 Jira 与 Confluence 和团队日历集成,这样你就可以创建详细的文档和报告,并与史诗任务、用户故事和迭代进行交叉引用。
记住,这些功能的一个重要部分是将数据从 Jira 中提取出来,避免数据孤立,并与团队及其他项目相关方共享信息。通过在仪表盘上共享信息,并回顾团队的进展,你可以持续改进并一起提升,从而成功地运用敏捷方法并做到敏捷。
在下一章,我们将探讨如何将 Jira 与 Atlassian Bitbucket 进行集成,Atlassian 的另一项解决方案,旨在帮助软件工程师管理、构建和部署代码。与 Jira 一起使用时,这将完成将 Jira Software 作为软件开发敏捷项目管理解决方案的整个周期。
第七章:Jira 软件 – 发布与部署
在前几章中,我们探讨了如何将 Jira 与来自 Atlassian 和第三方开发者的其他工具进行集成,从而扩展 Jira 的功能。在本章中,我们将探讨如何使用另一款 Atlassian 工具——Bamboo,将软件开发项目的发布、构建和部署过程串联起来。
在本章结束时,你将学会如何:
- 
集成 Jira 和 Bamboo 
- 
直接在 Jira 中执行版本发布和构建 
- 
在 Jira 中显示构建信息 
- 
将发布的构建部署到你的操作环境中 
将 Jira 与 Bamboo 集成
Bamboo 是 Atlassian 的持续集成和构建服务器。通过将 Jira 和 Bamboo 集成在一起,你可以在 Bamboo 中访问 Jira 的问题信息,并且在 Jira 中查看 Bamboo 的构建和部署信息。
设置与 Bamboo 的应用链接
与将 Jira 与 Confluence 集成类似,你需要在 Jira 和 Bamboo 之间创建一个新的应用链接。要与 Bamboo 创建应用链接,请执行以下步骤:
- 
浏览到 Jira 管理控制台。 
- 
选择“应用程序”选项卡,然后选择“应用链接”选项。 
- 
输入你的 Bamboo 实例的 URL 并点击“创建新链接”按钮,如下图所示: 

- 
如果 Jira 和 Bamboo 共享相同的用户仓库(例如 LDAP),请勾选“服务器具有相同用户和用户名集”选项。 
- 
如果你在 Jira 和 Bamboo 上都有管理员账户,请勾选“我在两个实例上都是管理员”选项。这将允许你从 Bamboo 创建一个双向链接到 Jira。 
- 
点击“继续”按钮: 

- 验证屏幕上的信息是否正确。如果两个应用能够成功通信,它将显示 URL、应用名称和类型,如下图所示。然后,点击“继续”按钮:

- 继续进行屏幕上的向导操作,成功创建应用链接后,你将看到一条成功消息,并且 Bamboo 的应用链接将列出:

从 Jira 发布构建
在集成了 Jira 和 Bamboo 后,我们将能够将 Jira 中的发布过程和 Bamboo 中的构建过程结合起来:
- 
浏览到你想要执行发布操作的 Jira 项目。 
- 
从左侧面板中点击“发布”选项。发布页面默认应列出所有未发布的版本,如下所示: 

- 
点击要发布的版本的“构建与发布”选项。 
- 
在发布对话框中选择“使用新构建”选项。 
- 
选择用于构建此发布的构建计划。构建计划应从 Bamboo 中提取。如果你没有看到想要的构建计划,请确保你对 Bamboo 中的构建计划有访问权限,并且 Jira 与 Bamboo 之间的应用链接正常工作。 
- 
点击“发布”按钮以发布并构建版本。您无需输入发布日期,因为 Jira 会在发布 ID 完成后自动填入今天的日期: 

一旦 Bamboo 端的构建完成,Jira 将标记该版本为已发布,并显示构建的成功结果,如下所示。您可以从此页面点击构建结果链接,直接跳转到 Bamboo 查看更详细的构建信息,并进行发布部署,正如我们在本章后面将看到的:

此外,任何与此发布构建相关的问题也会在“开发”部分下显示构建结果,如下所示。您可以点击该链接直接在 Jira 中查看构建结果:

部署发布
一旦成功构建了您的项目,您还可以将最终构建的 artifact 部署到您的环境中。您可以通过多种方式实现这一点。例如,您可以将自定义部署阶段作为构建计划的一部分。然而,我们将使用 Bamboo 中的部署计划功能。这使您能够更好地控制部署过程的执行方式,并且能够跟踪所有的部署,还可以在出现问题时回滚到之前部署的版本。
设置部署计划
第一步是在 Bamboo 中设置一个新的部署计划:
- 
登录到 Bamboo。 
- 
从创建菜单中选择“创建部署项目”选项。 
- 
输入新部署项目的名称,并选择用于构建项目的构建计划和分支: 

- 
点击“创建部署项目”按钮以创建部署计划。 
- 
创建部署项目后,系统会要求您创建一个环境。您应该为每个实际的操作环境创建一个环境,例如生产环境和测试环境。 
- 
点击“继续设置任务”按钮: 

只有在您在构建计划中定义了共享 artifact 时,您才会看到 artifact 列表。
- 对于每个环境,您需要配置一系列任务,以便作为部署的一部分运行。例如,如果您正在部署基于 Java 的 Web 应用程序,您需要使用 Artifact 下载任务,并选择作为构建过程一部分创建的 artifact:

在添加新任务之前,请确保每个任务都点击“保存”按钮。
- 点击“添加任务”按钮,向构建计划中添加更多任务。Bamboo 自带了一些可直接使用的部署任务,例如部署到 Heroku 云和使用 Docker。如果您没有找到适合您部署需求的任务,您还可以查看 Atlassian Marketplace,在那里您可以找到许多其他支持其他部署选项的 Bamboo 插件:

运行部署
在我们创建好部署计划和目标环境后,可以继续部署已发布的项目:
- 
浏览到 Bamboo 中的发布构建结果。你可以通过 Jira 的发布页面访问它。 
- 
点击“创建发布”按钮: 

- 
确保选择正确的构建结果。 
- 
输入此版本发布的版本号。通过这种方式,我们创建了所有部署的历史记录,方便追踪每个环境的已发布和已部署版本,并且将来可以轻松回滚。在以下示例中,我们正在发布版本 1.0。 
- 
点击“创建发布”按钮: 

如果你有多个环境,例如测试环境和生产环境,应该始终先从测试环境开始。如果部署成功,随后你可以将部署推广到生产环境。
- 从“部署”菜单中选择你要部署到的环境。之前创建的每个环境应该都列在这里:

- 审核部署并点击“开始部署”按钮开始部署。根据部署的类型,完成过程可能需要几分钟或更长时间。Bamboo 会在此过程中显示部署进度:

- 
如果部署成功,你将看到如下的成功页面。如果需要,你可以将部署推广到其他环境。 
- 
如果所有部署后验证都通过,点击“批准”按钮。这将标记该部署为成功: 

总结
本章我们介绍了 Bamboo 及其功能。我们使用应用链接将 Jira 与 Bamboo 集成,使得两个应用可以互相共享信息;例如,允许你从 Jira 内部运行构建计划。我们还在设置部署计划时探讨了 Bamboo,这样你可以部署你已经发布并构建的项目工件。
你将会发现更多可以通过 Jira 和 Bamboo 集成一起完成的操作;例如,你将开始在 Jira 的活动流中自动看到构建结果,这样每个人都能及时知道构建是否失败。你的构建工程师也可以从 Bamboo 构建中查看 Jira 的任务信息,从而轻松定位构建计划失败的原因。

 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号