我是笔,一直在寻找我的笔盖~

软件生命周期

上一篇 / 下一篇  2008-01-02 15:45:00 / 个人分类:测试理论

软件生命周期:计划——>需求分析——>设计——>编码——>测试——>运行和维护

 

计划:确定软件开发总目标

     给出软件的功能、性能、可靠性以用接口等方面的设想

      研究完成该项目的可行性,探讨问题解决方案

     对可供开发使用的资源、成本、可取得的效益和开发进度作出估计

     制定完成开发任务的实施计划
     
这些呢,是由项目经理来完成的。)

 

需求分析:对开发的软件进行详细的定义,由需求分析人员和用户共同讨论决定,哪些需求是可以满足的,并且给予确切的描述,写出软件需求规格说明书SRS

 

         这时的需求可能没有达到用户的要求或者超出用户的要求,此时得同行评审(review),由QA组织会议,开发工程师和测试工程师提出问题和建议,同时需求分析人员向开发工程师和测试工程师解释需求。

 

设计:概要设计(HLD):系统拆分,在设计阶段把各项需求转换成相应的体系结构,每一部分是功能明确的模块。

     详细设计(LLD):函数设计,对每个模块要完成的工作进行具体的描述。

 

编码(Code)把软件设计转换成计算机可以接受的程序。开发工程师除了编写代码、调试程序之外,亦进行冒烟测试(Smoke Testing)

 

测试(Test)检验软件是否符合客户需求,达到质量要求,一般由独立的小组执行,测试工作分为:

         单元测试(UTUnit Testing):参照LLD,对每一个函数、方法进行测试。

                  目的是:1.发现Code过程中引入的错误

                          2.验证代码与设计相符合

                          3.发现设计和需求中存在的错误

                  UT主要采用白盒测试(White Box Testing)

 

         集成测试(ITIntegration Testing):参照HLD,对函数与函数集成的接口、模块与模块集成的接口进行测试。

                  目的是:1.验证接口是与设计相符合的

                          2.发现设计和需求中存在的错误

                  IT主要采用灰盒测试。

 

         系统测试(STSystem Testing):参照SRS,对每一个功能需求、性能需求等进行测试。

             目的是:1.与系统的需求定义做比较,发现软件与之不符合或矛盾的地方

                      2.测试用例(TCTest Case)应根据SRS来设计,并在实际使用环境中运行。

                   ST主要采用黑盒测试(Black Box Testing)

 

运行和维护:这个阶段将软件交付给用户投入正式使用,以后便进入维护阶段,如:软件错误、系统软件升级、增强软件功能、提高性能等都要对软件进行修改。

 

      我们要明白:我们做软件测试不能够保证软件的质量,我们的目的是提高软件的质量。

                软件产品的质量与流程、技术和组织三者都有关系。

                 测试应尽早进入流程中。


TAG: 测试理论

 

评分:0

我来说两句

Open Toolbar