由北京经纬恒润科技有限公司(以下简称经纬恒润)提供咨询的上汽大众某汽车软件开发项目通过了Automotive SPICE CL2评估,被认定达到了ASPICE CL2等级的汽车软件开发过程能力。上汽大众该项目团队也用靓丽的成绩证明了其自身的汽车软件开发过程能力。
作为国内合资整车厂,上汽大众对以ASPICE为代表的汽车软件开发过程能力的重要性很敏锐,高瞻远瞩,很早就开始关注汽车软件及其开发过程,并寻求ASPICE在组织内的落地实施。
2017年下半年,上汽大众选择了合作多年的经纬恒润作为咨询和实施合作伙伴,并以某产品团队为主体,双方共同组建项目组,正式启动面向ASPICE CL2的过程改进项目。在双方领导的高度关注下,经过不懈努力,项目团队突破了认知转变、团队培养、项目打磨的种种挑战,克服了加班加点、资源紧张等诸多困难,终于达成了项目目标。
经纬恒润在过程咨询和实施过程中,发挥自身优势,整合各方资源,为上汽大众提供了从工具链评估与实施、技术和管理方法咨询、过程定义咨询、ASPICE标准解读、改进项目管控、评估协助等服务,始终秉持“价值创新、服务客户”的理念,帮助上汽大众交出了一份满意的答卷。经纬恒润也会在未来以更加热忱的服务精神,为客户提供过程咨询和实施服务。
想了解更多详情,请阅读如下文章
通过Automotive SPICE能力等级2评估之路(上汽大众)
2019年8月16日是一个值得纪念的日子。这一天,上汽大众软件开发团队开展的BMS软件开发项目通过了iNTACS高级评估师的Automotive SPICE能力等级2的评估,被认定达到了Automotive SPICE能力等级2的汽车软件开发过程能力。上汽大众软件开发团队历经近两年的艰辛努力,终于用靓丽的成绩证明了其自身的汽车软件开发过程能力在国内同行中达到了水平。
1. 通过Automotive SPICE评估的难点
Automotive SPICE评估不仅包含结果的评估,更重要的是开发项目过程的评估。
以结果导向的评估重点是工作产物的一致性。以工程过程工作产物一致性为例,如图1。需要考虑以下方面:
- 工程过程有13处一致性要求。这些文档需要建立双向追踪链接关系,并保证内容一致性;
- 该V模型工程过程是基于正向开发的过程。任何开发工作都必须依据正向开发方法,而不能凭借经验;
- 测试用例不能仅凭经验,需按照边界值法,等价类等方法编写,并且与需求或架构保持一致性。
要保证这些一致性,需要运用适当的方法论开展正向的需求开发和对应的测试验证,这对开发团队的正向开发能力是一个重大挑战。此外,需要大量的审核工作和工具的支持,这些都会导致工作量激增。
图1 工程过程
除了结果导向的评估外,更难的是以过程导向的评估。过程导向的评估重点是过程定义合理性和过程一致性。
以系统需求说明书为例,如图2。需要考虑以下方面:
- 过程定义合理性。策略或计划的定义需要建立在方法论上,而不能基于经验制定。例如项目工时估算,必须采用一定的方法如delphi法,类比估算法,功能点工作量估算等。
- 过程一致性。所有活动均要保留相应的证据。评估时考察项目开展过程中所有的活动及其证据,以及相应的工作产物是否按计划或策略执行。任何一个环节出问题,则会判定相关的过程不通过。例如:系统需求说明书缺失个别属性,而评审报告和质量报告中未记录该问题,则认为系统需求,评审和质量过程不通过。
- 过程不可逆性。某个环节未按既定策略或计划执行,则该过程不通过。不接受后续补充材料或整改。
图2 系统需求说明书
2. 艰难的AutomotiveSPICE评估过程
上汽大众敏锐的注意到以Automotive SPICE为代表的汽车软件开发过程能力对其产品软件开发过程的重要性,开始关注并寻求Automotive SPICE在组织内的落地实施。从2014年开始,开发团队就组织Automotive SPICE标准的研读,参加Automotive SPICE专项**,并在项目中逐渐引入Automotive SPICE,不断摸索Automotive SPICE的工程实践。同时采购相关工具,搭建完整的开发工具链。2017年下半年,在领导的指导下,上汽大众正式启动面向Automotive SPICE能力等级2的过程改进项目。
Automotive SPICE评估的难度远超想象,上汽大众开发团队走过数不清的弯路,历经了四轮的改进项目,终于实现了项目预想。在这个过程中解决了两个困难点:
- 基于抽象的Automotive SPICE标准和有限的工程经验,创建过程规范
- 工作量与人力资源的矛盾
(1)创建过程规范
Automotive SPICE标准定义了各过程的目标,能力要求等概念,如何将这些的抽象的概念结合开发经验实例化,如何让过程规范既有效保证质量,符合Automotive SPICE要求,又要具备实际可操作性,不造成繁琐的流程负担,这对团队成员的Automotive SPICE理解深度和工程实践经验都是一个巨大的挑战。
公司层面在这块领域的文档是空白的。虽然上汽大众开发团队早期逐渐引入Automotive SPICE,积累了一些开发流程和实践经验,但还未形成符合Automotive SPICE要求的完整软件开发过程规范和模板。
创建过程规范的一道难关是Automotive SPICE标准概念化,团队成员对Automotive SPICE理解深度不足,造成制订的过程规范存在Automotive SPICE不符合项。而这些不符合项无法在项目实施过程中发现,需要在一轮项目结束后,由评估师进行差距分析才能得知。经过四轮的过程改进项目,上汽大众开发团队从考虑软件开发需要做什么事(能力等级1的要求),逐渐深入到考虑开发和管理的方法及方法论(能力等级2的要求)。不断优化过程规范,修复了近两千条问题,终于达到Automotive SPICE能力等级2的要求。
创建过程规范的第二道难关就是理念与实践的脱节。上汽大众开发团队在咨询公司的支持下,虽然经过大量的讨论和研究,制订了详细的开发过程规范,将抽象的Automotive SPICE转化为具体的可操作的指导规范。然而纸上得来终觉浅,绝知此事要躬行。在具体项目中实施,却发现理论与实践还是脱节的。开发团队开始了摸着石头过河,一边实践一边修正过程规范的不足。这期间有很多的困惑,有很多的争论,如何在Automotive SPICE标准要求和项目实际可操作性上达到平衡一直是个争论不休的话题。
(2)工作量与人力资源的矛盾
每一轮项目改进都意味着大量的工作。因为这不是一个增量项目,不是靠改进上一轮的不符合项即可。Automotive SPICE评估的是一个完整的项目,考察的是项目中每个时间点的工作是否符合Automotive SPICE要求。也就是说每一轮项目都是从头开始,从项目立项,项目规划开始。
此外,开发团队成员数量只达到其他OEM AutomotiveSPICE能力等级2的团队数量三分之一。每个成员在过程改进项目上身兼数职,同时又兼任量产项目的工作。但上汽大众开发团队凭着百折不饶的精神,修复了近两千条的问题,挺过四轮改进项目。在大量的工作负荷下,团队成员依旧保持初衷,经过不懈努力,克服了加班加点、资源紧张等诸多困难,实现项目预想。
3. 总结与展望
Automotive SPICE改进项目中,上汽大众开发团队成员经历了认知转变,对Automotive SPICE标准有了深度理解和丰富的工程实践。搭建了完整的工具链,完成工具为流程服务的配置,积累了大量工具操作指导书,对后续项目开展提供有力的工具支持。同时创建了完整的软件开发过程规范和模板,弥补了公司在这块领域的空白。基于这些过程规范,能使各项开发活动达到有理有据有依据,这些为产品的质量提供充分的保障。这对公司其他部门的软件开发有重大借鉴意义。
后续上汽大众开发团队将再接再厉,进一步优化过程规范和模板,定义裁剪规则。其他软件项目即可基于这些过程规范和模板开展工作。通过这种方式可以少走弯路,以快的方式达到Automotive SPICE要求,从而保证软件的质量。
目前达有Automotive SPICE能力等级2的OEM有上汽大众,上汽捷能和吉利。相信上汽大众在软件开发领域将不断进步,保持同行中的水平。
文章转载自公众号“仨人谈起”,作者:张芳
张芳,来自上汽大众BMS团队,负责BMS项目Automotive SPICE CL-2改进。