中南大学软件学院软件体系结构实验1UML实验参考答案.docx

上传人:b****2 文档编号:2006920 上传时间:2023-05-02 格式:DOCX 页数:17 大小:394.14KB
下载 相关 举报
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第1页
第1页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第2页
第2页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第3页
第3页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第4页
第4页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第5页
第5页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第6页
第6页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第7页
第7页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第8页
第8页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第9页
第9页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第10页
第10页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第11页
第11页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第12页
第12页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第13页
第13页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第14页
第14页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第15页
第15页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第16页
第16页 / 共17页
中南大学软件学院软件体系结构实验1UML实验参考答案.docx_第17页
第17页 / 共17页
亲,该文档总共17页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

中南大学软件学院软件体系结构实验1UML实验参考答案.docx

《中南大学软件学院软件体系结构实验1UML实验参考答案.docx》由会员分享,可在线阅读,更多相关《中南大学软件学院软件体系结构实验1UML实验参考答案.docx(17页珍藏版)》请在冰点文库上搜索。

中南大学软件学院软件体系结构实验1UML实验参考答案.docx

中南大学软件学院软件体系结构实验1UML实验参考答案

《UML实验》参考答案

1.某酒店订房系统描述如下:

(1)顾客可以选择在线预订,也可以直接去酒店通过前台服务员预订;

(2)前台服务员可以利用系统直接在前台预订房间;

(3)不管采用哪种预订方式,都需要在预订时支付相应订金;

(4)前台预订可以通过现金或信用卡的形式进行订金支付,但是网上预订只能通过信用

卡进行支付;

(5)利用信用卡进行支付时需要和信用卡系统进行通信;

(6)客房部经理可以随时查看客房预订情况和每日收款情况。

绘制该酒店订房系统的用例图。

2.根据以下场景绘制用例图:

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

CafeteriaOrdering

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

该系统功能描述如下:

(1)企业的任何员工都可以查看菜单和今日特价;

(2)系统的顾客是注册到系统的员工,可以在线订餐(以下操作均需先登录)、注册工

资支付、修改订餐信息和删除订餐信息,在注册工资支付时需要通过工资系统进行身份验证;

(3)餐厅员工是特殊的顾客,可以进行备餐(系统记录备餐信息)、生成付费请求和请

求送餐,其中对于注册使用工资支付的顾客生成付费请求并发送给工资系统;

(4)菜单管理员是餐厅员工的一种,可以管理菜单;

(5)送餐员也是餐厅员工的一种,可以打印送餐说明、记录送餐信息(如送餐时间)以

及记录收费(对于没有注册工资支付的顾客,由送餐员收取现金后记录)。

参考答案:

3.根据以下场景绘制用例图:

某公司需开发一个反馈处理系统作为其CRM的一部分。

系统基本功能描述如下:

(1)客户可通过系统发布反馈信息;

(2)公司客户关系(CR)部门员工也可以在系统中记录反馈信息;

(3)

CR部门员工拥有修改

业务部门的主管和员工均能看到本部门的反馈信息,但只有与删除反馈的权限;

(4)对于部分需要调查以便验证其真实性并需要做相关处理的反馈信息,业务部门主管有权通过系统安排本部门员工调查及处理该反馈;

(5)反馈调查与处理完毕后,负责调查的员工可通过系统输入反馈的详细情况;

(6)公司高层可查看未决反馈统计报表和各业务部门的反馈统计报表;

(7)所有人员进入本系统需先登录。

参考答案:

4.Drawausecasediagramforthefollowinglibrarysystem:

Thelibrarystoresvariousitemsthatcanbeborrowed,includingbooksandjournals.Bookscanbeborrowedbybothstaffandstudents,butonlystaffmemberscanborrowjournals.Whenauserborrowsabook,theirloandetailsarecheckedtoensurethattheyhavenooverduebooksonloan,andhavenotalreadyborrowedthemaximumpermittednumberofbooks.

Userscanchecktheirownloandetailsatanytime.Librariansarepermittedtochecktheloandetailsofanyuser.

