将需求数据从 Microsoft Word 迁移到 IBM Rational DOORS

导入需求数据变得更加轻松

Comments
免费在线试用 IBM® Rational® DOORS® Web Access
下载更多的 IBM 软件试用版,并加入 IBM 软件下载与技术交流群组,参与在线交流。

今天的复杂软件工程项目使很多公司面临挑战,这些公司需要控制不断增长的大量数据,管理复杂性,提供需求追踪性,同时还维护与这些任务相联系的数据。当前,许多公司仍然在使用 Microsoft® Word® 文件来存储关于产品、系统和软件的需求信息。尽管当中大多数的公司意识到它们需要一个能够处理维护需求数据所带来的复杂性的需求管理系统,但如何将已有的需求文件迁移到一个新环境是一个具有挑战性的任务。

然而当您使用到 IBM Rational® DOORS® 工具的迁移过程时,迁移 Word 或者富文本格式(Rich Text Format)文件中的需求数据并不困难。DOORS 解决方案可以帮助管理需求与需求更改,同时使操作变得更加轻松和灵活。另外,DOORS 环境还可以帮助您创建需求之间的可追踪联系,协作您深入了解对某项需求做出更改后所造成的影响。

本文将会帮助您将当前以 Microsoft Word 文件(.doc)格式或者 Rich Text Format(.rtf)存储的已有需求,迁移到 DOORS 工具集。您将会了解到数据及其结构是如何迁移到 DOORS 方案的,帮助您发挥这一需求管理解决方案功能强大的需求管理能力。本文将会提供关于两种文件的具体信息,这两种文件是富文本格式(.rtf)与 Microsoft Word 格式(.doc),并细致描述了迁移至 DOORS 的具体迁移过程。当然还有很多类型的文档采用不同的格式,本文只关注这两种特定类型的格式。尽管如此,在您了解了怎样使用 DOORS 扩展语言(DOORS eXtension Language,DXL)迁移数据之后,将其他任意类型的数据迁移至 DOORS 就非常容易了。

系统需求

本文使用的是 Word 2003 与 Rational DOORS 9.3 的屏幕截图来演示具体的迁移操作。尽管这是文中使用的环境,但是所概述的方法对于这两种文字处理软件和需求管理方案的低版本和更高级版本同样适用。

对 Rational DOORS 迁移的简介

Rational DOORS 环境允许您导入不同格式的需求数据,包括:

  • 简单(纯)文本格式(.txt)。
  • 富文本格式(.rtf)。
  • 电子表格,例如逗号分隔格式(.csv),项目分隔格式(.tsv)。
  • Framemaker 格式(.fm)。

换句话说,从 DOORS 用户的角度来看,您都可以从这些格式的文件抓取数据。一个功能强大的扩展库,DOORS eXtension Library(DXL)会与 DOORS 绑定安装,您可以使用它来从其他的文件格式抓取数据。

除了在 DOORS 应用程序本身可以获得以上选项,来自 MS Word 的 Word 文件(.doc)也可以在 MS Word 应用程序界面中通过使用 DOORS 安装包所提供的 DOORS 导出插件(doors.dot)来导出到 DOORS。这可以被视为为一个导出操作,其中数据会从外部应用程序导出到 DOORS 环境之中。

在 DOORS 帮助手册中详细解释了关于这些操作的过程,所以我们将会继续迁移操作过程。关注点是富文本格式和 Word 文件格式,并理解工具的术语、数据迁移是怎样进行的、迁移操作是如何发挥作用的。本文包含了一些可以让格式变得统一的建议,这样您就可以平稳和可预测地进行数据迁移,同时维护一个一致的层级结构。导入及导出操作都使用了同样的方法,而且您可以将其进行比较。

设置规则

Microsoft Word 术语

