CQ---缺陷和需求同在CQ一个项目库中管理的设想

原创 2007年09月20日 09:20:00
   
缺陷和需求同在CQ一个项目库中走变更流程,最初的设想有两个。
一是将缺陷的变更流程和需求的变更流程综合考虑,综合后使用同一个流程,那么在CQ中也就只需要配置一个流程。
二是将缺陷和需求的变更流程分开,各自走各自的流程,可以配置成不同的流程,那么在CQ中就要配置两个流程。
 
初看起来,第一种方法要比第二种方法简单。如果不考虑到权限限制的话,比如缺陷确认人员也可以对需求进行确认,需求确认人员也可以对缺陷进行确认,至于他做不做这个错误的事情,由人为控制,CQ系统不做控制。如果是这样,第一种方法确实比第二种方法要简单,但如果要加上权限控制,则只有在界面上下功夫(最初这样想的,后面有第三种想法了),增多一个记录类型的字段,根据这个字段来检查这个记录是需求的还是缺陷的,如果缺陷的,所有需求的相关字段不可写,反正亦然,那么界面上所有字段都要写代码来做这个判断,相当于把CQ自带的“某个状态下哪些字段可选、必填、只读”这个权限控制重写,字段较多,非常麻烦,另外,对CQ加了这么多代码,在以后的工作中不能够保证它能够稳定运行,毕竟我不是专门编程的,经验还是不足,再就是以后加字段也还要添加代码,其他人维护起来难度相对加大。
所以我建议尽量利用CQ自带的权限管理方式,尽量少加代码,采用第二种方式。
第二种方式虽然看起来麻烦一点,但一劳永逸,以后变更提交缺陷、提交需求之后的流程和加字段都不用加代码,维护起来相对简单。并且虽然用这种方式也要加代码,但只第一次加到一个位置,其他地方都可以沿用CQ自带的权限管理方式配出来,只是第一次做的时候要麻烦点。另外,可以使缺陷变更流程和需求变更流程分离,也加大了灵活度。
 
采用第二种方式的考虑:
第一步,提交(以后可以改成其他名字)。
这里的提交要做改动,在界面上添加一个“记录类型”字段,本次操作时,只有这个字段为必填,其他所有字段只读,再以后的步骤中,这个字段一直为只读;这一步用来把将要提交的记录是缺陷还是需求分来,没有真正提交记录的内容。在下一步将根据这个字段值来判断是提交需求还是提交缺陷。
第二步,增加两个动作,暂定为“提交缺陷”和“提交需求”,对应的操作后的状态为“缺陷已提交”和“需求已提交”。
这一步是最关键的步骤,需要加代码重写这两个动作的操作权限,达到如下要求(已实现):
如果登入者属于缺陷组,那么他就只能进行“提交缺陷”的操作
如果登入者即属于缺陷组,又属于需求组,那么他要根据所选记录的“记录类型”来判断是缺陷还是需求,如果是缺陷,则只能进行“提交缺陷”操作,如果是需求,则只能进行“提交需求”操作。
 
第二步已经决定了记录的状态的类型,根据CQ自带的流程管理原则,记录在某个状态下,经过动作A、动作B、动作C三个动作到达三个不同的状态,那么用户登入系统对这个状态下的记录进行操作时,只能看到与这个状态相关的动作A、动作B、动作C,其他动作不显示。也就是说,现在需求和缺陷的流程是分开的,状态和动作也都是分开的,如果选中的是需求的记录,那么这个记录所处的是需求的某个状态,也就只能看到对需求记录该状态下的相关动作,不可能对它进行针对缺陷记录的相关操作,剩下来的权限控制就很简单了,只要按照CQ自带的权限配置方法,把这些动作的操作权配给需求组就可以了。问题,如果把这个动作也配给了缺陷组,那么缺陷组的人也就可以对这个需求记录进行需求的操作了,但是如果是不需要这样配,就不这样配嘛,自找麻烦,如果真的是需要这样配,需要缺陷组的某人同时也可以对需求的记录做某些操作,那么可以单独建一个组,专门放这些需要跨流程操作的人,类似于目前缺陷流程中的项目经理,既属于项目经理组可以分配缺陷,又属于开发组可以提交缺陷,应该可以解决这个问题。
 
