计算机软件课程知识回顾及试题及答案
姓名:____________________
一、单项选择题(每题2分,共10题)
1.下列关于软件工程的定义,错误的是:
A.软件工程是一门研究软件开发和维护的学科
B.软件工程的目标是提高软件开发的效率和质量
C.软件工程强调使用数学方法来指导软件开发
D.软件工程侧重于软件开发的方法论和技术
2.以下哪个不是软件开发生命周期模型:
A.瀑布模型
B.V模型
C.代码重用模型
D.快速原型模型
3.以下哪个不是软件需求分析的方法:
A.调查法
B.问卷调查法
C.状态分析法
D.静态分析
4.下列关于面向对象编程的特点,错误的是:
A.继承
B.封装
C.多态
D.可重用性
5.以下哪个不是数据库设计的三级模式:
A.外模式
B.内模式
C.逻辑模式
D.物理模式
6.以下哪个不是SQL语言的操作类型:
A.数据查询
B.数据更新
C.数据删除
D.数据存储
7.以下哪个不是软件测试的方法:
A.单元测试
B.集成测试
C.系统测试
D.用户测试
8.以下哪个不是软件维护的类型:
A.纠正性维护
B.改进性维护
C.预防性维护
D.数据库维护
9.以下哪个不是软件项目管理的方法:
A.时间管理
B.范围管理
C.质量管理
D.项目沟通
10.以下哪个不是软件工程中的质量控制工具:
A.软件缺陷跟踪工具
B.项目进度跟踪工具
C.代码审查工具
D.需求管理工具
二、多项选择题(每题3分,共5题)
1.软件工程的基本原则包括:
A.可维护性
B.可扩展性
C.可重用性
D.可移植性
2.软件需求分析的主要任务包括:
A.收集需求
B.分析需求
C.验证需求
D.确定设计
3.面向对象编程的特点包括:
A.继承
B.封装
C.多态
D.过程性
4.数据库设计的主要步骤包括:
A.需求分析
B.概念结构设计
C.逻辑结构设计
D.物理结构设计
5.软件测试的主要目标包括:
A.发现软件缺陷
B.评估软件质量
C.验证软件需求
D.优化软件性能
三、判断题(每题2分,共5题)
1.软件工程的目标是提高软件开发的效率和质量。(√)
2.软件需求分析的主要任务是确定设计。(×)
3.面向对象编程的特点是过程性。(×)
4.数据库设计的主要步骤是需求分析。(×)
5.软件测试的主要目标是发现软件缺陷。(√)
四、简答题(每题5分,共10分)
1.简述软件开发生命周期模型的基本步骤。
2.简述面向对象编程的主要特点。
二、多项选择题(每题3分,共10题)
1.软件工程中常用的项目管理工具包括:
A.项目管理软件
B.甘特图
C.水晶球预测
D.状态报告
E.风险评估矩阵
2.以下哪些是软件设计阶段的活动:
A.系统设计
B.需求分析
C.数据库设计
D.界面设计
E.程序设计
3.以下哪些是软件测试的类型:
A.单元测试
B.集成测试
C.系统测试
D.验收测试
E.性能测试
4.以下哪些是软件维护的关键活动:
A.缺陷修复
B.功能增强
C.性能优化
D.系统重构
E.安全性增强
5.以下哪些是软件工程中的软件质量属性:
A.可靠性
B.可维护性
C.可用性
D.可扩展性
E.可移植性
6.以下哪些是软件工程中的软件过程:
A.瀑布模型
B.V模型
C.快速原型模型
D.精益软件开发
E.敏捷开发
7.以下哪些是软件需求规格说明书的内容:
A.引言
B.总体描述
C.功能需求
D.非功能需求
E.界面需求
8.以下哪些是软件工程中的软件度量:
A.代码行数
B.复杂度
C.覆盖率
D.缺陷密度
E.维护成本
9.以下哪些是软件工程中的软件项目管理工具:
A.项目管理软件
B.甘特图
C.资源管理工具
D.风险管理工具
E.质量管理工具
10.以下哪些是软件工程中的软件过程改进方法:
A.CMMI
B.六西格玛
C.敏捷开发
D.精益软件开发
E.灵活软件开发
三、判断题(每题2分,共10题)
1.软件工程中,需求分析阶段的主要任务是编写软件需求规格说明书。(√)
2.软件设计阶段分为概要设计和详细设计两个阶段。(√)
3.面向对象编程中,类是构成系统的基本单元。(√)
4.数据库设计中的ER图是用来表示实体和实体间关系的图形化工具。(√)
5.SQL语言中的SELECT语句用于查询数据库中的数据。(√)
6.软件测试的目的是证明软件是正确的。(×)
7.软件维护是在软件交付使用后对软件进行的修改。(√)
8.