【DOORS】如何基于DOORS实施需求管理
引言
IBM Rational DOORS,简称DOORS,是被业界广泛认可的需求管理工具,在国内外需求管理领域具有较高的市场占有率。需求管理作为传统的工程领域,理论发展相对成熟和健全。随着越来越多的企业开始注重在需求管理工程层面的投入,企业的需求管理成熟度也在逐步提高。在需求管理实施过程中,不可避免的会依托相关的需求管理工具支撑。而实施过程中所存在的关键困难之一就是:工具与业务如何紧密结合。很多企业虽然购买了相应的产品,但是工具层面的操作培训不足以使得企业的项目在需求管理工具中落地。鉴于此种情况,本文将基于具有较大受众的DOORS工具,对实施需求管理的工作流进行论述。
需求管理的关键要素
要实施需求管理,总要明确需求管理要实施那些内容。本质上,实施那些内容没有统一的规定或约束。但我们可以从一般的需求管理理论层面入手,明确需求管理的理论范畴。
需求管理属于需求工程范畴,需求管理强调四个方面:需求状态管理、需求追踪、需求版本管理和需求变更管理。
状态管理:需求除了自身的主题内容描述之外,还具有相应的状态属性。这些属性标识了需求在整个系统研发的生命周期中的状态。基于不同的业务需求,需求需要不同的状态进行描述。从工程师角色维度分析,作为测试工程师,我们可能关注需求的验证状态(验证结果:测试通过、测试未通过或未测试等等)。而作为软件开发人员,我们可能关注哪些需求是由我负责,当前需求的实现状态是什么。作为项目经理,我们可能关注需求的满足状态是什么,又或者是需求的成本等等。同样的,我们还可能关注需求是不是被评审通过了、需求的变更状态等等。
需求追踪:需求追踪是需求管理中非常关键且极为重要的方面之一。需求追踪提现在两个层面:需求层级内部的追踪以及跨领域的追踪。需求层级内部的追踪是指在分层的需求间建立的关联关系,例如从用户需求到系统需求间的追踪,从系统需求到子系统需求间的追踪,以及子系统需求到组件需求间的追踪等等。跨领域的需求追踪,是指关联不仅仅发生在需求之间,需求还应该和测试、设计、实现相关的工件建立关联,以实现在系统研发整个生命周期的可追踪性。
版本管理:对需求的版本进行管理,记录需求数据的历史记录,方便历史数据的追溯。
需求变更管理:变更管理也是需求管理至关重要的一环,也是需求管理中最为常见的活动。变更管理要记录变更的原因、时间、变更内容、变更历史等内容。
当然,以上四个是需求管理的基本要素,至少在需求管理的实现效果中会体现。初次之外,需求管理还有一个横贯所有要素的方面 - 流程管理。对,就是流程,管理离不开流程,高效的流程是实施需求管理的关键。需求管理中经常出现的流程包括但不限于以下几个层面:
需求评审流程
基线发布流程
需求变更流程
需求入库流程
需求实施的典型过程
- 启动项目:召集项目相关人员召开项目启动会,明确实施目的、范围、愿景以及协调组织机制,宣布项目启动。该阶段必须要有高层参与,得到高层的潜力支持,这是保证实施项目成功的关键要素之一。
- 确定试点项目:在企业内部选定一个典型项目作为需求管理实施的试点项目,以此确定当前实施的范围。
- 确定项目核心成员:需求管理项目以试点项目为起点,须要试点项目核心成员的参与。明确参与人员列表、角色、职责等。
- 需求管理现状调研:实施团队人员要对客户当前的需求管理现状有明确的认识,通过现状调研,了解企业目前存在的问题及痛点。 -- 生成需求管理现状调研报告。
- 业务流程调研:调研企业内部当前的需求管理相关的业务流程,例如当前的需求管理规范、项目实施的阶段划分、需求变更流程、需求基线发布流程、需求评审流程等等相关流程。-- 生成业务流程调研报告
- 实施方案制定:基于已调研的信息,并结合行业经验,形成需求管理实施方案。
- 实施方案落地:实施方案必然涉及到相关信息化工具的支撑,该阶段基于已评审的实施方案进行实施。
- 试点项目试运行:将定制的方案在试点项目中试运行,解决试运行过程中出现的问题,发现并记录方案潜在的优化点。
- 方案优化:基于试运行的反馈信息,对已有方案进行优化。
- 方案退关:在企业内部更大的范围内推广需求管理实施方案。
基于DOORS的特定实践
结合DOORS的实践主要体现在实施方案的制定阶段,在该阶段的方案细节要充分考虑DOORS工具的功能特点。典型的,包括以下几个层面
- 定义需求信息架构模型:所谓信息架构模型是指需求在DOORS中的组织结构,项目、文件夹、模块、链接模块如何组织,这当然隐式的包括了纳入需求管理的文档范围。
- 定义需求跟踪矩阵: 定义模块间需求的条目的追中关系,例如是从系统需求指向用户需求,还是从用户需求向下指向系统需求。将模块间的链接关系定义好。
- 定义需求属性:基于业务需要,对需求所需要具备的属性进行定制。不同的模块可能定义的属性不太一样。而该定义那些,不同企业和业务流程可能不同。
- 定义模块视图:视图的定制有利于不同角色或用户便捷的定位所需要的数据。同样,基于DOORS的视图机制,根据实际的业务需要定义不同的视图。
- 定义用户权限分配:为用户或角色进行权限分配。
典型的最佳实践
- 以分层的方式存储需求:用户需求、系统需求、子系统需求、组件需求等
- 链接模块单独存在一个文件夹中
- 需求存储条目化,表达多条需求的文字描述要进行拆分
- 需求链接的方向保持一致
- 通用视图:需求评审视图、变更影响分析视图、标准视图、测试视图、实现视图等等
- 通用属性:优先级、来源、分配人员、评审状态、满足状态、验证状态、可验证性、成本、风险、需求类型、是否需求等等
- DOORS模块中只有叶子结点存放需求,非叶子结点不是需求。
总结
不同企业内的需求管理实践各有不同,但共性的都包括需求的状态管理、跟踪、版本、变更以及与之相配套的流程。即使没有需求管理工具的支撑,企业还是可以按照需求管理的理念进行实践。只不过基于需求管理工具能够降低需求管理的复杂性,一定程度上降低成本,提高需求管理的效率。
【DOORS】如何基于DOORS实施需求管理的更多相关文章
- DOORS 和Reqtify — 需求管理和需求追溯工具
IBM Rational DOORS 可实现对整个产品的全生命周期需求管理,覆盖从需求.到设计以及测试阶段.是一款具有广泛使用的企业级专业需求管理工具.DOORS 可以将项目开发过程中产生的各级需求和 ...
- 需求管理(REQM,Requirements Management)工具(转)
需求管理(REQM,Requirements Management)属于成熟度2级(受管理级)的过程域,是其他许多过程域实施的前提.对于暂未实施CMMI的企业,同样也可以借鉴CMMI的原则,实施和优化 ...
- 博云DevOps 3.0重大升级 | 可用性大幅提升、自研需求管理&自定义工作流上线,满足客户多样化需求
DevOps能够为企业带来更高的部署频率.更短的交付周期与更快的客户响应速度.标准化.规范化的管理流程,可视化和数字化的研发进度管理和可追溯的版本也为企业带来的了更多的价值.引入DevOps成为企业实 ...
- 10月12号 晚八点 Speed-BI 云平台-基于Excel数据源的管理驾驶舱构建全过程,腾讯课堂开课啦
认真地做了一大摞一大摞的报表,老板没时间看?努力把能反馈的内容都融汇进图表里,老板嫌复杂?做了几个简单的报表,老板一眼就觉得信息不全面?每个报表都用了各种各样的图表,老板却毫无兴趣?明明很努力了,为什 ...
- 【形式化方法:VDM++系列】3.基于VDM++的图书管理系统需求定义
接前文:http://www.cnblogs.com/Kassadin/p/4091040.html 1.Before We Start: 在开始图书管理系统需求定义之前,需要先进行一些说明. 1.1 ...
- 企业架构研究总结(28)——TOGAF架构开发方法(ADM)之需求管理阶段
1.11 需求管理(Requirements Management) 企业架构开发方法各阶段——需求管理 1.11.1 目标 本阶段的目标是定义一个过程,使企业架构的需求可以被识别.存储并与其他架构开 ...
- TOGAF架构开发方法(ADM)之需求管理阶段
TOGAF架构开发方法(ADM)之需求管理阶段 1.11 需求管理(Requirements Management) 企业架构开发方法各阶段——需求管理 1.11.1 目标 本阶段的目标是定义一个过程 ...
- Testlink1.9.17使用方法( 第四章 测试需求管理 )
第四章 测试需求管理 QQ交流群:585499566 需求规格说明书是我们开展测试的依据.首先,我们可以对项目(产品)的需求规格说明书进行分解和整理,将其拆分为多个需求,一个项目可以包含多个需求,一个 ...
- 基于UML的文献管理系统建模研究
一.基本信息 标题:基于UML的文献管理系统建模研究 时间:2016 出版源:信息与电脑(理论版) 领域分类:UML:文献管理系统:系统建模: 二.研究背景 问题定义:图书的管理与规划 难点:系统和管 ...
随机推荐
- Angular - - ngCloak、ngController、ngInit、ngModel
ngCloak ngCloak指令是为了防止Angular应用在启动加载的时候html模板将会被短暂性的展示.这个指令可以用来避免由HTML模板显示造成不良的闪烁效果. 格式: ng-cloak ...
- C实现类、继承、多态
首先考虑用C实现类 肯定是要使用struct的,类的数据成员放在struct里面: 而类有构造函数.析构函数,这两个函数必须在struct外面,构造函数要分配struct空间并初始化struct成员, ...
- loadrunner:关联操作
文章以实例讲解loadrunner中的关联操作,内容包括:自动关联.手动关联和关联规则的设置. 1.1.1 准备工作 在web tours项目默认设置里,登录操作是没有生成sessionID的 ...
- Rabbitmq无法监听后续消息
现象: 消息队列在处理完一条消息后,无法继续监听后续消息. 首先,系统启动时要启动接收方法如下: protected void Application_Start() { RouteTable.Rou ...
- POI-处理大Excel文件(xls)
最近需要处理一个比较大的excel文件,但是poi在处理文件时会抛出OOM导致程序崩溃,查看官方文档看到可以以流式的方式读取excel避免读取大文件时的OOM.本文主要记述xls的处理. 环境模拟 先 ...
- CentOS7 ssh无密码登录
准备工作:给各个主机取个名字,如master(主节点),slave01(从节点01),slave02(从节点02) 1.修改主机名: hostname master hostname slave01 ...
- CSS3知识点整理(一)----基本样式
(一) 在编写CSS3样式时,不同的浏览器可能需要不同的前缀.它表示该CSS属性或规则尚未成为W3C标准的一部分,是浏览器的私有属性,虽然目前较新版本的浏览器都是不需要前缀的,但为了更好的向前兼容前缀 ...
- JavaScript易混淆知识点小回顾--数组方法与字符串方法;
数组属性: arr.length;查看数组的长度 arr.Pop;删除数组最后一个元素; 数组的方法: arr.push();添加到数组末端; arr.shift();删除数组的第一个元素; arr. ...
- OSS.Social微信项目标准库介绍
经过本周的努力,昨晚终于完成OSS.Social微信项目的标准库支持,当前项目你已经可以同时在.net framework和.net core 中进行调用,调用方法也发生了部分变化,这里我简单分享下, ...
- http状态码及解释
简单版: 100 Continue 继续,一般在发送post请求时,已发送了http header之后服务端将返回此信息,表示确认,之后发送具体参数信息 200 OK 正常返回 ...