zl程序教程

您现在的位置是:首页 >  系统

当前栏目

网工中级系统开发与项目管理

系统开发 项目管理 中级
2023-09-11 14:19:53 时间

项目开发时期

计划时期

  问题定义

  可行性研究

开发时期

需求分析

总体设计

详细设计

编码

测试

运行时期

维护

软件开发模型

瀑布模型

 最早的模型,软件的开发是一步一步地递进,虽然条理清晰,但是前一阶段的问题将会被带到下一阶段,容易形成问题的积累而最终无法正常正常完成开发项目。只有在目的明确,或者开发相似的,且具有固定开发模型的情况下,才会使用瀑布模型。

V模型

 和大致的开发周期差不多,不过在最后的测试流程中,测试的步骤更多,保证了软件最终的可靠性,可用性等等。但是问题和瀑布模型类似。

喷泉模型

 主要针对面向对象的开发,在各个开发阶段是可以重叠的,即阶段与阶段之间没有分明的边界,前一阶段若出现了问题,最终还是可以返回到上一阶段重新修改,同时允许多个阶段并行进行。虽然有不断地迭代,但是依然存在问题地的叠加性问题。

原型化模型(抛弃型)

在一开始构建一个软件的原型模型,来给客户进行使用,由此来不断加深和确定客户的需求,保证了最终的软件开发出来与客户是契合的。当需求得到后,会将一开始构建的原型抛弃,然后根据最新的需求进行软件的开发。

演化模型(保留型)

先生成一个最初的原型,该原型具备最初的需求,然后由用户进行体验并提出相关的需求,开发人员在原型的基础上并结合客户的需求不断地完善迭代该软件项目。

增量模型(保留型)

先生成一个大致的框架,与演化模型的不同就是增量模型是通过对模块功能的不断地增加,而演化模型则是对整体的不断修饰。

螺旋模型

制定计划,风险分析,实施工程,客户评估这四个步骤在软件开发周期中不断地迭代,因为加入了风险分析,所以每个步骤中前都会进行风险地评判,由此可以减少风险,减少损耗

软件开发与测试

软件应该做到高内聚,低耦合

动态测试:人工进行动态运行测试

静态测试:从代码,相关帮助文档进行代码的排错

黑盒测试:功能性测试,输入和输出是否对应着设计好的功能

白盒测试:主要关注程序内部的代码是否合理,速度是否高效

灰盒测试:即白盒测试和黑盒测试之间的一种测试,即白盒和黑盒测试都有涉及到,但是都没有两者那么深入

单元测试

集成测试

系统测试

验收测试

数据耦合:模块间仅仅只有数据的交互

标记耦合:模块间仅依靠数据结构的交互

公共耦合:模块间通过公共区域交互

内容耦合:上面三个其他的模块间交互

 

巧合内聚:模块内的各个处理元素没有任何联系

逻辑内聚:模块内的语句具有相似的逻辑

时间内聚:模块内的语句在时间上有一定的联系,比如同时执行 

通信内聚:使用同一个数据结构,或者使用相同的输入数据或输出相同的输出数据

顺序内聚:模块内的语句具有十分紧凑的顺序关系

功能内聚:最强的内聚,一个模块一个功能

瀑布模型主要特点:

1、利于大型软件的开发,利于开发人员的管理

2、瀑布模型的开发紧紧围绕客户的需求

演化模型的主要特点:

演化模型主要开发系统的核心功能,使得客户可以与开发人员一同改善功能,当开发人员获取到一手的软件需求,就会根据需求进行修改

增量模型的主要特点:

增量模型与演化模型的区别就在于增量模型的开发是功能的堆砌,同样是开发核心功能,但是后期的功能是以模块的增量进行的。可根据新增的模块功能判断是否进行下一步的拓展。开发灵活

喷泉模型的主要特点:

1、适用于面向对象开发

2、各个开发阶段没有严格的边界

3、需要大量管理人员对项目进行管理

V模型的主要特点:

1、以测试为中心

2、与瀑布模型类似,不过增加了大量的后期测试,保证了系统的正常

螺旋模型的主要特点

1、每个阶段有四个小阶段的迭代

2、每个阶段都有风险分析,减少了风险的发生概率

3、开发人员可轻松上阵,因为有客户参与风险的探讨