Libraryuserscanreservebooksthatarecurrentlyoutonloan.Ifthreereservationshavealreadybeenmadeforagivenbook,andafurtherreservationismade,anewcopywillbeordered

bythelibrarian.

5.某银行准备开发一个网上信用卡管理系统CCMS,该系统的基本功能为:

(1)信用卡申请。

非信用卡客户填写信用卡申请表,说明所要申请的信用卡类型及申请者的基本信息,提交CCMS登录。

如果信用卡申请被银行接受,客户会收到银行的确认函,并告知用户信用卡的有效期及信贷限额;否则银行会发送一封拒绝函给该客户。

客户收到确

认函后,需再次登录CCMS,用信用卡号和密码激活该信用卡。

激活操作结束后,CCMS

将激活通知发送给客户,告知客户其信用卡是否被成功地激活。

(2)月报表生成。

在每个月第一天的零点,CCMS为每个信用卡客户创建一份月报表,

对该客户上月的信用卡交易情况及交易额进行统计。

信用卡客户可以登录CCMS查看月报

表,也可以要求CCMS提供打印出的月报表。

(3)信用卡客户信息管理。

信用卡客户的个人信息可以在CCMS中进行在线的管理。

每个信用卡客户可以在线查询其个人信息。

(4)信用卡交易记录。

信用卡客户使用信息卡进行的每一笔交易都会记录在CCMS中。

(5)交易信息查询。

信用卡客户可以登录CCMS查询并核实其信用卡交易记录及交易

额。

构造该系统的用例模型,要求绘制用例图,编写相应的用例文档,还需提供用例追踪矩阵。

6.根据以下描述绘制状态图:

某销售信息管理系统中销售部员工可以提交订单,刚提交的订单为“初始”状态;系统

管理员可以处理订单,如果订单无误,则修改订单为“备货”状态,否则将订单退还给提交

订单的销售部员工修改,员工此时可以取消订单;仓库管理员备货完毕后可将订单状态改为

“发货”状态;销售部员工在确认客户已经收到货物后,可将订单改为“关闭”状态。

参考答案:

处理订单[订单无误]/Handie&ModifyStatus

备货状态

、do/ModifyStatus丿

发货[已发货]/ModifyStatus

 

7•根据以下描述绘制某订餐系统中顾客订餐过程的活动图(要求绘制泳道):

(1)顾客请求查看菜单;

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

(3)顾客选菜;

(4)系统显示订单和价格;

(5)顾客确认订单;

(6)系统显示可送餐时间;

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

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

知给餐厅员工。

参考答案:

发送Email

发送订餐信息

显示菜单

请求查看菜单■

A显示今日特价

8.根据如下描述绘制顺序图:

在某在线订房系统中,顾客输入房间套数、房间类型、入住时间、入住天数等信息,系

统显示符合要求的房间号;顾客确定预订的房间,系统显示预付订金信息;顾客输入信用卡账号和密码,系统请求银行信用卡系统提供支付服务;银行信用卡系统验证用户信息并返回

验证通过和支付成功消息;顾客请求系统打印预订单和收据,系统打印相关资料;预订结束。

参考答案:

顺序图实例

9•根据以下Java源代码绘制相应的顺序图:

publicclassSale{

privateListproductitems=newArrayList;

publicMoneygetTotal(){

Moneytotal=newMoney();

MoneysubTotal=nuII;

for(SalesProductItemitem:

productItems){subTotal=item.getSubTotal();

total.add(subTotal);

}

returntotal;

}

}

参考答案:

