软件开发生命周期(SDLC)
SDLC是创建软件开发结构的过程。 SDLC内有不同的阶段,每个阶段都有其不同的活动。 它使开发团队能够设计,创建和交付高质量的产品。
需求转化为设计,设计转化为开发,开发转化为测试; 经过测试,将其提供给客户端。
1.Requirement Phase 需求阶段
对于开发团队和项目经理来说,这是软件开发生命周期中最关键的阶段。 在此阶段,客户陈述要求,规格,期望以及与产品或软件有关的任何其他特殊要求。 所有这些都是由服务提供公司的业务经理或项目经理或分析师收集的。
要求包括如何使用产品以及谁将使用产品来确定操作负荷。 从此阶段收集的所有信息对于根据客户要求开发产品至关重要。
2. Design Phase 设计阶段
设计阶段包括根据需求阶段对新软件的详细分析。 这是系统开发生命周期中的高优先级阶段,因为系统的逻辑设计已转换为物理设计。 需求阶段的输出是所需要的东西的集合,设计阶段提供了实现这些需求的方式。 在此阶段,将决定所有必需的必要工具,例如Java,.NET,PHP等编程语言,Oracle,MySQL等数据库,硬件和软件的组合,以提供一个可以在其上运行软件而不会出现任何问题的平台。
有几种技术和工具,例如数据流程图,流程图,决策表和决策树,数据字典和结构化字典用于描述系统设计。
3. Build /Development Phase 构建/开发阶段
在成功完成需求和设计阶段之后,下一步就是将设计实施到软件系统的开发中。 在此阶段中,工作被分为小部分,由开发团队根据上一阶段中讨论的设计并根据需求阶段中讨论的客户的需求开始编码,以产生期望的结果。
前端开发人员开发易于使用且具有吸引力的GUI和与后端操作进行交互的必要界面,并且后端开发人员根据所需操作进行后端编码。 所有操作均按照项目经理演示的程序和指南进行。
由于这是编码阶段,因此在软件开发生命周期中,对于开发人员而言,它需要花费最长的时间并且需要更多的针对性方法。
4. Testing Phase 测试阶段
测试是完成软件系统的最后一步。 在此阶段中,在获得开发的GUI和后端组合之后,将根据需求阶段中所述的需求对其进行测试。 测试确定软件是否实际上根据需求阶段中提出的需求给出结果。 开发团队制定了测试计划以开始测试。 该测试计划包括所有类型的基本测试,例如集成测试,单元测试,验收测试和系统测试。 在此阶段也将执行非功能测试。
如果软件中存在任何缺陷或无法按预期工作,则测试团队将向开发团队详细提供有关该问题的信息。 如果是有效缺陷或值得解决,则将其修复,开发团队将其替换为新缺陷,并且还需要进行验证。
5. Deployment/ Deliver Phase 部署/交付阶段
当软件测试完成并获得令人满意的结果时,并且在软件的工作中没有余下的问题,该软件将交付给客户使用。客户收到产品后,建议他们首先进行Beta测试(验收测试)。 在Beta测试中,客户可以要求软件中不存在但要求文档中提到的任何更改,或进行任何其他GUI更改以使其更加用户友好。 除此之外,如果客户在使用软件时遇到任何类型的缺陷; 它将被告知该特定软件的开发团队以解决问题。 如果这是一个严重的问题,那么开发团队会在很短的时间内解决它; 否则,如果不太严重,它将等待下一个版本。
解决了所有类型的错误和更改后,该软件最终部署到了最终用户。
6. Maintenance 维护
维护阶段是SDLC的最后一个持久阶段,因为它一直持续到软件生命周期结束为止。 当客户开始使用软件时,就会出现实际问题,并且那时需要解决这些问题。 此阶段还包括更改硬件和软件,以保持其运行效率,如改善其性能,增强安全功能并根据客户的需求在即将到来的时间进行。 这个不时照顾产品的过程称为维护。
软件开发生命周期(SDLC)模型
这里有各种软件开发模型或方法:
- Waterfall model 瀑布模型
- Spiral model 螺旋式模型
- Verification and validation model 验证和验证模型
- Prototype model 原型模型
- Hybrid model 混合模型
Waterfall model 瀑布模型
这是第一个顺序线性模型,因为一个阶段的输出是下一个阶段的输入。 它简单易懂,用于一个小型项目。
瀑布模型的各个阶段如下:
- Requirement analysis 需求分析
- Feasibility study 可行性研究
- Design 设计
- Coding 编码
- Testing 测试
- Installation 安装
- Maintenance 维护保养
Spiral model 螺旋式模型
它是中级项目的最佳套件模型。 它也称为 循环和迭代 模型。 只要模块相互依赖,我们就采用这种模型。 在这里,我们明智地开发应用程序模型,然后移交给客户。 螺旋模型的不同阶段如下:
- 需求收集
- 设计
- 编码
- 测验
Prototype model 原型模型
从早期模型中客户拒绝率较高的时候开始,由于客户拒绝率降低了,因此我们选择此模型。 而且,它还允许我们在流程的早期阶段准备样品(原型),我们可以向客户展示该样品(原型)并获得他们的认可,然后开始着手进行原始项目。 该模型是指创建应用程序原型的操作。
Verification and validation model 验证和验证模型
它是瀑布模型的扩展版本。 它将分两个阶段实施,其中第一阶段,我们将执行验证过程,当应用程序准备就绪时,我们将执行验证过程。 在此模型中,实现以V形发生,这意味着在向下流程中完成的验证过程和在向上流程中完成的验证过程。