历年真题软件设计师下午考试题汇分析与技巧

本文对2006年5月至2014年11月的软件设计师级别下午试题进行汇总统计,希望对准备参加软考的朋友能有所帮助。

软件设计师下午考试题汇统计

具体统计情况如下表所示

试题统计

 

试题一

试题二

试题三

试题四

试题五

试题六

试题七

2006年上

数据流图/网上作业提交与管理系统

UML /客户信息管理系统/类图

ER图与关系模式/图书管理系统

Web Service

数据结构与算法/C语言/B/多叉平衡查找树

C++/订单管理系统/涉及到迭代器模式

Java/订单管理系统/涉及到迭代器模式

2006年下

数据流图/建账软件

ER图与关系模式/住房管理系统

UML/电子商务网站/类图、序列图(顺序图)

数据结构与算法/最短装配时间算法/程序流程图填空

数据结构与算法/C语言/二叉链表

C++/传输门/状态模式

Java/传输门/状态模式

2007年上

数据流图/房屋租赁服务系统

ER图与关系模式/医院门诊管理系统

UML /图书管理系统/类图

数据结构与算法/贪心算法/程序流程图填空

数据结构与算法/C语言/树型分布网络

C++/鸭子模拟游戏/策略模式

Java/鸭子模拟游戏/策略模式

2007年下

数据流图/成绩管理系统

ER图与关系模式/小型汽车维修管理系统

UML /唱片播放器/类图、状态图

数据结构与算法/贪心算法/程序流程图填空等

C语言/简化绘图程序/基于结构体的面向对象编程

C++/采购审批/职责链模式

Java/采购审批/职责链模式

2008年上

数据流图/音像管理信息系统

ER图与关系模式/篮球比赛信息管理系统

UML /汽车停车场信息系统/用例图、类图、状态图

数据结构与算法/快速排序/伪代码填空、时间复杂度分析等

数据结构与算法/C语言/

C++/家用电器遥控系统/命令模式

Java/家用电器遥控系统/命令模式

2008年下

数据流图/销售管理系统

ER图与关系模式/宾馆客房预订子系统

UML /在线会议审稿系统/用例图、活动图

数据结构与算法/动态规划算法/伪代码填空、时间复杂度分析等

数据结构与算法/C语言/单链表

C++/文档操作类库/模板方法模式

Java/文档操作类库/模板方法模式

2009年上

数据流图/商品配送中心信息管理系统

ER图与关系模式/大型连锁商场数据库系统

UML/自动存提款机模拟系统(ATM)/用例图、序列图(顺序图)

数据结构与算法/最短路径Floyd-Warshall算法/伪代码填空、时间复杂度分析等

数据结构与算法/C语言/二叉树遍历

C++/图像浏览系统/桥接模式

Java/图像浏览系统/桥接模式

2009年下

数据流图/信用卡管理系统

ER图与关系模式/多用户电子邮件客户端系统

UML/订餐系统/用例图、活动图

数据结构与算法/回溯法求解0-1背包问题/伪代码填空、穷举法等

C++/文件目录树/组合模式

Java/文件目录树/组合模式

数据结构与算法/C语言/

2010年上

数据流图/数据管理中间件

ER图与关系模式/实验管理系统

UML/售票机/用例图、类图、中介者模式

数据结构与算法/C语言/有向图拓扑排序/代码填空、拓扑序列求解、时间复杂度分析等

C++/飞机飞行模拟系统/策略模式

Java/飞机飞行模拟系统/策略模式

 

2010年下

数据流图/订单处理系统

ER图与关系模式/小区物业收费管理系统

UML/网上药店/类图、状态图、组合关系和聚合关系

数据结构与算法/C语言/堆排序/代码填空、时间复杂度分析等

C++/公司组织结构/组合模式

Java/公司组织结构/组合模式

 

2011年上

数据流图/病人监控系统

ER图与关系模式/服装采购管理系统

UML/图形编辑器/用例图、类图、桥接模式

数据结构与算法/C语言/排序算法/代码填空、时空复杂度分析等

C++/饭店菜单/组合模式

Java/饭店菜单/组合模式

 

2011年下

数据流图/招聘系统

ER图与关系模式/物流公司信息系统

UML/Pay & Drive系统(开多少付多少)/用例图、类图

数据结构与算法/C语言/回溯法(类似背包问题)/代码填空

C++/纸巾售卖机/状态模式

Java/纸巾售卖机/状态模式

 

2012年上

数据流图/图书管理系统

ER图与关系模式/住院病人信息管理系统

UML/网上购物平台/用例图、类图

