软件测试--软件生命周期
软件和其他产品一样,都有一个从“出现”到“消失”的过程。这个过程就称作软件生命周期。就好像我们人类一样,从出生--少年--青年--中年--老年--死亡一样,可以将软件生命周期划分为6个阶段:问题定义、需求分析、软件设计、软件开发、软件测试、软件维护最后淘汰。
下面我们分开来认识下各个阶段:
1、问题定义
该阶段由软件开发方与需求方共同讨论,主要确定软件的开发目标及其可行性。
比如说,我是开网吧的,网吧里这么多电脑管理很不方便。这时我们想要跟软件开发方约个咖啡厅聊聊,软件开发方就问道:我看你们的网吧电脑挺多的,这么多电脑管理起来麻烦又易错,我可以给你设计个管理系统帮忙解决这个问题。然后用户就说:好啊,那你们可以实现xxx效果吗??
2、需求分析
该阶段对软件需求进一步深入的分析,划分出软件需求需要实现的功能模块,并制作成文档。需求分析在软件整个生命周期中起到非常重要的作用,他直接关系到软件开发的成功率。在后期开发中,需求可能会发生变化,因此,在进行需求分析时,应考虑到需求的变化,以保证整个项目的顺利。
不同于问题定义,在这个阶段会对需求提出更明细的要求,并形成文档。可以作为后续的设计、开发和测试的重要依据。
3、软件设计
该阶段在需求分析的基础上,对整个软件系统进行设计,如系统框架设计、数据库等。
这一过程主要由开发人员实现。这一阶段也可以分为基础设计和详细设计,基础设计重点突出业务模块,项目背景,设计逻辑等;而详细设计可能会涉及到代码层,可以写明类和核心函数的调用关系等。
4、软件开发
该阶段在软件设计的基础上,选择一种编程语言进行开发。
通俗来说就是以需求分析文档、软件设计文档等为依据,用代码实现功能
5、软件测试
该阶段时软件开发完成后对软件进行测试,以查找软件设计与软件开发过程中存在的问题并加以修正。
在这个阶段中,根据不同的分类标准有不同的测试划分,可以分为白盒测试、黑盒测试、两者结合的灰盒测试;或者单元测试、集成测试、系统测试等。
6、软件维护
软件完成测试并投入使用之后,面对庞大的用户群体,软件可能无法满足用户需求,此时就需要对软件进行维护升级以延续软件的使用寿命。其中软件维护是整个软件生命周期中持续时间最长的阶段。