进入IT这一行,无论你的职位是什么,你都会发现每天都会接触到一些概念---你不知道的或者你不确定的。尤其当你刚入门时,你会不断的被问到或者看到一些名词。比起了解这些生涩的词是什么意思来,我觉得知道哪些词是重点或者说哪些词和你的工作息息相关,更为重要。

      谈到测试,首先第一个问题肯定要聊聊软件生命周期(Software Life Cycle Model)。

      软件生命周期,顾名思义,是一个软件从产生到结束的过程,当然这个说法并不准确。因为软件产生之前的构思,也包括在里面。而且对于一个软件来说,如何定义结束是一个困难的事情。

      软件生命周期,将软件的开发(生产?)划分为几个阶段,或者称为软件开发流程。其中最常见的一种模型,是:

                                      需求 设计 编码 测试

      当然这里面有很多漏洞,比如你会说:怎么没有***?或者测试怎么会是最后一步?,或者现在流行TDD(测试驱动开发)。但是我要说的是,这个模型是所有其它模型的基础。感谢一下Royce,如果不是他提出这个模型,可能今天我们在软件生产过程中会更加不知所措。这个模型就是常见的或者常提到的“瀑布模型”(Waterfall Model)。

      关于这个模型的缺点不在这赘述了,它的优点只有一个,就是给软件生产过程提供了一个并不是很完整的依据。比如设计是在有需求之后做的,而编码完成后需要测试,等等。当然今天很多企业并没有这样做。

      而当你理解了瀑布模型后,你会发现,其他更为高级,先进的模型,比如瀑布之后的一个迭代模型,变的很容易了。

      还有两个不得不提的,和软件生命周期有关的名词:RUPXP,在这里也简单的介绍一下。

      RUP(Rational统一软件过程)是一个范围更广的概念,它的软件生命周期是一种很复杂的迭代,当然它还包括一些其它的东西。而XP则显得更为灵活。

      关于软件生命周期,讲得差不多了。下面该讲讲测试和软件生命周期的关系了。如果你还没被上面一大堆东西搞昏头的话,你会告诉我其实上面已经说到了,测试是软件生命周期的一部分,或者说,测试是软件开发过程中的一部分。

      了解这一点非常,非常重要。

 

      这一篇都是纯理论的东东,看上去比较晕。写起来也没什么条理,想到哪写到哪。

      下一篇会讲一些开发方面的东西。
      
      总目录请看这里

posted on 2006-09-30 10:46  有些伤感  阅读(2694)  评论(2编辑  收藏  举报