1、中级软件设计师下午试题-133 及答案解析(总分:100.00,做题时间:90 分钟)一、试题一(总题数:1,分数:25.00)1.说明 已知某企业的采购审批是分级进行的,即根据采购金额的不同由不同层次的主管人员来审批,主任可以审批 5万元以下(不包括 5万元)的采购单,副董事长可以审批 5万10 万元(不包括 10万元)的采购单,董事长可以审批 10万50 万元(不包括 50万元)的采购单,50 万元及以上的采购单就需要开会讨论决定。 采用责任链设计模式(Chain of Responsibility)对上述过程进行设计后得到的类图如下图所示。 (分数:25.00)_二、试题二(总题数:1,
2、分数:25.00)2.说明 某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如下表所示。 游戏需要模拟的鸭子种类及特征 鸭子种类 发声特征 飞行特征 外观特征 灰鸭(MallardDuck) 发出“嘎嘎”声(Quack) 用翅膀飞行(FlyWithWings) 灰色羽毛 红头鸭(RedHeadDuck) 发出“嘎嘎”声(Quack) 用翅膀飞行(FlyWithWings) 灰色羽毛、头部红色 棉花鸭(CottonDuck) 不发声(QuackNoWay) 不能飞行(FlyNoWay) 白色 橡皮鸭(Rubb
3、erDuck) 发出橡皮与空气摩擦的声 音(Squeak) 不能飞行(FlyNoWay) 黑白橡皮色 为支持将来能够模拟更多种类鸭子的特征,采用策略设计模式(Strategy)设计的类图如下图所示。 (分数:25.00)_三、试题三(总题数:1,分数:25.00)3.说明 传输门是传输系统中的重要装置。传输门具有 Open(打开)、Closed(关闭)、Opening(正在打开)、StayOpen(保持打开)、Closing(在关闭)5 种状态。触发状态的转换事件有 click、complete 和 timeout 3种。事件与其相应的状态转换如下图所示。 (分数:25.00)_四、试题四(总
4、题数:1,分数:25.00)4.说明 某订单管理系统的部分 UML类图如下图所示。 (分数:25.00)_中级软件设计师下午试题-133 答案解析(总分:100.00,做题时间:90 分钟)一、试题一(总题数:1,分数:25.00)1.说明 已知某企业的采购审批是分级进行的,即根据采购金额的不同由不同层次的主管人员来审批,主任可以审批 5万元以下(不包括 5万元)的采购单,副董事长可以审批 5万10 万元(不包括 10万元)的采购单,董事长可以审批 10万50 万元(不包括 50万元)的采购单,50 万元及以上的采购单就需要开会讨论决定。 采用责任链设计模式(Chain of Responsi
5、bility)对上述过程进行设计后得到的类图如下图所示。 (分数:25.00)_正确答案:()解析:ProcessRequest(aRequest) Approver super Tammy Meeting Sam Larry二、试题二(总题数:1,分数:25.00)2.说明 某游戏公司现欲开发一款面向儿童的模拟游戏,该游戏主要模拟现实世界中各种鸭子的发声特征、飞行特征和外观特征。游戏需要模拟的鸭子种类及其特征如下表所示。 游戏需要模拟的鸭子种类及特征 鸭子种类 发声特征 飞行特征 外观特征 灰鸭(MallardDuck) 发出“嘎嘎”声(Quack) 用翅膀飞行(FlyWithWings)
6、灰色羽毛 红头鸭(RedHeadDuck) 发出“嘎嘎”声(Quack) 用翅膀飞行(FlyWithWings) 灰色羽毛、头部红色 棉花鸭(CottonDuck) 不发声(QuackNoWay) 不能飞行(FlyNoWay) 白色 橡皮鸭(RubberDuck) 发出橡皮与空气摩擦的声 音(Squeak) 不能飞行(FlyNoWay) 黑白橡皮色 为支持将来能够模拟更多种类鸭子的特征,采用策略设计模式(Strategy)设计的类图如下图所示。 (分数:25.00)_正确答案:()解析:Interface Interface flyBehavior quackBehavior flyBehav
7、ior.fly quackBehavior.quack( ) abstract FlyNoWay( ) Squeak( )三、试题三(总题数:1,分数:25.00)3.说明 传输门是传输系统中的重要装置。传输门具有 Open(打开)、Closed(关闭)、Opening(正在打开)、StayOpen(保持打开)、Closing(在关闭)5 种状态。触发状态的转换事件有 click、complete 和 timeout 3种。事件与其相应的状态转换如下图所示。 (分数:25.00)_正确答案:()解析:state=CLOSED|state=CLOSING state=OPENING|state=STAYOPEN state=OPEN state.click( ) state.timeout( ) plete( ) door.setState(door.OPENING)四、试题四(总题数:1,分数:25.00)4.说明 某订单管理系统的部分 UML类图如下图所示。 (分数:25.00)_正确答案:()解析:implements IterableOrder orders.iterator( ) catalog sales OrderItem item