软件工程期末复习要点:理论与实践概述

版权申诉
0 下载量 69 浏览量 更新于2024-07-07 1 收藏 397KB PDF 举报
本资源是一份针对大学生软件工程期末复习的资料,涵盖了多个关键知识点,旨在帮助学生巩固和准备考试。以下是从部分内容提炼出的详细讲解: 1. **软件定义**:在信息技术领域,软件通常被理解为包括程序、文档和数据这三个基本元素。程序是执行特定任务的指令集合;文档则是对软件功能和使用方法的书面说明;数据则是程序处理的对象。 2. **数据流图**:数据流图是系统分析阶段常用的工具,它包含数据的源点与终点、数据流、加工(处理单元)和数据文件。这些元素用于描述系统的信息流和处理过程。 3. **系统模型**:数据流图与数据字典一起构成系统的逻辑模型,这是需求规格说明书的重要组成部分,有助于理解和设计软件的功能架构。 4. **模块设计原则**:模块化编程中,应该遵循高内聚、低耦合的原则,即模块内部应尽可能独立并完成单一功能,同时与其他模块的交互应尽量减少。 5. **面向对象概念**:类的实例化是创建对象,它是面向对象编程中的核心概念,通过实例化,可以创建具有相同属性和行为的实体。 6. **软件可靠性**:软件可靠性主要通过成功率(软件在规定条件下正确运行的概率)和平均故障时间(平均故障间隔时间)这两个指标来衡量,反映了软件的稳定性和可用性。 7. **成本估算方法**:自底向上成本估算是一种通过逐层分解任务,逐级计算子任务开发工作量,最终累加得出总成本的方法。 8. **模块复杂度**:模块的扇入数,即调用该模块的其他模块数量,表示了模块的复杂程度。直接上级模块的数量m小于或等于总调用者n,所以扇入数为N。 9. **结构化设计**:基于数据流图,结构化设计按照逻辑流程逐步转化为软件结构,确保设计的清晰和易于实现。 10. **软件工程管理**:涵盖了项目经费管理、软件质量管理、项目进度管理和人员管理等多个方面,确保项目的顺利进行。 11. **面向对象分析**:目标是对现实世界的系统进行抽象和模型化,以便于理解和设计。 12. **软件维护**:包括分析评价、修改设计和编写程序代码等生产性活动,以及适应性维护,即应对环境变化的需求修改。 13. **模块内聚性**:学生成绩统计模块的功能按顺序执行,先累加后求平均,体现的是顺序内聚,即模块内的操作紧密相关。 14. **投资回收期**:反映项目经济效益达到初始投资费用所需的时间,是评估项目经济可行性的关键指标。 15. **软件生存周期**:指软件从提出、设计、实现、测试到废弃的全过程。 16. **结构化程序设计**:曾经对程序设计方法产生了革命性影响,强调模块化、清晰的逻辑结构和逐步求精的编程原则,是早期软件开发的重要指导思想。