为了,能够给你清晰的介绍项目开发流程,我将整个项目开发流程,绘制成了下面一张图:
整个项目开发,按照开发流程,分为以下几个阶段:
- 需求阶段:需求阶段是将一个抽象的产品思路具化成一个可实施产品的阶段。在这个阶段,产品人员会讨论产品思路、调研市场需求,并进行需求收集和分析,整理出一个比较完善的需求文档。最后,产品人员会组织相关人员对需求进行评审,如果评审通过,就会进入设计阶段。
- 设计阶段:设计阶段,是整个产品研发过程中非常重要的阶段,包括的内容也比较多。常见的设计点有:
- 产品设计:由产品人员负责,设计出产品的形态、功能和交互,并输出详细的产品设计文档。该步骤最终将一个抽象的产品量化,变成一个可以实施的产品。后期的研发工作都是围绕着该产品文档进行的;
- 交互设计:由交互设计师负责,参照产品设计文档,将产品用原型图和交互流程的形式展现出来;
- 视觉设计:根据需求文档和交互设计原型设计出产品视觉界面。例如视觉风格定义、图标设计、页面设计和页面颜色等;
- 技术设计:技术设计包含了很多内容,例如研发流程设计、研发规范设计、系统架构设计、软件架构设计、前端技术设计、后端技术设计、数据库、API 接口设计等,所有跟技术实现相关的点都可以在这一阶段进行设计。
- 技术评审:所有的技术设计都需要经过技术评审,评审通过后才能进行实际的开发;
- 需求排期:这一步,项目经理会组织产研人员对需求进行细化和排期,需求排期尽可能细分,这样才能更好地评估工作量和风险。
- 开发阶段:开发阶段,从它的名字你就知道了,这是开发人员的主战场,同时它可能也是持续时间最长的阶段。在这一阶段,开发人员根据技术设计文档,编码实现产品需求;
- 测试阶段:测试阶段由测试工程师(也叫质量工程师)负责,这个阶段的主要流程是:测试工程师根据需求文档创建测试计划、编写测试用例,并拉研发同学一起评审测试计划和用例。评审通过后,测试工程师就会根据测试计划和测试用例对服务进行测试;
- 发布阶段:发布阶段主要是将软件部署上线,为了保证发布的效率和质量,我们需要遵循一定的发布流程;
- 运营阶段:运营阶段是研发流程的最后一个阶段是运营阶段,该阶段主要分为产品运营和运维两个部分。
- 产品运营:通过一系列的运营活动,比如线下的技术沙龙、线上的免费公开课、提高关键词排名或者输出一些技术推广文章等方式,来推高整个产品的知名度,提高产品的用户数量,并提高月活和日活。
- 运维:由运维工程师负责,核心目标是确保系统稳定的运行,如果系统异常,能够及时发现并修复问题。长期目标是通过技术手段或者流程来完善整个系统架构,减少人力投入、提高运维效率,并提高系统的健壮性和恢复能力。