写完了想起一个事情,能不能把第一种和第二种结合起来,用第一种的只走一个综合流程,用第二种的第二步,既然我一个动作可以将它的权限重写,那么每个动作我都可以根据记录的“记录类型”和组来控制,这样的话,我也只是把已经写好的代码拷贝到各个动作里面,然后改相关的东西,这样一来就比较简单了。
 
三种方法比较下来,好像第一种方法最不可取,太麻烦;第二种开始配置起来比较麻烦,但只有一处写代码,其他地方都沿用了CQ自带的权限管理,以后维护起来相对简单一点,另外就是流程之间无关联,灵活度较大;第三种这次做起来比较简单,主要要考虑的是需求和缺陷流程的融合,另外就是以后维护的人可能麻烦一点,另外就是以后改流程都要兼顾缺陷和需求的。如果两个流程差别比较大或者以后差别比较大的话,建议还是用第二种,如果现在及以后都差不多,就用第三种算了,顶多再教一下接手维护的人。
    
 
 
 

相关文章推荐

需求人员使用CQ的基本职责

一、  背景与目标 CQ(Clear Quest)是公司在项目管理中用于配置管理的软件,用以保证项目和产品的可回溯性、完整性和正确性。 将各项目的需求录入CQ是后续项目进行测试、监管项目...

手把手教你----使用Nuget管理自己的项目库

什么是NuGet 为什么用NuGet 怎么使用NuGet STEP1 在NuGet官网上注册并获取API Key STEP2 下载NuGetexe STEP3 设置API Key SETP4 ...

.NET 使用 NuGet 管理项目库

NuGet使用 NuGet 管理项目库Phil Haack 无论多么努力,Microsoft 也没办法提供开发人员所需要的每一个库。 虽然 Microsoft 在全球的员工人数接近 90,000,但全...
  • sleks
  • sleks
  • 2014年11月30日 08:32
  • 1942

项目库进销存管理系统

  • 2009年12月01日 14:46
  • 5.76MB
  • 下载

CQ缺陷转换为QC格式缺陷

  • 2013年01月14日 22:40
  • 2KB
  • 下载

使用 NuGet 管理项目库

无论多么努力,Microsoft 也没办法提供开发人员所需要的每一个库。 虽然 Microsoft 在全球的员工人数接近 90,000,但全球的开发人员数以百万计。 指望 Microsoft 满足...
  • ssharet
  • ssharet
  • 2016年05月03日 23:42
  • 176

CQ变更管理平台

  • 2015年02月12日 12:28
  • 14.12MB
  • 下载

使用 NuGet 管理项目库

使用 NuGet 管理项目库 Phil Haack  本文转载自:http://msdn.microsoft.com/zh-cn/magazine/hh547106.aspx ...
  • ren8179
  • ren8179
  • 2013年08月09日 11:39
  • 647

Cpp环境【CQ-NOIP2016四校联考模拟题(一)P3】树上的询问

【问题描述】   现有一棵 n 个节点的棵, 树上每条边的长度均为 1。 给出 m 个询问, 每次询问两个节 点 x,y, 求树上到 x,y 两个点距离相同的节点数量。【输入格式】   第一个...

Ubuntu12.0.4x86_64安装HTK3.4.1 所遇到的问题以及解决方案(hp-cq40)

1.没有上网图标:(开机需要配置网络60秒也是这么解决)    修改/etc/network/interface这个文件,修改成如下: auto lo iface lo inet loopbac...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:CQ---缺陷和需求同在CQ一个项目库中管理的设想
举报原因:
原因补充:

(最多只允许输入30个字)