数据结构与算法/C语言/作业最优调度算法/代码填空等

C++/咖啡店计算费用/状态模式

Java/咖啡店计算费用/状态模式

 

2012年下

数据流图/电子商务系统之购物车

ER图与关系模式/会议预定系统

UML/小木屋和营地的预定及管理系统/用例图、类图

数据结构与算法/C语言/装箱问题(一维装箱问题)/代码填空等

C++/多数据库支持/抽象工厂模式

Java/多数据库支持/抽象工厂模式

 

2013年上

数据流图/募捐系统

ER图与关系模式/电视台信息管理系统

UML/基于Web的城市黄页/用例图、类图

数据结构与算法/C语言/任务调度问题/代码填空,时间复杂度分析等

C++/自动生成求职简历/原型模式

Java/自动生成求职简历/原型模式

 

2013年下

数据流图/WEB的课程注册系统

ER图与关系模式/快递公司物品运送信息管理系统

UML/航空会员积分系统/类图

数据结构与算法/C语言/多个矩阵相乘的计算任务问题/代码填空,时间复杂度分析,最优调度等

C++/开发一个绘图软件/桥接模式

Java/开发一个绘图软件/桥接模式

 

2014年上

数据流图/修车题

ER图与关系模式/电商题

UML/ 通信

数据结构与算法/C语言/ 归并排

C++/    /模式

Java/    /模式

 

2014年下

数据流图/ER图与关系模式/超市管理系统

UML/选民信息软件管理系统/类图

数据结构与算法/C语言/ 代码填空,时间复杂度分析,等

C++/ 开发灯具遥控器   /命令模式

Java/ 开发灯具遥控器   /命令模式

 

下午考试题汇分析

从2006年5月开始(尤其是从2010年5月开始),软件设计师级别的试题题型基本固定:

  • 第一题为结构化分析与设计,主要考查数据流图DFD的绘制,考查形式为顶层数据流图和0层数据流图填空(外部实体/数据源、数据存储/文件、加工处理/数据变换填空)、找出遗漏的数据流或者错误的数据流,偶尔考查数据流图的一些绘制要点,如分层数据流绘制需要注意的问题等;【该题整体难度不大,需认真完成4-6道往年真题】
  • 第二题为数据库分析与设计,主要考查ER图的绘制以及ER图与关系模式的映射,考查形式为补充完成ER图(增加实体、联系、属性以及联系类型)、将关系模式补充完整(属性/字段填空)、找出关系模式的主外键,偶尔考查关系模式的规范化,如将某个关系模式转换为第三范式等;【该题整体难度不大,需认真完成4-6道往年真题,但偶尔有个别小问题需要仔细分析才能回答准确】

  • 第三题为面向对象分析与设计,主要考查对常用UML图形的掌握情况,比较常见的图形包括用例图、类图、顺序图、活动图和状态图,考查形式为图形填空,附带考查UML的一些基础知识,例如类图中的几种关系及其区别、用例图中用例之间关系的内涵等;【需要熟练掌握常用的UML图形,尤其是用例图和类图,偶尔还包含一道与设计模式有关的小问题】
  • 第四题为数据结构与算法,主要考查对常用数据结构和算法的掌握情况,通常考查一些中等难度的算法,例如最短装配时间算法、B树、贪心算法、动态规划、回溯法、背包问题、最短路径、拓扑排序、堆排序等,考查形式为C语言代码填空、复杂度分析(时空复杂度)、算法稳定性分析等;【该题为下午试题中难度较大的一题,需要熟悉一些常用的算法和C语言的语法】
  • 第五、六题为C++和Java(设计模式题,二选一),从2006年开始该题主要考查对常见设计模式的掌握情况,该试题通常会结合一个设计模式实例,给出实例描述和类图,然后进行程序代码填空,有C++和Java两个语言版本,二选一,只要有相关的设计模式基础,解答该题难度不大,没有设计模式基础也不用担心,只要认真理解其设计和实现意图,还是可以正确解答本题;【该题难度不大,有一定的设计模式基础将有助于理解和解答本题】

从2010年开始,软件设计师考试中取消了单独的C语言试题(融合在数据结构与算法题中)。



软考之下午题做题技巧

考试前的状态尤为重要。上午题虽然很零散,但是很简单,下午题虽然就5道,但是做题时需要认真、认真再认真,答案题中找,好好读题,说不定算法都能懵对几分……做题的时候,要从精神上藐视它,告诉自己这题会做;要从心里重视它,读题时认真、耐心……

试题一:DFD(数据流图)

