软件设计基础:通信性内聚与模块划分
需积分: 17 129 浏览量
更新于2024-08-23
收藏 791KB PPT 举报
通信性内聚度是软件设计中的一个重要概念,属于中级内聚范畴,它关注模块内部的逻辑结构如何通过数据共享和通信来实现功能。模块的通信性内聚度高意味着模块内的各个部分围绕同一数据区域协同工作,以完成特定的通信任务。例如,在模块A中,通过从文件FILE读取数据,模块生成两个不同的报表(报表一和报表二),这种操作方式体现了数据驱动的通信性内聚。
软件设计基础课程强调了这一设计原则,尤其是在软件设计过程中。设计活动被视为软件开发的核心环节,因为它直接影响软件的质量、成本和可维护性。软件设计过程通常包括五个主要步骤:系统总体结构设计、数据设计、过程设计、接口设计和体系结构设计。这些设计活动中,数据词典、数据流图、实体关系图、状态转换图和加工规格说明等工具被用来表达设计意图。
在设计过程中,从需求分析阶段获取的需求规格说明书起着关键作用,它提供了系统的高层次描述,如信息、功能和行为等方面。软件设计过程的任务是将这些分析模型转化为更具体的代码形式,比如将数据设计转化为数据对象描述,将过程设计转化为控制规格说明。
通信性内聚度的高低对模块划分有直接关系,一个良好的设计应该避免过度的模块划分导致的系统损耗。如果模块划分得当,可以提高软件的稳定性和可维护性,使得后续的编码和测试工作更加有序和高效。软件设计不仅是编码工作的基础,也是确保软件质量和长期支持的关键因素。
通信性内聚度是衡量软件模块之间信息传递效率和一致性的重要指标,它在软件设计的实践中起着至关重要的作用,能够帮助软件工程师创建高效、易于理解和维护的软件系统。
147 浏览量
2021-03-12 上传
2022-07-03 上传
2023-05-10 上传
2023-05-30 上传
2023-04-23 上传
2023-06-12 上传
2023-12-25 上传
2023-04-14 上传
getsentry
- 粉丝: 28
- 资源: 2万+
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码