需求管理(REQM,Requirements Management)属于成熟度2级(受管理级)的过程域,是其他许多过程域实施的前提。对于暂未实施CMMI的企业,同样也可以借鉴CMMI的原则,实施和优化需求管理。

许多IT企业都有过需求失控的痛苦经历,我们不难体会,有好的需求管理会给我们带来什么

☹  需求以失控的状态进入软件过程,从源头上失去了项目的质量保证;

☹  需求范围界定不清,使项目缺乏计划性,导致成本、研制周期失控;

☹  需求变更失控,使组织处于被动反应式的环境中,项目组成为救火队;

☹  需求管理不当,导致项目延期、士气低落,增加了项目的失败风险;

☹  ……

为了避免上述情况的出现,CMMI对需求管理提出了明确的目的:一是管理项目的产品和产品构件的需求;二是标识哪些需求与项目计划及工作产品之间不一致。通过适当的步骤,确保需求在项目的各个层面上动态地保持一致,一旦出现不一致,则启动相关的处理过程域,使其调整到一致。

需求管理的工具包括:

①需求及相关文档管理的工具;

②流程审批的流转电子化;

③溯源性矩阵的维护工具。

其中最大的难点是需求溯源性矩阵的维护工具,对此我们作重点分析。

需求溯源包括的三个方面,可看作是三个子矩阵,每个子矩阵对某个方面都具有双向溯源性。

☺  需求向低层分解的双向溯源矩阵

☺  需求沿生命周期纵向产品溯源矩阵

☺  需求的水平溯源矩阵(跨系统功能间)

综上所述,需求管理要求建立和维护需求双向溯源表,而双向溯源表的关联关系非常复杂,因此:

①必须借助工具进行管理。对小的项目,可以用Excel等简单工具进行管理,但对大型项目或组织级的需求管理,则应购买或自行开发专门的需求管理工具。

②必须建立一套编码体系,以便进行标识和检索。

③需求管理工具可以与配置管理工具同时考虑,即综合设计成一个管理系统。

经过一段时间的分析和调研,做了几款国内外需求管理工具软件的比较和评测,介绍如下:

一、国外需求管理工具

 

