基于迭代的软件项目管理沙盘的设计
2018-08-27王前仲恺农业工程学院刘通东方瑞通北京咨询服务有限公司
王前 仲恺农业工程学院 刘通 东方瑞通(北京)咨询服务有限公司
沙盘源于西方军事上的战争沙盘模拟推演,用来分析各种因素对战役进程或结果的影响程度,后来被引入到教学领域,尤其是企业、经济管理方面,起到了很好的教学效果。[1]
一、国内外沙盘教学的现状
沙盘教学模拟企业实际运营过程,并通过小组对抗等形式让学生了解企业的经营管理、供应链管理、财务管理等多方面的知识,培养学生的团队协作、风险控制和企业资源规划等诸多能力。目前,很多高校都开设了类似的沙盘实训课程,但国内的沙盘教学主要集中在市场营销、企业管理、人力资源管理、连锁经营管理、物流管理及财务管理等相关专业,软件项目管理教学中很少引入。[2]
国外有些用于软件项目管理的沙盘产品,但由于国内外的市场环境及文化习惯差异,并不适合国内的软件行业。如:①国内外软件企业的岗位、角色差别较大;②缺少一些具体支持软件企业项目管理的模板和过程文件;③没有兼顾软件项目中的传统项目管理、敏捷项目管理、开发运维一体化(DevOps)及自动化运维服务管理(AIOps)的整合应用场景和详实案例。
二、国内常用沙盘并不适合软件项目管理的教学
国内现有的教学沙盘主要是企业管理模拟沙盘、企业物流管理沙盘及企业资源管理沙盘等。这些沙盘模型一般包括五个区域:营销与规划中心、生产中心、财务中心、物流中心和信息中心,如图1所示:
图1 常用沙盘模型简图
常用沙盘中的角色一般包括CE0、CFO、营销总监、生产总监、采购总监等[3],而软件项目管理中的角色要包括和软件项目相关的软件项目经理、配置管理、运维管理、服务部门等角色。软件项目的开发、运维流程和传统生产项目存在很大区别,软件项目中常用的敏捷开发采用迭代的思想,这是普通生产企业所没有的。因为流程不同,沙盘的记分规则也必须与之适应。
三、基于迭代的软件项目管理沙盘的设计
综上所述,为了在软件项目管理中引入沙盘教学,需要设计新的沙盘模型,要充分考虑目前国外沙盘的不足,结合当前开发运维一体化管理理念(DevOps)、IT服务管理最佳实践(ITIL)、传统项目管理标准(PMP)和敏捷项目管理方法论(ACP),考虑这些理论彼此融合的可能性和融通性,适合中国企业文化和案例场景。
总的来说,基于迭代的软件项目管理沙盘包括角色、卡牌、推演规则和记分规则几个部分组成:其中角色、卡牌又分为几种类型,推演规则也就是迭代的规则,卡牌在推演中起到角色定位、事件驱动等作用,记分规则用来统计最终的分数。
(一)角色设计
本沙盘初步设计每个组13个参演角色:CEO、人力资源总监、财务总监、质控经理、审计总监,负责营销规划;项目经理、需求分析组、架构设计组、配置管理组、界面设计组,负责设计开发;服务部经理、故障处理经理、技术问题经理负责客户服务。另外一个组织角色,一般由沙盘指导老师担任,负责卡牌发放、迭代计时、得分审核及分析总结。
(二)迭代设计
本沙盘设计了共五次迭代,每轮迭代所需完成的任务由组织者通过发放特定样式的卡牌来体现。
第一轮迭代是“需求评估”,收到“项目任务卡”,进行需求分析,完成制定可行的《组织战略计划》、《项目章程》和《项目管理计划》;并将其放到记录板,在沙盘演练过程提供指引。第二轮迭代是“概要设计”,主要任务是完成《总体设计说明书》,制定项目所需的范围基准、进度基准和成本基准。细化《范围管理计划》、《需求管理计划》、《进度管理计划》、《成本管理计划》、《质量管理计划》、《过程改进计划》、《人力资源管理计划》、《沟通管理计划》、《风险管理计划》、《采购管理计划》和《干系人管理》等。第三轮迭代是“详细设计”,任务是细化具体工作任务的权责矩阵,即通过RACI(执行、负责、咨询和知情)矩阵把每个具体工作分配给适合的角色;提交《客户安装和配置手册》等对应文件等。第四轮迭代是“编码测试”,任务是处理编码测试过程中的问题和故障,交付成果和验收,最终确保每个项目或特性的目标都已完成;编制《项目收尾文件》。第五轮迭代是“实施维护”,任务是系统部署,进行维护和后期服务。
(三)卡牌设计
沙盘的运转离不开“卡牌”这种特定的道具,每个角色有特定的卡牌来标识;任务的提出,问题、故障等事件的发生是通过发放或传递“卡牌”来体现。为此本沙盘设计了角色扮演卡、测试卡、业务项目卡、功能卡、研发任务卡、故障卡、问题管理卡、任务变更卡、培训卡等16种卡牌,根据每种卡牌的需求量统计,全部卡牌数超过200张。
(四)记分规则设计
每一轮结束后,在该轮的所派发沙盘卡牌的指引下,开展流程工作。根据每个角色的正确指派、沙盘卡的摆放、配置文件的设置、记录板所示的内容,沙盘指导老师可以根据实际的绩效打分,并通过自制的沙盘算分记录控制系统来记录。沙盘算分记录控制系统根据记录自动出给每轮的正确率、收入等绩效考核指标,我们可以通过沙盘算分记录控制系统算出的指标数值,结合沙盘演练的现场实际情况,在收入、完成率、创造力、团队管理、风险管理、进度管理6个考核指标上进行综合评分。这6个指标相互制约,所以通过沙盘演练可以把这些制约因素协调好,寻求制约因素彼此的平衡,从而体现出沙盘最佳的实践效果。为了客观评价每项指标,将绩效指标每一单项进行标准化转换,以100分为计。
四、结语
与普通的企业、经济、项目管理相比,软件项目管理具有自身的特殊性,应该针对这种特殊性制定合适的沙盘教学模型。基于迭代的软件项目管理沙盘的设计吸取了软件项目管理的精髓,结合了当前软件工程领域的新理论,并充分考虑了软件项目开展过程中的各种细节问题。