道生一,一生二,二生三,三生万物。 --《道德经》

如果说第一节的指导思想是管理之“道“,那我们本节的核心配置就是Jira系统之”道“了。有了核心配置,才有后续的各种管理方法的实施可能。
本节的核心配置包括下面几点:

  • 项目
  • 用户组
  • 问题类型
  • 字段配置
  • 工作流

项目(Project)

项目的主要用途是作为数据的隔离。但实际上项目做到的数据隔离还是通过逻辑隔离,根本来讲还都是存储在同一张表中的数据。

上图拆分出了三个项目,分别用于产研中心,支持中心(外部),管理中心(高层)
为了达到数据隔离的目的,需要配置的就是

配置了权限的用户才能访问指定的项目

下面还有针对问题、评论等权限设置,细化到操作比如:分配问题、关闭问题、创建问题、删除问题等。


用户组(UserGroup)

这里主要讲的还是组的部分,我理解的用户组的用法主要还是行政组织架构+角色职能多级组合。你也可以根据你希望管理的维度设置多级用户组。
Jira原本实际上并没有多级概念,所以我的实现方式实际上就是“前缀法”,上图:

第一级:org代表是一个组织架构,还有其他如:jira(jira系统角色)、auth(权限角色)
第二级:pd代表行政架构,大部门或者中心:product&develop
第三级:代表角色或者职能,比如:leader(管理岗),coder(编码人员),前端(frontside),后端(serverside)
第四级:代表二级部门,比如前端分为h5(h5)和原生(native)
中间用连字符隔开。
这样的好处是我们很容易理解和记忆,在JQL输入语法时,也能够很好的利用语法提示。
多层级都有用户组,这样在添加用户的时候会稍显麻烦,但是会方便后期根据多种维护进行数据筛选。添加用户我们一般也是指定某个用户作为样本,添加同样的用户组,不会遗漏。


问题类型

问题类型区分为下面几大类:

  • 异常:内部BUG、线上异常

    • 内部BUG是在测试环境产生的异常。
    • 线上异常是在生产环境产生的异常。
  • 职能任务:Epic、Story、Task、新功能、子任务、测试
    • Story、新功能是用于产品的可实施需求与过程中需求区分。
    • Task是研发内部发起的优化或者改进需求。
    • Epic是大型任务的集合。
    • 子任务是普通研发人员正常的拆分任务项。
    • 测试是测试人员编写的测试用例和测试执行。
  • 非职能任务:日常综合事务
    • 日常综合事务是请假、周月会等事务性工作。
  • 外部任务:服务工单
    • 服务工单是外部客户服务、销售、技术支持统一支持格式。

总结:

  1. 外部数据来源多样,情况也很多,尽量保证单一规格有利于信息收集和反馈。
  2. 异常区分环境,有利于确认品质,以及不同的工作流程。

字段配置

自定义字段是Jira一定会使用的功能,针对不同的环境和业务流程我们一定会添加其他信息。本节针对我们自己的生产流程介绍几个我们感觉比较有代表意义的字段。

affectedVersion 与 fixVersion

影响版本与修复版本是系统提供的自定义字段,字段含义也是比较清楚的,影响版本能够明确某个BUG可能影响到哪些版本,修复版本是指会在哪个版本修复问题或者添加特性。
在我们的使用过程中,放弃了影响版本直接隐藏了这个字段,因为会造成大家的困惑和工作量。你需要追溯代码去明确影响,使用者也需要了解两个版本字段的意义,造成某些歧义。
所以在迭代过程中,唯一意味着问题归属版本的字段就是fixVersion。
另外,我们除了常规的迭代版本,还设置了一个长期版本号 hotfix 用于修正的发布标记,并且设置了修正的状态【修正待发布/修正已发布】和修正发布的日期来构建修正发布的流程。

开始日

Jira的系统字段中有duedate(到期日)这个字段,却没有开始日,可能开发者认为所有的任务新建了就是要开始,所以只需要关注结束时间。但是我们很多任务都是要事先安排计划,需要明确开始结束时间,所以我们建立了开始日这个字段,用于完整的规划。

责任人

Jira默认有报告人和经办人两个用户字段,但是实际生产过程中常常涉及多流程环节多人同时进行,所以我们添加了一个多用户字段称之为责任人。在常规迭代任务中,会自动添加新建了子任务的用户,也可以事先指定需要参与的前后端研发、测试、产品等人员。在BUG中,会在工作流中在解决问题时自动添加当前操作的用户作为责任人。

