你应该知道的三种原型实现模型:抛弃式、演化式、增量式
你应该知道的三种原型实现模型:抛弃式、演化式、增量式
一、抛弃式原型开发
1、定义:验证和澄清系统的需求描述,重新构造系统。
2、流程图
3、典型例子
开发者与客户进行沟通交流,之后获取到客户的需求,于是开发者开发了该图形用户界面(GUI)的原型。但是之后呢,系统并没有用GUI继续做开发,而是采用C++或者是其他语言来开发。
4、有利条件
(1)降低项目中的风险,评估哪些事情可以做,哪些事情不能做;
(2)捕捉需求,比如:客户是否喜欢GUI界面。
5、不利条件
(1)资源可能会被浪费,因此需要控制;
(2)需要良好的项目管理;
(3)与客户保持良好的沟通;
(4)无法判断停止开发原型的时间。
二、演化式原型开发
1、定义:逐步改进和细化原型,将原型进化为最终系统。
2、流程图
3、典型例子
与汽车行业类似,一款车型也在逐步完善。
4、有利条件
(1)客户可以看到他们想要的改变;
(2)有利于提高用户界面的接受程度。
5、不利条件
(1)不利于文档撰写,比如:系统持续改变,那么文档就不好落笔;
(2)整个项目需要强有力的项目控制,同时领导者也需要监控项目的发展进程;
(3)是什么时候停止发展和结束项目,我们都不知道;所以这很有可能会导致系统结构不良;
(4)可能需要特殊的开发人员。
6、适用情况
(1)小型项目;
(2)受时间或金钱限制的有限项目;
(3)那些需要快速完成的项目;
(4)无法预先确定其细节的项目;
(5)图形内容丰富的项目。
三、增量式原型开发
1、定义:在建立软件总体设计基础上,采用增量开发方法,使原型成为最终系统。
2、流程图
3、典型例子
一个软件公司和客户就系统部件的交付达成协议。 例如,一个网站交付可能是:
1月1日 - 交付①网络服务器;②网页;③验证和确认脚本。
2月5日 - 交付数据库和安全软件。
2月21日 - 商家付款系统的交付。
4、有利条件
(1)非常适合将较大的系统分解为多个部分,因此组件可以更轻松地被构建;
(2)客户分阶段看到系统,所以可能比较少会有“大爆炸”的态度。
5、不利条件
(1)需要良好的沟通和协商;
(2)需要良好的项目管理,控制和监视工作;
(3)需要良好的沟通和协商;
(4)需要良好的项目管理,控制和监视工作。
本文原文来自阿里云开发者社区