1.从最近几年考试的情况来看,这题主要考察几个知识点:

    1.1 给出外部实体的名称

   1.2 给出数据存储的名称

   1.3 查找错误的数据流丢失的数据流

   1.4 数据字典部分的考察(2012年下半年DFD最后一问的数据项其实就是考察的数据字典)

   1.5 问答题,比如2008上DFD最后一问的:面向对象结构设计方法的基本思及其适用场合。

2.做此题的技巧

这题,一般会给出一大段文字,然后给出顶层数据流图和0层数据流图等。我一般读题的过程中,会把读到的名词(可能为外部实体的词)、某某文件之类(即数据存储)、数据流标出来,这样在做问题一、二的时候,数据流图与说明对照,快速、标准的解决知识点1.1和1.2.

查找丢失数据流时,先要做的是顶层和0层图对照,保持父图和子图平衡,即父图中某加工的输入(输出)数据流的数据必须与子图的输入(输出)数据流中的数据在数量和名字上相同。在此基础上,读文字说明,一句句的注意从..到..的字眼,这样就能解决知识点1.3。

数据字典的问题,要知道数据字典各个符号的定义。

对于简答题这样的题目,就凭借项目经验来写吧,尽量多写点,总能达到点上。

试题二: 数据库分析与设计

从历年考题来看,主要有两种形式:一种是文字说明+表格,一种是只有文字说明的。

1.主要考察几个知识点

   1.1 补充联系及联系类型,完善实体联系图

   1.2 ER图向关系模型的转变

   1.3 加个功能再次补充实体联系图

   1.4 简答题

2.做此题的技巧

    第一遍读题的时候,画出各实体,尽量找出实体间的对应关系。对于给表格的题,表格的标题及表格周围的文字都要认真看,比如时间有可能就是某一实体的属性。

    解决1.1的技巧及注意事项:注意审题,不要漏泄联系类型(1:1,1:m,m:n),难点在于一个联系联系三个实体的。读题的时候注意这样的字眼,比如:某某老师对某某学生上某某课。

    解决1.2的技巧:先从说明中凭自己的感觉从文字说明及表格中找实体的属性,找完以后,再去看ER图,遵照ER图向关系模型转转换的原则。不要漏写、多些属性值,不要忘记标主键、外键。

     解决1.4的技巧:按照自己的经验来,考前先弄懂1-3范式具体的含义。

试题三:面向对象分析与设计

从近几年考察来看,常常给出一段说明,然后附加有用例图和类图,当然也有可能会考状态图。

   1.主要考察的知识点

      1.1 填写用例名称、依赖关系

      1.2 填写类名称

      1.3 补充多重度

      1.4 对应的状态

      1.5 用到的某某设计模式的内涵

   2. 解决此类问题的技巧

    第一遍读题的过程中,注意各名词,该标的地方标出来。

    用例名称一般比较好写,还要注意一点就是:依赖关系。要明白扩展《extend》和包含《include》的用意及箭头方向。

    多重度问题跟数据库中的联系类型有点相似,但不要写错,这里多个的时候只能用*表示哦。注意文中给出的数字,可能帮助你解决多重度问题。

    状态图各状态的转换也算是比较好找的一类问题吧,主要考察的是细心。

    考察某设计模式的内涵的这类问题,要熟悉23个设计模式的含义了。设计模式很重要啊……

试题四:算法题

    这类题对我来说难度不小,但也不能掉以轻心,有时候算法考的还是比较简单的,懵都能懵对几分,比如时间复杂度和空间复杂度。可以看看《大话设计模式》,这里面讲的挺明确的。但是算法不是一朝一夕就能提高的,考试之前把几种常见算法看懂就好了,比如各类排序算法、分治算法、动态规划算法、贪心算法、回溯算 法……

试题五:设计模式

     这个题算是比较简单的,我选择做java版的设计模式,这个题有点java基础,能看懂类图,即使不懂设计模式也能得分。高中时老师常教育我们这么一句 话:简单全做对,稳坐中档题,舍弃全不会;主要表达的是考试要心态正,乱中求稳,不要第一题做的不好,后面的都做不好了。

    考试之前将HeadFirst好好瞅瞅,历年考题出的例子大多与HeadFirst上的例子极为相似。

     一定要知道的几点:比如 interface、extends、implements、abstract、super等关键字的写法,注意大小写;注意委托的用法……


保持好心态,乱中求稳,稳中求胜!相信自己,应该没问题的!只能说该做的都做了,大不了重来,一定把它突破!

 



关于Software Level更多讨论与交流,敬请关注本博客和新浪微博songzi_tea.


©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值