题目详情

某软件公司欲设计实现一个虚拟世界仿真系统。系统中的虚拟世界用于模拟现实世界中的不同环境(由用户设置并创建),用户通过操作仿真系统中的1~2个机器人来探索虚拟世界。机器人维护着两个变量b1和b2,用来保存从虚拟世界中读取的字符。

该系统的主要功能描述如下:

(1)机器人探索虚拟世界(RunRobots)。用户使用编辑器(Editor)编写文件以设置想要模拟的环境,将文件导入系统(LoadFile)从而在仿真系统中建立虚拟世界(SetupWorld)。机器人在虚拟世界中的行为也在文件中进行定义,建立机器人的探索行为程序(SetupProgram)。机器人在虚拟世界中探索时(RunProgram),有2种运行模式:

①自动控制(Run):事先编排好机器人的动作序列(指令(Instruction)),执行指令,使机器人可以连续动作。若干条指令构成机器人的指令集(InstructionSet)。

②单步控制(Step):自动控制方式的一种特殊形式,只执行指定指令中的一个动作。

(2)手动控制机器人(ManipulateRobots)。选定1个机器人后(SelectRobot),可以采用手动方式控制它。手动控制有4种方式:

①Move:机器人朝着正前方移动一个交叉点。

②Left:机器人原地沿逆时针方向旋转90度。

③Read:机器人读取其所在位置的字符,并将这个字符的值赋给b1;如果这个位置上没有字符,则不改变b1的当前值。

④Write:将b1中的字符写入机器人当前所在的位置,如果这个位置上已经有字符,该字符的值将会被b1的值替代。如果这时b1没有值,即在执行Write动作之前没有执行过任何Read动作,那么需要提示用户相应的错误信息(ShowErrors)。

手动控制与单步控制的区别在于,单步控制时执行的是指令中的动作,只有一种控制方式,即执行下个动作;而手动控制时有4种动作。

现采用面向对象方法设计并实现该仿真系统,得到如图3-1所示的用例图和图3-2所示的初始类图。图3-2中的类“Interpreter”和“Parser”用于解析描述虚拟世界的文件以及机器人行为文件中的指令集。

中级软件设计师,历年真题,2016年上半年(下午)《软件设计师》真题

图3-1用例图

中级软件设计师,历年真题,2016年上半年(下午)《软件设计师》真题

图3-2初始类图

【问题1】(6分)

根据说明中的描述,给出图3-1中U1~U6所对应的用例名。

【问题2】(4分)

图3-1中用例U1~U6分别与哪个(哪些)用例之间有关系,是何种关系?

【问题3】(5分)

根据说明中的描述,给出图3-2中C1~C5所对应的类名。

正确答案及解析

正确答案
解析

【问题1】

U1/U2:Run、Step

U3:Write

U4/U5/U6:Move、Left、Read

【问题2】

U1和U2和RunProgram有泛化关系。

U3,U4,U5,U6和Manipulate Robots有泛化关系。

【问题3】

C1:World/虚拟世界

C2:Robots

C3:Instruction

C4:InstructionSet

C5:Errors

本题考查的是面向对象UML建模内容,涉及到用例图和类图。

在本题中部分信息隐含,有一定难度,需要认真阅读并理解题干说明。

【问题1】

问题1要求补充U1~U6用例名,答案可根据题干说明和图示关系判断,较为容易,具体分析过程如下:

(1)对于U1、U2用例与Run Program相关,从题干说明“机器人在虚拟世界中探索时(RunProgram),有2种运行模式:①自动控制(Run)…②单步控制(Step)…”,因此可以判断U1、U2分别为Run和Step用例,二者位置可以互换。

(2)从题干说明“手动控制机器人(ManipulateRobots)。选定1个机器人后(SelectRobot),可以采用手动方式控制它。手动控制有4种方式:①Move:…②Left:…③Read:…④Write:…”可以看到与ManipulateRobots相关的用例有Move,Left,Read,Write,又根据Write的说明“即在执行Write动作之前没有执行过任何Read动作,那么需要提示用户相应的错误信息(ShowErrors)”可以看到,与ShowErrors相关的用例是Write,即U3为Write。剩余U4、U5、U6分别为Move、Left、Read,三者位置可以互换。