任务持续时间(需要插件)

这个字段是计算某个任务开始结束时间之间的差值,用于我们观察发现某些延期了比较久的任务或者持续时间很长的遗留BUG。这种计算字段的类型是ScriptField需要ScriptRunner这个插件提供支持。


工作流

工作流与任务类型

针对工作流的设置,我们的建议是不同的问题类型,不同的工作流

可以看到我们的系统中设置了多套工作流,这样能够根据不同的需求设置不同的工作流节点和其他设置。

工作流设置实践

以一个例子说明工作流状态与命名的设计建议

状态是分为三种颜色,蓝色:待办,黄色:进行中,绿色:完成。某个问题一定只会处于某一个确定的状态,会在问题的界面上直接显示。
除去一开始的待办和最终的完成,中间所有的环节,都分为进行中和完成两步。正常的工作流程完成之后还要等待下一环节的人员继续处理,所以单环节的完成状态颜色设定为蓝色。测试比较特殊,测试完成之后是可发布状态,所以可以设定为绿色。
这就是状态的设置建议。
命名就是针对状态和转换:
状态的命名建议是 XX中:进行中,XX完成:阶段性完成。
转换是连接源头状态和目标状态的线,在问题的界面上,实际上就是一个一个的按钮。建议的命名是以转换到某个阶段进行中状态时以转向+目标阶段,转换到某个阶段完成状态时以完成+目标阶段
转换这么命名的好处有两个:

  1. 不用特别考虑,利用统一规则命名,整体系统风格延续。
  2. 当其他工作流需要驱动工作流时,不同的状态都可以以名称方式来驱动到目标状态。(比如:图示的工作流中,待办、UI设计完成、测试中都是可以转向研发中状态的,当命名都是转向研发的时候,我们子任务驱动主任务流程变化的时候,只要建一个驱动规则,调用“转向研发”转换,在上述的多个状态都可以直接转到研发中状态)。

工作流转换设置选项

转换这边会有一些高级选项,我们就实际有应用到的场景做一些介绍:

条件

场景:我们控制了添加版本的权限,只允许管理人员才能修改修复版本,避免版本控制的混乱。
方法:

  1. 删除了修复版本,这样就不能在问题新建/修改界面操作修复版本字段,但是Jira的特性是只要对应的栏位有值,就会出现在界面上,所以不影响使用。
  2. 设定了一个单独的界面“确认版本界面”,上面展示修复版本字段
  3. 在“确定修复版本”转换中引用这个界面
  4. 设置条件

指定某个用户组
结果:这样就能够保证只有某个权限组的用户能够看到这个转换按钮,从而修改对应字段

界面配置

界面配置是一个单独的模块,但是目前似乎只有在工作流的转换时引用,所以归属到这里。
下面就是一个常见的界面配置:

这里说几个注意点:

  1. 任何一个界面中都会默认包含备注(评论)这个字段
  2. 如果你使用了Tempo插件,在工作日志中的自定义字段无法在界面的工作日志中展示。
  3. 当前问题类型的字段方案中没有的字段也可以在这里展示与操作。

后处理功能

下面是我们系统中设定后处理功能的界面

如果你的界面看起来比较不一样,应该是因为你没有安装JMWE这个插件,添加之后工作流的能力大大提高,才能达到我们不同工作流相互影响相互驱动的效果。
举例:

这个后处理工作会将当前操作的用户设置为经办人(若当前经办人为空),并且添加到责任人当中去。


总结

经过上面的配置,我们的Jira已经可以投入实际生产使用,但是我们管理系统只是完成了基础的工作,要把整个系统变得真正“好用”,我们就要把眼光投向Atlassian Marketplace,完成我们系统配置的下半场。