Word 应用程序提供了不同的文本格式化选项,例如字体名、字号、粗体、斜体,等等,您可以将其应用到文本。这些格式化特征可以组合成一个叫做样式(Style)的实体。一个样式拥有一个独特的名字,以便于识别,而且您可以对文件中的任何文本应用该样式。关于这些样式的信息存储在叫做文档模板文件的文件中,保存的文件后缀名是 .dot。默认条件下,所有的文件会使用名为 normal.dot 文件的默认模板文件。该模板文件包含了关于默认样式的信息,这些默认样式例如 Heading 1、Heading 2、Normal 等等。

图 1. 应用到子标题对象的 Heading 2 样式
格式样式对话框层次 2
格式样式对话框层次 2

DOORS 术语

为了更易于使用,DOORS 数据模型使用了简单的模型:DOORS 之中的规范模块等同于 Word 中文档的对应模块。一个对象包含了规范模块中的形式,类似于在文档中包含的文本。一个对象可能包含有单行的信息或者一个段落,而且一个模块可以包含多个对象。

每一个对象都拥有在规范模块中可以找到的层次。将规范模块想象成树形结构的数据。规范模块的名字作为根节点出现(层次 0)。每一个段落的名字可以被想象为根节点下的标题节点(层次 1)。一个标题节点,依次,可以包括子标题节点(层次 2),还可以包含有一些句子。通常来说,在 DOORS 对象中可以找到一个标题或者一行文本,是最好的。但是,这不是一项通用规则;您仍然可以创建拥有标题和文本的对象,但是这并不是推荐的实践方式。导入的操作遵循该不成文的规则;它不会实现一行文本(为 Object Text 属性)或者一个标题(为 Object Heading 属性)。

图 2 显示了 Word 文件数据(参见图 1)在 DOORS 中的层次信息。左边的窗格显示了树形的层级结构,它描述了数据在文档中是如何以层级结构安排的。

图 2. Word 文件数据作为 DOORS 信息中的层次
DOORS 层次以及树形结构的屏幕截图
DOORS 层次以及树形结构的屏幕截图

DOORS 之中的映射

在有了工具术语的基本知识之后,接下来的一步就是理解这两个工具之间是怎样进行交互的。DOORS 会理解和遵循 Word 文件中所定义的样式。当您在执行从 .rtf 文件的导入操作时,DOORS 工具会打开一个如下图所示的映射对话框(参见图 3)。

图 3. 在导入 rtf 文件期间出现的映射对话框
导入 rtf 文件期间出现的映射对话框
导入 rtf 文件期间出现的映射对话框

为了保留文档中的结构,一个用户可以选择 rtf 样式,并将其映射到一个 DOORS 层次之上。图 3 显示了 Word 之中的 Heading 1 样式会映射到 DOORS 之中的 Heading Level 1 对象;Heading 2 样式映射至 Heading Level 2 对象等等。

Word 之中的文档结构可以通过文档结构图(使用 Word 之中的菜单项 View > Document map)以图形化的方式查看。记住文档结构图是使用文档之中的样式构建的。该结构是在导入操作期间获取的,并显示在 Module 窗口中的左部(参见图 2)。当您在编辑并同时查看信息的结构时,这一点就十分有用了。另外,您可以使用它来打开一个新的层级结构安排,以补充在 Word 中没有出现的层级安排。最后,您可以将这些映射保存到一个 .map 文件,以便在另一个导入操作中再次使用。

当您是从 DOORS 插件的执行迁移操作时,映射操作会自动完成(本文前述的从 Word 的导出操作)。因此当在您将文档从 Word 中导出时,该映射对话框就不会出现了。

导入一个文件

接下来,您需要了解导入一个文件的过程。为了更好地演示这一点,这一部分包含了两个案例,它们为了解导入文件提供了一个坚实的基础。

识别一般的特征

对于一些 Word 用户来说,在 Word 中使用样式的概念仍然是陌生的。这些用户无意中会创建自己的格式化特征,并开始在文档中使用它们。他们不会知道这些特征可以进行分组,并留在 Word 应用程序当中作为样式来轻松地管理。尽管如此,大多数的用户拥有格式化数据方面的规则。下面是两个显示文件的案例,其中显示的方法可以帮助您轻松将需求导入到 DOORS 环境之中。

