📜  SDLC模型

📅  最后修改于: 2021-01-09 14:38:46             🧑  作者: Mango

SDLC模型

软件开发生命周期(SDLC)是项目管理中使用的一种精神模型,它定义了信息系统开发项目中的各个阶段,从最初的可行性研究到维护完整的应用程序。

在软件开发阶段要遵循不同的软件开发生命周期模型指定和设计。这些模型也称为“软件开发过程模型” 。每个过程模型都遵循其类型所独有的一系列阶段,以确保软件开发步骤中的成功。

这是SDLC生命周期的一些重要阶段:

瀑布模型

瀑布是公认的SDLC模型。在这种方法中,软件开发的整个过程分为多个阶段。

瀑布模型是一个连续的软件开发模型,在该模型中,开发被视为通过需求分析,设计,实现,测试(验证),集成和维护的步骤平稳地向下流动(如瀑布)。

活动的线性排序会产生一些严重的后果。首先,要确定阶段的结束和下一阶段的开始,必须在每个步骤的末尾采用一些认证技术。某些验证和确认通常这样做,这将确保该阶段的输出与其输入(这是上一步的输出)一致,并且确保该阶段的输出与系统的整体需求一致。

RAD模型

RAD或快速应用程序开发过程是采用瀑布模型的;它的目标是在短期内开发软件。 RAD模型基于以下概念:可以通过使用焦点组来收集系统需求,从而在更短的时间内开发出更好的系统。

  • 业务建模
  • 资料建模
  • 流程建模
  • 应用程序生成
  • 测试与周转

螺旋模型

螺旋模型是一种风险驱动的过程模型。此SDLC模型帮助小组采用一个或多个过程模型的元素,例如瀑布,增量,瀑布等。螺旋技术是快速原型设计和并发设计与开发活动的结合。

螺旋式的每个周期都始于确定该周期的目标,可能实现目标的不同选择以及存在的约束。这是循环的第一象限(左上象限)。

周期的下一步是根据目标和约束条件评估这些不同的替代方案。此步骤中的评估重点是基于项目的风险感知。

下一步是制定解决不确定性和风险的策略。此步骤可能涉及诸如基准测试,仿真和原型制作之类的活动。

V型

在此类SDLC模型测试和开发中,并行计划了该步骤。因此,一侧有验证阶段,另一侧有验证阶段。 V模型通过编码阶段加入。

增量模型

增量模型不是单独的模型。它必然是一系列瀑布循环。在项目开始时,需求被分为几组。对于每个小组,都遵循SDLC模型来开发软件。 SDLC过程重复进行,每个版本都增加了更多功能,直到满足所有要求为止。在这种方法中,每个循环都充当先前软件版本的维护阶段。对增量模型的修改允许开发周期重叠。在那之后的下一个周期可以在前一个周期完成之前开始。

敏捷模型

敏捷方法论是一种在任何项目的SDLC过程中促进开发与测试之间持续交互的实践。在敏捷方法中,整个项目分为小的增量构建。所有这些构建都是迭代提供的,每个迭代持续一到三周。

任何敏捷软件阶段的特征都可以解决有关大量软件项目的几个关键假设:

  • 很难预先考虑哪些软件需求会持续存在,哪些会发生变化。同样难以预测随着项目的进行,用户优先级将如何变化。
  • 对于许多类型的软件,设计和开发是交错的。也就是说,应该同时执行两项活动,以便在创建设计模型时对其进行验证。在使用构造来测试配置之前,很难考虑需要多少设计。
  • 从计划的角度来看,分析,设计,开发和测试并非如我们所愿。

迭代模型

它是软件开发生命周期的一种特殊实现,其重点是最初的简化实现,然后逐步获得更多的复杂性和更广泛的功能集,直到最终系统完成为止。简而言之,迭代开发是将大型应用程序的软件开发分解为较小部分的一种方式。

大爆炸模型

大爆炸模型专注于软件开发和编码中的所有类型的资源,而没有计划或计划很少。这些要求在到达时就可以理解和实施。

该模型最适合具有较小规模开发团队并正在协同工作的小型项目。它对于学术软件开发项目也很有用。这是理想的模型,其中要求未知或没有给出最终发布日期。

原型模型

原型模型始于需求收集。开发人员和用户可以满足并定义软件的用途,确定需求等。

然后创建一个“快速设计”。该设计着重于用户可见的软件方面。然后,它导致原型的开发。然后,客户检查原型,并对原型进行任何需要的修改或更改。

在此步骤中进行循环,并创建了更好的原型版本。这些将连续显示给用户,以便可以在原型中更新任何新更改。继续此过程,直到客户对系统感到满意为止。一旦用户满意,便会在考虑质量和安全性的前提下将原型转换为实际系统。