『软件工程3』你应该知道的三种原型实现模型:抛弃式、演化式、增量式

简介: 本篇文章将讲解传统的软件过程模型中的三种原型实现模型!

1.png一、抛弃式原型开发



1、定义:验证和澄清系统的需求描述,重新构造系统。

2、流程图

2.png

3、典型例子

开发者与客户进行沟通交流,之后获取到客户的需求,于是开发者开发了该图形用户界面(GUI)的原型。但是之后呢,系统并没有用GUI继续做开发,而是采用C++或者是其他语言来开发。

4、有利条件

1)Reduce risk in a project, see if something can be done.

降低项目中的风险,评估哪些事情可以做,哪些事情不能做;

2)Capture requirements(e.g. whether client likes the GUI or not) .

捕捉需求,比如:客户是否喜欢GUI界面。

5、不利条件

1)Resources can be wasted, so control is needed.

资源可能会被浪费,因此需要控制。

2)Good Project Management is required.

需要良好的项目管理。

3)Good communication with the client is required.

与客户保持良好的沟通。

4)When is it a good time to stop developing the prototype.

无法判断停止开发原型的时间。


二、演化式原型开发



1、定义:逐步改进和细化原型,将原型进化为最终系统。

2、流程图

3.png

3、典型例子

与汽车行业类似,一款车型也在逐步完善。

4.png

4、有利条件

1)The client can see the changes that they want.

客户可以看到他们想要的改变。

2)Very good for improving user interface acceptance.

有利于提高用户界面的接受程度。

5、不利条件

1)Very weak on documentation (e.g. system keeps changing)

不利于文档撰写,比如:系统持续改变,那么文档就不好落笔。

2)The entire project needs strong project control,the same as leader needs to monitor development.

整个项目需要强有力的项目控制,同时领导者也需要监控项目的发展进程。

3)When is it a good time to stop evolving and finishing the project and possible lead to a badly structured system.

是什么时候停止发展和结束项目,我们都不知道;所以这很有可能会导致系统结构不良。

4)Special development staff may be required.

可能需要特殊的开发人员。

6、适用情况

1)Small projects.

小型项目。

2)Limited projects that are limited by time or money.

受时间或金钱限制的有限项目。

3)Those projects that need done quickly.

那些需要快速完成的项目。

4)Projects whose details cannot be determined in advance.

无法预先确定其细节的项目。

5)Projects with a high graphical content.

         图形内容丰富的项目。


三、增量式原型开发



1、定义:在建立软件总体设计基础上,采用增量开发方法,使原型成为最终系统。

2、流程图

5.png

3、典型例子

英文版

A software company and a client may agree on delivery of system parts. For example, a website delivery might be:

1st January - Delivery of web-server, web-pages,verification and validation scripts.

5th February - Delivery of database, security software.

21st February - Delivery of merchant payment system.

中文版

一个软件公司和客户就系统部件的交付达成协议。 例如,一个网站交付可能是:

1月1日 - 交付①网络服务器;②网页;③验证和确认脚本。

2月5日 - 交付数据库和安全软件。

2月21日 - 商家付款系统的交付。

4、有利条件

1)Good for breaking a larger system into parts, so components can be built easier.

         非常适合将较大的系统分解为多个部分,因此组件可以更轻松地被构建。

2)Customer sees the system in stages, so no "big bang" approach.

         客户分阶段看到系统,所以可能比较少会有“大爆炸”的态度。

5、不利条件

1)Requires good communication and agreement.

需要良好的沟通和协商。

2)Requires good project management, control and monitoring work.

需要良好的项目管理,控制和监视工作。

3)communication and agreement.

需要良好的沟通和协商。

4)Requires good project management, control and monitoring work.

需要良好的项目管理,控制和监视工作。


相关文章
|
2月前
|
监控 安全 项目管理
『软件工程3』你应该知道的三种原型实现模型:抛弃式、演化式、增量式
该文章详细解释了三种原型实现模型——抛弃式、演化式、增量式模型的特点、流程、优缺点及适用场景。
『软件工程3』你应该知道的三种原型实现模型:抛弃式、演化式、增量式
|
1月前
|
机器学习/深度学习 人工智能 自然语言处理
大模型的特点、重要概念及工作方式详解
大模型是具有大量参数和复杂结构的深度学习模型,通过处理大量数据实现高效任务解决。其特点包括参数规模庞大、深层网络结构、预训练与微调、多任务学习和自适应能力。重要概念有注意力机制、Transformer架构、迁移学习和分布式训练。大模型的工作方式包括输入处理、特征提取、预测与损失计算、反向传播与优化,以及评估与微调。这些特性使其在自然语言处理、计算机视觉等领域取得显著进展。
|
2月前
|
人工智能 自然语言处理 计算机视觉
浙大李玺团队:指代表达理解新方法,ScanFormer粗到细迭代消除视觉冗余
【9月更文挑战第14天】近年来,人工智能的迅猛发展推动了计算机视觉与自然语言处理交叉领域的研究,其中指代表达理解任务备受关注。REC的目标是在图像中根据自然语言描述定位目标对象。然而,现有方法因密集感知图像而导致计算开销大。为此,浙江大学李玺团队提出了ScanFormer,一种迭代感知框架,通过自顶向下的方式逐步提取与语言相关的视觉块,并通过信息性预测丢弃不相关部分,有效减少冗余,提升模型效率。实验表明,ScanFormer在多个基准数据集上表现优异,实现了准确性和效率的良好平衡。不过,它目前仅支持单目标定位,且在某些场景下可能不如其他方法精确。
37 1
|
6月前
|
敏捷开发 监控 架构师
【领域驱动设计专题】一文带领你透视DDD领域驱动模型的本质和设计原理分析指南(构建领域知识)
【领域驱动设计专题】一文带领你透视DDD领域驱动模型的本质和设计原理分析指南(构建领域知识)
189 0
|
4月前
|
测试技术 程序员
W模型和瀑布模型与“V”模式开发模型有何异同?
W模型和瀑布模型与“V”模式开发模型有何异同?
150 1
|
4月前
|
人工智能
Sora信息问题之模拟对象状态变化存在的局限如何解决
Sora信息问题之模拟对象状态变化存在的局限如何解决
45 0
|
6月前
|
算法 安全 数据安全/隐私保护
深入探究一个长期隐藏的底层bug的学习报告
在软件开发的过程中,底层bug往往像一颗定时炸弹,随时可能引发严重的问题。本文将分享我在开发过程中遇到的一个长期未被发现的底层bug,以及我如何逐步排查并最终解决这个问题的全过程。通过这次排查,我深刻认识到了代码规范性的重要性。一个不规范的代码修改,虽然短期内可能不会引起问题,但长期累积下来,可能会引发灾难性的后果。此外,我也意识到了底层模块的通用性和风险意识的重要性。在解决一个问题的同时,应该审视是否有相似的问题存在,以避免未来的风险。
128 3
|
PyTorch 算法框架/工具
pytorch诞生逻辑和演化过程
pytorch诞生逻辑和演化过程
89 0
|
机器学习/深度学习
机器学习增强量子化学领域的新突破,用半经验量子力学方法的结构来构建动态响应的哈密顿量
机器学习增强量子化学领域的新突破,用半经验量子力学方法的结构来构建动态响应的哈密顿量
252 0
机器学习增强量子化学领域的新突破,用半经验量子力学方法的结构来构建动态响应的哈密顿量
「管理」处理复杂性-一个粗略的指南,领导模式和理论
「管理」处理复杂性-一个粗略的指南,领导模式和理论
下一篇
无影云桌面