2017下
【问题2】
C6:题目,作者,出版年份,下载次数
C7:会议名称,召开时间,召开地点
C8:期刊名称,出版月份,期号,主办单位
C9:ID
【问题3】
观察者设计模式
功能:若有新的出版物引用了该出版物,系统将发送电子邮件通知用户。
2018上
【问题1】
A1:驾驶员
A2:信息中心系统
A3:区域系统
A4:交通广播电台
【问题2】
U1:记录投资账户交易信息
U2:记录失败交易信息
U3:记录收费交易
U4:记录交通事件
U5:磁卡充值
【问题3】
C1:中心系统
C2:龙门架
C3:车道
C4:雷达传感器
C5:无限传感器
C6:数吗相机
2022上
某公司的人事能门拥有一个地址簿(AddressBookSystem),管理系统ddressBookSystem),
于管理公司所有员工的地址记录(PersonAddress)。员工的地址记录包括:姓名、住址、城市、省份、邮政编码以及联系电话等信息。
管理员可以完成对地址簿中地址记录的管理操作,包括:
(1)维护地址记录。根据公司的人员变动情况,对地址记录进行添加、修改、删除等操作;
(2)排序。按照员工姓氏的字典顺序或邮政编码对地址簿的所有记录进行排序。
(3)打印地址记录。以邮件标签的格式打印一个地址簿中的所有记录。为便于管理,管理员在系统中为公司的不同部门建立单独的地址簿。系统会记录管理员对每个地址簿的修改操作,包括:
(1)创建地址簿。新建个地址簿并保存。
(2)打开地址簿。打开一个已有的地址簿。
(3)修改地址簿。对打开的地址簿进行修改并保存。
系统将提供一个GUI(图形用户界面)实现对地址簿的各种操作。
现采用面向对象方法分析并设计该地址簿管理系统,得到如图3-1所示的用例图和图3-2所示的类图。
[问题1](6分)
根据说明中的描述,给出图3-1中U1~U6所对应的用例名。
U1:按字典顺序排序
U2:按邮政编码排序
U3:创建
U4:修改
U5:打开
U6保存
[问题2](5分)
根据说明中的描述,给出图3-2中类Adresk的主要属性和方法以及类Pernoddress的主要属性(可以使用说明中的文字)。
AddressBook
城市,部门编号,姓名、住址、城市、省份、邮政编码以及联系电话
PersonAddress
姓名,住址,城市,省份,邮政编码,联系电话
AddressBook
添加、创建、打开、修改、删除,保存等
[问题3](4分)
根据说明中的描述以及图3-1所示的用例图,请说明《include》关系和《extend》关系的含义是什么?
extend表示的是扩展关系。描述为:如果一个用例明显地混合了两种或两种以上的不同场景,即根据情况可能会发生多种分支,则可以将这个用例分为一个基本用例和一个或多个扩展用例,关系图示指向为扩展用例指向基本用例。
include表示的是包含关系。描述为:当可以从两个或两个以上用例中提取公共行为的时候,应该使用包含关系来表示它们。其中这个提取出来的公共用例称之为抽象用例,而把原始用例称为基本用例和扩展用例。
2022下
图3-1所示为某软件系统中一个温度控制模块的界面。界面上提供了两种温度计量单位,即华氏度(Fahrenheit)和摄氏度(Celsius)。软件支持两种计量单位之间的自动换算,即若输入一个华氏度的温度,其对应的摄氏度温度值会自动出现在摄氏度的显示框内,反之亦然。
用户可以通过该界面上的按钮Raise(升高温度)和Lower(降低温度)来改变温度的值。界面右侧是一个温度计,将数字形式的温度转换成温度计上的刻度比例进行显示。当温度值改变时,温度计的显示也随之同步变化。
现在采用面向对象方法实现该温度控制模块,得到如图3-2所示的用例图和3-3所示的类图。
【问题1】(4分)
根据说明中的描述,给出图3-2中U1~U4所对应的用例名。
U1:显示温度
U2:显示华氏度
U3:显示温度计
U14:自动换算
【问题2】(8分)
根据说明中的描述,给出图3-3中C1~C8所对应的类名(类名使用图3-1中标注的词汇
C1:TemperatureCoverDialog
C2:TahrenheitEditBox
C3:CelsiusEditBox
C4:TemperatureBar
C5:FahrenheiRaise
C6:FaHrenheitRaise
C7:CelsiusRaise
C8:CelsiusLower
【问题3】(3分)
现需将图3-1所示的界面改造为一个更为通用的GUL应用,能够实现任意计量单位之间的换算,例如干克和磅之间的换算,厘米和英寸之间的换算等等。为了实现这个新的需求,可以在图3-3所示的类图上增加哪种设计模式?请解释选择该设计模式的原因(不超过50字)
策略模式
此模式可以定义一系列的算法策略,把它们一个个封装起来,并且使它们可以相互替换。在需要指定的计量单位换算时,调用相应的算法策略即可。
2023上
某高校图书馆购买了若干学术资源的镜像数据库(MinorDB)资源,现要求开发一套数字图书馆(Digitallibrary)系统,面向校内用户(User)提供学术资源(Resource)的浏览,检索和下载服务系统的主要要求描述如下:
(1)系统中存储了每个镜像数据库的基本信息,包括:数据库名称,访问地址,数据库属性以及数据库简介等信息,用户进入某个镜像数据降后,可以浏览检索以及下载其中的学术资源。
(2)学术资源包括会议论文(Conference Paper)、期刑论文(Journal Article)以及学位(Thesis)等:系统中存储了每个学术资源的题名、作者、发表时间、来源(哪个镜像数据库)、被引次数、下载次数等信息。对于会议论文,还需记录会议名称,召开时间以及召开地点;同一次会议的论文被收录在会议集(Proceeding)中。对于期刊论文,还需记录期刊名称,出版月份,期号以及主办单位;同一期号的论文被收录在一本期刊(Edition)中。对于学位论文,记录了学位类别(博士/硕士):毕业学校,专业及指导教师。会议集包含发表在该会议(在某个特定时间段,特定地点召开)上的所有文章。期刊的每一期在特定时间发行,其中包含若干篇文章。
(3)系统用户(User)包括在校学生(Student),教师(Teacher)以及其他在职人员(Staff)。用户使用学校的
统一身份认证登录系统后,使用系统提供的各项服务。
(4)系统提供多种资源检索的方式,主要包括:按照资源的题名检索(Search by Title),按照作者名称
检票(Search By author),按照来源检索(Search By Source)等。
(5)用户可以下载资源,系统记录每个资源被下载的次数。
现采用面向对象分析与设计方法开发该系统,得到如图1所乐的用例图以及图2所示的初始类图。
[问题1](6分)
根据说明中的描述,给出图3-2中的C1-C8所对应的类名。
Resource
Conference Paper
Journal Article
Thesis
User
Student
Teacher
Staff
[问题2](5分)
根据说明中的描述,给出图2的类C1-C4的关键属性。
C1:题名、作者、发表时间
C2:题名、作者、发表时间、会议名称,召开时间
C3:题名、作者、发表时间、期刊名称、期号
C4:题名、作者、发表时间、毕业学校,专业
[问题3](4分)
在该系统的开发过程中遇到了新的要求:用户能够在系统中对其所关注的数字资源注册他引通知,若该资源的他引次数发生变化,系候可以及时通知该用户,为了实现这个新的要求,可以在图2所系的类图中增加哪种设计模式?用150字以内文字解释选择该模式的原因。
观察者模式
观察者模式定义对象间的一对多的关系关系,当一个对象的对象状态发生改变时,所有依赖于它的对象都得到通知并自动更新。符合系统需求。