background image

关系,对各子系统进行具体设计定义,编写软件概要设计和详细设计说明书,数据库或数
据结构设计说明书,组装测试计划。
3. 设计

软件设计可以分为概要设计和详细设计两个阶段。实际上软件设计的主要任务就是将

软件分解成模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。可以是一
个函数、过程、子程序、一段带有程序说明的独立的程序和数据,也可以是可组合、可分解和
可更换的功能单元。模块,然后进行模块设计。概要设计就是结构设计,其主要目标就是给
出软件的模块结构,用软件结构图表示。详细设计的首要任务就是设计模块的程序流程、算
法和数据结构,次要任务就是设计数据库,常用方法还是结构化程序设计方法。

 

4. 编码

软件编码是指把软件设计转换成计算机可以接受的程序,即写成以某一程序设计语言

表示的

"源程序清单"。充分了解软件开发语言、工具的特性和编程风格,有助于开发工具的

选择以及保证软件产品的开发质量。

当前软件开发中除在专用场合,已经很少使用二十世纪

80 年代的高级语言了,取而

代之的是面向对象的开发语言。而且面向对象的开发语言和开发环境大都合为一体,大大
提高了开发的速度。
5. 测试

软件测试的目的是以较小的代价发现尽可能多的错误。要实现这个目标的关键在于设

计一套出色的测试用例(测试数据和预期的输出结果组成了测试用例)。如何才能设计出
一套出色的测试用例,关键在于理解测试方法。不同的测试方法有不同的测试用例设计方
法。两种常用的测试方法是白盒法测试对象是源程序,依据的是程序内部的的逻辑结构来
发现软件的编程错误、结构错误和数据错误。结构错误包括逻辑、数据流、初始化等错误。用
例设计的关键是以较少的用例覆盖尽可能多的内部程序逻辑结果。白盒法和黑盒法依据的
是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。其中接口错误包括内部
/外部接口、资源管理、集成化以及系统错误。黑盒法用例设计的关键同样也是以较少的用例
覆盖模块输出和输入接口。黑盒法。

 

6. 维护 

维护是旨在已完成对软件的研制(分析、设计、编码和测试)工作并交付使用以后,对

软件产品所进行的一些软件工程的活动。即根据软件运行的情况,对软件进行适当修改,
以适应新的要求,以及纠正运行中发现的错误。编写软件问题报告、软件修改报告。

 

一个中等规模的软件,如果研制阶段需要一年至二年的时间,在它投入使用以后,其

运行或工作时间可能持续五年至十年。那么它的维护阶段也是运行的这五年至十年期间。在
这段时间,人们几乎需要着手解决研制阶段所遇到的各种问题,同时还要解决某些维护工
作本身特有的问题。做好软件维护工作,不仅能排除障碍,使软件能正常工作,而且还可