1、Rational RequisitePro(推荐指数★★★

IBM Rational RequisitePro解决方案是一种需求和用例管理工具,能够帮助项目团队改进项目目标的沟通,增强协作开发,降低项目风险,以及在部署前提高应用程序的质量。通过与 Microsoft? Word 的高级集成方式,为需求的定义和组织提供熟悉的环境。提供数据库与Word 文档的实时同步能力,为需求的组织、集成和分析提供方便。支持需求详细属性的定制和过滤,以最大化各个需求的信息价值。提供了详细的可跟踪性视图,通过这些视图可以显示需求间的父子关系,以及需求之间的相互影响关系。通过导出的XML格式的项目基线,可以比较项目间的差异。可以与 IBM Software Development Platform 中的许多工具进行集成,以改善需求的可访问性和沟通。

网址:http://www-306.ibm.com/software/rational/

2、Telelogic DOORS(推荐指数★★

Telelogic DOORSreg;Enterprise Requirements Suite (DOORS/ERS) 是基于整个公司的需求管理系统,用来捕捉、链接、跟踪、分析及管理信息,以确保项目与特定的需求及标准保持一致。 DOORS/ERS 使用清晰的沟通来降低失败的风险,这使通过通用的需求库来实现更高生产率的建设性的协作成为可能,并且为根据特定的需求定义的可交付物提供可视化的验证方法,从而达到质量标准。Telelogic DOORS企业需求管理套件(DOORS/ERS)是仅有的面向管理者、开发者与最终用户及整个生命周期的综合需求管理套件。不同于那些只能通过一种方式工作的解决方案,DOORS/ERS赋予你多种工具与方法对需求进行管理,可以灵活地融合到公司的管理过程中。以世界著名的需求管理工具DOORS 为基础,DOORS/ERS使得整个企业能够有效地沟通从而减少失败的风险。DOORS/ERS 通过统一的需求知识库,提供对结果是否满足需求的可视化验证,从而达到质量目标,并能够进行结构化的协同作业使生产率得到提高

网址:http://www.telelogic.com

3、Borland CaliberRM 推荐指数(★★★

Borland CaliberRM是一个基于Web 和用于协作的需求定义和管理工具,可以帮助分布式的开发团队平滑协作,从而加速交付应用系统。CaliberRM 辅助团队成员沟通,减少错误和提升项目质量。CaliberRM 有助于更好地理解和控制项目,是Borland 生命周期管理技术暨Borland Suite 中用于定义和设计工作的关键内容,能够帮助团队领先于竞争对手。CaliberRM 提供集中的存储库,能够帮助团队在早期及时澄清项目的需求,当全体成员都能够保持同步,工作的内容很容易具有明确的重点。此外,CaliberRM 和领先的对象建模工具、软件配置管理工具、项目规划工具、分析设计工具以及测试管理工具良好地集成。这种有效的集成有助于更好地理解需求变更对项目规模、预算和进度的影响。

网址:http://www.borland.com

二、国内需求管理工具

统御需求管理软件oBridge(推荐指数★★★★★)
统御需求管理软件oBridge是一套强大的需求管理软件,它可以记录需求和它的演变过程,跟踪需求与设计、测试之间的关系,帮助用户分析需求变化造成的每一个影响,评估需求变更造成的工作量,让需求管理不再成为项目的短板。oBridge需求管理软件能帮助用户实现项目需求条目化、版本化、层次化管理,建立需求跟踪矩阵,实现需求变更影响分析,并能在不同单位间实现离线数据交换。
oBridge具备以下主要特点:

●需求流程、需求报表、需求属性全部支持自定义

●支持大数量级的需求跟踪矩阵

●支持需求条目多层次关联管理

●支持不限级数的事前变更影响覆盖分析

●需求变更后自动进行影响标记

●需求生成任务

●跨网路需求数据离线交换

●支持设置角色,严格的数据权限控制

●支持版本化管理

●支持需求输出到WORD和EXCEL,可自定义输出样式

网址:www.kingrein.com

四者的比较

条目

DOORS(★★★★)

RequisitePro(★★★)

oBridge(★★★★★)

CaliberRM(★★★)

项目开发可扩展性

是企业级的产品:即,一个DOORS Database能够同时支持许多个不同的项目开发,从而使得新的项目能够复用和共享过去的文件和信息。不同项目(文件)之间的追踪关系可以跨项目建立。

将需求的数据存放在数据库中,而把与需求相关的上下文信息存放在Word文档中,用户使用ReqPro时必须安装Word

支持许多个不同的项目开发,从而使得新的项目能够复用和共享过去的文件和信息。不同项目(文件)之间的追踪关系可以跨项目建立。支持需求合并和分拆,自带编辑工具,不需安装Word。另外在流程、报表上完全支持自定义,需求属性可自由扩展,这个必须点赞。

只支持单个项目的开发,即,一个Database只能支持一个项目的开发,因此无法支持对过去文件和信息的复用和共享。

对需求变更的管理

本身支持变更管理系统,即变更的提交,评审,应用,并因此可以给指定的用户分配不同的角色

本身没有变更管理系统,只能依赖于与Rational的配置/变更管理工具集成Clear Quest

每条需求唯一标识,全程跟踪变化历程,可以跟踪需求变化请求单。需求条目状态可扩充,所有需求变更会纳入变更管理模块进行管控。

本身没有变更管理系统,只能依赖于与配置管理工具的集成,但集成的功能比较弱,无法支持追踪关系

对需求基线的管理

本身具备对需求的基线管理功能,可比较不同基线的需求差异,实现需求基线管理;

只能依赖于与Rational的配置/变更管理工具集成,但只能存储版本,无法比较需求差异

自身具备对需求的基线管理功能,可比较不同基线的需求差异,实现需求基线管理,并可根据差异分析变更影响;

 

多个需求项及追踪关系的显示

能够在屏幕上给用户一次显示一个文件中的多个或所有需求项和相互之间的追踪关系(即支持横向和纵向的需求追踪),从而支持用户同时观看所有相互依赖的需求项。

一次只能显示一个需求项供用户观看,限制了用户同时直接阅读其它需求项,因此也不能在屏幕上一次显示相互连接的多个需求项和文件。

能够在屏幕上给用户一次显示一个文件中的多个或所有需求项和相互之间的追踪关系(即支持横向和纵向的需求追踪),从而支持用户同时观看所有相互依赖的需求项。可以在编辑的同时建立需求跟踪,也可通过专门的跟踪矩阵建立工具快速建立关系

一次只能显示一个需求项供用户观看,因此大大限制了用户同时参考其它需求项的直观阅读。

权限控制

具有灵活的权限控制,包括:只读,修改,创建,删除,管理等五种级别。权限控制可以针对每一个用户在每一个database,项目目录,文件,需求项,属性上实施等

无法对不同的用户,对数据库结构自上到下的每一个层次做到灵活有效的权限控制。

支持按项目控制,支持单个需求文档的读写控制。

 

可疑link (需求变更)的通知

当link的一方产生变更时,Doors可以自动产生提示符通知另一方,而不需要在link的矩阵上查找;

没有自动提示,必须通过追踪关系矩阵来查找,当追踪矩阵比较大时,非常费时费力;

可以分析输出变更影响条目,另外oBridge自带即时通讯工具叮咚,所有需求的变更可以通过叮咚或内外部邮件自动通知到相关干系人。

没有自动提示,必须通过矩阵来查找,当矩阵比较大时,非常费时费力。

数据备份和恢复

DOORS 在恢复备份的数据时能够保证数据库中已有的文件不会被覆盖。当数据库中已有同名的文件时,数据库系统会自动的给被恢复的文件另外的名字;
由于Doors把所有数据均存放在数据库中,因此数据的备份和恢复过程又安全既简单

 

支持需求导出成文件备份,随时可进行数据的离线交换,且不会覆盖原有文件,或通过全系统备份恢复进行。

 

与其他工具的集

作为独立的软件供应商,Telelogic DOORS不但可与Telelogic 自身的其他软件工具集成,还可与Microsoft, IBM Rational, Mercury等厂商的工具集成

只能与自身的软件工具集成

需求管理完全基于Web完成,但也可以根据用户选择输出成Word文档。可以与自身任务管理和配置管理集成,也可根据用户需求集成第三方工具软件。

 

异地需求管理

Doors提供灵活的方式实现需求异地管理的方式;Doors强大的性能优势也保障了大型项目异地需求开发/管理的可能

无异地使用模式

oBridge因为采用Web模式,所以在异地需求管理方面有着得天独厚的优势,另外它提供了导入、导出、分拆、合并的功能,支持大型项目的异地需求开发和管理,支持高可用的部署模式,支持集群部署,单个应用服务器可支持600的并发。

 

Import and Export(文件的导入导出)

DOORS在从Word导入文件时,会把Word文件中的表格,图形和OLE对象原封不动导入,并可以在DOORS中对导入的表格和OLE对象(如MS Visio图形)进行编辑。

 

支持将全部导出成Word,用户也可以选择导出的属性。导出的Word保留原格式和节次

在从Word导入文件时,会丢失所有Word中的表格,图形和OLE对象,也就谈不上对它们进行编辑了。

需求管理(REQM,Requirements Management)工具(转)的更多相关文章

  1. 企业架构研究总结(28)——TOGAF架构开发方法(ADM)之需求管理阶段

    1.11 需求管理(Requirements Management) 企业架构开发方法各阶段——需求管理 1.11.1 目标 本阶段的目标是定义一个过程,使企业架构的需求可以被识别.存储并与其他架构开 ...

  2. TOGAF架构开发方法(ADM)之需求管理阶段

    TOGAF架构开发方法(ADM)之需求管理阶段 1.11 需求管理(Requirements Management) 企业架构开发方法各阶段——需求管理 1.11.1 目标 本阶段的目标是定义一个过程 ...

  3. 2.4 CMMI2级——需求管理(Requirements Management)

    人是会死的,需求是会变的.相信大家都经历了很多需求变更的痛苦,项目被拖延,成本高涨,十有七八是需求管理没有做好导致的.有哪一些需求管理方面的常见问题呢,这里列举一下: 1.因为项目进度赶等原因,在很多 ...

  4. DOORS 和Reqtify — 需求管理和需求追溯工具

    IBM Rational DOORS 可实现对整个产品的全生命周期需求管理,覆盖从需求.到设计以及测试阶段.是一款具有广泛使用的企业级专业需求管理工具.DOORS 可以将项目开发过程中产生的各级需求和 ...

  5. Web前端的状态管理(State Management)

    背景 我相信很多朋友跟我一样,初次听到什么Flux, Redux, Vuex,状态管理的时候是一脸懵逼的.因为在外面之前前端大部分开发的时候,根本没有那么多的概念.自从ReactJS火爆后,什么Flu ...

  6. 【DOORS】如何基于DOORS实施需求管理

    引言 IBM Rational DOORS,简称DOORS,是被业界广泛认可的需求管理工具,在国内外需求管理领域具有较高的市场占有率.需求管理作为传统的工程领域,理论发展相对成熟和健全.随着越来越多的 ...

  7. cbuild-一个创建和管理C++项目的工具

    cbuild-一个创建和管理C++项目的工具 介绍: 这是个人开发的一个管理C++项目的工具,用shell脚本编写. 可能会不定期更新,也欢迎大家一起完善. 当前开发版本0.5.各版本功能如下: ve ...

  8. [转]敏捷开发需求管理(产品backlog)

    传统的瀑布工作模式使用详细的需求说明书来表达需求,需求人员负责做需求调研,根据调研情况编制详细的需求说明书,进行需求评审,评审之后签字确认交给研发团队设计开发.在这样的环境下,需求文档是信息传递的主体 ...

  9. 《Spring Boot 实战纪实》之需求管理

    目录 前言 (思维篇)人人都是产品经理 1.需求文档 1.1 需求管理 1.2 如何攥写需求文档 1.3 需求关键点文档 2 原型设计 2.1 缺失的逻辑 2.2 让想法跃然纸上 3 开发设计文档 3 ...

随机推荐

  1. JS跨域请求之JSONP

    在项目开发中遇到跨域的问题,一般都是通过JSONP来解决的.但是JSONP到底是个什么东西呢,实现的原理又是什么呢.在项目的空闲时间可以好好的来研究一下了. JSONP的产生 1.众所周知,Ajax请 ...

  2. 成员函数的const不能被修改,包括指针

    #include <iostream> class A { private: std::string a; public: A(std::string b) :a(b){} const c ...

  3. 从零开始制作Minecraft启动器(C++开源)

    从零开始制作Minecraft启动器(C++开源) 新手飙车了~~~,MC启动器源码大放送,随心所欲打造自己的专属MC启动器,这不是易语言,是C++...分析原理,关键源码都有详细的注释,代码编好就打 ...

  4. nodejs个人配置

    国内镜像,飞一般的感觉!编辑 ~/.npmrc 加入下面内容 registry = http://registry.cnpmjs.org npm config set registry  http:/ ...

  5. Java并发编程与技术内幕:线程池深入理解

    摘要: 本文主要讲了Java当中的线程池的使用方法.注意事项及其实现源码实现原理,并辅以实例加以说明,对加深Java线程池的理解有很大的帮助. 首先,讲讲什么是线程池?照笔者的简单理解,其实就是一组线 ...

  6. sublime text3 安装package control

    20141104日更新的安装代码为 import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c6 ...

  7. python 微信推送模板消息

    #!/usr/bin/env python #-*- coding: utf-8 -*- import httplib import json import MySQLdb #从数据库中获取acces ...

  8. AngularJS自定义表单验证

    <!doctype html> <html ng-app="myApp"> <head> <script src="G:\\So ...

  9. [POJ] 1274 The Perfect Stall(二分图最大匹配)

    题目地址:http://poj.org/problem?id=1274 把每个奶牛ci向它喜欢的畜栏vi连边建图.那么求最大安排数就变成求二分图最大匹配数. #include<cstdio> ...

  10. c++ 字符类型总结区别wchar_t,char,WCHAR(转)

    1.区别wchar_t,char,WCHAR ANSI:即 char,可用字符串处理函数:strcat( ),strcpy( ), strlen( )等以str打头的函数.   UNICODE:wch ...