案例 1

该用户为主标题选择了粗体,为子标题选择了粗体加斜体。图 4 显示了不用使用定义的样式创建一个文档。用户创建了这些匿名样式,并且可以在文档之之中统一地使用它们。

图 4. 没有使用定义样式的文件
显示没有使用定义样式
显示没有使用定义样式

图 4 的大图

当您对以上的文档执行从 rtf 进行导入的操作时,图 5 描述了模块的结构。注意模块的结构都在层次 1 之中。该结构都是一致的,就算我们是将文档从 Word 通过 DOORS 插件导出的,也是这样。但是在 Word 之中这并不是预期的层级结构。现在我们需要校正这些层级结构上的缺陷。

在图 5 之中您可以看到一个使用 rtf 导入数据的模块。rtf 文件并不会使用任何已知的 Word 样式,因此左边窗格中的层级结构与文档中所提到的段落编号并不匹配。

图 5. 使用 rtf 导入数据的模块
不同段落编号的图
不同段落编号的图

该模块可以使用 DXL 库提供的范例 DXL 来自动安排该模块的结构。选择 Tools > DXL library。在 Some example programs which illustrate various DXL features(演示不同 DXL 功能的范例程序)下选择 Example to move objects in to structure suggested by section numbers(将对象移动到所建议段落编号的结构的范例),然后点击 Run 按钮。查看图 6,它显示了模块中对象的更改层级结构。脚本中创建的 Level 属性包含在该视图之中。

图 6. 模块中对象的更改层级结构
创建层次编辑层级结构图
创建层次编辑层级结构图

运行 DXL 将会创建一个名为 Level 的新属性,它显示了该对象应该出现的层次。保存并重新打开模块,在模块查看器中查看所映射的结构(也被称为模块窗口之中的左部窗格)。

案例 2

案例 1 之中的文档拥有作为数据部分包含的段落编号。由于这一点,我们就能够轻松使用脚本并重新创建层级结构。现在让我们检查文档不包含段落编号的案例,如图 7 中所示。这种类型的文档不能从 Word 中导出,因为它缺乏可认知的样式。文本可以作为层次 1 的私人对象显示,而且我们不能够自动构造模块。因此,您可以选择导入文档作为一个 rtf 文件,并将文件作为一个 Rich Text Format(作为 .rtf 扩展名)文档保存。

图 7 显示了一个文档,它包含了一些没有段落编号的文档;对于本文追踪的格式化选项,文档对每个标题拥有独一无二的重复特征

图 7. 没包含段落编号的标题
文档追踪段落编号,以及样式
文档追踪段落编号,以及样式

图 7 的大图

为了管理该类型的文档,在 Word 中创建一个样式的操作十分关键,您可以使用该样式来映射到 DOORS 工具集中的层次。没有样式,所有的对象都会降级到层次 1。您不知道的是,您已经定义了一个样式的特征。现在您需要为您的样式提供一个名字。

在 Word 中创建一个样式

在 Word 中,选择文本块并选择 Format > Styles and Formatting 菜单项。这将会打开一个名为 Styles and Formatting 的窗格,并揭示当前选项的格式化特征。

图 8 在右边显示了 Styles and Formatting 窗格。选择的文本以粗体和斜体显示,而格式信息会出现在相同窗格的 Formatting of selected text 区域之中

图 8. 样式与格式窗格
显示样式与格式窗格的屏幕截图
显示样式与格式窗格的屏幕截图

点击 New Style… 按钮,并提供一个名字。对于以粗体和 mySubHeadingStyle 显示的主标题文本,使用 myMainHeadingStyle,对于以粗体和斜体显示的子标题文本使用 myMainHeadingStyle。一旦我们命名了样式,对拥有相同格式特征的其他部分应用相同的样式就变得十分轻松了。

在图 9 之中,您就可以看到只有两个实例的文本,该文本在首个选项之中精确匹配格式特征,在引言标题下组织

图 9. 文本按照选择的文本拥有一定的格式特征
Reveal Formatting 窗格中菜单项
Reveal Formatting 窗格中菜单项

