敏捷开发—大型项目团队的持续快速交付之道

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/shenmagege/article/details/78440287

大型软件的团队有效协作对项目成功起到越来越关键的作用,“敏捷之旅广州站——精进之旅”的活动,请来了业界敏捷项目管理的专家做了几场公益性的讲座,涉及敏捷开发应用和互联网项目管理的一些实用的方法,本文结合个人体会做个总结。


敏捷开发实际上是一种增量迭代开发模式,对于直接面向市场最前端用户、前期需求不太明确项目比较合适。通俗点说是小步快跑,边跑边看用户反应,然后根据情况适当调整项目计划,也可以说是一轮又一轮的PDCA循环。


类似360安全卫士、QQ电脑管家这种大而全的软件,幕后都是数百人的团队相互协作来实现持续更新发布,具体支撑快速发布版本的方法有下面四点。


一、统一阶段目标


就是在一个周期内确定需要做什么功能,要实现什么目标,整个团队奔着统一的目标去行动,中间不要插入新功能干扰进度。确定阶段目标后,团队上车开始刚活,目标完成,团队下车准备进入下一轮功能迭代。


二、解耦


学计算机的人对这个词应该比较了解,通俗点讲就是保持独立性,解耦具体分三个方面:

1、技术解耦

即从下至上:底层核心架构、应用程序、UI有清晰的分层,这样做功能扩展开发会比较方便;

2、业务解耦

即业务功能模块的独立性,大的功能需要尽量拆分成独立的特性模块,便于划分开发任务 ;

3、团队解耦

将大的团队划分成独立的团队(5-8人为佳),每个团队负责独立的特性模块开发,团队包括产品需求分析、项目管理、开发人员、UI,所谓麻雀虽小,五脏俱全。


三、配置管理体系


一个大的项目被划分为不同的特性功能模块后,每个特性功能可以认为是这个大项目的一个配置项。


配置管理体系的主要特点:

每轮迭代周期中,开发并测试OK的特性功能模块可以先发布,不用等待这个周期内尚未开发好的功能;

云端控制,即发布出去的功能如有问题,能通过云端控制回滚;


四、自动化体系支撑


即自动化构建系统、自动化测试、自动环境部署、自动监控等辅助支撑快速发布的东西。


END


个人微信号:gdengjun

添加时请注明:[城市] [行业]等信息



作者:邓俊

坐标广州 项目管理和职场分享


猜你喜欢

转载自blog.csdn.net/shenmagege/article/details/78440287