【软件工程与实践】(第四版)第5章习题答案详解

第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)用户界面有哪些基本类型?设计要点是什么?
    答:基本类型包括:命令行界面、图形用户界面、触摸界面、语音界面
    设计要点:
  • 命令行界面:设计清晰的命令结构,提供帮助文档和错误提示。
  • 图形用户界面:设计直观的布局,使用图标和颜色区分不同的功能。
  • 触摸界面:设计大按钮和触摸友好的元素,确保用户能够轻松操作。
  • 语音界面:设计自然语言处理能力,提供清晰的语音反馈和错误处理。

四、实践题

对一种排序算法,分别用控制流程图、结构流程图描述其过程。

冒泡排序算法:

相关推荐
天马行空_9 小时前
浅谈技术面试
软件工程
海海不掉头发1 天前
CSDN博客_时序预测9模型复现对比
人工智能·学习·软件工程
搞科研的小刘选手1 天前
【广州大学主办 | IEEE出版 | 落地广州】第八届国际科技创新学术交流大会暨通信、信息系统和软件工程学术会议(CISSE 2026)
软件工程·通信·信息系统·学术会议·广州大学·科技创新·会议推荐
电子科技圈1 天前
2026 RISC-V中国峰会观察:编译调试工具链的“在场节奏”,释放了什么信号?
大数据·人工智能·设计模式·软件工程·软件构建·代码规范·risc-v
长不大的杨瑞杰1 天前
OpenCode v2 运行时预热实战:Warming、Prompt Cache、后台服务与成本治理
人工智能·安全·云计算·软件工程·devops
长不大的杨瑞杰2 天前
OpenCode v2 会话可靠性实战:Snapshots、Compaction、Instructions 与 Formatters
人工智能·安全·云计算·软件工程·devops
Old Uncle Tom3 天前
LLM 替代 SAST?Claude Code 安全审查工具的设计取舍与工程启示
人工智能·安全·软件工程
地图小课堂3 天前
Bigemap Pro如何打开无人机航拍影像并套合配准(有坐标 geoTiff、ecw)
无人机·软件工程
长不大的杨瑞杰3 天前
OpenCode v2 多源上下文实战:Websearch、References、Attachments 与缓存预热
人工智能·安全·云计算·软件工程·devops
howard20054 天前
软件工程课程架构思维导图
软件工程·课程架构