
第3章 软件管理与组织
3.1 组织、岗位与职责
标准第5章规定了软件研发的组织管理、人员能力和软件生命周期的相关要求。标准5.1节从人员岗位职责、人员独立性方面阐述了产品研发的要求。
3.1.1 标准条款
5.1 Organisation, roles and responsibilities
5.1.1 Objective
5.1.1.1 to ensure that all personnel who have responsibilities for the software are organized, empowered and capable of fulfilling their responsibilities.
5.1.2 Requirements
5.1.2.1 As a minimum, the supplier shall implement the parts of EN ISO 9001 dealing with the organization and management of the personnel and responsibilities.
5.1.2.2 Responsibilities shall be compliant with the requirements defined in Annex B.
5.1.2.3 The personnel assigned to the roles involved in the development or maintenance of the software shall be named and recorded.
5.1.2.4 An Assessor shall be appointed by the supplier, the customer or the Safety Authority.
5.1.2.5 The Assessor shall be independent from the supplier or, at the discretion of the Safety Authority, be part of the supplier's organisation or of the customer's organisation.
5.1.2.6 The Assessor shall be independent from the project.
5.1.2.7 The Assessor shall be given authority to perform the assessment of the software.
5.1.2.8 The Validator shall give agreement/disagreement for the software release.
5.1.2.9 Throughout the Software Lifecycle, the assignment of roles to persons shall be in accordance with 5.1.2.10 to 5.1.2.14, to the extent required by software SIL.
5.1.2.10 The preferred organisational structure for SIL 3 and SIL 4 is:
1) Requirements Manager, Designer and Implementer for a software component can be the same person.
2) Requirements Manager, Designer and Implementer for a software component shall report to the Project Manager.
3) Integrator and Tester for a software component can be the same person.
4) Integrator and Tester for a software component can report to the Project Manager or to the Validator.
5) Verifier can report to the Project Manager or to the Validator.
6) Validator shall not report to the Project Manager i.e. the Project Manager shall have no influence on the validator's decisions but the validator informs the Project Manager about his decisions.
7) A person who is Requirements Manager, Designer or Implementer for a software component shall neither be Tester nor Integrator for the same software component.
8) A person who is Integrator or Tester for a software component shall neither be Requirements Manager, Designer nor Implementer for the same software component.
9) A person who is Verifier shall neither be Requirements Manager, Designer, Implementer, Integrator, Tester nor Validator.
10) A person who is Validator shall neither be Requirements Manager, Designer, Implementer, Integrator, Tester nor Verifier.
11) A person who is Project Manager can additionally perform the roles of Requirements Manager, Designer, Implementer, Integrator, Tester or Verifier providing that the requirements for the independence between these additional roles are respected.
12) Project Manager, Requirements Manager, Designer, Implementer, Integrator, Tester, Verifier and Validator can belong to the same organization.
13) The assessor shall be independent and organisationally independent from the roles of Project Manager, Requirements Manager, Designer, Implementer, Integrator, Tester, Verifier and Validator.
However, the following options may apply:
14) A person who is Validator may also perform the role of Verifier, but still maintaining independence from the Project Manager. In this case the Verifier's output documents shall be reviewed by another competent person with the same level of independence as the Validator. This organisational option shall be subject to Assessor's approval.
15) A person who is Verifier may also perform the role of Integrator and Tester, in which case the role of Validator shall check the adequacy of the documented evidence from integration and testing with the specified verification objectives, hence maintaining two levels of checking within the project organisation.
5.1 组织、角色和职责
5.1.1 目标
本条款的目标是为了确保所有对软件负有责任的人员有组织、有权限、有能力履行职责。
5.1.2 需求
5.1.2.1 供应商最低限度应执行EN ISO 9001中关于人员职责管理与组织的相关要求。
5.1.2.2人员的职责应符合附件B中规定的要求。
5.1.2.3 应该对参与软件开发与维护的人员角色进行命名和记录。
5.1.2.4 评估人员由客户、供应商或安全权威机构指定。
5.1.2.5 评估员应独立于供应商,或由安全权威机构酌情决定其属于供应商或客户组织中的哪个部门(或子机构)。
5.1.2.6 评估员应该独立于项目之外。
5.1.2.7 评估人有权对软件进行评估。
5.1.2.8对于软件发布,应由验证人员给出同意或不同意结果。
5.1.2.9在整个软件生命周期中,人员角色的安排应该与标准条款5.1.2.10~5.1.2.14以及软件SIL等级的要求相一致。
5.1.2.10 SIL 3和SIL 4的首选组织结构为:
1)软件组件的需求经理,设计师和实现者可为同一人。
2)软件组件的需求经理,设计师和实现者应向项目经理汇报。
3)用于软件组件的集成者和测试者可为一人。
4)软件组件的集成者和测试者可向项目经理或验证人员汇报。
5)确认者可以向项目经理或验证者汇报。
6)验证者不应要求向项目经理汇报,即项目经理不能够影响验证者的决定;但验证者应应告知项目经理其决定。
7)担任软件某一组件的需求经理,设计者或实现者的人员都不应作为同一软件组件的测试者或集成者。
8)作为软件某一组件的集成者或测试人员不应作为同一软件组件的需求经理,设计者或实现者。
9)担任确认者的人员不得是需求经理、设计者、实现者、集成者、测试者或确认者。
10)验证者不得是需求经理、设计师、实现者、集成者、测试者和确认者。
11)担任项目经理的人员在满足额外角色的独立性要求的情况下,可兼任需求经理、设计人员、实现者、集成者、测试者或验证者。
12)项目经理,需求经理,设计师,实现者,集成者,测试员,验证者和确认者可属同一组织。
13)评估者应该具有独立性,并且独立于项目经理,需求经理,设计者,执行者,集成者,测试者,验证者和确认者所属的组织。
然而,以下选项可适用:
14)验证者也可担当确认者的角色,但仍独立于项目经理。在此情况下,确认者的输出文件应由其他具有相同级别独立性能够胜任的验证者审查。这种组织情况应得到评估员认可。
15)确认者也可担任集成者和测试者的角色,在此情况下,验证者应检查具体集成和确认目标下的集成和测试文档证据的充分性,从而在项目组织内维持两个层次的检查。
3.1.2 条款理解及应用
对于安全相关的产品开发,项目实施方应从研发流程、人员职责、独立性要求三个方面进行管理。
1.研发流程
对于研发流程的要求是为了降低功能安全产品的系统失效。这个要求可以分为两个层次,第一层次是产品研发组织是否通过了基本的认证,比如公司的ISO 9001/14000认证,软件的CMM/CMMI认证;第二层次是产品研发组织所使用的研发流程是否完善,研发流程的执行是否彻底,在项目中使用的方法和工具是否成熟,研发过程中的文档是否完整等。需要注意的是,研发流程往往很受重视,而产品的生产、运行和维护流程却容易被忽视,但功能安全是涵盖整个产品生命周期的,任何一个阶段的流程不完善都会影响到该产品的SIL认证结果。
2.独立性要求
标准对人员独立性的要求如图3-1所示。
由图3-1可知,对于SIL0~SIL4级的软件功能开发,评估者一般应是独立的第三方机构。
SIL0级的软件功能开发,允许需求经理、设计者和执行者为同一个人,这三个角色应直接向项目经理汇报项目实施情况;集成者、测试者、验证者和确认者可以为同一个人,这四个角色可以向项目经理汇报项目实施情况,也可以向其他质量负责人汇报项目实施情况。
SIL1级与SIL2级的软件功能开发使用了相同的独立性要求。在这两个级别的软件开发中,需求经理、设计者和执行者可以为同一个人,这三个角色应直接向项目经理汇报项目实施情况;集成者和测试者可以是同一个人,验证者和确认者可以是同一个人,这四个角色可以向项目经理汇报项目实施情况,也可以向其他质量负责人汇报项目实施情况。
SIL3级与SIL4级的软件功能开发使用了相同的独立性要求。在这两个级别的软件开发中,需求经理、设计者和执行者可以为同一个人,这三个角色应直接向项目经理汇报项目实施情况;集成者和测试者可以是同一个人,但需要独立的验证者,这三个角色可以向项目经理汇报项目实施情况,也可以向其他质量负责人汇报项目实施情况;此外,需要独立的确认者,确认者不应向项目经理汇报项目实施情况,应向其他质量负责人汇报项目实施情况。

图3-1标准对人员独立性的要求