软件的模块化设计
考试要求: 掌握     
知识路径:  > 嵌入式系统软件基础知识  > 嵌入式系统程序设计  > 嵌入式软件开发过程  > 嵌入式软件设计  > 特性设计技术  > 可扩展性的设计


 
       模块化设计方法适用于通用软件和嵌入式软件的设计,是提高系统可扩展性和软件复用性的通用方法。模块化设计包括四个方面:模块、数据、体系和程序设计。
       模块设计降低了系统的复杂性、使得系统易于修改、且支持了各部分的并行开发。针对模块的操作特性,则是通过时间历史、激活机制和控制模式进行体现。在程序结构内部,模块可分类:
       (1)顺序模块,由应用程序进行引用和执行,运行过程中不能被打断。
       (2)增量模块,运行过程中可被其他应用程序打断,而后再从断点重新开始。
       (3)并行模块,在多处理器环境下可以与其他模块同时执行。
       由于单个模块的功能已被划分出来,开发起来相对较为容易,更多要从独立性的角度关注模块之间的界限。功能的独立性可以使用内聚性和耦合性这两个特性要素进行衡量:内聚性衡量模块功能强度的相关性,耦合性衡量模块间的相互依赖的相关性。
       数据设计至关重要,并被有些人认为是最重要的设计行为。数据设计主要取决于数据结构的设计和程序复杂性的设计,通常采用如下办法保证数据设计的质量:
       (1)用于功能和行为分析的系统分析原理也适用于数据。
       (2)模块涉及的数据结构及基于数据结构的操作应被确定。
       (3)创建数据词典并用来详细说明数据和程序的设计。
       (4)较低层次的数据设计策略延迟至设计过程的后期。
       (5)数据结构的信息应只被需要使用此结构内数据成员的模块知道。
       (6)可在适当时候借鉴有用的数据结构和操作库。
       (7)设计和编程语言应支持抽象数据类型的规范和实现。
       体系设计的主要目标是定义适合模块化开发的程序结构,并描述出模块之间的控制相关性。体系设计应融合程序结构与数据结构,并对数据在程序中流动的界限进行定义。体系设计要关注系统的整体设计而不是单独组件。进行体系设计有许多不同的方法,但这些方法无一例外都是从软件的全局性出发,逐步接近设计的原点。
       过程设计通常是在数据、程序结构及算法被确定后(通常是类似英语的自然语言),再进行程序过程设计。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有