【问题 1】(2 分)根据【说明】中的描述,给出图 3-1中 A1 和 A2所对应的参与者。

题目

【问题 1】(2 分)

根据【说明】中的描述,给出图 3-1中 A1 和 A2所对应的参与者。


相似考题

3.阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 某高校图书馆欲建设一个图书馆管理系统,目前已经完成了需求分析阶段的工作。功能需求均使用用例进行描述,其中用例“借书(Check Out Books)”的详细描述如下。 参与者:读者(Patron)。 典型事件流: 1.输入读者ID; 2.确认该读者能够借阅图书,并记录读者ID; 3.输入所要借阅的图书ID; 4.根据图书目录中的图书ID确认该书可以借阅,计算归还时间,生成借阅记录; 5.通知读者图书归还时间。 重复步骤3~5,直到读者结束借阅图书。 备选事件流: 2a.若读者不能借阅图书,说明读者违反了图书馆的借书制度(例如,没有支付借书费用等) ①告知读者不能借阅,并说明拒绝借阅的原因; ②本用例结束。 4a.读者要借阅的书无法外借 ①告知读者本书无法借阅; ②回到步骤3。 说明:图书的归还时间与读者的身份有关。如果读者是教师,图书可以借阅一年; 如果是学生,则只能借阅3个月。读者ID中包含读者身份信息。 现采用面向对象方法开发该系统,得到如图3-1所示的系统类模型(部分);以及如图3-2所示的系统操作“checkOut(bookID)(借书)”通信图(或协作图)。【问题1】(8分) 根据说明中的描述,以及图3-1和图3-2,给出图3-1中C1-C4处所对应的类名(类 名使用图3-1和图3-2中给出的英文词汇)。 【问题2】(4分) 根据说明中的描述,以及图3-1和图3-2,给出图3-2中M1-M4处所对应的方法名(方法名使用图3-1和图3-2中给出的英文词汇)。 【问题3】(3分) 用例“借书”的备选事件流4a中,根据借书制度来判定读者能否借阅图书。若图书馆的借书制度会不断地扩充,并需要根据图书馆的实际运行情况来调整具体使用哪些制度。为满足这一要求,在原有类设计的基础上,可以釆用何种设计模式?简要说明原因。

参考答案和解析
正确答案:
    A1:工资系统        A2:菜单管理员
