我的目标是使用 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 作为字符串或文件简单地返回给我。这可能吗,如果是的话,我该怎么做?