项目管理平台-01-BugClose 入门介绍

用例君
• 阅读 102

拓展阅读

Devops-01-devops 是什么?

Devops-02-Jpom 简而轻的低侵入式在线构建、自动部署、日常运维、项目监控软件

代码质量管理 SonarQube-01-入门介绍

项目管理平台-01-jira 入门介绍 缺陷跟踪管理系统,为针对缺陷管理、任务追踪和项目管理的商业性应用软件

项目管理平台-01-Phabricator 入门介绍 一套集成的强大工具,帮助公司构建更高质量的软件

持续集成平台 01 jenkins 入门介绍

BugClose

bug close

jira

可在中国开源网站上借鉴类似的软件。

可针对此流程,自己设计一个练手。

简单设想

简单易用,支持扩展。

1.支持i18n
2.支持自定义
3.支持插件扩展

基础功能

用户模块

权限

1.每个任务只应该属于一个人。但是可以被多个人关注。

项目模块

包含不同的项目(Project)。

后期考虑将每次提交与项目关联,便于查看。

工作流模块

每个任务支持评论。附件。任务之间支持关联。(tree)

  • 任务类别
Require, Task, Bug, Improve, Optimize, Release
  1. 每次开发都应该源于Require(需求)——源于客户或者自身提出的一次开发需求。
  2. 每个TASK(任务)都应该隶属于某个Require——根据具体需求拆分出的任务。
  3. 每个BUG(缺陷)都应该隶属于某个TASK——开发过程中,TASK完成无法完成预期的需求。
  4. 每个Improve(改进)都应该隶属于某个TASK——TASK完成后可以继续完善。出于对用户的使用,观赏等需求。受益方是使用者。
  5. 每个Optimize(优化)应该隶属于某个TASK或者Project——代码优化,结构优化,性能调优等。受益方是开发者。
  6. 每次项目发布之前都应该有Release(发布计划)。包含本期需求设计的所有TASK, 代码修改,脚本修改等。可是使用TAG(标签),获取所有本期信息。

以上工作流后期支持自定义扩展。

  • 优先级

一般优先级只是一种约定,用户自己使用时可自己定义。但是有些约定:

Critical, Primary, Normal, Secondary
  1. Critical(紧急)一般为临时性遇到的问题,需要最优先处理。
  2. Primary(主要)一个开发过程中比较核心的位置,需要优先处理。
  3. Normal(正常)正常开发,按照正常进度开发即可。
  4. Secondary(次要)延迟开发。如果有其他任务,可考虑优先完成其他任务,当前TASK有时间再做处理。

工作流中的每一样东西都应该有优先级。可设置自定义的优先级。

  • Status
Open, Handling, Resolved, Testing, Closed, Delay
  1. Open(打开) 当任务被创建OR重新打开,任务应该处理Open状态。
  2. Handling(处理中) 当任务被着手开发或者评审拆分等,处于Handling状态。
  3. Resolved(解决) 当任务开发或者分析完毕,处于Resolved状态。
  4. Testing(测试中) 当任务Resolved后进行测试验证,处于Testing状态。测试无问题,进入
  5. Closed(关闭) 当任务Testing完毕后且没有问题,则进入Closed状态。或者其他原因,无需开发等,也可以直接关闭。
  6. Delay(延期) 当任务由于排期或者其他原因造成不能按照进度进行时,可切到Delay.

注意:

  1. 需要考虑添加状态保护,状态切换需要条件。具体可在讨论。
  • TAG
支持默认标签,以及自定义扩展。

独立模块。可以用于标识几乎所有的东西。
如对Project, User, Wiki, Task...都可以打标签。 有利于快速查询及分类统计。

统计模块

1.对当前的任务进度等进行统计。每个人的完成量各方面。支持自定义。

可关|注公|众|号【老马啸西风】,更多技术文章。
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
6个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Wesley13 Wesley13
3年前
VBox 启动虚拟机失败
在Vbox(5.0.8版本)启动Ubuntu的虚拟机时,遇到错误信息:NtCreateFile(\\Device\\VBoxDrvStub)failed:0xc000000034STATUS\_OBJECT\_NAME\_NOT\_FOUND(0retries) (rc101)Makesurethekern
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Stella981 Stella981
3年前
SpringBoot整合Redis乱码原因及解决方案
问题描述:springboot使用springdataredis存储数据时乱码rediskey/value出现\\xAC\\xED\\x00\\x05t\\x00\\x05问题分析:查看RedisTemplate类!(https://oscimg.oschina.net/oscnet/0a85565fa
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
mysql用户
1\.学会能按着需求创建一个帐号2\.知道连接字符串是什么样3\.密码密码怎么恢复mysql用户权限介绍mysql用户管理 !(https://oscimg.oschina.net/oscnet/368d3c1e00a0a9515545c2962660a27a080.png)!(https://oscimg.oschin
Wesley13 Wesley13
3年前
PHP创建多级树型结构
<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n
Easter79 Easter79
3年前
SpringBoot整合Redis乱码原因及解决方案
问题描述:springboot使用springdataredis存储数据时乱码rediskey/value出现\\xAC\\xED\\x00\\x05t\\x00\\x05问题分析:查看RedisTemplate类!(https://oscimg.oschina.net/oscnet/0a85565fa
Wesley13 Wesley13
3年前
Java日期时间API系列36
  十二时辰,古代劳动人民把一昼夜划分成十二个时段,每一个时段叫一个时辰。二十四小时和十二时辰对照表:时辰时间24时制子时深夜11:00凌晨01:0023:0001:00丑时上午01:00上午03:0001:0003:00寅时上午03:00上午0