《软件工程》课程复习资料与试题解析

需积分: 50 23 下载量 107 浏览量 更新于2024-07-15 1 收藏 166KB PDF 举报
"《软件工程》(课程代码02333) 是一本关于软件工程的教材,包含习题和答案,主要涉及软件开发过程中的关键概念和技术。这本书涵盖了一系列的单项选择题,用于测试读者对软件工程的理解,如程序设计语言的特性、项目进度安排方法、冗余技术、需求追踪工具、软件测试目的、软件危机、瀑布模型以及模块内聚性等。" 在这些题目中,我们可以提取到以下几个关键知识点: 1. **软件工程的基本结构**:软件工程中的基本结构包括顺序结构、选择结构和重复结构,而不包括嵌套结构。嵌套结构可以是上述基本结构的组合形式。 2. **软件的可维护性**:可维护软件的特性包括可理解性、可修改性和可移植性,这些特性使得软件在长期使用和升级中更易于管理和改进。 3. **程序设计语言的特性**:程序设计语言的技术特性、心理特性和工程特性是其重要的属性,但应用特性并不是语言固有的特性。 4. **项目进度安排方法**:常见的方法有工程网络图(如PERT/CPM)、Gantt图和任务资源表,而不包括进度结构图。 5. **冗余技术**:冗余技术用于提高系统的可靠性,包括结构冗余、信息冗余和时间冗余,而代码冗余通常被视为不良编程实践,不是为了提高可靠性。 6. **需求追踪工具**:需求追踪工具帮助管理需求,如DBMS上的应用运行工具,可以实现追踪和状态报告,访问和版本控制,以及文件和修改管理。 7. **软件测试的目的**:软件测试是为了发现错误,一个好的测试用例应能找出新的错误。然而,测试不能证明程序无错,只能证明存在错误。 8. **软件危机与软件工程**:软件工程的出现是为了解决软件危机,它提供了一种结构化的方法来处理软件开发和维护中的问题。 9. **瀑布模型的特点**:瀑布模型是一种严格的线性开发模型,将开发过程划分为一系列顺序的活动,缺乏灵活性是其缺点。 10. **需求分析内容**:在需求分析阶段,需要识别的功能需求、性能需求和环境需求,而输入/输出需求属于需求分析的一部分,不属于问题识别内容。 11. **数据流图的顶层**:在绘制数据流图时,通常会有1张顶层图,代表整个系统的高层次视图。 12. **模块内聚性**:模块的内聚性是指模块内部元素的紧密程度,其中功能内聚是最强的内聚类型,表示模块内所有元素共同完成一个单一的功能。 13. **软件维护的提出阶段**:最早提出软件系统维护问题的阶段是在需求分析阶段,因为只有明确了需求,才能预见未来的维护需求。 这些知识点体现了软件工程的核心原理和实践,对于学习和理解软件开发过程有着重要的指导作用。