《软件工程》考试复习资料:试卷与答案解析

需积分: 33 5 下载量 112 浏览量 更新于2024-09-15 收藏 82KB DOC 举报
"这是一份关于软件工程的试卷及答案,包含了名词解释、填空题、选择题等部分,旨在帮助学生复习考试,是必备的学习资料。" 在软件工程领域,这份试卷涵盖了多个关键概念和知识点: 1. **名词解释**: - **软件危机**:软件开发过程中出现的质量、成本、进度等问题,导致软件产品的不可预测性和不可维护性,严重阻碍了软件产业的发展。 - **纯收入**:在软件开发中,它可能指的是扣除开发成本后的利润或项目收益。 - **模块**:软件开发中的基本单元,具有特定功能,可以独立编写和测试。 - **原型**:在软件开发早期创建的简化版本,用于演示功能、获取用户反馈或验证设计。 - **BROOKS定律**:由弗雷德里克·布鲁克斯提出的,指出增加软件开发人员会增加沟通复杂性,可能延长项目时间。 2. **填空题**: - 软件包括程序及其文档,其中文档包括需求文档、设计文档、用户手册等。 - 软件生存周期通常包括需求分析、设计、编码、测试和维护等阶段。 - 在详细设计阶段,常见的工具有结构化设计图、数据流图、类图等。 - **原型法**是用于快速验证软件项目可行性的方法。 - 模块的耦合性类型有内容耦合、公共耦合、控制耦合、数据耦合等。 - 内聚性类型从强到弱包括功能内聚、顺序内聚、通信内聚、过程内聚、时间内聚、逻辑内聚、偶然内聚。 - 结构图的深度和宽度分别表示其层次结构的深浅和并行分支的多少。 - 集成测试通常采用自顶向下、自底向上或混合策略。 - 对于变换型数据流图,需确定逻辑转换。 - 良好的编程实践能增强代码可读性,便于维护。 3. **选择题**: - 可行性研究应包括技术、经济、社会和操作可行性。 - 数据流图的细化通常通过功能分解完成。 - 模块的耦合越弱,独立性越强。 - 控制域定义了一个模块内判断影响的范围。 - Jackson方法主要用于软件的详细设计。 - PDL是伪码(Pseudo-Code)的缩写,常用于描述程序设计思路。 - 软件测试一般首先进行单元测试,然后是集成测试和系统测试等。 这些题目覆盖了软件工程的基础理论、开发过程、设计原则和测试方法等多个方面,对于理解和掌握软件工程的核心概念非常有帮助。