《软件工程基础》知识点总结

一、软件的定义与特点

软件的定义:软件 = 程序 + 数据 + 相关文档

软件的特点:

是一种逻辑实体,具有抽象性

软件开发、运行依赖于计算机系统

涉及知识产权、法律等社会因素

不存在磨损和老化问题(是软件与硬件的本质区别)

二、软件的分类

系统软件:操作系统、编译程序、汇编程序等(如UNIX、编译程序)

应用软件:针对特定应用的软件(如学生成绩管理系统、教务管理系统)

支撑软件(工具软件):辅助软件开发与维护的工具(如编辑软件、数据库管理系统)

三、软件工程基础

软件工程三要素:方法、工具、过程

软件危机:

表现:开发成本高、质量低、生产率低、难以控制

根本原因:系统复杂性

软件生命周期:

定义:从提出、实现、使用维护到停止使用的全过程

阶段:定义阶段(需求分析)、开发阶段(设计、编码、测试)、维护阶段

详细设计属于开发阶段

四、需求分析

任务:确定软件系统功能

产出文档:软件需求规格说明书

使用工具:数据流图(DFD)、数据字典、判定树等

不属于需求分析的任务:制定测试计划、总体结构设计

五、软件设计

设计阶段任务:

总体结构设计、数据设计、过程设计

不属于设计阶段任务:功能确定(A)、制定测试计划

模块独立性准则:

高内聚、低耦合

内聚:模块内部元素的紧密程度

耦合:模块间相互依赖的程度

设计工具:

结构图、PAD图、程序流程图、N-S图

不用于设计阶段:DFD图(用于需求分析)

六、软件测试与调试

测试目的:发现错误

测试类型:

黑盒测试:基于外部功能(等价类划分、边界值分析、错误推测法)

白盒测试:基于内部逻辑(基本路径测试、条件覆盖、语句覆盖)

测试步骤:单元测试 → 集成测试 → 确认测试

调试(Debug):定位并改正错误

调试方法:回溯法、强行排错法、原因排除法(不包括集成测试法)

七、易错点总结

软件没有磨损和老化(√)

软件测试目的是发现错误,调试是改正错误(√)

DFD图是需求分析工具,不是设计工具(√)

系统软件 vs 应用软件:操作系统是系统软件,教务系统是应用软件(√)

软件需求规格说明书是需求分析阶段的输出,用于设计和测试(√)


点赞(1)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论