yangsirgo / softwareTest

软件设计师考试
6 stars 2 forks source link

开发模型 #13

Open yangsirgo opened 4 years ago

yangsirgo commented 4 years ago

瀑布模型

特点是容易理解,管理成本低,各个阶段都有对应的成果产物,各个阶段有明显的接线划分和顺序要求,一旦发生错误,整个项目推到重新开始。 记忆方式:像瀑布一样,一层接一层,上一层的输出作为后一层的输入,直到测试完成之后才能看到真正可运行的软件,瀑布模型在需求变动时修改软件的代价是巨大的。 瀑布开发模型

喷泉模型

典型的面向对象模型。特点是迭代,无间隙。会将软件开发划分为多个阶段,但是各个阶段无明显界限,可以迭代交叉。 记忆方式:“喷泉”可以是小型的“瀑布”,小的对象,是面向对象的模型。面向对象方法可以应对复杂的需求变动,所以迭代和无间隙。

原型模型

适用于需求不明确的场景,可以帮助用户明确需求。 记忆方式:就是原型图嘛,可以做个原型图,让用户看原型,了解自己的需求细节。 原型模型

增量模型

第一个增量通常是核心的产品,包含了最终产品的基本需求,以及虽然已确定但非核心的需求,以后的增量中慢慢加入不确定的需求。适合的场景:

螺旋模型

制定计划,风险分析,工程实施,客户评估。 沿着螺旋线旋转,每旋转一圈,表示开发出一个更为完善的新软件版本。如果发现风险太大,开发者和客户无法承受,项目就有可能因此而终止。 特点是增加风险分析。 螺旋开发模型

V模型

强调测试贯穿项目始终,而不是集中在测试阶段。是一种测试的开发模型。 强调测试。 V模型

RAD

强调快速开发。细则看上图。

统一过程(UP,RUP)

特点:用例驱动、以架构为中心,迭代和增量。统一过程把一个项目分为四个不同的阶段:

yangsirgo commented 3 years ago

极限编程(XP)包含了:策划,设计,编程,测试四个活动,其中第十二个最佳实践中的持续集成实践在()活动中进行。 在测试和编程活动中。 软件越来越复杂,按传统的模式是,模块开发完成后,等待集成,集成送交测试,会发现问题比较多,不容易确定是哪个模块的问题,所以持续集成不仅要求在编程中,也是在测试中要求的。