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