深色模式
Phases of the SDLC 软件开发生命周期的各个阶段 🔄💻
在本视频中,您将学习 软件开发生命周期(SDLC)的各个阶段,了解每个阶段的详细描述,并识别与每个阶段相关的任务。
📝 SDLC的六个阶段
一般来说,SDLC 过程包括六个主要阶段:规划(Planning)、设计(Design)、开发(Development)、测试(Testing)、部署(Deployment) 和 维护(Maintenance)。
每个阶段是 独立的,意味着前一个阶段的任务与下一个阶段的任务不会重叠。
最初的 SDLC 采用的是传统的 瀑布模型,其中各个阶段是线性执行的,但后来为了适应需求变化,SDLC 已经被调整为引入迭代的开发方式。
(瀑布模型及其他软件开发方法将在后续课程中讨论。)
需要注意的是,一些组织可能会使用不同的术语来命名各个阶段。例如,“规划” 阶段也可能被称为 “需求”、“战略” 或 “分析”。此外,一些组织的阶段数量可能会更多或更少。
1️⃣ 规划阶段(Planning) 📝
在规划阶段,主要的任务包括:
收集、分析、记录和优先级排序 需求。
考虑以下因素:
解决方案的用户群体
解决方案的总体目标
数据输入和输出
法律和监管合规要求 ⚖️
风险识别
质量保证要求
人力和财力资源分配
项目调度等。
在规划过程中,劳动力和物料成本会被估算,并与时间约束相权衡。同时,项目团队成员会被识别,并提出每个成员的职责。如果利益相关者在定义需求时遇到困难,开发团队可能会在规划阶段创建原型,以帮助明确需求。
原型制作:
原型 是产品的一个小规模复制品,主要用于收集利益相关者的反馈并确立需求。
尽管原型制作通常发生在规划阶段,但它可以在 SDLC 的任何阶段进行,特别是在需求需要重新考虑或澄清时。
当需求收集完成后,它们会被整合成一份 软件需求规格说明书(SRS),并且需要得到所有利益相关者的清晰理解与批准。开发人员也会在这一阶段参与,以确保他们对需求有充分的理解。💡
2️⃣ 设计阶段(Design) 🖋️
在设计阶段,基于 SRS 中收集到的需求,团队会开始构建 软件架构。
多个团队成员会在此阶段共同设计架构,架构设计会经过利益相关者和团队的审核。🧐
在此阶段,也可以进行原型设计。原型是系统或部分系统的初步模拟,用于演示和展示。
设计文档:
- 设计文档是该阶段的产物,它将供开发人员在 开发阶段 使用。
3️⃣ 开发阶段(Development) 👨💻
开发阶段,也叫 构建阶段 或 实现阶段,是开发人员开始编写代码的阶段,一旦设计文档完成后,开发人员就会启动编码过程。
项目规划者使用设计文档来确定和分配编码任务。👨💻
在这一阶段,通常需要使用编程工具、不同的编程语言和软件堆栈。组织可能还会有需要遵循的标准或指南。
4️⃣ 测试阶段(Testing) 🧪
测试阶段是在代码编写完成后进行的。对于一些大型项目,可能会有专门的测试团队来负责此工作。
代码需要经过彻底测试,以确保它的稳定性、安全性,并符合 SRS 中的需求。
测试可以是 手动测试、自动化测试,或者是两者的 混合。
常见的测试级别:
单元测试(Unit Testing)
集成测试(Integration Testing)
系统测试(System Testing)
验收测试(Acceptance Testing)
每个测试级别将在后续视频中进行更详细的讨论。
5️⃣ 部署阶段(Deployment) 🚀
部署阶段是指将应用程序发布到 生产环境 并让用户可用。
这通常是分阶段进行的:
首先发布到 用户验收测试(UAT) 平台;
一旦客户确认功能无误,就可以正式发布到生产环境。
这种方法可以用于将软件发布到 网站、移动设备应用商店 或 公司网络上的软件分发服务器 等平台。📱💻
6️⃣ 维护阶段(Maintenance) ⚙️
一旦代码部署到生产环境,维护阶段 就开始了。
此阶段的主要任务包括:
查找其他可能存在的 bug;
识别 用户界面问题(UI Issues);
确定可能未在 SRS 中列出的其他需求。
此外,代码增强 也可以在此阶段识别出来。如果在此阶段发现了未在测试阶段发现的 bug,这些错误可能需要修复,或者被纳入 未来版本 的软件发布需求中。🛠️
如果在此阶段发现的问题影响较大,可能会引发一个新的开发周期,重新开始整个过程。
📌 总结
在本视频中,您学习了 SDLC 的六个主要阶段:
规划阶段:需求收集与 SRS 开发;
设计阶段:软件架构开发及设计文档创建;
开发阶段:开始编码并使用设计文档;
测试阶段:发现并修复代码问题;
部署阶段:将代码发布到生产环境;
维护阶段:处理用户反馈、修复 bug 和代码增强。
这些阶段构成了一个完整的 软件开发生命周期,并且可以根据需要进行迭代,不断优化软件产品的质量与功能。🔄💡
