第5章
一、填空题
(1) 软件工程中的总体设计又称为 系统设计。
(2) 在软件工程中的设计阶段,需要充分体现软件工程的"模块化 ""抽象 ""信息隐藏"等基本原则。
(3) 系统详细设计阶段最后产生的文档是 软件设计文档。
(4) 软件运行中的浮动位置菜单又称为 弹出菜单。
(5) 数据的显示形式主要包括字符显示和 图形显示。
(6) 一组语句在程序中多处出现,为了节省内存空间把这些语句放在一个模块中,该模块是 高内聚 。
(7) SD方法的原则是使每个模块执行 单一功能 。
(8) 软件详细设计工具可分为 设计工具、设计语言和表格工具
二、选择题
(1)D
(2)C
(3)A
(4)B
(5)C
(6)B
三、简答题
(1)系统设计分成哪两个阶段?各要完成什么任务?
答:系统设计分为两个阶段:总体设计和详细设计。在总体设计阶段需要确定软件系统的总体设计实现方案、给出软件的模型结构、编写总体设计文档;在详细设计阶段需要确定组成模块和联系、处理过程、数据库设计、网络设计、界面设计、软件设计文档和实现具体方案。
(2)总体设计的原则有哪些?
答:总体设计的原则是由宏观到微观、逐步求精的原则定性与定量分析相结合、分解与协调相结合和模块化方法并兼顾软件的通用性、关联性、整体性和层次性。
(3)软件总体设计与详细设计的区别有哪些?
答:总体设计和详细设计是软件开发过程中两个不同阶段的设计过程,它们在目标、层次和细节方面有所不同:
总体设计 | 详细设计 | |
---|---|---|
目标 | 确定系统的整体结构和组件之间的交互方式。它涉及到系统的整体架构和模块化设计 | 在总体设计的基础上,进一步定义系统的具体实现细节。它涉及到算法、数据结构、数据流程等方面的具体设计 |
层次 | 注重于系统的高层结构,包括各个模块之间的功能划分、通信和接口定义等 | 注重于系统的低层细节,包括每个模块的具体实现方式、数据结构的选择、算法的设计等 |
细节 | 会过于关注具体的实现细节,而是着重于定义系统的整体框架和模块之间的关系 | 要考虑到更多的实现细节,包括具体的代码实现、数据结构的优化、算法的效率等 |
(4)模块的耦合性、内聚性包括哪些种类?
答:偶然內聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺序内聚、功能内聚。
(5)数据库设计的要点有哪些?
- 需求分析:明确业务需求,包括信息管理和数据操作要求。
- 概念结构设计:形成独立于具体数据库管理系统的概念模型,如E-R图。
- 逻辑结构设计:将概念结构转换为数据库管理系统支持的数据模型,并进行优化。
- 物理结构设计:为逻辑数据模型选择最适合应用环境的物理结构,包括存储结构和存取方法。
- 数据库实施:根据逻辑设计和物理设计的结果建立数据库,编写与调试应用程序。
- 数据库运行和维护 :投入正式运行后,进行评估、调整与修改。
(6)网络系统设计的要点有哪些?
答:需求分析、网络拓扑结构设计、网络协议选择、网络设备选择、网络安全性设计、网络性能优化、网络扩展性设计
(7)用户界面应具备哪些特性?
答:直观性、响应性、一致性、可访问性、美观性、功能性、可定制性
(8)用户界面有哪些基本类型?设计要点是什么?
答:基本类型包括:命令行界面、图形用户界面、触摸界面、语音界面
设计要点: - 命令行界面:设计清晰的命令结构,提供帮助文档和错误提示。
- 图形用户界面:设计直观的布局,使用图标和颜色区分不同的功能。
- 触摸界面:设计大按钮和触摸友好的元素,确保用户能够轻松操作。
- 语音界面:设计自然语言处理能力,提供清晰的语音反馈和错误处理。
四、实践题
对一种排序算法,分别用控制流程图、结构流程图描述其过程。
冒泡排序算法: