登录| 注册 退出
驭捷智能
2021-04-02 11:31:02

软件派生开发中改善QCD的方法(上)

分享到:

本文将介绍先行开发阶段中软件派生开发的方法。

在先行开发阶段,因为开发新产品而需要进行组件开发和性能评估,因此要增加或修正很多功能,需要通过试错来进行规格的更改。在增加或修正工作等需要在短时间内完成的情况下,对于现有的业务标准流程存在“编写文件需要耗费许多时间”,“修正和新增带来的流带来程未被定义”,“难以明白修正与新增的规格该对应到源码的何处”等问题。为了解决这些问题,参考了专门用于派生开发的流程XDDP(eXtreme Derivative Development Process),用于在各项目中定义派生开发流程。其结果是在生产效率和品质方面发现了改善。

本连载的上篇将为大家介绍改善QCD的方法及其方法/手段,下篇将以“铅电池状态检测传感器”和“车载距离感应雷达”两个案例来阐述软件开发中如何适用派生开发流程。

改善QCD的方法

1.软件开发现状

尤其是在先行开发中的软件开发,因为开发新产品而需要进行组件开发和性能评估,因此要增加或修正很多功能,需要通过试错来进行规格的更改。同时因为要向客户提供试制品并进行评估和试验,因此必须开发和提供许多与之对应的软件。这些软件因为还需要对功能进行修正或增加,因此很多情况下是小团队进行短期开发。时间上的制约使得现在的业务标准流程经常被省略,在开发流程图中的文档编写工作也被省略。还有一些案例是发现问题较迟,导致从下游工序又返工到上游工序的情况发生。

2.软件开发中的问题

修正及新增功能需要短时间内完成,我们认为现有的业务标准流程存在如下问题。

  1. 编写文档耗费时间。

  2. 与功能修正与新增同步的流程未被定义。

  3. 难以明白与功能修正和新增同步的规格该对应到源码的何处。

  4. 为解决(1)~(3)的问题所需的用时和工时太多。

3.解决手段

为了解决这些功能修正与新增案例中软件开发的问题,参考专门为派生开发规定的流程XDDP,运用于定义各项目中的派生开发流程。引入派生开发流程的优点如下。

(1)流程能轻松对应开发现场的频繁要求。

(2) 通过编写变更要求规格书,轻松掌握变更或修正位置的前后状态。

(3) 通过编写TM(Traceability Matrix)来对应修正或新增规格在源码中的位置。

(4) 编写完成的资料在检查时可以发现规格的错误。

(5) 变更或修正位置在文档上留有记载。

下面我们介绍应用于“铅电池状态检测传感器”和“车载距离感应雷达”两个案例中的派生开发应用。

手段/方法

1.派生开发流程

派生开发流程指的是伴随着增加新开发的功能或对应新的要求,需要对软件进行专门修正或新增的开发流程。本流程从大约2007年起在软件行业中流行,从大约2010年起在汽车行业中流行,并有被汽车零部件供应商引入的案例 。派生开发流程推荐编写和运用如下所述的文档 。

(1)变 更 要需求规 格 书(USDM:Universal Specification Describing Manner)

(2) TM

(3) 变更设计书

流程方面,可以根据来自修正、新增的软件成果(源码,设计书等)的状况任意设定,但大原则是编写上述3个文档后修正源码,同样编写完成的各个文档有必要让有关人士审查。遵循这些规则可以提高生产效率,期待软件品质得到提升。以下就本方法的各个文档和审查方法上举例介绍。

2.变更要求规格书

图1所示的USDM是关于系统变更或新增要求,以及对应这些要求的规格的将每个项目分层级记述的方法(格式)。对软件开发方法论的目标指向及结构化手法的亲和性也不错。而且变更要求规格书中明确记载了变更什么(What),而且记载了变更要求的理由(Why)也是一大特征。明确要求的理由,这能够防止对要求内容产生误解,更可以预测要求变化的方向 。实际上编写本文档时,就会知道很难决定各层级的记述详细度。一个应对方法的例子是图1中第一层级设定为“要求”,第二层级设定为“迁移状态等级的规格”,第三层级是“函数等级的规格”,按这一标准尝试记述各个案例。

软件派生开发中改善QCD的方法(上)(图1)

图1 变更规格要求书

3.Traceability Matrix

TM是连接USDM与现有软件的资源和头文件的资料,与提高软件品质的“保存性(改良功能时的方便程度)”密切相关。而且在修正软件时,本文档可以明确变更了哪里(Where)。只使用汽车固件开发指南书中定义的文档,那么在进行功能变更和BUG修正时,很难找准要修正的代码,而且伴随着修正还可能带来新的BUG。本文档能有效解决这些问题,并与软件品质的提高有直接关系。这次的方法中也记述了对于有画面的的而不仅仅是源码的GUI(Graphical User Interface),成为了对第三方而言更易懂的资料。

软件派生开发中改善QCD的方法(上)(图2)

4.变更设计书

在变更设计书中如果想变更函数等具体内容时,变更方法以文字方式记述是其特征。记述“谁(Who)”、“何时(When)”、“怎样(How)”变更的,并尽可能详细地记述操作工时以及实际修正所需的工时等。(图3)。以下介绍的事例中,使用本文档基于之前编写的流程图、数据流图(Data Flow Diagram)、状态迁移图、状态迁移表等进行了编码工作。

软件派生开发中改善QCD的方法(上)(图3)

图3 变更设计书

5.审查

派生开发时有必要对之前的成果和软件进行审查。审查中相关人士作为审查者参与,目的在于事先清除成果中可能存在的BUG。派生开发所需的观念如下所述。

①如何看待客户委托的变更要求?

②如何看待源中的变更位置?

③如何考虑函数等级中的变更方法?

尤其是②很重要,也有的案例在新增或修正规格资料这一功能前,需要把软件的结构和设计意图写入到文档中。

那么,运用结果将是如何呢?请持续关注我们,下篇将会为大家带来精彩案例!


上一篇:没有了
下一篇:软件派生开发中改善QCD的方法(下)

在线
客服

在线客服 - 驭捷智能周一至周日 10:00-24:00(欢迎呼叫)

选择下列服务马上在线沟通:

客服
热线

18917451722
6*12小时客服服务热线