UML软件工程组织

 

 

用Rational Rose 和 Rational RequisitePro进行用例管理
 
2008-05-13 作者:Rational staff 来源:IBM
 
本文内容包括: 
结合Rational Rose和RequisitePro,通过使用强大的需求管理能力来提升用例建模,给你提供了集成用例管理。它并不只是简单的框图,事实上,你能够使用可分类的属性,文档和可追踪性来扩展用例,并且,有助于你管理项目中的大量用例。

引言

  1. 你怎样组织你的用例?
  2. 你知道在哪儿发布一个实现的特定用例?
  3. 你怎样知道整个系统功能被测试?
  4. 哪些测试会因用例中的变化而受到影响?

如果你不能够顺利地回答这些问题,在工作中出现了进度表滞后,或者产品的交付没有达到标准之类的麻烦。那么,本文或许可以给你一些帮助。

集成用例管理强大的需求管理能力增强了Rational Rose用例建模。用可分类的属性,文档和可追踪性,集成用例管理不仅提供了一系列的框图,而在很大程度上扩展了用例,有效地帮助你管理团队中的大量用例。这是市场上可视化建模工具和需求管理工具最紧密、最健壮的集成。

为什么要管理需求?

需求管理是指捕获、记录并管理需求的系统化方案。没有它,三分之二的项目都会因遗漏用户需求,延期或者超出预算(Standish Group, CHAOS的权威报告www.standishgroup.com) 。为什么会有如此之多不成功的项目呢?这主要是因为管理需求即意味着管理变更—并且管理变更是相当困难的。变化是普遍存在的。我们生活在一个动态的世界:客户不断地改变他们的想法;在交付我们的方案之前,竞争者又提出了更好的方法;业务环境也在不断变化。身处这个变化的环境是件好事,但同时它也可能会让你陷入困境不能前进。变化本身并没有错,糟糕的是没有控制的变化—在它发生之前,无法衡量其影响。通过管理需求,你有可能会提出一个适时的方案,以解决客户的现实问题。

为什么要管理用例?

用例即需求,它从用户的角度来说明系统应该提供的功能。同样地,用例应当参与到所有系统需求的管理之中。多数软件项目拥有大量的用例,它们拥有不同的优先级和依赖—正如其它需求一样。例如,描述Web订单流程的一个用例,可能会不去考虑通过Web产生更多收益的业务需求。在用例及其业务需要之间建立切实可行的依赖,你可以更好地应对影响这些需求的变更。并且,区别实现各用例的优先级,有助于你选择从哪儿来开始。

和所有其它需求一起来管理用例是理解项目当前状态的关键,也能让你更好地设计出正确的系统。集成用例管理的价值就在于无缝地集成了用例与需求信息。

建立集成

集成用例管理从Rational Rose模型与Rational RequisitePro项目的关联开始。这个关联为在Rose环境中选择用例文档模板和用例属性提供了环境。你能够在模型层次或者包层次建立这个关联,该层上,每个包可能与其RequisitePro项目相关联。包关联参与大型软件项目,该项目可能用多个RequisitePro项目(典型的子系统)或不同的用例文档模板(用于业务用例vs.系统用例)。

一个Rational RequisitePro项目包括若干Microsoft Word文档和一个数据库(Microsoft Access, Microsoft SQL Server 或 Oracle)来组织需求信息。RequisitePro的用例文档包括用例文本描述,比如属性、可追踪链接、版本、变更历史、项目安全等。从RequisitePro数据库中,你能够查询需求信息以检查覆盖率并衡量变化的影响。你也可以很容易地导航到RequisitePro Word环境,或者返回到Rose。

Rational Rose的需求管理能力

由Rational Rose的标准快捷菜单,我们就可以看到,其需求管理能力是很显著的--右键单击一个用例以查看新用例菜单选项(如图1所示),它们包括:

  • Use Case Document,建立新的用例文档或将该用例与已有RequisitePro用例相关联。
  • Requirement Properties,查看和编辑该用例的属性及可追踪性。
  • View RequisitePro Association,查看该用例的Rational RequisitePro 上下文(相关联的用例文档模型和用例属性—通过需求“类型”来设定)。
Rose用例快捷菜单中的新选项
图1: Rose用例快捷菜单中的新选项

接下来,让我们详细看一下这些能力。

用例文档(Use Case Document)

如果你是一位现有的Rose用户,你可以书写用例文档,通过Rose External File属性将它们附加到用例模型。集成用例管理的能力远不止简单地将一个文件附加到Rose用例。因为附加到用例的文档是RequisitePro文档,你将受益于以下几方面:

  • 用例文档是经过检验的用例文档模板。
    集成用例管理为RUP(Rational Unified Process)提供了用例模板。这些模板不仅包含了有价值的指导方针,也包含了用例格式化,节约你的时间并且提供文档之间的一致。
  • 需求文本被清晰地标注。
    需求明显地区别于文档中附加的描述性信息(如图2),这使得“看清森林中的树”变得更加容易。
