软件开发的V型流程

  • Post author:
  • Post category:其他



目录


0 前言


1. 用户需求


2. 需求分析和系统分析


3. 概要设计


4. 详细设计


5. 编码


0 前言

软件开发的V型流程其实非常使用,一些大型的软件企业都是遵循这样的开发过程,虽然有时候各个阶段的名称未必一样,但是大概流程是如此,V型流程如下:

ps:虽然看起来简单,一旦你养成了这样一种开发素养,应该是收益匪浅的。

1. 用户需求                            9.验收测试

\                                           /

2.需求分析和系统分析    8.系统测试

\                                    /

3.概要设计                7.集成测试

\                           /

4.详细设计          6.单元测试

\                  /

5.编码

1. 用户需求

从使用者的角度来描述需求的,可以是使用者希望这个产品具有什么样的功能,或者是企业老板希望产品有什么样的功能,是撇开技术层面的东西,用户单纯的需要。

2. 需求分析和系统分析

从用户需要上出发,转化到转化到产品设计上来。怎么去完成这个产品呢?这时,考虑到技术实现的问题,即产品需求。真正的产品,往往是有点复杂度的,需要进行系统地分析,按照产品需求,考虑到技术可行性,拆分形成不同的功能模块,规划出软硬件的构架。首先进行硬件的设计(往往是从类似的产品上借鉴,形成自己的硬件开发板:确定好CPU、MCU、存储空间、传感器等等),“框架型”(可能不完善,但是可以支持软件架构了)硬件开发板完成后,软件架构也在开始。软件架构要协调好拆分的各个功能模块,满足产品的需求。此处的软硬的设计便是架构设计,架构设计为接下来的工作奠定了重要的基础。

3. 概要设计

概要设计的目的是描述系统的每个功能模块的内部设计,对架构设计和详细设计承担承上启下的作用。概要设计承接架构设计的功能模块,再细化,并且在架构设计基础上,形成一定的技术化描述的操作流程。每个功能模块都有自己的概要设计,各功能模块设计的同时,需要不断地和架构设计的人进行打磨,对架构设计的合理性不断地进行考验、纠正、托起,同时自身也在不断地理解架构设计,做出更好的概要设计,以求对详细设计进行更准确的指导。

4. 详细设计

详细设计阶段就是依据概要设计阶段的分解,设计每个模块内的算法、流程,为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。

详细设计这个阶段,设计者的工作对象是一个模块,根据概要设计,设计并表达出模块的算法、流程、状态转换等内容。这里要注意,如果发现有结构调整(如分解出子模块等)的必要,必须返回到概要设计阶段,将调整反应到概要设计文档中,而不能就地解决,不打招呼。详细设计文档最重要的部分是模块的流程图、状态图、局部变量及相应的文字说明等。一个模块对应一篇详细设计仕样书。

5. 编码

根据详细设计书进行编码。



版权声明:本文为weixin_42108533原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。