这几天有跟朋友谈到创业, 聊起一些关于移动互联网产品App的研发演进过程的话题. 觉得这个其实是一个程序员职业发展道路上需要深思的问题, 顺道在这跟大家一起聊聊, 欢迎大家拍砖.
一般来说, 国内的程序员出路无外乎技术路线走架构师, 管理路线转项目管理, 技术经理, CTO, 或者自己创业. 无论哪条路, 实际上都要求我们研发要有一颗产品的心, 其他职位都好理解, 管理一个产品的研发, 当然需要深刻了解产品的需求和实现. 然而架构师其实也是必须和产品职能挂钩的, 所谓架构, 模式最终都是服务于业务. 架构师只有很好了理解了整个产品, 才能搭建出符合产品发展的架构.
上段属于废话, 大家可以忽略:) 下图是我根据这几年的产品开发管理经验以及与多个产品经理们沟通的一个比较符合产品, 运营, 测试, 开发, 运维等工作方式的, 基于敏捷的产品研发周期图:
产品研发流程演进图
个人比较推崇的是一种敏捷思维, 以上整个是一个迭代周期的流程, 实际场景中, 每个阶段每个职能在做自己的任务的过程中也都是基于敏捷迭代式的. 而且在整个过程中, 各个阶段又都是并行的.
例如产品发布1.1的版本产品需求后, 开发开始这个版本的开发, 其开发过程也是迭代式, 先做任务分解, 然后小步多次迭代完成整个版本的需求. 与此同时, 产品就已经在做1.2版本的产品需求采集和分析了.
当然, 作为一个开发人员, 我最关注的还是研发阶段的工作, 下图也是根据项目经验的画的一个迭代开发工作流, 与大家分享:
迭代开发工作流
以上欢迎拍砖, 也欢迎各位留言说说你们当前的产品研发流程是怎样的, 大家各取所长, 共同进步.