百人团队敏捷转型日记 第一集 架构师没了、版本管理的蜕变
来源:互联网 发布:下载scratch软件 编辑:程序博客网 时间:2024/05/22 01:55
首先简单介绍下背景:
博主所在软件公司的某产品线一个百人开发团队,自2015年至今,从传统的瀑布开发模式,
成功转型敏捷开发管理(SCRUM+XP要素)。有效提高了客户需求响应速度、
开发团队工作效率,给公司带来了新的活力,变革过程中也对敏捷方法做了改进。
博主有幸在其中担任一个开发组组长和版本管理组成员,此处将博主在整个转型过程中,
看到的一些弯路、以及成功经验分享给大家。
文章会涉及到 组织扁平化、持续集成、自动测试、自动部署、SRUM框架、结对编程等敏捷要素。
以及敏捷倡导的价值观:
个体与交互重于过程和工具、可用的软件重于完备的文档、客户协作重于合同谈判、响应变化重于遵循计划。
这是一场带着温度、历历在目的思想碰撞,欢迎大家来和博主交流。
*
第一集 架构师没了 版本管理的蜕变
2015年之前,博主所在产品线(综合管理平台)还是传统的瀑布开发模式,整个产品线子项目多达十几个。各子项目各自为战,子项目之间依赖关系多且不明确,实际上线的产品各子项目版本不统一。整个产品线软件版本管理很难控制。
2015年初,突然有一天,听说公司要引进敏捷。研发基本上只听过敏捷的一些概念,甚至连项目经理也不甚了解。
公司采取的方式是,专门请了敏捷培训公司首先对项目经理进行了两周的培训。博主大学学的软件工程,加之之前参加过
一些敏捷的沙龙活动,所以对团队一些想法理解的要快些。很快,一些实际的改变发生了。
- 架构师没了,自组织的团队、项目经理–>敏捷教练
首先,之前的管理模式中,一个项目中最关键的人是 项目经理+架构师。项目经理掌控着项目的进度,架构师决定了项目的整体设计,研发人员则在整体架构的基础上进行模块设计。在敏捷框架中,更强调团队的自组织能力。
首先被取消的是研发团队中这种明显的上下结构。各个研发成员在开发过程中,有对自己负责模块的充分自主权并承担相应责任。模块开发完成后,只对于关键的代码邀请团队成员进行代码评审。
项目经理的职责从严格把握项目进度,变成在迭代起始阶段指定粗线条的任务,然后让团队成员细化任务并给出自己的计划。
更多的自主权放给团队成员。项目经理关注关键时间点和关键任务,并保证敏捷活动在团队中的实施。
总结:
自组织的团队,要求团队成员的平均技术水平较高,因为没有架构师的团队,产品质量更多的依赖每个成员的技术水平。
同时自组织带来的好处是,可以锻炼整个团队的成员,可以激发团队的积极性和活力。
我们在实施的敏捷的初级阶段,确实带来了一些产品质量下降的问题,这一方面要测试团队的方法改进(自动化测试、单元测试)。另一方面在开始阶段可以使用经验老道的开发人员和新人结对开发、定期组织代码评审来解决。 - 研发资源池的出现,跨团队的研发人员,团队之间人员互相流动,团队活了.
传统的开发模式中,往往一个项目组中有些人很忙有些人则工作不饱和。这种情况主要是由于成员的工作情况不够透明,一般一周项目组才开一次周会。而在敏捷中,故事墙+每日站会则可以解决这种工作不透明的情况。加之统一的工时管理,可以直观的看到某个成员的工作饱和度。
在整个基础上,一个新的部分“研发资源池”出现了。这个部门整体上掌控各个研发团队的人力情况。当某个项目缺人手,就可以从其他项目调其他成员过来。团队人力情况透明化,人员灵活分配,团队就盘活了。
总结:
在具体实施的过程中,会有各种现实的问题,有些项目组虽然有空置人员,但是项目经理总是有着被挖人的感觉不愿意放人。而团队成员也会
有自己的喜好,可能更愿意待在一些轻松、自己喜欢的项目里。
这种问题一方面公司要全局意识传递项目经理,对于各个项目的实际情况要把握准确。有一就有二,我们在实施的前一阶段确实有遇到过阻力,但是当整个团队都对这种流动形式达成共识后,就会顺利好多了。执行者要坚决。 - 版本管理组–>敏捷活动中的关键职能团队
因为敏捷之前各个项目组各自为战,整个产品线的版本管理工作基本上停滞于半年出一次大版本,对各个子项目的基本没有控制力。
敏捷开发中,强调快速的迭代,及时响应需求。版本管理工作在敏捷活动中扮演了重要的角色。
迭代的周期、迭代中各关键时间点的确认、持续集成、自动部署。这要求版本管理必须对各个项目提高掌控力。
博主有幸参与了版本管理组的工作,在后续的篇章中将详尽描述。
欢迎大家留言讨论,另有相关的微信讨论群,欢迎加入。
3月19号之前有效。
0 0
- 百人团队敏捷转型日记 第一集 架构师没了、版本管理的蜕变
- 百人团队敏捷转型日记 第三集 敏捷实施过程中几个拐点
- 百人团队敏捷转型日记 第二集 持续集成要一步步来
- 敏捷团队转型
- 敏捷转型 - 团队(一)
- 转型:产品团队与架构师
- 转型:产品团队与架构师
- 转型:产品团队与架构师zz
- 给敏捷团队中的架构师的10个建议
- 给敏捷团队中的架构师的10个建议
- 给敏捷团队中的架构师的10个建议
- 给敏捷团队中的架构师的10个建议
- 给敏捷团队中的架构师的10个建议
- 给敏捷团队中的架构师的10个建议
- 移动互联网产品团队的敏捷转型之路
- 求助-敏捷开发团队的管理问题
- 敏捷团队管理:把握介入团队的程度
- 敏捷团队管理:把握介入团队的程度
- Matlab与C++混合编程(依赖OpenCV)
- 天声人語 20160313 農業高校の挑む夢
- Android Studio 使用NDK编程调用第三方动态库问题记录
- 阶段总结(第一周到第四周)
- 枚举大小sizeof 中枚举的大小详解
- 百人团队敏捷转型日记 第一集 架构师没了、版本管理的蜕变
- HBase Snapshot解析
- 日经春秋 20160313
- Windows 中 cmd 下 FTP 命令的简单使用
- 第三周项目4-穷举法-委派任务
- for循环不加退出条件、equals的作用
- volatile关键字
- 剑指offer代码分析——面试题13在O(1)内删除链表结点
- BestCoder Round #75 King's Game