《软件工程基础》知识点总结
一、软件的定义与特点
软件的定义:软件 = 程序 + 数据 + 相关文档
软件的特点:
是一种逻辑实体,具有抽象性
软件开发、运行依赖于计算机系统
涉及知识产权、法律等社会因素
不存在磨损和老化问题(是软件与硬件的本质区别)
二、软件的分类
系统软件:操作系统、编译程序、汇编程序等(如UNIX、编译程序)
应用软件:针对特定应用的软件(如学生成绩管理系统、教务管理系统)
支撑软件(工具软件):辅助软件开发与维护的工具(如编辑软件、数据库管理系统)
三、软件工程基础
软件工程三要素:方法、工具、过程
软件危机:
表现:开发成本高、质量低、生产率低、难以控制
根本原因:系统复杂性
软件生命周期:
定义:从提出、实现、使用维护到停止使用的全过程
阶段:定义阶段(需求分析)、开发阶段(设计、编码、测试)、维护阶段
详细设计属于开发阶段
四、需求分析
任务:确定软件系统功能
产出文档:软件需求规格说明书
使用工具:数据流图(DFD)、数据字典、判定树等
不属于需求分析的任务:制定测试计划、总体结构设计
五、软件设计
设计阶段任务:
总体结构设计、数据设计、过程设计
不属于设计阶段任务:功能确定(A)、制定测试计划
模块独立性准则:
高内聚、低耦合
内聚:模块内部元素的紧密程度
耦合:模块间相互依赖的程度
设计工具:
结构图、PAD图、程序流程图、N-S图
不用于设计阶段:DFD图(用于需求分析)
六、软件测试与调试
测试目的:发现错误
测试类型:
黑盒测试:基于外部功能(等价类划分、边界值分析、错误推测法)
白盒测试:基于内部逻辑(基本路径测试、条件覆盖、语句覆盖)
测试步骤:单元测试 → 集成测试 → 确认测试
调试(Debug):定位并改正错误
调试方法:回溯法、强行排错法、原因排除法(不包括集成测试法)
七、易错点总结
软件没有磨损和老化(√)
软件测试目的是发现错误,调试是改正错误(√)
DFD图是需求分析工具,不是设计工具(√)
系统软件 vs 应用软件:操作系统是系统软件,教务系统是应用软件(√)
软件需求规格说明书是需求分析阶段的输出,用于设计和测试(√)
0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复