zoukankan      html  css  js  c++  java
  • 大话项目管理工具之Jira篇



    前言


    上一篇文章谈的是知识管理工具 —— Confluence,它来自澳大利亚 Atlassian 公司。

    非常凑巧的是,今天要介绍的 JIRA 也是来自 Atlassian 公司的。但他不再是知识管理工具了。而是项目与事务跟踪工具。被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理等工作领域。



    背景


    在谈 JIRA 之前。就不得不说说敏捷开发了。正式因为项目是基于敏捷开发进行的,因此才引入了 JIRA 这款适合于敏捷开发的项目管理工具。

    当然。这里不会大篇章的介绍敏捷开发,之前的文章有具体讲过《敏捷开发系列终极之旅》。这里简单的再回顾一下敏捷开发的流程。



    流程


    说到敏捷开发。也是近几年非常流行的软件开发模式。而在敏捷开发中,又分了非常多种。在我们的开发过程中,选择的是 Scrum 。Scrum是一种灵活的软件管理过程。它能够帮助驾驭迭代、递增的软件开发过程。主要用于产品开发或工作管理。


    Scrum敏捷开发。是对流程控制比較严格的。每一个环节都有一套完整的过程和严格的时间控制,我们项目组的主要开发步骤例如以下图所看到的:



    介绍


    了解了敏捷开发 Scrum 的流程之后。我们再来谈谈 JIRA 。正如前边所说。JIRA 是一款优秀的问题跟踪及管理工具。JIRA 採用 J2EE 技术,可以跨平台部署。当然,对我们来说。他还有最重要的一个功能,就是协助管理敏捷开发,在经过 Sprint 计划会议之后,产品经理把讨论好的 Sprint 任务列表加入到 JIRA 的 Story 中。

    并且都包括着开发的详细业务,开发用时。技术难度等。

    组员们可以去 JIRA 上任意选择自己喜欢的任务领取。于是,就開始了一次开发迭代。



    功能


    考虑到 JIRA 的安装和配置都比較简单,并且网上也有非常多这方面的教程,这里就不再赘述了。这里推荐一篇文章,就是讲 JIRA 的安装和配置《 jira5.0+greenhopper6.1.6的安装》。当然我这里也有一份比較具体的教程,是项目开发时用于培训的,因为篇幅比較多,就不再博客上贴了,有须要的联系我即可。这里。我打算选几个重要的功能跟大家说一下。


    • 项目
    安装好 JIRA 之后。须要首先创建一个项目。这里我们以权限系统为例。

    简单的介绍一下新项目的加入以及设置。







    • 问题类型
    项目加入好之后,JIRA 默认的是 Bug 类型。而我们要进行的是管理敏捷开发流程。因此须要相应于敏捷开发中的 Task,这就须要手动的改动一下默认的 Issue 及 Issue 的顺序。







    • 工作流
    JIRA 是基于工作流进行的,并且他也提供了非常强大的工作流管理。JIRA 提供的默认工作流为五个状态:Open。Close,Resolve。In Progress,ReOpen。

    而我们真正使用的时候。这几个状态往往满足不了需求,比如,一个正在进行的任务,突然发现不符合条件进行,须要挂起,那么应该放到哪个里面呢?




    GreenHopper看板上面会把Story。Task。Sub-Task等都列上来,而对于Story和Task在我们的思路里,是不希望它们是一样的处理流程,比如,对于Story我们仅仅希望它从Open到Resolve或Close就可以,不须要进入In Progress。基于这些问题。我们须要自己创建一个适合我们项目开发的工作流。

    而 JIRA 正是提供了自己定义的工作流。让你自己去设置工作流。以满足工作的须要。

    以下来看一下详细的配置。


    首先,把默认工作流中用不到的状态去掉,然后保存。








    到此处为止,我们就把不须要的状态已经删除了。当然,为了完毕我们自己的工作流。还须要加入一个状态。









    到这里,自己定义工作流就完毕了。接下来还须要在配置一下工作流方案,这里就不再一 一介绍了。有须要的找我就好。


    感受


    因为之前的项目中,也用过一款国内的项目管理工具 —— 禅道,只是对于敏捷开发来说,基于 Scrum 的理念、开发流程等,总认为禅道有些不合适(个人感觉),不可否认,禅道已经做的非常好了。仅仅是感觉不适合我们这个敏捷开发的项目罢了。各位勿喷。

    而熟悉了 JIRA 之后。发现 JIRA 更适合敏捷开发。


    在 JIRA 的设计理念中。就存在对 Scrum 的一系列支持。当你開始一次迭代时,JIRA 会帮你记录不论什么一个时间点。由 待办 → 处理中 → 挂起 → 完毕 。

    这几个状态能够相互转换。依据详细的条件、详细的任务、详细的环境相互转换。

    没完毕一个状态时,都会有详细的记录。并且。JIRA 还会记录每一个人的工作量。统计每一个组员完毕的任务量。这在绩效考核中也是非常重要的一部分。



    结束语


    通过 JIRA。使得我们可以高速的实施敏捷开发,自己主动化的管理敏捷开发中的各个环节。使我们可以把精力集中到业务的实现、技术点的攻克上。

    并且,有了 JIRA,在敏捷开发中,组员之间的相互协作也更加高效,不会再出现“有人忙得要死,有人闲的要死”的局面了。任务进行的条件无法满足时,可以先把任务挂起,又一次开一个新的任务,当前一个任务满足条件时。再又一次激活。


    在我看来,敏捷开发就是把任务简化,把任务细化。然后把开发时间精细到每一个任务。在最短的时间内集中精力完毕任务。这也是为什么敏捷开发不提倡加班的原因。重要的不是敏捷开发的过程。而是敏捷开发的思想。

    JIRA。不不过一款项目管理工具,同一时候也代表了一种敏捷开发的思想。



  • 相关阅读:
    关于 锁的四种状态与锁升级过程 图文详解
    悲观锁与乐观锁的实现(详情图解)
    面试三轮我倒在了一道sql题上——sql性能优化
    我的程序跑了60多小时,就是为了让你看一眼JDK的BUG导致的内存泄漏。
    快来!我从源码中学习到了一招Dubbo的骚操作!
    我从LongAdder中窥探到了高并发的秘籍,上面只写了两个字...
    震惊!ConcurrentHashMap里面也有死循环,作者留下的“彩蛋”了解一下?
    mybatis 逆向工程使用姿势不对,把表清空了,心里慌的一比,于是写了个插件。
    吐血输出:2万字长文带你细细盘点五种负载均衡策略。
    mybatis开发,你用 xml 还是注解?我 pick ...
  • 原文地址:https://www.cnblogs.com/yfceshi/p/7275520.html
Copyright © 2011-2022 走看看