软件工程基础复习题解析与要点总结

版权申诉
0 下载量 192 浏览量 更新于2024-06-26 收藏 3.71MB PDF 举报
软件工程基础复习题及答案包含了对软件开发过程中各种理论和实践概念的检验,旨在帮助考生巩固和理解软件工程的核心知识。以下是一些关键知识点的详细解析: 1. **螺旋模型**:螺旋模型确实是在瀑布模型和增量模型的基础上发展起来的,它强调了风险分析和迭代,允许在每个迭代中根据环境变化调整软件开发过程。 2. **数据字典**:数据字典作为数据流图的补充,是对数据流图中的数据元素如数据流、加工、存储和数据源、终点进行详尽定义的工具,确保了数据的准确性和一致性。 3. **JAVA语言与CASE工具**:尽管JAVA编译器可以用于编译代码,但它并不属于CASE (计算机辅助软件工程) 工具,CASE工具通常包含更全面的软件开发支持功能。 4. **软件定义**:软件不仅限于编程代码,它涵盖了设计、测试、文档等整个软件生命周期,错误地将软件简化为程序代码。 5. **模块独立性**:保持软件模块间的低耦合度和高内聚是良好的设计原则,但并不是说耦合性越弱越好,适度的耦合有利于模块之间的交互和重用。 6. **数据库设计说明书**:是软件配置项之一,但并不等同于整个数据库设计,它是设计阶段的一部分。 7. **面向对象方法论**:在OO方法中,类是抽象的概念,对象是类的具体实例,两者不是生成关系,而是类是对象的模板。 8. **过程描述语言**:主要用于描述软件的控制流和算法,而非系统结构。 9. **软件测试**:测试并不能完全保证软件正确性,只能发现已知错误,不能证明没有未发现的错误。 10. **快速原型模型**:适应性强,能有效应对需求变更,通过迭代展示初步功能。 11. **软件设计原则**:模块化、信息隐藏、抽象和逐步求精有助于实现模块间的良好结构。 12. **集成测试**:通常由开发团队完成,用户参与的是验收测试。 13. **确认测试计划**:应在详细设计阶段制定,而不是可行性研究阶段。 14. **白盒测试**:关注程序内部逻辑,需要理解代码结构,而不仅仅是功能。 15. **概要设计**:确实涉及系统结构和数据设计,但不局限于这些,还可能包括接口设计。 16. **可行性研究**:经济可行性是重要考量,但不是唯一决定因素。 17. **耦合度与模块**:耦合度描述的是模块间的关系强度,而非模块内部元素。 18. **事务**:在软件系统中,操作事件被视为事务,代表一次完整、可重复的业务操作。 19. **概要设计文档**:在概要设计阶段生成的重要文档,记录设计决策和系统架构。 20. **模块分解**:分解要适度,过大或过小的模块都会影响软件的维护性,分解要平衡。 21. **GOTO语句**:在现代编程实践中,虽然不鼓励过度使用,但并不绝对禁止。 22. **类的构成**:类是对象的蓝图,由方法(行为)和数据属性(状态)组成。 23. **软件开发趋势**:强调清晰性和可读性,编码质量的重要性被提升。 24. **程序安全与容错**:容错不仅仅是避免错误,还包括处理和恢复错误的能力。 25. **人力资源**:在软件项目中,人力是核心资源,尤其在敏捷开发中更为突出。 名词解释: - 数据字典:详细描述数据流图元素的工具。 - 数据流图:可视化表示系统数据流动的工具。 - 白盒测试:基于程序内部结构的测试方法,检查代码逻辑。