建模是软件project中最经常使用的技术。是为了理解事物而对事物做的一种抽象。
(1)阶段的顺序性和依赖性
(2)推迟实现的观点
长处:增加风险分析。极大的减少了软件风险。
视频中讲了瀑布模型,高速原型模型,增量模型,螺旋模型等,以下先对这四种模型做一下简单总结。
一、罗列
1、瀑布模型:
将软件生存周期各个活动规定为依线性顺序连接的若干阶段的模型。
长处:(1)阶段的顺序性和依赖性
(2)推迟实现的观点
(3)质量保证的观点
缺点:缺乏灵活性。无法解决软件需求不明白或不准确的问题2、高速原型模型
首先高速建立一个可以反映用户基本需求的原型系统,让用户试用,以推断哪些功能符合。哪些须要改进。开发者依照用户意见高速改动,然后再让用户试用……重复改进,终于建立全然复合用户需求的新系统。
长处:添加了开发者和用户对系统的理解。克服瀑布模型的缺点。降低因为软件需求不明白带来的开发风险。
缺点:添加了成本。高速建立起来的系统结构加上连续的改动可能会导致产品质量低下。
3、增量模型
集合瀑布模型的顺序特征和高速原型的迭代特征,非总体开发,把软件产品作为一系列的增量构件来设计,编码,组装和測试。
长处:较大灵活性,适合软件要求不明白,设计方案有一定风险的软件项目。
4、螺旋模型
风险驱动模型。使用圆形及其它方法来尽量减少风险,当项目依照顺时针方向沿螺旋移动时,每个螺旋周期均包括了风险分析,能够看做是在每个阶段之前都添加了风险分析的高速原型模型。长处:增加风险分析。极大的减少了软件风险。
二、归纳总结
1、同样点
都包括“计划”,“开发”,和“维护”三种活动,“What-How-Change”概括了这三类活动的主要特征,即计划时期要弄清软件“做什么”,开发时期集中解决让软件“怎么做”,维护时期对软件的“改动”。2、不同点
(1)瀑布模型适合于需求明白的软件项目。
(2)高速原型适合于需求不明白的软件项目。
(3)增量模型适合于软件要求不明白,设计方案有一定风险的软件项目。
(4)螺旋模型适合于大规模高风险的软件项目。
三、总结
刚開始看着这么多不知道有什么差别,当我把它们所有列出来的时候。我就发现了当中的同样与不同。这就是所谓的罗列吧。罗列完了就要归纳总结。归纳总结后,也没有什么深入的理解,仅仅是大概知道了什么时候该用什么模型吧。所以,当以后不知道怎么总结的时候,先把所有的东西罗列出来,再看它们之间的同样与不同。