10.根据以下描述绘制类图,再正向工程生成Java源代码(也可生成其他面向对象语言

的源代码,如C++或C#等):

图形(Shape)可分为圆形(Circle)、矩形(Rectangle)、椭圆形(Ellipse)等具体图形,在Shape类中提供了一个抽象的draw()方法用于绘制图形,而在具体的图形类中实现该抽象draw()

方法。

提供一个图形工厂类(ShapeFactory),该类提供一个静态方法createShape(chartype),其

返回类型为Shape,参数type为所需绘制图形对应的代码,例如“c”表示圆形,“r”表示

矩形,“e”表示椭圆形等,在createShape()方法中,可以使用条件语句来判断所需绘制图形的类型,并根据参数的不同返回不同的具体形状对象。

【注:

“创建关系”是一种特殊的“依

赖关系”】

参考答案:

11.根据以下描述绘制类图:

某商场会员管理系统包含一个会员类(Member),会员的基本信息包括会员编号、会员

姓名、联系电话、电子邮箱、地址等,会员可分为金卡会员(GoldMember)和银卡会员

(SilverMember)两种,不同类型的会员在购物时可以享受不同的折扣;每个会员可以拥有

个或多个订单(Order),每一个订单又可以包含至少一条商品销售信息(Productitem),商品销

售信息包括订单编号、商品编号、商品数量、商品单价和折扣等;每一条商品销售信息对应

一类商品(Product),商品信息包括商品编号、商品名称、商品单价、商品库存量、商品产地等。

Member

-memberNo

-memberName

-memberTel

-memberEmail

-memberAddress

StringStringStringString

String

Order

1..*

-orderNo:

String

cz

GoldMember

SilverMember

-discount:

double

-discount:

double

Productitem

-orderNo

-productNo

-productNum

-productPrice

-productDiscount

StringStringintdoubledouble

1..1

0..*

Product

-productNo

:

String

-productName

:

String

-productPrice

:

double

-productStock

:

int

-productPlace

:

String

1..1

1..1

1..*

参考答案:

12.某基于C/S的即时聊天系统的注册和登录模块功能描述如下:

(1)注册功能:

用户通过注册界面(RegisterForm)输入新帐号,系统检测该帐号是否已存

在,如果不存在则可注册成功,否则提示“帐号已存在”,用户再次输入帐号;用户输入其

他个人信息;系统保存用户个人信息;用户个人信息包括帐号、密码、姓名、性别、年龄、

电话、电子邮箱等。

(2)登录功能:

用户通过登录界面(LoginForm)输入账号和密码,系统将输入的账号和密码与存储在数据库(User)表中的用户信息进行比较,验证用户输入是否正确,如果输入正确

则进入主界面(MainForm),否则提示“输入错误”。

现对这两个模块进行设计,要求如下:

(1)根据以上描述绘制类图,要求分析出每个类中的主要方法;

(2)需要提供独立的业务逻辑类和数据访问类,考虑到数据库的移植性,需提供抽象的

数据访问接口;

(3)尽量使用数据传输对象(DTO)来传递参数,减少方法中参数的个数。

可参考如下类图绘制:

 

login二newLoginBO();

LoginForm

-login:

LoginBO

MainForm

+LoginForm()

+validate(Stringaccount,:

void

Stringpassword)

login.validate(account,password);

LoginBO

-userDAO:

lUserDAO

+setIUserDAO(IUserDAOuserDAO)+validate(Stringaccount,

Stringpassword)

:

void

:

boolean

■:

return

userDAO.findUserByAccAndPwd(account,password);

A

IUserDAO

+findUserByAccAndPwd(Stringaccount,Stringpassword)

:

boolean

UserDAO

+findUserByAccAndPwd(Stringaccount,Stringpassword)

:

boolean

//执行SELECT语句,首先使用账号account

〃作为查询条件,

〃中的password

//值等于传入的

//则返回false

返回存储在数据库User表值,如果返回的password的password值,则返回true,否

RegisterForm

-user:

UserDTO

-userDao:

IUserDAO

UserDTO

-userAccount:

String-userPassword:

String

getUserAccount()setUserAccount(StringuserAccount)getUserPassword()setUserPassword(StringuserPassword)

Stringvoid

Stringvoid

IUserDAO

"■

+addUser(UserDTOuser)

:

boolean

OracleUserDAO

+addUser(UserDTOuser):

boolean

 

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2