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

简介: 该文章详细解释了三种原型实现模型——抛弃式、演化式、增量式模型的特点、流程、优缺点及适用场景。

一、抛弃式原型开发

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

2、流程图

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、典型例子

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

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、流程图

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.

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

如果这篇文章对你有帮助,记得留下star哦~

相关文章
|
人工智能 缓存 开发工具
结合企业实践来规范你的Git commit(含插件使用指南)
结合企业实践来规范你的Git commit(含插件使用指南)
结合企业实践来规范你的Git commit(含插件使用指南)
|
12月前
|
敏捷开发 算法 数据建模
『软件工程2』详解软件工程和软件过程模型
该文章深入解析了软件工程的概念及其过程模型,包括软件生命周期的不同阶段和常见的软件开发模型如瀑布模型、敏捷开发等,并探讨了各自的特点与适用场景。
『软件工程2』详解软件工程和软件过程模型
|
缓存 Linux
CentOS7配置阿里yum源 超详细!!!
CentOS7配置阿里yum源 超详细!!!
32078 2
|
12月前
|
监控 项目管理 开发者
『软件工程7』详解软件项目管理之风险分析与管理
该文章详细讲解了软件项目管理中的风险分析与管理,包括风险的定义、类型、管理流程以及如何建立和使用风险表来跟踪和处理潜在风险。
|
12月前
|
机器学习/深度学习 监控 项目管理
『软件工程4』一文了解软件项目管理中的4P
该文章讲述了软件项目管理中的四个关键要素(4P:People、Product、Process、Project)的重要性及如何在实践中应用这些要素来提高项目管理的有效性。
『软件工程4』一文了解软件项目管理中的4P
|
11月前
|
人工智能 数据可视化 安全
瀑布模型是什么?在软件开发中有哪些主要阶段和步骤?
瀑布模型是一种经典的软件开发方法,将开发过程划分为需求分析、设计、编码、测试和维护等顺序阶段,强调阶段性和文档化。适用于需求明确、稳定且对安全性和可靠性要求高的项目。尽管存在局限性,但在特定场景下仍具重要价值。未来,瀑布模型可能与其他开发模型结合,更加灵活高效。
2229 3
瀑布模型是什么?在软件开发中有哪些主要阶段和步骤?
|
12月前
|
测试技术 项目管理 uml
「软件项目管理」软件项目范围计划——需求管理与任务分解
该文章详细介绍了软件项目范围计划中的需求管理与任务分解技术,包括需求获取、分析、编写、验证、变更管理的过程,以及任务分解的方法和实践,旨在帮助项目管理者有效地控制项目范围和推进项目进展。
「软件项目管理」软件项目范围计划——需求管理与任务分解
|
12月前
|
存储 前端开发 中间件
『软件工程10』结构化系统分析:数据流图和字典案例分析
该文章通过具体案例分析了在软件工程中如何运用数据流图和数据字典来进行结构化系统分析,帮助明确系统的信息流程和数据定义。
『软件工程10』结构化系统分析:数据流图和字典案例分析
|
12月前
|
算法 BI 项目管理
『软件工程6』详解软件项目管理之软件范围与估算
该文章详细阐述了软件项目管理中软件范围定义与工作量估算的方法,包括如何界定软件范围以及使用不同模型进行成本和时间估算的步骤。
『软件工程6』详解软件项目管理之软件范围与估算
|
12月前
|
调度 项目管理 计算机视觉
『软件工程8』软件项目进度安排与跟踪,一招学会计算关键路径
该文章详细解释了如何在软件项目管理中安排进度与跟踪,特别是如何计算和利用关键路径方法(CPM)来优化项目时间管理。

热门文章

最新文章