ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

第七章思考题

2021-04-06 22:04:22  阅读:160  来源: 互联网

标签:第七章 思考题 系统 模块 内聚 耦合 设计 体系结构


1.软件设计的目标及主要任务

软件设计基本目标是构造系统“怎么做”的模型描述。对将要实现的软件系统的体系结构、系统的数据、系统模块间的接口,以及所采用的算法给出详尽的描述。

任务:

a.数据设计将分析模型转化为设计类的实现以及软件实现所要求的数据结构。

b.体系结构设计定义了软件的主要结构元素之间的联系,可用于达到系统所定义需求的体系结构风格和设计模式以及影响体系结构实现方式的约束。

c.接口设计描述了软件和协作系统之间、软件和使用人员之间是如何通信的。接口是信息流和特定行为的类型。

d.结构设计将软件体系结构的结构元素变换为对软件的过程性描述。

2.什么是模块化设计思想

分解、抽象、逐步求精、信息隐蔽和模块独立性

3.模块独立性的两个度量标准

模块自身的内聚和模块之间的耦合

4.内聚和耦合的含义?各有哪些种类?

内聚:块内联系,一个模块内部元素彼此结合的紧密程度

耦合:块间联系。

内聚:功能性内聚(解析XML文档模块)顺序性内聚(规则引擎:一个任务读配置,输出执行计划。另一个输入执行计划并执行)通信性内聚(学生管理系统的数据库CRUD操作)过程性内聚(读写文件操作:判断文件是否存在、判断权限、打开文件、读写文件)时间性内聚(初始化模块,异常处理模块)逻辑性内聚(由若干个逻辑功能相似的任务组成,通过模块外引入的一个开关量选择其一执行)偶然性内聚(一个处理正方形的模块有两个功能:计算面积,画出这个正方形)

耦合:非直接耦合(同级模块之间没有信息传递)数据耦合(调用下属模块时,如果交换的都是简单变量,便构成数据耦合)特征耦合(调用时交换的是数据结构)控制耦合(逻辑性内聚的模块)外部耦合(允许一组模块访问同一个全局变量)公共耦合(公共的内存区域)内容耦合(若一个模块直接访问另一个模块的内部数据,或一个模块直接转到另一个模块的内部或一个模块有多个接口)

5.为什么要高内聚低耦合?是否内聚高耦合低越好?

高内聚,低耦合的好处体现在系统持续发展的过程中,高内聚,低耦合的系统具有更好的重用性,维护性,扩展性,可以更高效的完成系统的维护开发,持续的支持业务的发展,而不会成为业务发展的障碍。并不是内聚越高越好,耦合越低越好,真正好的设计是在高内聚和低耦合间进行平衡,也就是说高内聚和低耦合是冲突的。内聚性高导致了其它类的耦合特别多,于是整个设计就变成了“高内聚高耦合”了。由于高耦合,整个系统变动同样非常频繁;耦合性低会导致内聚性很低,于是整个设计就变成了“低耦合低内聚”了,整个类的变动同样非常频繁。

 

标签:第七章,思考题,系统,模块,内聚,耦合,设计,体系结构
来源: https://www.cnblogs.com/rururuaaa/p/14623894.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有