应用新样式

一旦您选中了所有的简单格式化文本,您就可以一次性地应用格式。您可以简单地选择 Select all text with similar formatting 命令。您可以看到使用 myMainHeadingStyle 两个实例。查看图 9 之中的范例。对于当前的选项(如图 9 所示),从可用的样式中选择 myMainHeadingStyle。与之类似,您可以选择 mySubHeadingStyle 作为子标题文本。您可以从实现 Pick formatting to apply 的列表,以及 Styles and Formatting 窗格中看到样式。如果新用户定义的样式并没有出现,那么您可以在 Show 列表框中选择 All styles 项。

确认信息特征

在导入之前,确认对所有的文本都应用了适当的样式,是最佳的实践操作方式。执行确认操作有两种方法:

  • 选择一个文本并选择 Tools > Reveal Formatting 菜单项。在 Reveal Formatting 窗格之中,选择 Select All Text with Similar Formatting。现在您就可以在匹配样式的文档之中看到所有的文本。如上面的图 9 所示。
  • 另外一种方法是选择一个文本,并点击 Tools > Styles and Formatting 来打开 Styles and Formatting 窗格。一旦您点击了已经应用的样式,那么下拉框就能让您选择拥有应用样式的所有实例。图 10 显示了样式 MyMainHeadingStyle 在文档之中被使用了两次
图 10. MyMainHeadingStyle 的实例
样式与格式窗格中的菜单项
样式与格式窗格中的菜单项

创建映射

一旦您完成了上述的步骤,您就能够进行下一步,并创建对 Rational DOORS 方案的映射。让我们开始准备 DOORS 工作区。在一个新的规范模块之中,选中 File > Import > Rich Text Format 选项。点击 Import 按钮以打开 Mapping 对话框。我们创建的样式,名字叫做 MyMainHeadingStyle 与 MySubHeadingStyle,现在可以从 rtf 文件之中获得。现在您可以选中它们,以映射到 DOORS 工具集中需要的层次,并导入它们。

图 11 显示了在 rtf 文档中所找到的样式。样式得到了定义,并映射到 DOORS Heading 层次 1 以及 Heading 层次 2 对象

图 11. rtf 文档中找到的样式
rtf 文档映射至 DOORS 样式的屏幕截图
rtf 文档映射至 DOORS 样式的屏幕截图

通过执行该步骤,您差不多就完成了导入操作了。再次点击 Import,您就可以看到实现的模块了。图 12 显示了实现模块窗口,以及其中对象的层级结构。

图 12. 实现模块窗口及对象层级结构
导入操作完成之后的 DOORS 模块
导入操作完成之后的 DOORS 模块

在所有的步骤完成之后,现在您就看到在 Word 程序之中的模块。结构看起来是正确的;所有需要的数据都会得到导入,而导入操作会成功。

结论

有许多公司会使用 Word 工具来开发产品、系统和软件的需求,并存储 Word 文档之中。当中大多数的公司意识到它们需要一个功能强大、精细的软件需求管理方案,将已存在的文档转化到一个新的环境之中变成一项具体挑战性的任务。Rational DOORS 需求管理方案提供了一种清晰的迁移路径,该路径可以帮助您轻松将 Word 文件迁移到 Rational DOORS 格式。

为了完成这个过程,您从本文学到 DOORS 和 Word 是怎样与导入操作相联系的。您已经看到了 DOORS 方案是怎样使用 Word 中所定义的样式,来按照层级结构将对象放置到一个模块之中。使用两个简单,但是使用普遍的 Word 文件的范例,您就能够看到它们是如何导入到 DOORS 环境之中。最后,完成整个过程之后,您就可以看到和理解怎样按照 Word 的样式来使得导入和导出到 DOORS 环境变得更加轻松和完美。


相关主题


评论

添加或订阅评论,请先登录注册

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=751553
ArticleTitle=将需求数据从 Microsoft Word 迁移到 IBM Rational DOORS
publish-date=08082011