
Agile SPICE介绍
1. 引言
Agile SPICE模型V1.3版本在2023年3月发布后,Agile SPICE逐渐被越来越多的人们所了解,而正如人们在实施Agile时所遇到的困惑一样,在实施Agile SPICE时也遇到了类似的困惑。
一个企业的Agile SPICE责任人,当被问及为什么要实施Agile SPICE时,说:“我们的项目实现不是传统方式,是通过敏捷方式实现的,如果用传统的方式评估ASPICE,我们会有GAP项。”
首先,这可能是对ASPICE的一种误解
ASPICE模型的要求是What层面的,采用传统开发方式,还是采用Agile开发方式,都可以满足ASPICE要求。ASPICE 不等于 传统开发方式。
以上3个图形,分别来自于Automotive SPICE PRM/PAM V3.1, Automotive SPICE in Practice, https://www.scrum.org
关于Agile与SPICE的关系,可参考如下文章:
其次,采用Agile方法时,满足ASPICE要求时的困惑
由于ASPICE领域的很多从业人员及Assessor其项目经验多是传统开发方法,在Agile方面的实践经验不足,加之对ASPICE内涵理解的不透彻。使得项目在采用Agile方法时,对是否能满足ASPICE要求,存在极大的困惑。
2. Agile
敏捷(Agile):满足敏捷宣言定义的价值观和原则的一系列方法和实践的总称。
目前业界使用比较多的敏捷方法包括:Scrum, KANBAN, Lean, Scrum of Scrums, SAFe等。(源自:《2022中国企业敏捷实践白皮书》)
众多的敏捷方法,往往具有如下的共同点:
- 适应于不确定性高的场景,拥抱变化
- 自我管理的团队
- 迭代开发、增量交付
- 强调价值(Value)
- 持续改进和学习
- 透明
- 针对下一次迭代有详细的计划,其它的计划都是概要的
Agile方法适合应用在什么样的场景下呢?
借鉴PMBOK中提到的如下STACEY矩阵(根据适用场景选择合适的开发方法)。
可以总结出:当技术的不确定性较高、需求较不明确的区域(即下图中的Complex和complicated区域),适合于采用Agile方法。
3. Automotive领域对Agile SPICE的需要
汽车电子/软件领域,出现了适用于应用Agile方法的场景:
- 车联网和自动驾驶技术的发展
- 项目和产品的不确定性较高
- 需求量大,而且存在不断变化和变更的情况
- 产品快速交付的要求
- 成本压力
OEM对质量的要求,没有变化:
- OEM对供应商的ASPICE CL2/CL3要求,没有变化
问题:如何使用ASPICE模型来评估采用Agile方法的项目?
- 不是所有的Assessor都对ASPICE模型内涵有深刻的掌握,并且可以对采用Agile方法的项目进行有效和客观的ASPICE评估
Agile SPICE,就是为了解决上述的这个问题:
- 帮助理解,在“采用Agile方法”的场景下,ASPICE的要求是如何的
4. Agile SPICE概述
图片源自Agile SPICE PAM/PRM V1.3
如上图所示,Agile SPICE包括2个部分:
(1)Agile SPICE特有的3个过程:
- AGL.1 Agile Work Management
- AGL.2 Agile Collaboration Management
- AGL.3 Agile Quality Management
(2)Agile环境下,SUP过程及工程过程的解释
接下来对这两个部分分别举例,来帮助读者理解这两部分内容。
5. AGL.1 Agile Work Management
AGL.1过程目的是:对Team的工作进行协同管理,以在工作边界和产品愿景和目标内进行迭代开发,从而输出业务和客户价值。
AGL.1过程是对Team的管理,可以替代ASPICE中的MAN.3 Project Management
AGL.1各BP之间的关系,如下图所示:
从以上BP的要求可以看出,在AGL.1中,考虑了项目采用Agile方法时的工作的策划和监控的要求,例如包括:
- 通过Product Backlog, Sprint Backlog建立项目范围和Iteration范围
- 通过例如燃尽图等的可视化方式控制工作进展
- 通过例如scrum的Retrospective会议进行持续改进
5. Agile环境下,SUP过程及工程过程的解释
Agile SPICE中,对在Agile环境下,SYS.1,2,3,4,5, SWE.1,2,3,4,5,6, SUP.8,9,10等过程要求进行了解释。
摘录如下:
从以上的摘录内容,可以看出:
项目在采用Agile方法时,各个层面的需求、设计等都还是要有的,只是开发的时机、展现的方式等会与采用传统开发方法的项目不同。
推荐阅读:
- 过程模型(ASPICE, CMMI)与敏捷(Agile)
- VDA Guideline解读:敏捷开发环境(Agile Environment)
- 谈谈汽车行业中ASPICE评估的主观性与客观性
- ASPICE 与 V Model
文章转载自公众号:仨人谈起
