软工小结(四)——面向过程设计

软工总结(四)——面向过程设计

        软工是我们从面向过程的思想向面向对象转变的一个重要转折点,面向过程是一种基础的方法,其最重要的是模块化的思想。软工小结(四)——面向过程设计

       面向过程设计过程实际是划分模块以及确定模块内部结构的过程,其前者成为概要设计、后者成为详细设计。利用模块的独立化程度来描述结构化设计程度,而表示模块独立性主要通过两方面——耦合和内聚,因此“高内聚、低耦合”成为我们模块划分追求的方向。对于耦合内聚分别划分了几个层次,两方面也是相互对立的,对于具体的项目职能寻求一个适合的程度。模块的独立性不仅使我们的开发变得容易,对于以后的测试维护也体现了其实在的价值。

       确定模块的过程即是分解和抽象的过程,通过逐层的分解及抽象来确定模块功能结构。使用SC图来确定模块及其各模块间关系是一个很好的工具。但应当注意以下几点:

        1.次序关系

        2.模块独立性问题

        3.直接下属5个左右

        4.停止分解情况:

                            ①不能再分②用户提供模块或程序③界面是I/O传送信息④不宜再分解为过小

       SC图也分为两种类型:变换型和事务型。

       详细设计过程画法以程序流程图为基础进行演化,不同工具都会有各自优缺点,其功能主要描述整个模块的算法与结构,为下一阶段的编程阶段打下基础。

        此过程形成的两个文档《概要设计说明书》和《详细设计说明书》需描述出系统的整个设计过程:接口、数据结构、运行、出错处理、安全保密、维护、程序等方面的设计,为以后的实施、测试、维护提供有效的基础指导。