我们终于拥有自己的软件能力成熟度(CSMM)标准啦!| 践行者第38期
- 2024-04-12 13:30:00
- 朱美玲 原创
- 795
近年来,中国软件行业蓬勃发展,对于提高软件开发能力和质量的需求日益增长。在这样的背景下,中国软件能力成熟度(CSMM)标准应运而生,在业内受到了广泛欢迎。
本期践行者邀请到了联想中国服务技术中心PMO尚思原,CMMI DEV/SPM主任评估师、麦哲思高级咨询顾问徐斌以及中国电子技术标准化研究院、CSMM标准负责人商迪,来和我们一起聊聊CSMM。那么CSMM认证究竟为什么备受关注和认可呢?
一、直播实录
Q1:中国软件能力成熟度(CSMM)标准是什么?
CSMM,即“软件能力成熟度评估”,又称“中国版CMMI认证”,是根据我国国内实际发展情况制定的软件企业能力提升特征的国内软件能力成熟度评估标准。 国家标准正在积极制定中,团体标准已于2021年6月8日正式发布,旨在结合中国国情和中国软件企业特点,从组织过程、项目过程和工程能力等多个方面对软件企业的软件能力成熟度进行评估。
中国软件能力成熟度(CSMM)标准模型界定了软件过程能力的五个等级,分别是成熟度初始级、过程规范级、组织标准级、量化管理级和卓越创新级,高等级的达成是基于低等级的充分实施。
01 初步管理级
软件过程和结果具有不确定性;
02 过程规范级
开展能力要求的完整活动,达到能力子域的目标,按计划实现预期的结果;
03 组织标准级
建立组织标准过程、剪裁指南等过程资产,项目根据自身特征对其进行裁剪并实施,向组织贡献过程资产;
04 量化管理级
运用统计或其他数据分析技术,对过程性能目标、过程性能和过程之间的关系进行量化管理;
05 卓越创新级
通过技术和管理的创新,实现组织业务目标的持续提升。
Q2:我们为什么需要自己的软件能力成熟度标准?
- 国家政策指导
提升软件工程化能力、软件标准化能力、软件质量管理能力和软件价值保障能力
- 软件组织需求的变化
随着信息技术的不断发展,对软件服务的能力有了新的挑战。
- 咨询与评估服务的完善
软件人才的数量和质量都在提高,优秀的咨询评估服务机构增多,为标准的推广和应用提供了保障。
- 国外成熟度模型的局限性
国外的模型往往难以完全适应我国的实际国情和发展需求
Q3:CSMM与CMMI是什么关系?
东伟老师:
CMMI和CSMM并未规定公司必须采取特定行动或建立特定流程的具体形式。然而,CMMI或CSMM都设定了一套标准,用以评估所建立的体系是否达成相应的水平或目标。因此,各公司的表现形式可能各不相同。
徐斌老师:
CMMI本身并非一个体系,对于“体系”一词表达含义并不完全相同。当下,绝大部分人提及“体系”时,通常指的是公司内建立的一整套规章制度,例如关于软件开发、测试管理等方面的规范要求。这种体系化的构建并非局限于某一方面,不是片面的而是完整的。CSMM同样不是一个体系,根据商老师刚刚提到的,它实际上是一系列优秀实践的汇集,是软件行业从业者普遍认可的。这对我们提升软件研发的效能是有帮助的、有价值的、能加分的、能解决问题的,有助于实现企业内部的业务目标。
我们目前要求纳入CSMM,换一句话来说,我们要做什么事情。通过做这些事情能够反映出组织所具备的某种能力,并将这些被大家广泛认可的优秀实践集合在一起,这便是所谓的“CSMM”。它并不是某个公司的流程标准,甚至在公司里面可能看不到一个流程从头到尾怎么流,所有公司不可能用完全一样的流程来工作。在用词方面,我们可以普及一下,“体系”指的是公司的所有流程;而我们更倾向于称CSMM为最佳实践、优秀实践的集合。当下,我们已经以模型和国家标准的方式提出了这一模型。
Q4:企业通过CSMM等级评估有什么好处?
尚思原老师:
无论做CMMI还是CSMM,我认为一个企业最重要的是面对评审或认证时的态度和心态。
在大家印象中,联想是一家擅长硬件的企业,但其实我们在软件方面投入了大量的精力。从我们自身角度来看,我们非常重视整个软件研发过程的管理。我们并非将CSMM视为一种认证或资质,而是真正通过这一过程提升我们自身的成熟度,以更快速、高效、高质量地完成软件开发,更有效地交付软件的价值。
所以,我认为对企业而言,更重要的是将精力集中在这一点上,如果有真真正正想把事情做好的心态,那么其实非常适合做CSMM。我也知道目前存在许多企业仅为了获得证书而进行认证的现状,如果仅仅为了获得证书,无论是CSMM还是CSMM都没办法帮助企业真真正正地提升。
Q5:CSMM等级评估需要经过哪些流程?
- 自评估
我们刚上线了一个软件能力成熟度公共服务平台(http://www.csmmep.cn/home/page),企业可以先注册进行自评估,判断自己所对应的等级,更方便企业准备后续评估以及理解标准。
- 预评估
申请评估时需要提交申请材料,这些材料不涉及项目的敏感信息,评估重点主要是考察企业当前的管理水平和管理理念。如果你认为你的申请等级和管理思路相符,我们会安排预评估的活动,预评估需要到现场执行。
在现场执行时,我们可以与企业负责人面对面沟通,出于信息安全考虑,我们可以在现场签署保密协议,以便更深入了解企业项目管理和开发过程中的改进痕迹。
- 正式评估
不同等级的评估确实会涉及不同的工作量,与我们熟知的CMMI 评估有所不同。评估团队的主要成员大多由评估机构的专业人员组成,或者是受雇于评估机构的兼职评估师。我们希望通过一次评估,能够邀请更多专家评估师前往企业,凭借各自不同的经历经验来帮助企业发现更多改进方面,并提供更多改进建议。这种方式也可以避免评估过程中某个角色占据过大比重的问题。
- 评估报告-颁发证书
评估完成后,我们会将此次评估的过程形成评估报告。我们发现大家现在对证书的需求减弱,对评估报告的需求反而增加,因为评估报告中的不足和建议实际上展示了评估的实质内容。为确保内部各评估组或评估人员的评估尺度和标准一致,我们将进行技术审查,并生成详尽的评估过程报告和企业实施文件。通过后,我们的管理机构会定期组织专家评审会,针对不同等级可能会进行一些答辩以确保结果的准确性和评估的客观性,随后进行相应的公示和公告并颁发证书。
Q6:CSMM需要哪些生态合作伙伴?
从咨询到评估再到培训,整个产业链条都需要大家的参与。
- 对企业来说
企业,特别是软件企业,是这一链条最核心的部分,推动了整个行业的发展并创造价值。无论是标准化机构、咨询机构还是评估机构,我们都希望软件企业能够找到一条路径或一个方法,以确保随时对其当前的水平和能力有清晰的定位、识别存在的差距,并在有限资源下找到急需改进的地方。
- 对咨询机构来说
基于这一现状,无论咨询机构是什么模型,只要具备相应的服务能力就可参与其中。我们更加希望培训机构能够参与后续的模型解读或相关模型应用课程培训。如果咨询机构在咨询过程中能够找到企业的痛点并帮助解决,从而获得认证,这样的咨询机构或合作伙伴是我们很迫切需要的。
- 对培训机构来说
随着不同人员的认定和培训,我们也希望逐步展开如估算方法、测试手段、测试方法、项目管理等培训。这些内容远远超出CSMM标准本身的范畴,但将为我们企业带来价值。因此,培训机构也是我们生态系统当中必不可少的一环。
- 对个人来说
我们行业内已经涌现了很多优秀人才。这些优秀人才需要一个机会将他们的经验传播出去,让更多人了解优秀的方法。实际上,CSMM为大家提供了一个平台,例如CSMM在开发领域、大模型、生成式技术、软件开发、测试等方面都有着出色的运用。我们可以通过各种手段和方式,让大家将解决方案更广泛地提供给需要的人群。因此,CSMM是一个模型、一个标准,但我们更希望构建一个生态系统,像禅道、融管理社区都是合作伙伴中非常重要的一环。
生态伙伴合作方式有以下6个方面:
- 企业与咨询机构合作
企业聘请咨询机构,咨询机构为企业提供定制化的改进方案,帮助企业设计并实施软件过程改进计划
- 企业与培训机构合作
企业委托培训机构为其员工提供软件能力成熟度模型的培训,提升员工对模型的理解和应用能力
- 企业与评估机构合作
企业聘请咨询机构,评估机构为企业提供详细的评估报告和建议,帮助企业持续改进软件过程
- 各机构间的合作
通过联合培训、资源共享与互通,合作研发可以保持行业领先地位,为客户提供更加先进和实用的解决方案实现互利共赢
- 个体人员与企业合作
企业可以聘请具有丰富经验的个体人员作为软件能力成熟度模型的顾问或导师,指导企业的改进工作
- 个体人员与机构间的合作
通过资源共享,机构和个体人员可以扩大业务范围,提高市场竞争力,实现共赢发展
二、送给大家的一句话
商迪老师:
践行持续改进,迈向卓越之路。
徐斌老师:
希望各位小伙伴在以后的工作中能够敢于挑战。过程改进虽然会让大家非常痛苦,但这个痛苦实际上是改变过去的习惯。习惯改变后,你会有很大的收益。为了能够获得这个收益,大家一定要去挑战自己。
尚思原老师:
如今是一个科技高速发展的时代,以AI为代表的先进技术,可能在未来完全颠覆我们软件工程行业,我们无法预料未来的软件工程会是什么。我认为我们的管理思维是跑不过科技的进步,在这种情况下我们更需要真真正正地把过程管理做好。CSMM在这时候推出是特别应景的,特别需要大家特别关注,也希望CSMM 能够真正帮助大家管理好企业,让企业日新月异,更好地发展。
1. 具有独立法人地位:企业必须是依法成立的独立法人,具备合法的经营资质和业务范围。
2. 建立软件过程能力管理体系:企业应依据《软件过程能力成熟度模型》标准,建立软件过程能力管理体系,并确保该体系已有效运行6个月以上。这要求企业在软件开发、项目管理、质量控制等方面有明确的流程和规范,并能够持续地进行优化和改进。
3. 提供客观证据:企业需按照申请等级提供覆盖软件过程能力的治理、开发与交付、管理与支持和组织管理等有效的客观证据。这些证据可以包括项目管理计划、软件开发文档、测试用例、用户反馈等,以证明企业具备相应的软件能力成熟度水平。