面向对象分析试题全.docx

上传人:b****1 文档编号:2067527 上传时间:2022-10-26 格式:DOCX 页数:18 大小:559.56KB
下载 相关 举报
面向对象分析试题全.docx_第1页
第1页 / 共18页
面向对象分析试题全.docx_第2页
第2页 / 共18页
面向对象分析试题全.docx_第3页
第3页 / 共18页
面向对象分析试题全.docx_第4页
第4页 / 共18页
面向对象分析试题全.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

面向对象分析试题全.docx

《面向对象分析试题全.docx》由会员分享,可在线阅读,更多相关《面向对象分析试题全.docx(18页珍藏版)》请在冰豆网上搜索。

面向对象分析试题全.docx

面向对象分析试题全

试题三

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

[说明]

  某电话公司决定开发一个管理所有客户信息的交互式网络系统。

系统的功能如下:

  1.浏览客户信息:

任何使用Internet的网络用户都可以浏览电话公司所有的客户信息(包括姓名、住址、电话号码等)。

  2.登录:

电话公司授予每个客户一个帐号。

拥有授权帐号的客户,可以使用系统提供的页面设置个人密码,并使用该帐号和密码向系统注册。

  3.修改个.人信息:

客户向系统注册后,可以发送电子邮件或者使用系统提供的页面,对个人信息进行修改。

  4.删除客户信息:

只有公司的管理人员才能删除不再接受公司服务的客户的信息。

  系统采用面向对象方法进行开发,在开发过程中认定出的类如下表所示:

编号

类名

描述

1

InternetClient

网络用户

2

CustomerList

客户信息表,记录公司所有客户的信息

3

Customer

客户信息,记录单个客户的信息

4

CompanyCustomer

公司客户

5

InternalClient

公司的管理人员

[图3-1]  

图表1

图表2

[问题1]

  在需求分析阶段,采用UML的用例图(usecasediagram)描述系统功能需求,如图3-1所示。

请指出图中的A、B、C和D分别是哪个用例?

[问题2]

  在UML中,重复度(Multiplicity)定义了某个类的一个实例可以与另一个类的多少个实例相关联。

通常把它写成一个表示取值范围的表达式或者一个具体的值。

例如图3-2中的类InternetClient和CustomerList,InternetClient端的“0..*”表示:

一个Custo~erList的实例可以与0个或多个InternetClient的实例相关联;CustomerList端的“1”表示:

一个InternetClient的实例只能与一个CustomerList的实例相关。

  请指出图3-2中

(1)到(4)处的重复度分别为多少?

[问题3]

  类通常不会单独存在,因此当对系统建模时,不仅要识别出类,还必须对类之间的相互关系建模。

在面向对象建模中,提供了四种关系:

依赖(dependency)、概括(generalization)、关联(aassociation)和聚集(aggregation)。

请分别说明这四种关系的含义,并说明关联和聚集之间的主要区别。

试题三(15分)

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

 【说明】

  某指纹门禁系统结构如图3-1所示,其主要部件有:

主机(MainFrname)、锁控器(LockController)、指纹采集器(FingerReader)和电控锁(Lock)。

  

(1)系统中的每个电控锁都有一个惟一的编号。

锁的状态有两种:

“已锁住”和“未锁住”。

  

(2)在主机上可以设置每把锁的安全级别以及用户的开锁权限。

只有当用户的开锁权限大于或等于锁的安全级别并且锁处于“已锁住”状态时,才能将锁打开。

  (3)用户的指纹信息、开锁权限以及锁的安全级别都保存在主机上的数据库中。

  (4)用户开锁时,只需按一下指纹采集器。

指纹采集器将发送一个中断事件给锁控器,锁控器从指纹采集器读取用户的指纹并将指纹信息发送到主机,主机根据数据库中存储的信息来判断用户是否具有开锁权限,若有且锁当前处于“已锁住”状态,则将锁打开;否则系统报警。

  该系统采用面向对象方法开发,系统中的类以及类之间的关系用UML类图表示,图3-2是该系统类图的一部分;系统的动态行为采用UML序列图表示,图3-3是用户成功开锁的序列图。

图表3

图表4

【问题1】(6分)

  图3-2是该系统类图的一部分,依据上述说明中给出的术语,给出类Look的主要属性。

 【问题2](5分)

  依据上述说明中给出的词语,将图3-3中的

(1)~(5)处补充完整。

 【问题3】(4分)

组装(Composition)和聚集(Aggregation)是UML中两种非常重要的关系。

请说明组装和聚集分别表示什么含义?

两者的区别是什么?

试题二(15分)

  阅读下列说明以及UML类图,回答问题1、问题2和问题3,将解答填入答题纸的对应栏内。

 

[说明]

  某客户信息管理系统中保存着两类客户的信息:

 

  

(1)个人客户。

对于这类客户,系统保存了其客户标识(由系统生成)和基本信息(包括姓名、住宅电话和email)。

  

(2)集团客户。

集团客户可以创建和管理自己的若干名联系人。

对于这类客户,系统除了保存其客户标识(由系统生成)之外,也保存了其联系人的信息。

联系人的信息包括姓名、住宅电话、email、办公电话以及职位。

  该系统除了可以保存客户信息之外,还具有以下功能:

  

(1)向系统中添加客户(addCustomer); 

  

