软件设计师考试核心内容梳理及试题及答案
姓名:____________________
一、单项选择题(每题2分,共10题)
1.下列关于面向对象程序设计的基本概念,错误的是:
A.对象是数据和操作数据的代码的封装
B.类是具有相同属性和行为的对象的抽象
C.继承是类之间的一种关系,子类可以继承父类的属性和方法
D.多态是指同一个操作作用于不同的对象,可以有不同的解释和结果
2.在UML类图中,表示类与类之间关联关系的符号是:
A.箭头
B.线
C.线段
D.箭头线
3.下列关于数据库的SQL语句,错误的是:
A.SELECT*FROMtable_nameWHEREcondition
B.INSERTINTOtable_name(column1,column2)VALUES(value1,value2)
C.UPDATEtable_nameSETcolumn1=value1WHEREcondition
D.DELETEFROMtable_nameWHEREcondition
4.下列关于软件测试的方法,不属于黑盒测试的是:
A.等价类划分法
B.边界值分析法
C.回归测试
D.静态测试
5.下列关于软件开发生命周期的阶段,不属于需求分析的是:
A.需求获取
B.需求分析
C.设计
D.编码
6.下列关于软件设计原则,不属于SOLID原则的是:
A.单一职责原则
B.开放封闭原则
C.里氏替换原则
D.依赖倒置原则
7.下列关于软件架构风格,不属于分层架构的是:
A.客户端-服务器架构
B.微服务架构
C.模块化架构
D.事件驱动架构
8.下列关于软件项目管理的方法,不属于敏捷开发的是:
A.Scrum
B.Kanban
C.水平原型法
D.精益软件开发
9.下列关于软件工程的标准,不属于ISO/IEC标准的是:
A.ISO/IEC12207
B.ISO/IEC25000
C.ISO/IEC27001
D.ISO/IEC20000
10.下列关于软件工程工具,不属于版本控制工具的是:
A.Git
B.Subversion
C.JIRA
D.VisualStudioTeamFoundationServer
二、多项选择题(每题3分,共10题)
1.以下哪些是软件设计的常用原则?
A.封装性
B.可维护性
C.可复用性
D.可扩展性
E.可测试性
2.在UML类图中,以下哪些符号表示类的属性?
A.菱形
B.属性
C.方法
D.线
E.关键字
3.以下哪些是数据库设计中的范式?
A.第一范式(1NF)
B.第二范式(2NF)
C.第三范式(3NF)
D.第四范式(4NF)
E.第五范式(5NF)
4.以下哪些是软件测试的类型?
A.单元测试
B.集成测试
C.系统测试
D.验收测试
E.性能测试
5.以下哪些是软件开发生命周期的阶段?
A.需求分析
B.设计
C.编码
D.测试
E.维护
6.以下哪些是SOLID原则的缩写?
A.Single
B.Open/Closed
C.Liskov
D.Interface
E.Dependency
7.以下哪些是软件架构设计中的关键点?
A.模块化
B.解耦
C.可复用性
D.可维护性
E.可扩展性
8.以下哪些是敏捷开发中的核心价值观?
A.响应变化
B.客户合作
C.敏捷迭代
D.个体和团队
E.业务优先
9.以下哪些是软件项目管理中常用的工具?
A.JIRA
B.Trello
C.Confluence
D.MicrosoftProject
E.Subversion
10.以下哪些是软件工程中的软件过程?
A.瀑布模型
B.快速原型法
C.增量模型
D.螺旋模型
E.精益软件开发
三、判断题(每题2分,共10题)
1.软件设计是将需求规格说明书转换为软件表示的过程。()
2.在UML中,类图中的关联关系只能是一对一的关系。()
3.第三范式(3NF)可以避免数据冗余,但可能会降低查询效率。()
4.单元测试是软件测试的第一步,必须在集成测试之前完成。()
5.软件开发生命周期的每个阶段都是独立的,前一阶段完成后才能进入下一阶段。()
6.SOLID原则中的“开闭原则”要求软件实体应当对扩展开放,对修改封闭。()
7.在软件架构设计中,模块化是指将系统分解为独立的、可管理的模块。()
8.敏捷开发中的Scrum框架要求每个迭代周期(Sprint)必须交付可工作的软件。()
9.软