摘 要:在主制造商与供应商协作研制技术出版物的背景下,为了实现技术出版物数据的有效集成,要求主制造商与各供应商的技术出版物数据符合统一的规范和业务规则。本文基于S1000D规范的业务规则概念,研究了业务规则的制定方法,分析了业务规则符合性验证机制及业务规则交换(BREX)数据模块的编写方法,对技术出版物业务规则制定和符合性验证工作具有一定的指导意义。
关键词:S1000D 技术出版物 业务规则 BREX
中图分类号:V27 文献标识码:A 文章编号:1674-098X(2017)10(c)-0012-02
S1000D规范是由欧洲航空航天与国防工业协会(ASD)、美国航空航天工业协会(AIA)和美国运输协会(ATA)共同制定的一个采用公共源数据库(Common Source Data Base,CSDB)创建技术出版物的国际规范。S1000D规范是一个及其全面、通用的技术出版物国际规范,可以适用于航空、航天、电子、船舶等各个行业的技术出版物研制。为了更好地开展具体型号技术出版物研制工作,S1000D规范提出了业务规则(Business Rules, BR)的概念,并建议在开展技术出版物研制工作前,型号研制方应对S1000D规范进行裁剪和定制,在S1000D规范的框架下制定符合型号业务需求的业务规则。同时,为了使业务规则的制定更具有指导性和针对性,S1000D又引入了另一个重要的概念,即业务规则决策点(Business Rules Decision Points, BRDP),用于定义针对具体业务的决策项[1]。
1 业务规则制定
1.1 确定业务规则范围
基于S1000D规范的技术出版物研制涉及源数据分析、信息集定义、数据模块需求清单制定、数据模块编写、技术插图绘制、数据管理、手册发布、更改管理等一系列工作。业务规则的范围应涵盖以上各项技术出版物研制工作,在业务规则中明确各项工作的工作流程、数据输入输出关系、数据结构和格式要求等,确保每项具体工作均有据可循。按照S1000D规范的建议,将技术出版物业务规则分为通用规则、产品定义、维修与飞行运行方案等10大类别[2]。S1000D规范中定义了各个类别需涵盖的主要业务规则范围,在具体型号的技术出版物业务规则制定工作中,可以结合实际情况对此进行细化、补充,形成详细的项目业务规则决策点清单。
1.2 编写业务规则文档
在2016年12月最新发布的S1000D 4.2规范中,定义了一种业务规则文档(brdoc)类型的数据模块,用于描述项目的所有业务规则决策点,包括S1000D规范所定义的552个决策点以及项目中根据业务需求自定义的决策点。业务规则文档数据模块Schema中比较常用的元素包括brDecisionPointContent、brRelatedTo、brDecision、brAudit等,分别用于描述业务规则决策点的定义、所属的业务规则类别、关联的S1000D Schema类型、决策结果、业务规则决策点状态等信息。
业务规则文档数据模块在型号中的应用规范了业务规则决策点的描述方式,而且可以通过CSDB对其进行质量控制和版本管理,大大提高了业务规则的管理和应用效率。
2 BREX数据模块
2.1 BREX数据模块的作用
为了确保业务规则文档中定义的各项业务规则在技术出版物研制过程中得到落實,需要建立一种业务规则符合性验证机制。最原始的方案是制定各个工作环节的业务规则符合性检查单,在技术出版物研制过程中由人工进行逐个验证。这种方案可行,但是验证工作量巨大。尤其在数据模块编写和审批环节,通过人工审核数据模块结构的准确性,效率低下,且容易出错。而业务规则交换(Business Rules Exchange,BREX)类数据模块则是S1000D规范为解决业务规则符合性验证而定义的一种特殊的数据模块,其工作原理见图1。
根据S100OD规范Schema的要求,所有数据模块都必须通过brexDmRef元素参引CSDB中的一个BREX数据模块。一旦关联了BREX数据模块,则在数据模块编写过程中必须符合BREX中定义的规则,在检入CSDB系统时,CSDB系统会通过BREX符合性验证工具对数据模块进行BREX验证。
BREX数据模块及BREX符合性验证工具的应用,可以在技术出版物编写阶段通过系统自动对数据模块内容结构的符合性进行验证,提高了数据模块业务规则符合性验证的效率和准确率。需要说明的一点是,并不是S1000D规范中所有类型的业务规则都可以在BREX进行定义并实现自动验证。一般而言,BREX主要用于定义业务规则文档中涉及Schema元素或属性使用的业务规则。因此,BREX及其符合性验证工具主要用于对数据模块内部元素/属性等结构化信息的符合性进行验证,数据模块技术内容本身的正确与否仍需要人工审核。
2.2 BREX数据模块的使用
在一个技术出版物项目中,可以根据需要使用一个或多个BREX数据模块。在实际型号技术出版物研制中,为了降低BREX应用的复杂程度,建议只采用一个BREX。如果单个BREX数据模块不能满足所有数据模块的需求,原则上应采用尽量少的BREX数据模块[3]。
2.3 BREX数据模块编写
BREX数据模块的Schema结构如图2所示,主要包括以下3个方面信息。
(1)标准编码系统(Standard Numbering System, SNS)使用规则,主要用于定义在数据模