一般来说,软件开发生命周期可以包括以下5个阶段。
1.分析阶段
软件需求分析,实际上是回答“软件需要完成什么功能”的问题。它的主要工作是,通过研讨或调查研究,对用户的需求进行收集,然后去粗取精、去伪存真、正确理解,最后把它用标准的软件工程开发语言(需求规格说明书)表达出来,供设计人员参考。该阶段首先是在用户中进行调查研究,和用户一起确定软件需要解决的问题。
2.设计阶段
一般来说,软件设计可以分为概要设计和详细设计两个阶段。该阶段的最终任务是将软件分解成一个个模块(可以是一个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和可更换的功能单元),并将模块内部的结构设计出来。
3.编码阶段
编码阶段主要是把软件设计转换成计算机可以接受的程序,选择某一种程序设计语言,编写源程序清单。
4.测试阶段(www.xing528.com)
软件测试的目的是以较小的代价发现尽可能多的错误。要实现该目标,关键在于设计一套出色的测试用例。不同的测试方法有不同的测试用例设计方法,目前常见的测试方法如下。
1)白盒测试法。该测试法的对象是源程序,依据程序内部的逻辑结构来发现软件的编程错误、结构错误和数据错误(如逻辑、数据流、初始化等错误),是以较少的用例覆盖尽可能多的内部程序逻辑结构。
2)黑盒测试法。该方法依据的是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。黑盒法用例设计的关键同样也是以较少的用例覆盖模块输出和输入接口。
5.维护阶段
维护阶段主要根据软件运行的情况,对软件进行适当修改,以适应新的要求,以及纠正运行中发现的错误。本阶段工作在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后进行,一般所做的工作是编写软件问题报告、软件修改报告。
维护阶段的成本是比较高的,设计不到位或者编码测试考虑不周全,可能会造成软件维护成本的大幅度提高。以一个中小规模软件为例,如果设计、编码和测试需要一年的时间,在投入使用后,其运行时间可能持续三年,那么维护阶段也就要持续三年。这段时间内,软件的维护者除了要解决研制阶段所遇到的各种问题外,如排除障碍,还要扩展软件的功能,提高性能。所以,和软件开发工作相比,软件维护的工作量和成本都要大得多。
在实际开发过程中,软件开发并不一定是从第一步进行到最后一步,而是在任何阶段进入下一阶段前一般都有一步或几步的回溯。如在测试过程中发现问题可能要求修改设计,用户可能会提出一些需要来修改需求说明书等。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。