软件开发生命周期(SDLC)是一个创建软件开发结构的过程。SDLC中有不同的阶段,每个阶段都有自己不同的活动。它使开发团队能够设计,创建和交付高质量的产品。 SDLC描述了软件开发的各个阶段和阶段的执行顺序。每个阶段都需要在软件开发的生命周期中从前一阶段交付。需求转化为设计,设计转化为开发和开发成测试,经过测试后提供给客户。 软件开发周期的不同阶段如下所示:
这是开发团队和项目经理的软件开发生命周期中最关键的阶段。在此阶段,客户说明要求,规格,期望以及与产品或软件相关的任何其他特殊要求。所有这些都是由业务经理或项目经理或服务提供公司的分析师收集的。 要求包括如何使用产品以及谁将使用产品来确定操作的负载。从此阶段收集的所有信息对于根据客户要求开发产品至关重要。
设计阶段包括根据需求阶段对新软件的详细分析。这是系统开发生命周期中的高优先级阶段,因为系统的逻辑设计转换为物理设计。需求阶段的输出是所需事物的集合,设计阶段为实现这些需求提供了方法。所有必需的基本工具的决定,如Java,.NET,PHP等编程语言; 数据库,如Oracle,MySQL,硬件和软件的组合,提供了一个平台,软件可以在这个平台上运行而没有任何问题。 有几种技术和工具,如数据流图,流程图,决策表和决策树,数据字典和结构化字典用于描述系统设计。
在成功完成需求和设计阶段之后,下一步是将设计实现到软件系统的开发中。在这个阶段,工作分成小单元,编码由开发团队根据前一阶段讨论的设计开始,并根据需求阶段讨论的客户要求产生所需的结果。 前端开发人员开发简单且有吸引力的GUI和必要的接口,以便与后端操作进行交互,后端开发人员根据所需的操作进行后端编码。所有这些都是根据项目经理演示的程序和指南完成的。 由于这是编码阶段,因此在软件开发生命周期中,开发人员需要花费最长时间和更集中的方法。
测试是完成软件系统的最后一步。在此阶段,在获得开发的GUI和后端组合之后,将根据需求阶段中的要求对其进行测试。测试确定软件是否实际按照需求阶段中的要求提供结果。开发团队制定测试计划以开始测试。该测试计划包括所有类型的基本测试,例如集成测试,单元测试,验收测试和系统测试。在此阶段也进行了非功能性测试。 如果软件中存在任何缺陷,或者它没有按预期工作,那么测试团队会向开发团队提供有关该问题的详细信息。如果它是一个有效的缺陷或值得理清,它将被修复,开发团队将其替换为新的,并且还需要进行验证。
当软件测试完成且结果令人满意,并且软件工作中没有余留问题时,就可以将它交付给客户供其使用。当客户收到产品,建议他们首先进行beta测试。在beta测试中,客户可以要求软件中没有但在需求文档或任何其他GUI更改中提及的任何更改,以使其更加用户友好。除此之外,如果客户使用该软件时遇到任何类型的缺陷; 它将通知该特定软件的开发团队以解决问题。如果这是一个严重的问题,那么开发团队会在短时间内解决它,否则,如果它不那么严重,那么它将等待下一个版本。 在解决了所有类型的错误和变更后,软件最终部署到最终用户。
维护阶段是SDLC的最后和持久阶段,因为它是一直持续到软件生命周期结束的过程。当客户开始使用软件时,实际问题就开始发生,那时需要解决这些问题。此阶段还包括对硬件和软件进行更改以维持其运营效率,例如:提高其性能,增强安全功能以及根据客户的要求和即将到来的时间。这个不时处理产品的过程称为维护。
“因此,所有这些都是软件开发生命周期(SDLC)的六个阶段,在这个阶段,软件开发过程发生。所有这些都是强制阶段,没有任何一个开发是不可能的,因为开发在软件的生命周期中持续进行维护”。