【问题2】

判断用例之间的关系。用例之间的关系有三种:泛化、扩展和包含。

包含关系:其中这个提取出来的公共用例称为抽象用例,而把原始用例称为基本用例或基础用例系。当可以从两个或两个以上的用例中提取公共行为时,应该使用包含关系来表示它们。

扩展关系:如果一个用例明显地混合了两种或两种以上的不同场景,即根据情况可能发生多种分支,则可以将这个用例分为一个基本用例和一个或多个扩展用例,这样使描述可能更加清晰。

泛化关系:当多个用例共同拥有一种类似的结构和行为的时候,可以将它们的共性抽象成为父用例,其他的用例作为泛化关系中的子用例。在用例的泛化关系中,子用例是父用例的一种特殊形式,子用例继承了父用例所有的结构、行为和关系。

(1)RunProgram有两种运行模式,即Run和Step分别是RunProgram的一种,二者与RunProgram是特殊/一般的关系,RunProgram与U1、U2是泛化关系。

(2)同理,Move、Left、Read、Write分别是手动控制的四种方式之一,因此,这四者与Manipulate Robots是特殊/一般的关系,即Manipulate Robots与U3、U4、U5、U6是泛化关系。

【问题3】

问题3由于部分信息隐含,所以难度较大。

(1)首先根据类图,存在2组部分与整体的关系,分别是C3-C4,C1-C2,其中多重度关系:C4包含1~n个C3,C1包含1~2个C2,且C1和C4都与Interpreter、Parser有关。

(2)根据说明“类“Interpreter”和“Parser”用于解析描述虚拟世界的文件以及机器人行为文件中的指令集”,因此C1、C4分别是虚拟世界的文件和机器人行为文件中的指令集,后者题干给出为Instruction Set。其中满足1…n多重度的应该为指令Instruction和InstructionSet,因此,C3为Instruction,C4为InstructionSet。C1是虚拟世界的文件,可以写作World(题干中虚拟世界只描述为World)。对于C2与World有1~2的多重度关系,根据题干说明,只有“用户通过操作仿真系统中的1~2个机器人来探索虚拟世界”符合要求,因此C2为机器人(Robot/Robots)。

(3)剩下C5与World相关,根据题干描述“用户使用编辑器(Editor)编写文件以设置想要模拟的环境,将文件导入系统(LoadFile)从而在仿真系统中建立虚拟世界(SetupWorld)”,因此建立虚拟世界需要编辑器编辑文件,并将文件导入仿真系统,因此C5为仿真系统。

包含此试题的试卷

你可能感兴趣的试题

单选题

Advancements in ( )have contributed to the growth of the automotive industry through the creation and evolution of self-driving vehicles.

  • A.Artificial Intelligence
  • B.Cloud Computing
  • C.Internet of Things
  • D.Big Data
查看答案
单选题

In project human resource management , ( )is not a source of power for the project manager.

  • A.referent power
  • B.expert power
  • C.reward power
  • D.audit power
查看答案
单选题

At the project establishment stage , the feasibility study mainly includes techinical feasibility analysis , ( ), operation environment feasibility analysis and other aspects of feasibility analysis.

  • A.detail feasibility analysis
  • B.opportunity analysis
  • C.economic feasibility analysis
  • D.risk analysis
查看答案
单选题

( )is a grid that shows the project resources assigned to each work package.

  • A.Stakeholder engagement assessment matrix
  • B.Requirements traceability matrix
  • C.Probability and impact matrix
  • D.Responsibility assignment matrix
查看答案
单选题

Xinhua News Agency reported in January 2022,Chian will further promote the developmet of a digital economy during the 14th Five-Year Plan eriod(2021-2025). The plan also emphasized industrial ( )transformation.

  • A.digital
  • B.networking
  • C.intelligentize
  • D.informatization
查看答案

相关题库更多 +