软件生命周期瀑布模型_软件生命周期模型:瀑布模型

软件生命周期瀑布模型

Hello guys, so today we would be looking at one of the widely known and the simplest software life cycle model i.e. waterfall models, as the name suggests the reason for naming this model as a waterfall model is that the sequence of steps that are followed in this model resemble the flow of a waterfall. As the water falls from top to down, in waterfall model you are allowed to move in the direction as that of a waterfall therefore backtracking is not possible in this type of model.

大家好,所以今天我们将看一个广为人知且最简单的软件生命周期模型,即瀑布模型 ,顾名思义,将该模型命名为瀑布模型的原因是:这个模型很像瀑布的流动。 当水从上到下下落时,在瀑布模型中,您可以沿瀑布的方向移动,因此在这种类型的模型中无法进行回溯。

The sequence of steps that are followed in this model are as follows:

此模型中遵循的步骤顺序如下:

  1. Requirement gathering

    需求收集

  2. Designing of the model

    模型设计

  3. Implementation along with unit testing

    与单元测试一起实施

  4. Integration and system testing

    集成和系统测试

  5. Operation and maintenance process

    运维流程

Flowchart representation of the following sequence of steps is given below:

下面给出了以下步骤序列的流程图表示:

软件生命周期瀑布模型_软件生命周期模型:瀑布模型_第1张图片


Now we will be discussing each step-in detail:

现在,我们将详细讨论每个步骤:

步骤1:需求收集 (STEP 1: Requirement gathering)

The main purpose of this step is to understand the exact requirements of the customer. This task is usually performed with the involvement of the customer. The requirements describe the main functionality of the software and the purpose behind creating such software. This step usually contains huge documentation written in the human understandable language which is often referred to as SRS (software requirement specification).

此步骤的主要目的是了解客户的确切要求。 通常在客户的参与下执行此任务。 需求描述了软件的主要功能以及创建此类软件的目的。 此步骤通常包含以人类可理解的语言编写的大量文档,该文档通常称为SRS(软件需求规范)。

If the software created does not contain all the functionalities mentioned in the SRS then such software is often considered as a failure in the software industry.

如果创建的软件不包含SRS中提到的所有功能,则该软件通常被视为软件行业的故障。

步骤2:设计模型 (STEP 2: Designing of the model)

Now, before we begin the coding phase we need to create a design or a definite structure that is suitable for some programming language. We basically define the full system architecture in this step. Just like SRS was used to define software required by the system in this step we create a documentation for the software design which is referred to as SDD (software design description).

现在,在开始编码阶段之前,我们需要创建适合某种编程语言的设计或确定的结构。 在这一步中,我们基本上定义了完整的系统架构。 就像在此步骤中使用SRS来定义系统所需的软件一样,我们为软件设计创建了一个文档,称为SDD(软件设计描述)。

步骤3:在单元测试之前实施 (STEP 3: Implementation before unit testing)

The real coding begins at this step, this is basically the core step wherein the developers code the software according to the details mentioned in SDD(software design description) that was created in the previous step. A good SDD will mean that the chances that the software created will be efficient is more.

真正的编码从此步骤开始,这基本上是核心步骤,其中开发人员根据在上一步中创建的SDD(软件设计说明)中提到的详细信息对软件进行编码。 良好的SDD将意味着创建的软件高效的机会更多。

Now after implementing the SDD we come to the unit testing phase, here the code modification and extension take place if required. The whole module is divided into small submodules which are tested in the isolation. Common problems like calling of modules on their own or calling the modules only when required are solved here by writing some overhead codes.

现在,在实施SDD之后,我们进入单元测试阶段,如果需要的话,在这里进行代码修改和扩展。 整个模块分为几个小的子模块,这些子模块在隔离中进行了测试。 通过编写一些开销代码可以解决常见问题,例如自行调用模块或仅在需要时才调用模块。

步骤4:整合和系统测试 (STEP 4: Integration and system testing )

Another very important step is the integration and system testing a good testing will create a highly efficient software will least bugs and a better system compatibility. A good testing will also reduce the maintenance phase which is the last step of our waterfall model. However, the cost of testing a software is very high and at times may cost 1/3 or even ½ of the entire cost of creating a software.

另一个非常重要的步骤是集成和系统测试,一个好的测试将创建一个高效的软件,将最少的错误和更好的系统兼容性。 良好的测试也会减少维护阶段,这是我们瀑布模型的最后一步。 但是,测试软件的成本非常高,有时可能会花费创建软件总成本的1/3甚至1/2。

We have already discussed that how a large module is divided into small submodules and those modules are then tested independently in the process called unit testing. In system testing the whole system is tested, whereas the software is the part of this system. This type of testing builds up a sense of reliability before handling the software to the user.

我们已经讨论过如何将大模块分为小子模块,然后在称为单元测试的过程中对这些模块进行独立测试。 在系统测试中,将测试整个系统,而软件是该系统的一部分。 在向用户使用软件之前,这种类型的测试会增强可靠性。

步骤5:运维流程 (STEP 5: Operation and maintenance process)

Software maintenance is a very broad activity which includes error detection, enhancement of capabilities and much more. This step is often executed after handling the software to the user, despite highly efficient testing every software company has to come across this step of software maintenance. As the technology advances there Is a change in the system of the user which requires some kind of updates and bug fixes. These bug fixes and updates are the part of the operation and maintenance process step of the waterfall model.

软件维护是一项非常广泛的活动,其中包括错误检测,功能增强等等。 尽管需要进行高效测试,但每个软件公司都必须经历此软件维护步骤,尽管在对用户处理了软件之后,通常仍会执行此步骤。 随着技术的进步,用户系统发生了变化,这需要某种更新和错误修复。 这些错误修复和更新是瀑布模型的操作和维护过程步骤的一部分。

The main aim of this step is to preserve the value of the software over time. This step lasts from 5 years to 50 years.

此步骤的主要目的是随着时间的推移保留软件的价值。 此步骤持续5年到50年。

This classical model is very easy to understand, however, there lie certain disadvantages which are mentioned below:

这种经典模型非常容易理解,但是存在一些缺点,如下所述:

  1. It is difficult to define all the requirements at the beginning.

    一开始很难定义所有要求。

  2. This model is not suitable for introducing any changes in the middle.

    此模型不适合在中间引入任何更改。

  3. Real-time projects are generally not sequential.

    实时项目通常不是顺序的。

Hope you are able to understand this model, have a great day ahead.

希望您能够理解此模型,祝您度过愉快的一天。

翻译自: https://www.includehelp.com/basics/software-life-cycle-model-the-waterfall-model.aspx

软件生命周期瀑布模型

你可能感兴趣的:(软件生命周期瀑布模型_软件生命周期模型:瀑布模型)