第一篇|搞懂软件项目是怎么运转的,传统 VS 新型开发模式
很多人做开发、测试或项目管理时,会接触到很多概念:项目生命周期、敏捷开发、持续集成、DevOps。 很多概念看着零散,本质都在回答同一个问题:一个软件项目,是如何从想法落地的?今天我们先来搞懂软件项目的完整生命周期,分清传统模式和现代迭代模式的区别。一、传统软件项目生命周期
1、调研阶段
项目最开始不是写代码,而是理清需求。 由产品、业务、负责人一起梳理:要解决什么问题、目标用户是谁、现有能力能不能复用。调研阶段输出方向,而不是输出代码,避免后续开发盲目踩坑。2、设计阶段
调研回答 “做什么”,设计回答 “怎么做”。 把需求转化成页面流程、交互逻辑、项目计划。 注册页面字段、错误提示、跳转逻辑、验证码如何处理,全部在这个阶段确定。 开发、测试、运维也会参与进来,评估技术实现、部署难度。3、开发阶段
设计定稿之后,进入开发阶段。 开发不只是写业务代码,还包含数据库设计、接口开发、页面开发、权限控制、异常处理、日志联调。 后端处理业务逻辑,前端实现交互,团队之间保持同步协作。4、测试阶段
开发完成不等于可以上线。 测试人员验证功能流程、异常场景、兼容性、并发稳定性,发现 bug 提交给开发修复。 全部验证通过,达到上线标准,才可以进入运营。5、运营阶段
上线不是项目结束,恰恰是真正的开始。 上线部署、线上问题排查、收集用户反馈、迭代优化性能、安全维护都属于运营阶段。 用户会持续产生新需求,产品需要不断迭代更新。传统生命周期总结:调研 → 设计 → 开发 → 测试 → 运营,流水线式阶段推进。
二、新型项目生命周期
互联网业务变化飞快,传统大阶段模式响应速度跟不上市场,就诞生了新型项目开发模式。1、重视团队并行协作
大项目拆分成多个子模块,不同团队并行开发。 比如电商拆成用户、商品、订单、支付模块,各个小组独立负责,不用互相等待全部完工。2、持续集成
不再等一大块功能做完再合并代码。 代码提交自动触发构建、自动化测试,尽早暴露代码冲突和缺陷,降低后期集成风险。3、敏捷开发:小步快跑
敏捷不是一套固定流程,是一种思维: 大需求拆小,短周期迭代,交付可用版本,根据用户反馈持续调整。 注册功能不用一次性做完,先做基础注册,后续迭代再加验证码、第三方登录。4、DevOps 打通开发运维
解决 “本地运行正常,上线就报错” 的痛点。 打通开发、测试、运维,依靠工具实现自动化部署、线上监控、故障快速回滚。5、持续交付
软件随时具备可发布上线的能力。 形成闭环:持续规划→开发→构建→测试→部署→监控→收集反馈。本篇小结
传统模式是一条直线,按阶段走完;新型模式是闭环循环,不断迭代优化。 没有绝对好坏,业务场景不同,选择的流程也不一样。