(2)根据给定的客户标识,在系统中查找该客户(getCustomer);

  (3)根据给定的客户标识,从系统中删除该客户(re田oveCustoner);

  (4)创建新的联系人(addContact);

  (5)在系统中查找指定的联系人(getContact);

  (6)从系统中删除指定的联系人(removeContact)。

  该系统采用面向对象方法进行开发。

在面向对象分析阶段,根据上述描述,得到如表2-1所示的类,

表2-1

类名

说明

 CustomerlnformationSystem

 客户信息管理系统

 IndividualCustomer

 个人客户

 InstitutionalCustomer

 集团客户

 Contact

 联系人

  描述该客户信息管理系统的UML类图如图2-1所示。

[问题1](3分)

  请使用说明中的术语,给出图2-1中类Customer和类Person的属性。

[问题2](6分)

  识别关联的多重度是面向对象建模过程中的一个重要步骤。

根据说明中给出的描述,完成图中的

(1)~(6)。

[问题3](6分)

  根据说明中的叙述,抽象出如表2-2所示的方法,请指出图2-1中的类CustomerlnformationSystem和  InstitutionalCustomer应分别具有其中的哪些方法。

表2-2

功能描述

方法名

 向系统中添加客户

 addCustomer

 根据给定的客户标识,在系统中查找该客户

 getCustomer

 根据给定的客户标识,从系统中删除该客户

 removeCustomer

 创建新的联系人

 addContact

 在系统中查找指定的联系人

 getContact

 从系统中删除指定的联系人

 removeContact

试题三(共15分)

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

[说明]

  S公司开办了在线电子商务网站,主要为各注册的商家提供在线商品销售功能。

为更好地吸引用户,S公司计划为注册的商家提供商品(Commodity)促销(Promotion)功能。

商品的分类(Category)不同,促销的方式和内容会有所不同。

  注册商家可发布促销信息。

商家首先要在自己所销售的商品的分类中,选择促销涉及的某一具体分类,然后选出该分类的一个或多个商品(一种商品仅仅属于一种分类),接着制定出一个比较优惠的折扣政策和促销活动的优惠时间,最后由系统生成促销信息并将该促销信息公布在网站上。

  商家发布促销信息后,网站的注册用户便可通过网站购买促销商品。

用户可选择参与某一个促销(Promotion)活动,并选择具体的促销商品(Commodity),输入购买数量等购买信息。

系统生成相应的一份促销订单(POrder)。

只要用户在优惠活动的时间范围内,通过网站提供的在线支付系统,确认在线支付该促销订单(即完成支付),就可以优惠的价格完成商品的购买活动,否则该促销订单失效。

  系统采用面向对象方法开发,系统中的类以及类之间的关系用UML类图表示,图3-1是该系统类图中的一部分;系统的动态行为采用UML序列图表示,图3-2是发布促销的序列图。

问题1](6分)

  识别关联的多重度是面向对象建模过程中的一个重要步骤。

根据说明中给出的描述,完成图3-1中的

(1)~(6)。

[问题2](4分)

  请从表3-1中选择方法,完成图3-2中的(7)~(10)。

表3-1可选消息列表

功能描述

方法名

向促销订单中添加所选的商品

buyCommodities

向促销中添加要促销的商品

addCommodities

查找某个促销的所有促销订单信息列表

getPromotionOrders

生成商品信息

createCommodity

查找某个分类中某商家的所有商品信息列表

getCommodities

生成促销信息

createPromotion

生成促销订单信息

createPOrder

查找某个分类的所有促销信息列表

getCategoryPromotion

查找某商家所销售的所有分类列表

getCategories

查找某个促销所涉及的所有商品信息列表

getPromotionCommodities

[问题3](5分)

  关联(Association)和聚集(Aggregation)是UML中两种非常重要的关系。

请说明关联和聚集的关系,并说明其不同点。

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

说明某图书管理系统的主要功能如下:

1.图书管理系统的资源目录中记录着所有可供读者借阅的资源,每项资源都有一个唯一的索引号。

系统需登记每项资源的名称、出版时间和资源状态(可借阅或已借出)。

2.资源可以分为两类:

图书和唱片。

对于图书,系统还需登记作者和页数;对于唱片,还需登记演唱者和介质类型(CD或者磁带)。

3.读者信息保存在图书管理系统的读者信息数据库中,记录的信息包括:

读者的识别码和读者姓名。

系统为每个读者创建了一个借书记录文件,用来保存读者所借资源的相关信息。

现采用面向对象方法开发该图书管理系统。

识别类是面向对象分析的第一步。

比较常用的识别类的方法是寻找问题描述中的名词,再根据相关规则从这些名词中删除不可能成为类的名词,最终得到构成该系统的类。

表3-1给出了[说明]中出现的所有名词。

通过对表3-1中的名词进行分析,最终得到了图3-1所示的UML类图(类的说明如

表3-2所示)。

图图

图图

[1]问题((3分))

表3-2所给出的类并不完整,根据[说明]和表3-1,将图3-1中的(a)~(c)处补充完整。

[2]问题(6分))

根据[说明]中的描述,给出图3-1中的类CatalogItem以及(b)、(c)处所对应的类的

关键属性(使用表3-1中给出的词汇),其中,CatalogItem有4个关键属性;(b)、(c)处

对应的类各有2个关键属性。

[3]问题((6分分))

识别关联的多重度是面向对象建模过程中的一个重要步骤。

根据[说明]中给出的描述,

完成图3-1中的

(1)~(6)。

试题一(15分)

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

[说明]

  某公司的主要业务是出租图书和唱碟。

由于业务需求,该公司委托软件开

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 政史地

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1