软件工程考试重点:题库解析与测试方法
需积分: 0 194 浏览量
更新于2024-08-04
1
收藏 79KB DOC 举报
"软件工程考试题库完整"
在软件工程领域,这个题库涵盖了多个关键概念,以下是其中一些重点知识的详细说明:
1. 软件定义时期:包括可行性研究和需求分析两个阶段,这是软件开发的初期,确定项目是否值得投资以及明确软件应满足的需求。
2. 数据流图(DFD):由4种基本符号组成,分别是数据流、加工(处理)、数据存储和外部实体。箭头表示数据流,表示数据在系统中的流动路径。
3. 变换型与事务型结构:DFD有两种主要结构,变换型关注数据的转换过程,事务型则关注数据的输入、处理和输出。
4. 通信量计算:4个人之间的最大通信组合为6,这是组合数学中的组合公式C(n, k)的应用。
5. 耦合与聚:耦合衡量模块间的相互依赖程度,从弱到强分为非直接耦合、数据耦合、标记耦合、控制耦合、公共耦合和内容耦合(容耦合)。聚则指模块内部元素的相关性,高聚模块表示内部元素紧密相关。
6. 程序结构复杂性度量:V(G)值与程序控制流的复杂性有关,顺序结构的V(G)为1,选择结构的为2,这些值用于评估代码的可读性和维护性。
7. 扇入与扇出:扇入是指直接调用一个模块的模块数量,扇出则是指一个模块直接调用的其他模块数量,扇入和扇出是模块耦合度的指标。
8. 良好的模块设计原则:高聚低耦合,意味着模块内部元素紧密关联,模块间关系简单,有利于代码的可读性和可维护性。
9. 测试方法:白盒测试中的语句覆盖技术确保每个程序语句至少被执行一次;黑盒测试中的等价类划分技术,将输入数据划分为有效等价类和无效等价类,以测试功能是否正确。
10. 维护分类:根据原因可分为改正性维护(修复错误)、适应性维护(适应环境变化)、完善性维护(增加新功能)和预防性维护(改进未来维护)。
11. 可行性研究与需求分析:在项目早期进行简化的、压缩的需求分析,以评估项目的可行性和预期结果。
12. 系统流程图:用于描述当前运行系统的状态,帮助理解现有流程并进行改进。
13. 控制结构:程序的三种基本控制结构(顺序、选择和循环)均有一个入口和一个出口,这是结构化编程的基本原则。
14. 维护副作用:如误删除标识符属于编码副作用,可能导致程序错误。
15. 技术评审:是提升软件质量的重要活动,通过同行评审来发现和纠正潜在问题。
16. 面向对象方法:强调对象的封装、继承和多态性,将现实世界的问题映射到软件系统中。
17. 原型化方法:适用于需求不明确的系统,通过快速构建原型与用户交互,逐步明确需求。
18. CASE工具:结构化基于图形的CASE工具是早期的软件开发辅助工具,帮助自动化软件工程过程。
19. 成本估算模型:Putnam模型是动态多变量模型,考虑多个因素来估算软件开发成本。
20. McCall软件质量模型:适应性是衡量软件产品能否适应环境变化的能力。
21. ISO软件质量评价模型:SQDC用于评价设计质量,包括软件的质量特性。
22. 软件复杂性度量参数:规模是重要的度量参数,例如源代码行数或功能点。
23. 对象特性:对象集成了数据和操作,实现了数据隐藏和封装,使得软件结构更加清晰。
这些知识点构成了软件工程的基础,对于准备软件工程考试或者实际工作中的软件开发和维护具有重要指导意义。理解并掌握这些概念,有助于提升软件开发的专业水平和项目管理能力。
2021-10-11 上传
2021-10-09 上传
2023-06-15 上传
2023-05-24 上传
2023-07-13 上传
2023-06-06 上传
2023-11-22 上传
2024-01-27 上传
2023-09-06 上传
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
zzzzl333
- 粉丝: 749
- 资源: 7万+
最新资源
- 解决本地连接丢失无法上网的问题
- BIOS报警声音解析:故障原因与解决方法
- 广义均值移动跟踪算法在视频目标跟踪中的应用研究
- C++Builder快捷键大全:高效编程的秘密武器
- 网页制作入门:常用代码详解
- TX2440A开发板网络远程监控系统移植教程:易搭建与通用解决方案
- WebLogic10虚拟内存配置详解与优化技巧
- C#网络编程深度解析:Socket基础与应用
- 掌握Struts1:Java MVC轻量级框架详解
- 20个必备CSS代码段提升Web开发效率
- CSS样式大全:字体、文本、列表样式详解
- Proteus元件库大全:从基础到高级组件
- 74HC08芯片:高速CMOS四输入与门详细资料
- C#获取当前路径的多种方法详解
- 修复MySQL乱码问题:设置字符集为GB2312
- C语言的诞生与演进:从汇编到系统编程的革命