Page 24 - 计算机应用软件开发技术研究
P. 24
计算机应用软件开发技术研究
Research on Computer Application Software Development Technology
从工程管理角度来看,软件设计分两步完成:概要设计和详细设计。概要设
计(又称结构设计)将软件需求转化为软件体系结构、确定系统接口、全局数据
结构或数据库模式;详细设计确立每个模块的实现算法和局部数据结构,用适当
方法表示算法和数据结构的细节。
软件设计是一个迭代的过程,软件设计的一般过程是:先进行高层次的结构
设计;后进行低层次的过程设计;穿插进行数据设计和接口设计。
(二)软件设计的基本原理
软件设计遵循软件工程的基本目标和原则,建立了适用于在软件设计中应该
遵循的基本原理和与软件设计有关的概念。
1.抽象
抽象是一种思维工具,就是把事物本质的共同特性提取出来而不考虑其他细
节。软件设计中考虑模块化解决方案时,可以定出多个抽象级别。抽象的层次从
概要设计到详细设计逐步降低。在软件概要设计中的模块分层也是由抽象到具体
逐步分析和构造出来的。
2.模块化
模块是指把一个待开发的软件分解成若干小的简单部分。例如高级语言中的
过程、函数、子程序等。每个模块可以完成一个特定的子功能,各个模块可以按
一定的方法组装起来成为一个整体,从而实现整个系统的功能。
模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的
过程。
为了解决复杂的问题,在软件设计中必须把整个问题进行分解来降低复杂
性,这样就可以减少开发工作量并降低开发成本和提高软件生产率。但是划分模
块并不是越多越好,因为这会增加模块之间接口的工作量,所以划分模块的层次
和数量应该避免过多或过少。
3.信息隐蔽
信息隐蔽是指在一个模块内包含的信息(过程或数据),对于不需要这些信
息的其他模块来说是不能访问的。
4.模块独立性
模块独立性是软件系统中每个模块只涉及软件要求的具体子功能,而和软件
系统中其他的模块接口是简单的。
·12·

