软件设计师考试说明
...约 1655 字大约 6 分钟
上午题
知识点 | 分数 | 说明 | 比例 |
---|---|---|---|
软件工程基础知识 | 13 | 开发模式、设计原则、测试方法、质量特性、CMM、Pert 图、风险管理 | 17.33% |
面向对象 | 11 | 面向对象基本概念、面向对象分析与设计、UML、设计模式 | 14.67% |
数据结构与算法 | 9 | 数组、栈、队列、树与二叉树、图、查找与排序、常见算法 | 12.00% |
程序设计语言 | 6 | 文法、有限自动机、正规式、语句的作用、语句的语义、程序的控制结构、函数调用的参数传递、各种程序语言的特点比较 | 8.00% |
计算机硬件基础 | 6 | 浮点数运算、溢出、算术、逻辑运算、计算机体系结构、指令系统基础、CISC 与 RISC、流水线、Cache 存储器可靠性分析、校验方法 | 8.00% |
操作系统 | 6 | 进程状态转换图、信号量与 PV 操作、死锁问题、银行家算法、段页式存储、页面置换算法、磁盘调度、树形文件系统 | 8.00% |
数据库系统 | 6 | E-R 模型、关系代数、元组演算、规范化理论(键、范式、模式分解)、并发控制 | 8.00% |
计算机网络 | 5 | OSI 模型、TCP/IP 协议簇、子网划分、常用网络命令 | 6.67% |
信息安全知识 | 5 | 加密解密技术、网络安全、计算机病毒 | 6.67% |
知识产权与标准化 | 3 | 作品保护时间、侵权判断、知识产权归属、标准的分类、标准代号 | 4.00% |
专业用语 | 5 | 专业英语填空 | 6.67% |
下午题
考点分布
题号 | 试题类型 | 学科知识 | 考查内容 |
---|---|---|---|
试题 1 | 必答 | 数据流图 | 给出相应名称(补充外部实体、补充数据存储、补充加工),补充数据流图的缺失部分(补充数据流),数据流图相关解答题 |
试题 2 | 必答 | 数据库设计 | E-R 模型、关系模式、增加实体等 |
试题 3 | 必答 | UML 建模 | 类图、用例图、活动图、状态图等 |
试题 4 | 必答 | C 语言算法 | 分治法、贪心法、动态规划法、回溯法等 |
试题 5 | 选答 | C++语言程序设计 | C++、设计模式 |
试题 6 | 选答 | Java 语言程序设计 | Java、设计模式 |
第一题:DFD 数据流图
- 外部实体:矩形。一般是人、物、系统。
- 数据存储:双横线或缺右边的矩形。一般是表、文件、记录、库、档案
- 数据流:带箭头的直线
- 数据加工:圆角矩形
问题 1~3 比较固定,一问找外部实体,二问找数据存储,三问找缺失的数据流
- 如何找实体:根据子图的与加工有关的数据流来确定实体
- 如何找数据存储:同上
- 如何找数据流:
- 思路
- 父图子图平衡
- 加工既要有输入数据流也要有输出数据流
- 根据说明查找缺失数据流
- 格式
- 数据流名称:xxxx 起点:D1 xxx 终点:E1 xxx
- 思路
问题 4:不定题型
第一类:结构化语言 描述加工逻辑
顺序语句
选择语句
IF 条件 THEN 分支内容 ELSE IF 条件 THEN 分支内容 ELSE 分支内容 ENDIF
循环语句
WHILE 条件 DO { 顺序语句 选择语句 } ENDDO
第二类:在绘制数据流图时,需要注意加工的绘制。给出三种在绘制加工时可能出现的错误。
- 加工无输入数据流
- 加工无输出数据流
- 加工的输入数据流无法产生相应的输出数据流
第三类:实体之间可否有数据流,并解释其原因。
- 实体之间不能有数据流,因为数据流的起点或终点必须是加工。
第二题:E-R 图
- 实体:矩形
- 属性:椭圆
- 联系:菱形(无向边)
识别实体与实体属性;实体之间的联系;实体的唯一标识。
题目一般是 3 问,有可能有 4 问,前面两问比较固定:
- 第一问:补充 E-R 图;
- 第二问:补充关系模式缺失的属性;
- 第三问:主键、外键;
- 第四问:不合理的设计会有什么问题?数据冗余、更新异常、插入异常、删除异常
第三题:UML 图
题目一般是 3 问,第一问:用例图;第二问:类图;第三问:拓展\扩展题
- 用例图:
- 图例:
- 参与者:一个小人(人、物、外部系统)
- 用例:椭圆,里面填写用例名称
- 用例与用例的关系:
- 包含:由一个用例(包含用例)指向另一个用例(被包含用例)的虚线箭头,并标记
<<include>>
。简单的理解为做一件事之前需要先做另一件事。(必选) - 扩展:由一个用例(扩展用例)指向另一个用例(被扩展用例)的虚线箭头,并标记
<<extend>>
。简单的理解为做了一件事之后可以(选)做另一件事。(可选、特殊) - 泛化:由子(特殊)指向父(一般)的实线空心箭头,并标记
<<generalization>>
。比如缴费(父),和线上缴费(子)、线下缴费(子)
。不单单指代用例之间的关系,也可以表示实体之间的关系。
- 包含:由一个用例(包含用例)指向另一个用例(被包含用例)的虚线箭头,并标记
- 图例:
- 类图:
- 图例:矩形,由上至下二分为三,第一部分指类名,第二部分是属性,第三部分是方法。
- 描述词:
- +:public(公有的),能访问该类的类都能访问该属性或方法
- -:private(私有的),只有该类自己能访问该属性或方法
- #:protected(受保护的),该类及其继承类都能访问属性或方法
- ~:package(包),在同一个包中的类都能访问该属性或方法
- 类与类之间的关系:
- 依赖关系:由依赖的一方指向被依赖的一方的虚线箭头
- 泛化关系:由子指向父的实线空心箭头
- 关联关系:由部分指向整体的实线菱形箭头
- 聚合:空心菱形,部分不依赖于整体,整体消失,部分仍存活。
- 组合:实心菱形,部分依赖于整体。整体消失,部分不能存活。
- 实现关系:由实现类指向接口类的虚线空心箭头,用
<<interface>>
标记。
多重复
表示 | 含义 |
---|---|
1 | 表示一个对象对应另一个对象 |
* | 表示一个对象对应 0 个或者多个对象 |
1..* | 表示一个对象对应 1 个或多个对象 |
n..m | 表示一个对象对应 n 个(至少)或 m 个(至多)对象 |
Powered by Waline v3.2.2