Atlassian In Action-Jira之核心配置(二)的更多相关文章

  1. Atlassian In Action - (Atlassian成长之路)

    Atlassian是我工作过程中,使用过的最满意的研发团队管理套装.使用的主要软件包括Jira Software,Confluence,Fisheye/Crucible.理论上还可以再加上Bitbuc ...

  2. JavaWeb框架_Struts2_(二)----->Struts2的核心配置

    2.  Struts2的核心配置 2.1  配置Struts.xml文件 2.1.1 Struts.xml文件 Struts2框架的核心配置文件是Struts.xml,该文件主要用来配置Action和 ...

  3. 二 SSH整合:Spring整合Hibernate,无障碍整合&无核心配置整合,Hibernate模版常用方法,

    重建SSH项目 java项目可以直接复制,但是web项目除了改名字还要该配置,如下: 方式一:无障碍整合:带Hibernate配置文件 <?xml version="1.0" ...

  4. JavaWeb_(Struts2框架)struts.xml核心配置、动态方法调用、结果集的处理

    此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核 ...

  5. 《高级软件测试》JIRA使用手册(二)JIRA安装

    Jira Software 下载地址 Windows系统x86平台:https://downloads.atlassian.com/software/jira/downloads/atlassian- ...

  6. SpringMVC常用配置(二),最简洁的配置实现文件上传

    Spring.SpringMVC持续介绍中,基础配置前面已经介绍了很多,如果小伙伴们还不熟悉可以参考这几篇文章: 1.Spring基础配置 2.Spring常用配置 3.Spring常用配置(二) 4 ...

  7. kafka系列七、kafka核心配置

    一.producer核心配置 1.acks :发送应答(默认值:1) 生产者在考虑完成请求之前要求leader收到的确认的数量.这控制了发送的记录的持久性.允许以下设置: acks=0:设置为0,则生 ...

  8. dubbo系列五、dubbo核心配置

    一.配置文件 1.生产者配置provider.xml <?xml version="1.0" encoding="UTF-8"?> <bean ...

  9. 006-spring cloud gateway-GatewayAutoConfiguration核心配置-GatewayProperties初始化加载、Route初始化加载

    一.GatewayProperties 1.1.在GatewayAutoConfiguration中加载 在Spring-Cloud-Gateway初始化时,同时GatewayAutoConfigur ...

随机推荐

  1. git 创建一个空分支

    创建一个分支 使用参数 --orphan,这个参数的主要作用有两个,一个是拷贝当前所在分支的所有文件,另一个是没有父结点,可以理解为没有历史记录,是一个完全独立背景干净的分支. 参考git的帮助文档, ...

  2. 2017-01-11&2017-01-12

    江门警情协作需求. 连续两天搞到超过十点半,所以今天来一并写一下这两天的记录吧. 1.11号明显的进展算是把通讯调通了,还有重新把协作请求的界面按一开始的设想嵌到主界面中. 2.今天12号貌似进展要大 ...

  3. HTML5离线缓存攻击测试

    本实验采用局域网模拟,通过修改本地HOSTS文件来模拟域名以及DNS欺骗.合法网站使用Linux CentOS7的apache服务器搭建,IP为192.168.1.113,HOSTS文件中加入192. ...

  4. 零元学Expression Blend 4 - Chapter 31 看如何简单的把SampleData 绑进ListBox里

    原文:零元学Expression Blend 4 - Chapter 31 看如何简单的把SampleData 绑进ListBox里 前面几章连续讲到ListBox的运用,本章要讲得是如何简单的把Sa ...

  5. mysql三种修改密码的方式

    [root@MySQL ~]# mysqladmin -uroot -proot -S /data/3307/mysql.sock password '123'; 其中-p是现在的密码,passwor ...

  6. Linux下的wfopen(手工打造)

    Of Linux on wfopen (open wide-character version of the file name and mode) to achieve Not directly a ...

  7. 使用AnimateWindow来实现窗口淡入淡出(主要有四种动画,滚动,滑动,折叠或展开,和淡入淡出)

    如果是在VC6下进行编译,应引入下面的预编译宏,注意放在windows.h的前面#undef  WINVER   #define  WINVER   0x500为什么要引入上面的宏呢?看看winuse ...

  8. UbuntuServer添加软件源列表

    要使用Ubuntu前,我们一般都要先做好工具!特别是对于安装这一块~~~~ 1.配置前,先做个配置文件的备份: $sudo cp /etc/apt/sources.list /etc/apt/sour ...

  9. [Err] 1146 - Table 'performance_schema.session_status' doesn't exist已解决

    刚刚接触MySQL,就往数据库添加数据,就遇到这个问题 解决方案就是找到你安装MySQL的bin目录 然后在cmd输入 mysql_upgrade -u root -p --force 回车,然后输入 ...

  10. Spring Cloud Ribbon配置详解

    概述 有时候需要自定义Ribbon的配置和客户端超时配置. 自动化配置 /* 使用属性自定义功能区客户端 从版本1.2.0开始,Spring Cloud Netflix现在支持使用属性与Ribbon文 ...