【问题标题】:Link two DOOR's modules without programming无需编程即可连接两个 DOOR 模块
【发布时间】:2019-06-18 07:45:22
【问题描述】:

我是 IBM DOORS 的新手,我需要一些提示或帮助来解决这个可能是基本问题。

我有一个 Module A,其中包含一些要求和另一个 Modules B、C、D 等,它对应于一个具体供应商回答来自 Module A 的要求. 因此,如果需求发生变化(即文本),我希望该变化也自动显示在模块 B、C D...

模块 A(属性)
请求代码(文本)
请求类型
请求文本
请求所有者
[...]

模块 B、C..(属性)
请求代码(文本)
供应商
基本选项
请求回答
请求_cmets
[...]

这个想法是,不知何故,在模块 A 中的 Req_code 和来自其他模块的 Req_code 之间建立联系(一对多),这样我就可以创建一个完整的视图来自两个模块的属性。

我一直在网上搜索,但我只发现这可以通过 dxl 脚本完成。有没有其他不涉及编程的方法来做到这一点?我尝试创建一个链接模块,但没有得到我想要的。

提前致谢,
死神

【问题讨论】:

    标签: module one-to-many linkage requirements ibm-doors


    【解决方案1】:

    我认为您想要的实际上是按属性链接的伴侣;链接 > 高级 > 创建链接...,但首先让我们创建一些架构。

    我假设 B、C 等将创建对 A 的答案,因此,将在他们回答时链接到 A 中的对象。有了这些信息,我们就可以创建带有 Req_code(使用“Object Identifier”)、Req_type(Type:string 或枚举列表)、Req_text(使用“Object Text”)、Req_owner(Type:string)等的 Module A。

    同样,创建具有必要属性的模块 B 和 C,以描述其中包含的信息。最后创建一个链接模块“L”来包含 B->A 和 C->A 的链接集。请注意,链接模块仅包含链接集,而不包含实际链接。链接存储在源模块中,即模块 B 和 C。

    为了安全起见,我还将转到文件 > 模块属性...选择链接集选项卡并通过链接模块 L 将 B 和 C 中的每个链接集设置为 A。强制并仅允许传出链接...在底部。

    现在我们准备在 A 中创建对象(插入 > 对象)。在“对象文本”属性或您希望出现在其他模块中的任何其他属性中创建一些需求文本。

    转到 B 并创建一个对象。链接 > 开始链接 转到 A 中要链接的对象,然后选择链接 > 从开始建立链接。 (它可能会在第一次询问您是否要创建链接集,只需说是。)每个对应的对象上都会出现一个橙色的小外向和黄色的内向三角形。

    最后,在 B 分析 > 向导中...选择 Out-links, DOORS links only; Next>(因为无论如何我们只有一个)选择所有(正式)模块和所有(链接)模块;下一个> (从其他模块中选择要显示的属性)下一步>(确保未选中递归分析)并完成。

    这将在模块 B 中创建另一个列,其中包含您希望从模块 A 显示的属性。

    您现在可以转到视图 > 另存为... 并为视图命名,然后随时查看模块 B 中的链接信息。

    此处编写的唯一 DXL 是您在运行向导时编写的 DXL。

    哇!关于如何使用 DOORS 的完整免费培训模块!

    【讨论】:

    • Don Fowler,非常感谢您抽出宝贵时间,非常感谢您的解释(清晰易懂)。就一个问题。 1)我希望 Req_code 是我建立的数字。我认为如果我使用对象标识符,这个数字是自动增量的,我无法按照我想要的方式定义它。是否可以通过不同于对象标识符的文本属性链接两个模块
    • 是的,该属性只需要唯一。 ABC-123 只需要在所链接的模块中出现一次。您可以将多个对象链接到 ABC-123,只是它是唯一的。-- 只是好奇,您为什么不想使用保证唯一的 Absolute Number 属性。通常,使用不同属性的原因是由于遗留问题。使用手动生成的需求编号创建了一个文档,并且需要长期保存。
    • 在模块 A 中,Req_code(即 ABC-001、ABC-002...)将是唯一的。相反,在模块 B 中,一个 Req_code 可能会出现不止一次。我认为当对象被插入到模块 B 中并且为每一行提供对象标识符时,重复 Req_code 并将其用作模块 A 的链接器是没有问题的。但是当我尝试这样做时,它说链接可以未完成,因为在模块 A 中找不到 ABC-001(我猜是因为 DOORs 在模块 A 的对象标识符属性中而不是在 Req_Code 中寻找 ABC-001)。
    • 我刚看了,是的,你是对的。开箱即用的按属性链接是在模块 B 中使用模块 A 中对象的绝对编号查找文本属性。您想要做的事情可以在 DXL 中完成,基本上将工具重写为查看不同的属性,但需要大约 20 到 30 行代码。我写过类似的代码,但我建议只是记下模块 A 中的 Absolute Number 属性并将其放入模块 B 中的文本属性中,或者更好的是,随时创建链接以防止任何错误。跨度>
    • 是的,我会那样做。再次感谢您的时间和支持 =)
    【解决方案2】:

    您将需要研究“链接 - 高级”菜单下的“按属性链接”工具。这是在 DOORS 9.6.1.10 上,虽然大多数 9.x 应该有相同的。

    您将能够在两个模块之间创建链接,匹配特定属性,然后为您需要链接到的每个后续模块重复该过程。

    【讨论】:

    • 感谢您的回答罗素。是的,我找到了该选项,但我不确定两个模块是否应该用对象完成以进行链接,或者即使没有任何对象插入任何模块中也可以这样做。我来自 SQL,DOORS 对我来说不是很清楚。
    猜你喜欢
    • 2014-07-29
    • 1970-01-01
    • 1970-01-01
    • 2013-09-09
    • 2020-03-20
    • 2014-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多