一 软件开发过程模型
在软件开发的几十年实践中,人们总结了很多软件开发模型用来描述和表示一个复杂的开发过程,
如:
瀑布模型
快速原型模型
螺旋模型
软件测试与软件的开发模式有着紧密的联系,作为一名测试人 员应该充分理解软件的开发模式以便找准自己在其中的位置,从而发挥自身的价值。
开发模型-瀑布模型Waterfall Model
瀑布模型介绍
最早出现的软件开发模型是1970年罗伊斯WRoyce提出的瀑布模型:该模型给出了固定的顺序,将生存期活动从上一个阶段向下一个阶段逐级过渡,如同流水下泻,最终得到所开发的软件产品,投入使用。
瀑布模型定义
瀑布模型是将软件生存周期的各项活动规定为按固定顺序而连接的若干阶段工作形如瀑布流水最终得到软件产品。
瀑布模型的优缺点:
优点
1.开发的各个阶段比较清晰
2.强调早期计划及需求调查
3.适合需求稳定的产品开发
缺点
1.依赖于 早期的需求调查,不适应需求变化
2.单一流程不可逆
3.风险往往延至后期才显露失去及早纠正的机会。
4.问题在项目后期才开始暴霞
5.前面未发现的错误会 传递并扩散到后面阶段,可能导致项目失败
开发模型-快速原型模型
在开发真实系统之前,构造一个原型,在该原型的基础上逐渐完成整个系统的开发工作。
快速原型模型的优缺点:
优点
克服瀑布模型的缺点更好的满足用户需求并减少由于软件需求不明确带来的项目开发风险。适合预先不能确切定义需求的软件系统开发。
缺点
不适合大型系统的开发、适合开发小型的、灵活性高的系统。前提要有一个展示性的产品原型,因此在一定程度上可能会限制开发人员的创新。
开发模型-螺旋模
螺旋模型将开发过程分为几个螺旋周期每个螺旋周期大致和瀑布模型相符合.螺旋模型沿着螺旋线旋转即在坐标的4个象限上分别表示了4个方面的活动。
螺旋模型的优缺点:
优点
螺旋模型很大程度上是一种风险驱动的方法体系因为在每个阶段之前及经常发生的循环之前都必须首先进行风险评估。
缺点
采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中如果未能及时标识风险势必会造成重大损失。过多的迭代次数会增加开发成本延迟提交时间。
二 软件测试&软件工程
软件测试与软件工程息息相关,软件测试是软件工程组成中不可或缺的一部分。
在软件工程、项目管理、质量管理得到规范化应用的企业软件测试也会进行得比较顺利