如何理解 Jira 的 Story
虽然Jira 的页面载入的又慢,UX 又差劲,导致快要被新崛起的Linear 干掉,但在资讯产业Jira 大概还是Trello 以外最多人用的专案管理系统了吧? !
在Jira 的专案如果是开设成Software 的话,应该会有以下几种issue type:
- Epic
- Story
- Task
- Subtask
- Bug
当然它们字面上的意思谁都知道,但是其中在Jira 内的角色与意义为何,其实一直没有认真的了解过,这里试着以我在网路上吸收到以及融合本人观点的对于这些Jira issue type 的理解,另外需要特别提前声明本人不完全懂也不是「敏捷」、「agile」、「scrum」流派的信仰者XD,因此下文若有对「敏捷」理解不正确的地方敬请见谅。
阶层关系
在Jira issue type 的阶层关系上,越高的层次抽象性越大,也越用于描述一种较广泛的、不精确的、整体的概念;而越低的层次更贴近单一的功能,或者需求,或者做法。
Jira 的阶层,由高至低排序:
- 顶天层:Project
- 第零层:Component
- 第一层:Epic
- 第二层:Story / Task / Bug
- 第三层:Subtask
这边也把project 与component 加进来,虽然它们并非issue type 的层级,不过在专案层级上的确也具有角色,所以就一并列入了。
根据Jira 的文件,story 用于表达较小部份的产品需求;epic 用于表达较大部份的用户案例,一个epic 可以被切割成数个story;而subtask 则是story 的再下一层,用于当需要把story 切割成更小的工作细项时使用。
Story
在story 这种对于需求的描述出现以前,从需求转化为规格的这段过程,只出现于人脑(直接脑补转换没有付诸文字),或是做为规格的补述,可是这样直观的转换中会落失需求的原始动机与需求对客户的价值高低,这些资讯的遗漏会导致开发人员落入「 知其然而不知其所以然」的状况,用经典的秋千图可以很直观的表达这样的状况。
在story 这种issue type 被设计出来以后,终于有地方可以让需求的原始动机与价值有记载的地方,并且也把需求至规格这段原先脑补的过程以文字记录下来,目的当然是希望团队的所有成员在做产品的时候可以理解需求的原始动机与价值,以避免错误理解或过度设计的问题发生。如果拿5W1H对一个issue 做解构的话,story 会负责用于描述为何(why)会有这个issue,以及是谁(who)发出这个issue、issue 的需求是什么(what)、在何时(when)何地(where)发生,而开发人员如何(how)在技术层面处理这个issue,则不是建立story 时所必须填入的内容(至少在story 标题的地方不是)。
开发人员如果有需要可以另开task 或bug 类型的issue 来记载对开发人员来说实际需要进行的工项,并连结相关的story 与task / bug 工项。
另外一方面,如果要把相关的story 整理起来,则利用epic 让story 能被有组织的被归纳起来,也能为专案的诸多需求有分门别类的地方。
Story 的粒度
Story 用于描述使用者需求,然而「使用者需求」这件事本身就难以估量,特别是在面对不同的层级的客户,他们的需求可能会长的相当不一样,对客户的大老板来说,他要一套「帮助公司营运的ERP 」,然而对客户的基层员工来说,他要的是「帮我在结帐页面加个会员资讯区块好让我对会员进行个人化服务」,在实际建立story 时,面对过于广泛而粗略的需求(上帝的旨意往往就是这么虚无飘渺),还是必须依赖人力去把这类需求拆解成数条更具体且具有可执行性的项目后再建成story,这项工作可能落在专案经理或专案分析师上面,对老板兼撞钟的小公司来说,就是落在老板兼专案经理兼开发兼测试的人上面。
另外一种情况也不适合用story 描述,即过于细节的工项,举例来说,在一个POS 系统,显然结帐页面载入的微互动不会是客户在意的点,这种过于细节的部份就会以subtask 的方式描述,想反的来说,对游戏来说,UX 的流畅感相当重要,同样一件事在游戏专案上就会提升至story 层级。
第三种不适合用story 描述的工项,即过于工程面或规格面的部份,举凡API 交换的规格、栏位的命名规范、错误处理的机制、log 档的纪录等等,皆不属于story 的范畴,应该用task 来建立这些工项,有必要的话再用Jira 的issue link 的功能让story 与task 相关连起来。
Story 的标题格式
网路上最常看到的格式:
「As a XXX , I want YYY feature so that ZZZ .」
翻成华文是这样:
「身为一位谁谁谁,我需要某某某功能才能这般这般。」
这句充满赘字的句子应该简化成这样:
「某某某要如此如此才能这般这般。」
绝对不要把赘字也写进来,不论是洋文还是华文。
参考资料
喜欢我的作品吗?别忘了给予支持与赞赏,让我知道在创作的路上有你陪伴,一起延续这份热忱!