Rational RequisitePro文档中的需求
图2: Rational RequisitePro文档中的需求
(单击放大)
  • 对用例文档进行的任何修改都会被自动追踪
    关于“谁修改什么,何时,为什么”的信息都存储在Rational RequisitePro数据库中。这些修订有助于你控制用例的变化。
  • 用例文档中的需求可以链接到相关的其它需求
    通过追踪从用例到业务用例、特性需求、测试,或者甚至其它用例,你可以更容易地衡量相关需求的变化所带来的影响,并验证覆盖率。

想要将一个用例文档与Rose用例关联,可以右击Rose浏览器中的用例,从快捷菜单中选择 Use Case Document>New,RequisitePro Word环境被启动,且显示了基于模板的文档,可以进行编辑。你也可以使用 Use Case Document>Associate,,将一个现有RequisitePro文档与Rose用例之间建立关联。

需求属性(Requirements Properties)

新添加到用例快捷菜单中的第二项是 "Requirements Properties."需求和类似的用例,并不仅仅是文本。特别是用例图,还有其它的特性,比如属性,可追踪性链接,修订历史。

Attributes 有助于管理范围。特别是在迭代开发中很有用,属性提供了一种很容易的方法来管理项目的每一次迭代。它们使选择实现用例的过程变得更客观。而很多组织都是基于个人的议程或情绪。早期所作的失败的决定进行到实施阶段,并且越往后继续,代价越大。属性提供了一种简单的方法,将客观的重要性赋予用例和需求。

Traceability 帮助衡量变化的影响,并确保需求覆盖率,如果一个业务需要变化,哪些用例将会受到影响?通过建立可追踪链接,你就可以查询需求,回答“是否所有的业务需要都在类层次上实现?”或者“是否存在适用所有用例的测试需求?”之类的问题。

(Rational Unified Process用户请注意:你可能想要评审使用RUP用例白皮书的需求管理的可追踪策略。该白皮书略述了各种各样可追踪方法,你可以随需而用)。

Revisions 帮助你追踪“谁改变了什么,什么时候,以及为什么”,提供了需求变更的评审踪迹. 这有助于你衡量需求的稳定性,并从一开始就将注意力集中在更稳定的需求上,减少变化。

在Rational Rose中设置用例属性和关系,可以右击浏览器中的用例,然后从快捷菜单中选择 Requirement Properties>Open。在对话框(如图3所示),单击Attributes 标签,设置一个属性值。注意你能够在与你模型相关联的RequisitePro项目中改变直接可用的用例属性及其值。在对话框中,单击 Traceability 标签,以建立用例与其它需求之间的可追踪性。

查看并编辑Ratioanl Rose用例需求的属性
图 3: 查看并编辑Ratioanl Rose用例需求的属性

管理用例的好处

一旦你已将一个用例文档或者需求属性附加或者赋予给Rational Rose中的用例,用例即成为RequisitePro中设定的需求的一部分。同样地,你能使用RequisitePro的所有能力将你的用例排序(按优先级,迭代数,等),来查询特定的用例(仅仅是打算用于下次迭代的用例),甚至产生需求指标。

使用Rational RequisitePro中的Attribute Matrix View(如图4所示),你可以查看所有的或者一组选定的用例及它们各自的属性。这有助于你组织用例信息,回答本文开头的第一个问题:你怎样组织你的用例?你能进行查询以决定哪些用例被赋于哪个设计者,它们的实现有多困难,或者何时实现它们(你知道在哪儿发布一个实现的特定用例?)。

Rational RequisitePro中的用例Attribute Matrix View
图 4: Rational RequisitePro中的用例Attribute Matrix View
(单击放大)

一旦你选择了下次迭代将被实现的用例,你应当验证追踪到用例的测试需求,以确保所有的功能都能得到测试。图5所示的Traceability Matrix View,展示了用例与测例之间已建立的关系。使用Traceability Matrices,你能够在仍未追踪到测试需求的用例上查询(回答了“你怎样知道整个系统功能被测试?”这个问题)。另外,测试人员可以查询可能会因用例修改而受到影响的测试需求,以确保测试最新的功能。可疑链接(图5的红色斜线箭头)说明测例TC1.2可能因用例UC1.3的改变而需要修订。在可疑链接上查询又回答了我们最后一个问题-哪些测试会因用例中的变化而受到影响?

Rational RequisitePro中,用例与测例之间的可追踪性关系
图 5: Rational RequisitePro中,用例与测例之间的可追踪性关系

总结

集成用例管理使用需求信息扩展了用例。通过建立一个实时窗口,有利于Rational Rose用户修改用例属性、可追踪性,查看修订历史。而且,Rational RequisitePro用例文档仅是简单一个单击。因为来源于Rose 用户的数据是有效的,所以,集成用例管理给需求管理人员提供了更准确、更及时的信息。通过管理用户与其它需求相关联的用例,你可以更好地管理项目,控制变更,并验证覆盖率。简而言之,集成用例管理 有助于确保你正在实现已达成一致的功能,并且该功能将会被完整地测试。

参考资料

  • 您可以参阅本文在 developerWorks 全球站点上的 英文原文
 

组织简介 | 联系我们 |   Copyright 2002 ®  UML软件工程组织 京ICP备10020922号

京公海网安备110108001071号