沙盘其实是在今年我经常听到的名词,在去客户落地的时候就是在做沙盘,而这次DevOps培训也有沙盘。凤凰沙盘,听完名字当初我的感觉就是一脸懵逼,特别是听说沙盘的参与授权费很贵的时候,我就在琢磨是不是和我以前玩的FF7一样,可以打个召唤兽啥的?
当看到教室里面这么多东西的时候我就惊呆了,那厚厚的一沓卡片就说明了其复杂度,而7 4个角色,注定了是一个与人逗其乐无穷的过程。
先简单说一下整个沙盘游戏的规则吧,这是一个团队合作的游戏,涉及到的角色包含(CFO,Retail Operation,IT Test Team,Application Developement,Lead Engineer,IT Support,Techology Operation,Change Management、CIO,CEO,CISO,VP IT Operation,HR)。每一个角色在项目中都会包含其应该负责的行动,这些行动依赖于工作量(有一个体力槽,完成一个任务需要多少体力,用来控制可以完成的任务数)、资源信息(比如有什么环境以及依赖)、特殊的检查(测试项)等。在游戏开始的时候由客户发出一个需求(赚钱的开发需求、扣钱的缺陷修复),CFO会对这个需求进行分析决定是否进行开发,如果合适将由后面的IT Test Team,Application Developement,Lead Engineer,IT Support,Techology Operation,Change Management相关人员完成从团队衔接到应用开发到环境部署到测试上线的过程。
当然我觉得我说完上面的流程大家估计还是不明白,自己玩过就知道怎么回事了。作为Test Team负责人,对自己这块还是比较熟悉的,主要任务是跟踪验证整个需求的完成情况是否与规划匹配,包含
1.确认Application Developement与Change Management是否在预定工时中完成了对应的任务
2.Lead Engineer与IT Support与Techology Operation是否在预定工时中完成了对应的任务
3.CFO与HR与Retail Operation是否在预定工时中完成了对应的任务
而完成这一切都依赖于下面这张表,在项目立项时填写项目编号及项目名称,根据Retail Operation的安排,决定是在第几个周期开始项目,在项目完成时检查基本工作内容及对应的当前服务器各个环境版本。
具体的过程这里不多描述了,是一个迭代优化的过程,大家都玩的很开心。
Lead Engineer在给大家介绍项目
Test Team在和大家确认版本是否达标
在大家的通力合作下,项目进行的非常顺利,按照我们的说法一直在赚钱,即将上市套现。
上面的都能算废话,接着说一下项目总结:
- 项目初期如何了解各个部门的工作和需要你协助的是非常重要的。
- 把项目从push变成get很重要,等待推动别人工作是很困难的,但是如果把任务放在这里别人主动获取就会快很多。所以看板模式在这个时候很有用。
- 将自己的技能赋能给相关部门,在你忙不过来的时候别人协助你是非常有效的。
- 自动化!自动化!自动化!在项目流程规范后,发现没有DevOps这样的工具或者自动化平台是完全不行的,大量的时间都会出现在测试部门阻塞的情况,一方面要告诉大家测试需要验证的点,一方面又要在上线前验证用户需求,版本需求,环境需求等。
- 敏捷小团队靠吼很有用!
- 减少中间件及并行模式,做单件流水线效果很好。
- 回滚版本的问题值得大家思考!docker绑定模式确实很有用。
仔细想了一下自己做个基于DevOps的沙盘游戏完全有操作空间的,有DevOps培训及沙盘游戏经验的朋友欢迎来一起探讨。
最后送上导演处女作