"软件工程期末考试复习资料"
这篇资料涵盖了软件工程期末考试的重要知识点,包括选择题、判断题和简答题,旨在帮助学生复习并准备考试。以下是对这些知识点的详细解析:
一、选择题
1. 软件的主要特性包括无形性、高成本以及程序和文档。选项D中的“可独立构成计算机系统”不完整,因为软件通常需要硬件支持才能运行。
2. 软件工程的三要素是方法、工具和过程,选项A和C的组合错误。
3. 包含风险分析的软件工程模型是螺旋模型,因为它强调在每个开发阶段都进行风险评估。
4. 软件工程的主要目标是风险分析,而不仅仅是需求、设计或实现。
5. 面向对象开发方法包括Booch、UML、Coad和OMT,这些都是常见的OO方法。
6. 软件危机主要表现为产品质量低劣和生产率低下,而非成本过高或人员不足。
7. 软件开发方法的主要工作模型包括螺旋模型、循环模型(可能是迭代模型的误写)和瀑布模型,专家模型不在其中。
8. 软件工程的目标包括易于维护、低开发成本和短开发期,高性能通常不是工程目标,而是结果之一。
9. 软件工程学的目的是应用科学方法和工程化管理,克服软件危机,以较低成本开发高质量软件。
二、判断题
1. 软件不仅是程序,还包括文档和数据。
2. 瀑布模型确实将软件开发阶段划分清晰,但过于线性,可能导致回溯困难。
3. 结构化方法的工作模型不是螺旋模型,而是更倾向于线性的瀑布模型。
4. 结构化方法适合大型软件,但JSP可能不适合。
5. 原型化方法包含更多步骤,如需求获取、原型构建、评估和改进。
6. 面向对象方法包括分析、设计和程序设计三个阶段。
7. 软件危机表现为质量低和生产力低,而非需求增长和价格上涨。
8. 软件工具旨在提高效率,而非延长产品寿命。
9. 软件工程过程应以需求为中心,设计和编程都是关键环节。
10. RCP(快速原型化)和RSP(快速系统原型)的区别在于前者原型可能成为最终产品,后者则作为迭代的一部分。
三、简答题
软件产品的特性:
1. 无形性:软件是无形的,无法触摸,只存在于计算设备的存储中。
2. 高研发成本:软件开发需要大量的人力和时间投入。
3. 无物理磨损:软件不会像硬件那样磨损,但可能会因错误、漏洞或不兼容问题而退化。
4. 脑力劳动密集:软件开发主要依赖于知识工作者的智力活动。
5. 复杂性:软件往往涉及复杂的逻辑和结构,且受限于硬件环境。
6. 昂贵成本:软件的开发成本非常高,包括人力、时间和资源。
7. 软件危机:软件开发中面临的挑战,如质量问题、成本控制和进度延误等。
这份资料为考生提供了全面的复习材料,涵盖了软件工程的基础概念、方法论、目标以及危机的各个方面,对于理解和掌握软件工程的核心知识点大有裨益。