1

我的目标是使用 Java 将 DOORS 项目导出到 ReqIF。我怎样才能做到这一点?我知道可以在 DOORS 客户端中手动执行此操作,因此我认为也有一种方法可以自动执行此操作。

目前,我最接近的方法是使用 DWA、OSLC 和 LYO 将单个需求导出到 XML 字符串中。但是,这也存在大量问题,例如字段或信息丢失。

我想要的是一种管道,我可以确保如果我将 ReqIF 文件导入 DOORS,然后我可以将其导出并再次取出相同的内容。

但是,目前,我观察到的情况是:

ReqIF (Input)               DOORS                   OSLC (Output)
------------------------------------------------------------------------------------------------
ReqIF.ForeignID             ForeignID               doorsAttribute:absoluteNumber
                            Absolute Number         dcterms:identifier
AdditionalInfo              AdditionalInfo          m_property:attrDef-1003
                            Created By              doorsAttribute:createdBy [One Value]
ReqIF.ForeignCreatedBy      ForeignCreatedBy        doorsAttribute:createdBy [A different value]
                            Created On              doorsAttribute:createdOn [One Value]
ReqIF.ForeignCreatedOn      ForeignCreatedOn        doorsAttribute:createdOn [A different value]
                                                    dcterms:created
ReqIF.ForeignCreatedThru    Created Thru            doorsAttribute:createdThru
FollowupReference           FollowupReference       rm_property:attrDef-1006
FollowupReference2          FollowupReference2      rm_property:attrDef-1007
FunctionalApportionment     FunctionalAppointment   [LOST]
ImplementerName             ImplementerName         [LOST]
IsReq                       IsReq                   rm_property:attrDef-1015
ReqIF.ForeignModifiedBy     ForeignModifiedBy       doorsAttribute:modifiedBy [One Value]
                            Last Modified By        doorsAttribute:modifiedBy [A different value]
ReqIF.ForeignModifiedOn     ForeignModifiedOn       doorsAttribute:modifiedOn
                            Last Modified On        doorsAttribute:modifiedOn
                                                    rm_property:attrDef-8
                                                    dcterms:modified
ReqIF.ChapterName           Object Heading          doorsAttribute:objectHeading
                            Object Number
ReqIF.Name                  Object Short Text       doorsAttribute:objectShortText
                                                    dcterms:description
ReqIF.Text                  Object Text             rm:primaryText
Paragraph Style             Paragraph Style         rm_property:attrDef-1016
Picture                     [LOST]
PictureName                 [LOST]
PictureNum                  [LOST]
Rational                    Rational                rm_property:attrDef-1017
Req-Id                      Req-Id                  rm_property:attrDef-1018
ReqSafetyLevel              ReqSafetyLevel          [LOST]
SourceReference             SourceReference         rm_property:attrDef-1020
SourceReference2            SourceReference2        rm_property:attrDef-1021
StageFrom                   StageFrom               [LOST]
StageTo                     StageTo                 [LOST]
VerificationMethod          VerificationMethod      [LOST]
VerificationState           VerificationState       rm_property:attrDef-1025
VerifierComment             VerifierComment         rm_property:attrDef-1026
                                                    oslc:instanceShape
                                                    acp:accessControl
                                                    dcterms:contributor
                                                    oslc:serviceProvider

显然,这种方法存在一些问题,最明显的是来自原始 ReqIF 输入的某些值永远不会到达 OSLC 输出。但也存在这样的问题,即输出的 XML 中的某些字段具有相同的标题,因此无法区分,但包含不同的值。以下是一些输出示例:

        <doorsAttribute:modifiedBy rdf:parseType="Literal"><div>ForeignModifiedBy: bcsthfr</div></doorsAttribute:modifiedBy>
        <doorsAttribute:modifiedBy rdf:parseType="Literal">kira_resari</doorsAttribute:modifiedBy>

        <doorsAttribute:modifiedOn rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2015-01-14</doorsAttribute:modifiedOn>
        <doorsAttribute:modifiedOn rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2020-08-07</doorsAttribute:modifiedOn>

这就是为什么我现在正在寻找一种不同的方法,它可以将导入的 ReqIF 作为字符串或文件简单地返回给我。这可能吗,如果是的话,我该怎么做?

4

0 回答 0