更多“【问题 1】(2 分) 根据【说明】中的描述,给出图 3-1中 A1 和 A2所对应的参与者。 ”相关问题
  • 第1题:

    阅读下列说明和图,回答问题1至问题3.将解答填入答题纸的对应栏内。

    【说明】

    某公司欲开发一个管理选民信息的软件系统。系统的基本需求描述如下:

    (1)每个人(Person)可以是一个合法选民(Eligible)或者无效的选民(Ineligible)。

    (2)每个合法选民必须通过该系统对其投票所在区域(即选区,Riding)进行注册

    (Registration)。每个合法选民仅能注册一个选区。

    (3)选民所属选区由其居住地址(Address)决定。假设每个人只有一个地址,地址

    可以是镇( Town)或者城市(City)。

    (4)某些选区可能包含多个镇,而某些较大的城市也可能包含多个选区。

    现采用面向对象方法对该系统进行分析与设计,得到如图3-1所示的初始类图。

    【问题1】(8分)

    根据说明中的描述,给出图3-1中C1-C4所对应的类名(类名使用说明中给出的

    英文词汇)。

    【问题2】(3分)

    根据说明中的描述,给出图3-1中Ml-M6处的多重度

    【问题3】(4分)

    现对该系统提出了以下新需求:

    (l)某些人拥有在多个选区投票的权利,因此需要注册多个选区:

    (2)对于满足(1)的选民,需要划定其“主要居住地”,以确定他们应该在哪个

    选区进行投票。

    为了满足上述需求,需要对图3-1所示的类图进行哪些修改?请用100字以内

    文字说明。


    正确答案:
    本题属于经典的考题,主要考查面向对象分析方法与设计的基本概念与应用。在建模方面,本题中只涉及到了UML类图。类图上的考点也是比较常规的对类的识别以及多重度的确定,题目难度不大。【问题1】根据【说明】中的“(l)每个人(Person)可以是一个合法选民(Eligible)或者无效的选民(Ineligible)”,可以推断出这里有一个“一般/特殊”关系,应采用继承结构。再对照类图,C3、C4处显而易见应该是Ineligible和Eligible。由于C4和C2之间的关联关系,这里C3和C4的答案是不能互换的。根据【说明】中的“(3)选民所属选区由其居住地址(Address)决定。假设每个人只有一个地址,地址可以是镇(Town)或者城市(City)”,可以推断出Cl、City、Town这3个类描述的是与地址相关的内容,因此C1处应该是Address。对应地,C2处应该是Riding,这个由C2与City.C2与Town之间的联系名称“district”也能推断出来。【问题2】对于联系的多重度的判定,应注意题目中关于不同概念之间关联数量的描述。Ml、M2这一对多重度,刻画的是“Person”和“Address”之间的关系。由【说明】中的“假设每个人只有一个地址”,可以得出Ml和M2处分别为1和*。M3和M4描述的是合法选民与选区之间的关系。由【说明】中的“每个合法选民仅能注册一个选区”,可知M3和M4分别为*和1。M5和M6描述的是选区和地址之间的关系。在【说明】中假设,每个合法选民在选区中只注册一个地址,因为M5和M6处分别为*和1。【问题3】本问题考查当需求发生变化时,对设计模型的修改。这里给出了两个需求变更,分别对初始类图进行修改。需求1:某些人拥有在多个选区投票的权利,因此需要注册多个选区。由于选区由住址确定,能够在多个选区注册,意味着其居住地址不止一个。所以“Person”和“Address”之间的多重度会发生变化。在选区注册时所使用的地址也不唯一了,因此需要增加属性来记录在注册选区时所使用的地址,从而对C2和C4之间的关联类进行修改,增加其属性。需求2:对于满足需求1的选民,需要划定其“主要居住地”,以确定他们应该在哪个选区进行投票。这个需求对选民的地址信息提出了更为详细的需求,按照面向对象方法将“不变部分和可变部分分离”的思想,在类图中增加一个新的类,并采用继承机制继承原有Address类中的共性元素。试题三参考答案【问题1】C1:AddressC2:RidingC3:IneligibleC4:Eligible【问题2】Ml:lM2:*或0...*M3:*M4:1M5:*M6:1【问题3】(1)M1处改为I..*,在Registration类中增加address属性,指明注册时使用的是哪个地址。(2)增加一个类“主要居住地”,作为类Address的子类:类Person与类“主要居住地”之间具有关系联系,且每个人只有一个主要居住地。

  • 第2题:

    试题三(共 15 分)

    阅读下列说明和 UML 图,回答问题 1 至问题4,将解答填入答题纸的对应栏内。

    【说明】

    某企业为了方便员工用餐,为餐厅开发了一个订餐系统(COS:Cafeteria Orderin

    System),企业员工可通过企业内联网使用该系统。

    企业的任何员工都可以查看菜单和今日特价。

    系统的顾客是注册到系统的员工,可以订餐(如果未登录,需先登录)、注册工资支

    付、预约规律的订餐,在特殊情况下可以覆盖预订。

    餐厅员工是特殊顾客,可以进行备餐、生成付费请求和请求送餐,其中对于注册工资

    支付的顾客生成付费请求并发送给工资系统。

    菜单管理员是餐厅特定员工,可以管理菜单。

    送餐员可以打印送餐说明,记录送餐信息(如送餐时间)以及记录收费(对于没有注

    册工资支付的顾客,由送餐员收取现金后记录)。

    顾客订餐过程如下:

    1. 顾客请求查看菜单;

    2. 系统显示菜单和今日特价;

    3. 顾客选菜;

    4. 系统显示订单和价格;

    5. 顾客确认订单;

    6. 系统显示可送餐时间;

    7. 顾客指定送餐时间、地点和支付方式;

    8. 系统确认接受订单,然后发送 Email 给顾客以确认订餐,同时发送相关订餐信息通

    知给餐厅员工。

    系统采用面向对象方法开发,使用 UML 进行建模。系统的顶层用例图和一次订餐的活动图初稿分别如图 3-1和图 3-2 所示。

    【问题 1】(2 分)

    根据【说明】中的描述,给出图 3-1中 A1 和 A2所对应的参与者。

    【问题 2】(8 分)

    根据【说明】中的描述,给出图 3-1中缺少的四个用例及其所对应的参与者。

    【问题 3】(4 分)

    根据【说明】中的描述,给出图 3-2中(1)~(4)处对应的活动名称或图形符号。

    【问题 4】(1 分)

    指出图 3-1 中员工和顾客之间是什么关系,并解释该关系的内涵。


    正确答案:
    试题三分析本题考查面向对象系统开发时,采用UML模型进行建模的方法。此类题目要求考生认真阅读题目说明中对现实问题的描述,使用UML建模时的原则,从中确定用例图、活动图以及图中的各种关系。题目给出了未完成的用例图和活动图,需要根据描述给出参与者、用例、活动图中的活动和符号,以及参与者之间的关系内涵。用例图是用例建模的一个重要产物,它以图形化的方式将系统描述成用例、参与者及其之间的关系。用例图在高层交流了系统必须处理的业务事件的范围,是描述系统与其他外部系统以及用户之间交互的图形。发起或者触发用例的外部用户称为参与者。为了完成某些业务任务,参与者发起系统活动,即用例。在构建用例图时,常用的方式是先识别参与者,然后确定用例以及用例之间的关系。UML活动图用于建模系统的过程步骤或活动。构造活动图通常先为用例添加开始和结束点,为用例的主要步骤添加一个活动,从每个活动到其他活动、决策点和终点添加转换,并行活动的地方添加同步条。【问题1】识别参与者时,考查和系统交互的人员和外部系统。本题中,与系统交互的人员包括员工、注册到系统的员工(顾客)、餐厅员工、菜单管理员、送餐员以及工资系统。由“菜单管理员是餐厅特定员工”以及图中A2和图中餐厅员工之间的“是一种”关系可知,A2为菜单管理员;图中还缺少描述中与工资系统的交互,由“……并发送给工资系统”可知,A1为工资系统。【问题2】考查用例及其和参与者之间的关系时,通过判断哪一个特定参与者发起或者触发了与系统的哪些交互,来识别用例并建立和参与者之间的关联。本题中,由“任何员工都可以查看菜单和今日特价”可知,图中缺少用例查看今日特价,对应参与者是员工;由“系统的顾客是……,注册工资支付、……”可知,图中缺少用例注册工资支付,对应参与者是顾客和工资系统;由“餐厅员工是……,可以进行备餐、生成付费请求……发送给工资系统”可知,图中缺少用例“生成付费请求”,对应的参与者是餐厅员工和工资系统;由“菜单管理员是餐厅特定员工,可以管理菜单”可知,图中缺少用例管理菜单,对应的参与者是菜单管理员。需要注意的是,在注册工资支付所对应的参与者中,虽然没有明确说明要和工资系统交互,但是由“对于注册工资支付的顾客生成付费请求并发送给工资系统”可知,工资支付是由工资系统控制,所以注册也需要和工资系统交互。【问题3】在顾客订餐过程的描述中,在“顾客选菜”之前,图中缺少符号和活动。由说明中顾客“可以订餐(如果未登录,需先登录)”可以判断,在系统“显示菜单和今日特价”之后“顾客选菜”之前,需要判断(判定符号)当前用户身份是否为顾客,如果不是,需先登录;由“……发送E-mail给顾客以确认订餐,同时发送相关订餐信息通知给餐于员工”可知,发送E-mail和通知餐厅员工为并行活动,需要在前后有同步条(或纵向)。【问题4】参与者之间的关系表示子类型“是一种”父类型,即泛化关系。其中父类型通常是一个抽象泛化的参与者,可以完成子类型可完成的共同行为,每个具体的子类型继承它,可以完成父类型参与者同样的任务,并可以补充额外的角色功能。试题三参考答案(共15分)【问题1】(2分,各1分)A1:工资系统A2:菜单管理员【问题2】(8分,每行2分)(注:四行顺序可以不同,但是每行必须对应,其中,用例名称及其对应的参与者都正确给2分,只有用例名正确给l分,其余情况不得分)【问题3】(4分,各1分)【问题4】(1分)泛化关系(一般/特殊关系、继承关系)。泛化关系描述了一个参与者可以完成另一个参与者同样的任务,并可补充额外的角色功能。

  • 第3题:

    阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。【说明】 某城市拟开发一个基于Web城市黄页,公开发布该城市重要的组织或机构(以下统称为客户)的基本信息,方便城市生活。该系统的主要功能描述如下: (1)搜索信息:任何使用Internert的网络用户都可以搜索发布在城市黄页中的信息,例如客户的名称、地址、联系电话等。 (2)认证:客户若想在城市黄页上发布信息,需通过系统的认证。认证成功后,该客户成为系统授权用户。 (3)更新信息:授权用户登录系统后,可以更改自己在城市黄页中的相关信息,例如变更联系电话等。 (4)删除客户:对于拒绝继续在城市黄页上发布信息的客户,有系统管理员删除该客户的相关信息。 系统采用面向对象方法进行开发,在开发过程中认定出如表3-1所示的类。系统的用例图和类图分别如图3-1和图3-2所示。 表3-1 类列表




    【问题1】 根据说明中的描述,给出图3-1中A1和A2处所对应的参与者,UC1和UC2所对应的用例以及(1)处的关系

    【问题2】根据说明中的描述,给出图3-2中C1~C5所对应的类名(表3-1中给出的类名)和(2)~(5)处所对应的多重度
    【问题3】认定类是面向对象分析中非常关键的一个步骤。一般首先从问题域中得到候选类集合,在根据相应的原则从该集合中删除不作为类的,剩余的就是从问题域中认定出来的类。简要说明选择候选类的原则,以及对候选类集合进行删除的原则


    答案:
    解析:
    试题答案【问题1】
    A1网络用户;A2授权用户;UC1更新信息;UC2认证;
    (1)<>
    【问题2】
    C1:InternetClient;C2:CustomerList;C3:Administrator;C4:RegisteredClient
    C5:Customer;
    (2)1 ;(3)0…*;(4)0..1;(5)0..1
    【问题3】
    候选类的选择运用了良性依赖原则“不会在实际中造成危害的依赖关系,都是良性依赖”和接口隔离原则(ISP)。

  • 第4题:

    试题三(共15 分)

    阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。

    【说明】

    某运输公司决定为新的售票机开发车票销售的控制软件。图 3-1 给出了售票机的面板示意图以及相关的控制部件。

    售票机相关部件的作用如下所述:

    (1)目的地键盘用来输入行程目的地的代码(例如,200表示总站)。

    (2)乘客可以通过车票键盘选择车票种类(单程票、多次往返票和座席种类)。

    (3)继续/取消键盘上的取消按钮用于取消购票过程,继续按钮允许乘客连续购买多张票。

    (4)显示屏显示所有的系统输出和用户提示信息。

    (5)插卡口接受MCard(现金卡),硬币口和纸币槽接受现金。

    (6)打印机用于输出车票。

    假设乘客总是支付恰好需要的金额而无需找零,售票机的维护工作(取回现金、放入空白车票等)由服务技术人员完成。

    系统采用面向对象方法开发,使用 UML 进行建模。系统的顶层用例图和类图分别如图3-2和图3-3所示。

    【问题1】(5 分)

    根据说明中的描述,给出图 3-2 中 A1 和 A2 所对应的参与者,U1 所对应的用例,以及(1)、(2)处所对应的关系。

    【问题2】(7 分)

    根据说明中的描述,给出图3-3中缺少的C1~C4所对应的类名以及(3)~(6)处所对应的多重度。

    【问题3】(3 分)

    图3-3中的类图设计采用了中介者(Mediator)设计模式,请说明该模式的内涵。


    正确答案:
    试题三问题1(5分,各1分)A1:乘客A2:服务技术人员U1:支付(1)<<include>>(2)<<include>>问题2(7分)C1:键盘(2分)C2:目的地键盘(1分)C3:车票键盘(1分)C4:继续/取消键盘(1分)(3)~(6):1(各0.5分)问题3(3分)使用Mediator模式,可以使各个对象间的耦合松散(1分),只需关心和Mediator的关系,使多对多的关系变成一对多的关系(1分),可以降低系统的复杂性,提高可修改扩展性。(1分)。

  • 第5题:

    试题三(共15分)

    阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。

    【说明】

    某网上购物平台的主要功能如下:

    (1)创建订单。顾客( Customer)在线创建订单(Order),主要操作是向订单中添加项目、从订单中删除项目。订单中应列出所订购的商品(Product)及其数量(quantities)。

    (2)提交订单。订单通过网络来提交。在提交订单时,顾客需要提供其姓名(name)、收货地址(address)、以及付款方式(form. of payment)(预付卡、信用卡或者现金)。为了制定送货计划以及安排送货车辆,系统必须确定订单量(volume)。除此之外,还必须记录每种商品的名称(Name)、造价(cost price)、售价(sale price)以及单件商品的包装体积(cubic volume)。

    (3)处理订单。订单处理人员接收来自系统的订单;根据订单内容,安排配货,制定送货计划。在送货计划中不仅要指明发货日期(delivery date),还要记录每个订单的限时发送要求(Delivery Time Window)。

    (4)派单。订单处理人员将己配好货的订单转交给派送人员。

    (5)送货/收货。派送人员将货物送到顾客指定的收货地址。当顾客收货时,需要在运货单(delivery slip)上签收。签收后的运货单最终需交还给订单处理人员。

    (6)收货确认。当订单处理人员收到签收过的运货单后,会和顾客进行一次再确认。

    现采用面向对象方法开发上述系统,得到如图3-1所示的用例图和图3-2所示的类图。

    【问题1】 (5分)

    根据说明中的描述,给出图3-1中A1~A3所对应的参与者名称和U1~U2处所对应的用例名称。

    【问题2】(7分)

    根据说明中的描述,给出图3-2中C1~C3所对应的类名以及(1)~(4)处所对应的多重度(类名使用说明中给出的英文词汇)。

    【问题3】(3分)

    根据说明中的描述,将类C2和C3的属性补充完整(属性名使用说明中给出的英文词汇)。


    正确答案:
    【问题1】(5分)
    A1:顾客 A2:订单处理人员 A3:派送人员
    U1:收货 U2:派单
    【问题2】(7分)
    C1: Customer C2: Order C3: Product
    (1)1 (2)0..n或0..* (3)0..n或0..* (4)l..n或1..*
    【问题3】(3分)
    C2: volume、delivery date、form. of payment
    C3: cubic volume、cost price、sale price