软件工程过程模型及测试刍议

时间:2022-07-16 01:20:53

软件工程过程模型及测试刍议

1、瀑布模型/改进的瀑布模型

在软件开发模型中,瀑布模型可以说是最早的了,因此瀑布模型在软件工程中占据重要地位,利用这种模型可以做出软件工程的框架。例如:将接活动的工作人员作为输入,利用这个输入完成活动的内容,得出活动的结果,并将此结果作为输出传给下一项活动,同时要对活动的过程给与评审,若确认,就进行下一项活动;否则返回前面的活动。对于经常变化的项目而言,瀑布模型毫无价值。采用瀑布模型可以保证系统在整体上的充分把握,使系统具备良好的可维护性和扩展性。如果对于前期需求不明确,且很难短时间了解清楚的项目则很难充分地利用瀑布模型。此外对于中小型的项目,要求设计和开发人员往往在项目开始后就会全身心的投到项目中,而不是分阶段投人,因此采用爆布模型会出现项目人力资源过多的闲置的情况,这也是必须要认真考虑的问题。架构设计在软件开发中是非常重要的。架构设计的目的是将系统分为若干个子系统和功能模块。在每个功能模块间的接口定义清楚的前提下,当一个模块的设计完成后一般就不用等到其他模块设计完成后才开始编码,因此在架构设计完成后就可以将系统分为若干个模块同时开发,当然每个模块必需遵循编码测试和先设计的瀑布模型。这是瀑布模型的一种最重要的改进思路。当一个新系统的开发存在多个完全不相关且独立需求的功能开发的时候,就可以将整个开发过程按独立的需求分为多个小瀑布进行操作。此种方式的最大弊端就是没有一个完全的总体设计,架构设计人员不能在了解了所有需求后从系统的可扩展性,等方面做出总体规划。在项目管理中可以采用赶工这种缩短进度的办法,因此瀑布模型的改进处就是适当的重叠每个阶段的过程,从而充分的利用资源。

2、螺旋模型

螺旋模型的价值在于开发过程是由风险和迭代驱动的。螺旋模型是以瀑布模型的为前提的。即一架构一设计一开发一测试的路线。该模型把瀑布模型的不同阶段转变到如干个迭代过程中,从而达到减少项目的风险的目的。螺旋模型沿着螺线进行若干次迭代,图中的四个象限代表了以下活动。(1)制定计划:了解软件的目标,制定实施方案,分析开发的条件;(2)风险分析:评估选定方案,制定降低风险的策略(3)实施工程:实施软件的开发验证;(4)客户评估:评价成果,提出改进意见,拟定进一步的计划。螺旋模型帮我们加强项目的跟踪和管理,当每次迭代结束后必须对结果进行评估和验证。螺旋模型实现了增加成本,降低风险!由于每一次迭代我们要制定出清晰的目标,分析出相关的关键风险和计划中可以验证和测试的交付物并不是一件容易的事情。所以螺旋模型复杂的地方在于专心、尽责和知识渊博的管理。

3、原型法

原型法是在投入大量的人力,物力之前,在有限的时间内,花费最少的经济开发出一个能够实际运行的系统模型,用户在使用整个原型的基础上进行评价,并给予改进意见,从而对原型修改,评价过程要反复进行,使原型逐步完善,直到满足用户的需求为止。原型一般都不是单独采用的一种生命周期模型,往往会结合澡布和增迭代等方法一起使用。

作者:郭雨露 单位:长春工业大学

上一篇:探微如何把握软件工程课课堂节奏 下一篇:刍议软件工程监理体系建设