实验1 UML实验
UML实验报告1-8次

实验一熟悉UML开发工具Microsoft Visio 2003 日期: 9月16日1.实验目的与要求:2.熟悉UML开发工具Microsoft Visio 2003。
3.实验内容:4.熟悉Visio的UML建模绘图界面。
二、2..通过绘制对象图学习Visio的使用方法。
实验器材:微机+windows操作系统+ Microsoft Visio 2003实验步骤:1. 熟悉Visio的UML建模绘图界面(1)进入Visio的UML建模绘图界面通过“开始”|“程序”, 运行Microsoft Office Visio 2003, 出现Microsoft Visio界面。
在左侧的“类别”区域中单击“软件”, 然后在右侧的“模板”中单击“UML模型图”, 则进入Visio的UML建模绘图界面。
(2)熟悉UML建模绘图界面在Visio的UML建模绘图界面中, 最大的白色区域就是绘图区。
左上方的“形状”窗口就是Visio的UML元素调板, 它由很多的标签页组成。
每个标签页提供了一个特定的UML 图标。
左下方的“模型资源管理器”就是Visio的字典, 字典就是所创建的所有元素及其属性的记录的集合。
当Visio打开并准备开始UML绘图的时候, “UML静态结构”标签页就会激活, 我们就可以创建类图和对象图了。
2. 通过绘制对象图学习Visio的使用方法。
(1)在“模型资源管理器”中“顶层包”的文件夹上右击, 从弹出菜单中选择“新建”|“静态结构图”, 则创建并打开了一个新的静态结构图。
从“形状”的“UML 静态结构”标签页中选择“对象”图标, 拖拽到绘图区。
(2)在对象图标上双击打开“UML对象属性”对话框。
在“名称”字段中输入“theSun”替代缺省名字。
我们还需要表明theSum是Star类的一个实例, 为此, 选择“类”字段并单击下拉列表。
从类列表中选择“顶层包::Star”, 然后单击“确定”按钮。
(3)用相同的一系列步骤创建HabitablePlanet类的一个earth对象。
UML软件建模实验指导书

UML软件建模实验指导书计算机工程学院目录实验一UML用例图和类图 (3)实验二UML序列图和协作图 (29)实验三UML活动图的设计和实现 (42)实验四UML构件图和部署图 (53)实验一UML用例图和类图一、实验题目学校的网上选课系统的用例图和类图二、实验目的1、能够根据系统的功能分析系统的用例组成,正确确定用例图中的角色。
2、能够分析系统的用例、活动者以及它们之间的关系。
3、根据对系统的分析,准确确定相应的类,确定类的属性和操作,正确分析属性和操作的可继承性4、使用Rose软件能正确画出用例图,并说明每一个用例的事件流。
正确使用Rose软件定义类和类的关系和画出完整的类图。
三、实验要求1、根据需求文档确定每一个用例的名称、参与执行者(活动者)、前置条件、主事件流、辅事件流和后置事件流。
2、能从一类单一的对象中抽象出类的定义,并依据实际要求,设计类的属性和操作。
3、能对现实世界中的对象存在各种各样的关系,分析出这些关系,主要有:继承关系;类之间的关联。
并能在类图中反映这些关系。
四、实验内容学校的网上选课系统的用例图和类图的设计和实现五、用例图1、用例图设计实例介绍学校的网上选课系统的用例图的设计和实现2、需求学校的网上选课系统主要包括如下功能:管理员通过系统管理界面进入,建立本学期要开的各种课程、将课程信息保存在数据库中并可以对课程进行改动和删除。
学生通过客户机浏览器,根据学号和密码进入选课界面,在这里学生可以进行三种操作:查询已选课程、选课以及付费。
同样,通过业务层,这些操作结果存入数据库中。
3、分析本系统涉及的用户包括管理员(Registrar)和学生(student),他们是用例图中的活动者,他们的主要特征相似,都具有姓名和学号等信息,所以可以抽象出“基”活动者People,而Registrar和 Student则从People统一派生。
数据库管理系统是另外一个活动者。
4、事件流下面是系统中出现的一些事件流。
UML实验一

实验1 StarUML的使用实验报告实验目的熟悉StarUML工具软件的功能特色、安装、工作环境和基本操作等各方面的基本知识掌握StarUML的基本菜单选项和用例图绘制功能掌握StarUML的正向工程和逆向工程了解Microsoft Visio的应用状况了解Rational Rose的应用状况实验内容一、starUML工作环境熟悉1.熟悉starUML的各菜单✧模型视图区域:用于在模型中迅速漫游。
包含四个视图:Use Case视图、Logical视图、Component视图和Deployment视图。
✧UML用例区域:显示每个视图下面的不同图例,选中某个图例后,在工作区域点击,就可以出现相应的图例。
✧工具栏:用于迅速访问常用命令。
✧属性编辑区域:访问每个图例的属性✧工作区域:用于显示和编辑一个或几个UML框图。
✧日志:用于查看错误信息和报告各个命令的结果。
2.基本操作(1)新建项目选择[文件File] ->[选择新项目New Project By Approach]菜单一系列可用方法列表出现在选择新项目对话框中从列表中选择Rational Approach后,单击[OK]按钮。
新项目就创建了,而且按所选择的方法进行了初始化。
根据选择方法的不同,不同的轮廓或框架被包含或加载进来。
(2)保存模型选择[File(文件)] ->[Save(保存)]菜单。
如果没指定项目文件名,保存项目文件对话框出现,输入文件名,单击[save](保存)]按钮。
默认保存为.uml格式3.在use case视图中绘制书籍P130页的图3.17在建模图中,包括个人姓名和学号的注释标签。
例如:并将文件保存为“学号.uml”的格式。
采购员(将绘制好的图片拷贝在此处)二、正向工程1.源代码生成,在逻辑视图中绘制下图,生成JA V A源文件生成代码步骤:“Tools”-〉“Java”-〉“Genenate Code”。
可能出现以下错误:解决办法是Model->Profiles通过Profile Manager添加“Java Profile”(将生成的源代码拷贝在此处)////// Generated by StarUML(tm) Java Add-In//// @ Project : Untitled// @ File Name : Meeting.java// @ Date : 2018/3/16// @ Author :////public class Meeting {public String UserName;public String Scheduled_User;public Date Start_Time;public Data Ende_Time;public String Label;public String getUser() {}public String getOther() {}public Date getStart() {}public Date getEnd() {}public String getLabel() {}public String toString() {}public void main(String args) {}public void Meeting() {}}三、逆向工程1.进行逆向工程,将源代码Student.java进行逆向工程。
中南大学软件学院软件体系结构实验1UML实验-参考答案

《UML实验》参考答案1. 某酒店订房系统描述如下:(1) 顾客可以选择在线预订,也可以直接去酒店通过前台服务员预订;(2) 前台服务员可以利用系统直接在前台预订房间;(3) 不管采用哪种预订方式,都需要在预订时支付相应订金;(4) 前台预订可以通过现金或信用卡的形式进行订金支付,但是网上预订只能通过信用卡进行支付;(5) 利用信用卡进行支付时需要和信用卡系统进行通信;(6) 客房部经理可以随时查看客房预订情况和每日收款情况。
绘制该酒店订房系统的用例图。
参考答案:顾客在线预订房间前台预订房间通过现金支付订金通过信用卡支付订金查看客房预订情况查看每日收款情况2. 根据以下场景绘制用例图:某企业为了方便员工用餐,为企业餐厅开发了一个订餐系统(COS:Cafeteria Ordering System),企业员工可通过企业联网使用该系统。
该系统功能描述如下:(1) 企业的任何员工都可以查看菜单和今日特价;(2) 系统的顾客是注册到系统的员工,可以在线订餐(以下操作均需先登录)、注册工资支付、修改订餐信息和删除订餐信息,在注册工资支付时需要通过工资系统进行身份验证;(3) 餐厅员工是特殊的顾客,可以进行备餐(系统记录备餐信息)、生成付费请求和请求送餐,其中对于注册使用工资支付的顾客生成付费请求并发送给工资系统;(4) 菜单管理员是餐厅员工的一种,可以管理菜单;(5) 送餐员也是餐厅员工的一种,可以打印送餐说明、记录送餐信息(如送餐时间)以及记录收费(对于没有注册工资支付的顾客,由送餐员收取现金后记录)。
参考答案:<<include>>查看菜单查看今日特价在线订餐注册工资支付修改订餐信息删除订餐信息工资系统备餐生成付费请求请求送餐管理菜单打印送餐说明记录送餐信息记录收费注册登录3. 根据以下场景绘制用例图:某公司需开发一个反馈处理系统作为其CRM的一部分。
系统基本功能描述如下:(1) 客户可通过系统发布反馈信息;(2) 公司客户关系(CR)部门员工也可以在系统中记录反馈信息;(3) 业务部门的主管和员工均能看到本部门的反馈信息,但只有CR部门员工拥有修改与删除反馈的权限;(4) 对于部分需要调查以便验证其真实性并需要做相关处理的反馈信息,业务部门主管有权通过系统安排本部门员工调查及处理该反馈;(5) 反馈调查与处理完毕后,负责调查的员工可通过系统输入反馈的详细情况;(6) 公司高层可查看未决反馈统计报表和各业务部门的反馈统计报表;(7) 所有人员进入本系统需先登录。
UML实验报告

UML系统分析与设计实验报告实验一图书馆系统——借书一.实验目的:学会使用UML来构建软件的面向对象的软件工程,对系统进行不断精化的建模。
这些模型包括用例模型、分析模型、设计模型,然后,我们需要使用具体的计算机语言来建立系统的实现模型。
当然,在整个软件工程中,我们还需要建立系统的测试模型,以保证软件产品的质量。
在具体的实验中更加准确的了解UML的操作平台。
二.实验内容:利用UML做一个图书馆借书系统的建模。
三.实验步骤:名称:借书”。
说明:学生在图书馆挑选好需要的图书后,通过图书管理员把书借回去。
参与者:学生,图书管理员频率:每天可能会有很多次。
最繁忙的情况是,借书的人非常多,按照现在的速度,大约每分钟完成一个人的结束工作。
前置条件:无后置条件:修改所借出的图书的剩余数量。
假设:借书者总是从图书馆找到书,然后才能拿书办理借书手续,因此,总是有足够的书可以出借。
基本操作流程:借书成功。
1)学生将所借图书和借书证交给图书管理员2)图书管理员将学生借书证号码和所借图书输入系统3)系统校对借书信息,比对该学生以往借书情况和当前借书情况,如果不存在不允许借书的情况,则记录借书交易的信息,并且修改相应的馆藏图书的数量信息。
4)如果该学生已经预订了这本图书,则撤销该预定。
5)报告交易成功。
可选操作流程:所借图书超出最大借书数量。
1)学生将所借图书和借书证交给图书管理员2)图书管理员将学生借书证号码和所借图书输入系统3)系统校对借书信息,比对该学生以往借书情况和当前借书情况,发现已超出最大借书数量,则停止当前交易,并且提示用户错误原因。
4)图书管理员可以应学生的意见,减少借书数量,并重新提交系统。
流程活动图:见图一。
借书活动图分析模型分析模型是从开发者的角度来描述问题。
用例模型的主要工作是描述现实世界的业务流程,而很少会涉及系统的概念。
分析,则是从系统的角度来来看待软件应该为用户提供的服务。
同样,同设计不同的是,分析仍然停留在“做什么”的层次,。
UML实验报告

UML实验报告《面向对象与UML》实验报告实验一UML建模基础一、实验目的1.熟悉UML建模工具Rational rose的可视化环境。
2.掌握利用Rational rose进行建模的步骤。
二、实验内容1.熟悉Rational rose建模环境2.建模基本步骤退出系统用例编号:UC01用例名称:登陆系统简要说明:成功打开服务器,并登陆系统主要参与者:学生前置条件:学生成功打开服务器后置条件:成功登陆系统基本事件流:1.输入帐号2.输入密码3.点击确认键系统校验4.系统确认,学生成功登陆系统扩展事件流:3a.系统校验失败,系统提示重新输入帐号密码或放弃登陆系统3a1)学生重新输入帐号密码转到第4步3a2)放弃登陆,终止操作用例编号:UC02用例名称:成绩查询简要说明:完成查询成绩信息参与者:学生前置条件:学生成功登陆系统后置条件:成功查询到成绩基本事件流:1.学生向系统发出查询成绩请求2.选择要查询的科目,系统校验3.成功查询到成绩信息扩展事件流:2a.系统校验失败,系统提示重新选择输入科目信息或放弃查询2a1)学生重新输入科目信息,转到第三步2a2)放弃查询,终止操作用例编号:UC03用例名称:退出系统简要说明:完成退出系统操作主要参与者:学生前置条件:学生已成功登陆系统后置条件:学生成功退出系统基本事件流:1.点击退出系统按钮2.成功退出系统用例编号:UC05用例名称:找回系统密码简要说明:完成找回密码功能参与者:学生前置条件:成功打开服务器,密码丢失后置条件:成功找回密码基本事件流:1.点击找回密码按钮2.输入新密码3.重新输入新密码,系统校验4.系统完成校验,密码成功找回扩展事件流:3a.系统校验失败,系统提示两次输入密码不符,请重新输入。
转到步骤4。
3.结合日常生活中实际使用的系统,模仿2中的用例模型绘制用例图,并保存模型,熟悉利用Rational rose的建模过程,要求绘制的用例图中用例与2中的用例图不相同。
UML实验报告01

实验一、实验二熟悉建模工具的使用和创建用例图1实验目的●掌握Rational Rose 2003 的安装●使用Rose设计UML。
2实验内容2.1Rational Rose 2003 的安装(参见教材P71-75)2.1.1 Rational Rose 2003 的安装环境2.1.2 Rational Rose 2003 的安装步骤2.2Rational Rose 2003 的使用2.2.1 Rational Rose的操作界面2.2.2 Rational Rose的基本操作①创建、保存模型②导入、导出模型③添加、删除注释④添加、删除图或模型元素2.2.3 Rational Rose的基本设置①字体设置②颜色设置2.3熟悉Rational Rose的四种视图模型2.3.1用例视图2.3.2逻辑视图2.3.3构建视图2.3.4部署视图2.4Rational Rose与生成代码2.4.1用Rational Rose生成代码的方法2.4.2逆向工程2.5综合实例:图书管理系统的分析与设计系统需求描述总体要求:图书管理系统的用户是借阅者和图书管理员。
借阅者使用系统借书、预定书刊及还书。
图书管理员使用系统进行图书馆业务的管理工作,包括借阅者、书刊和物理书看的信息维护。
其中,“书刊”代表书刊的种类,“物理书看”代表每种书刊的具体物理书籍,每种书刊可以有多个物理书刊。
因此,对于本图书管理系统,要求提供两个方面的服务:1.借书管理服务:负责为借阅者提供借书、预定书刊(包括取消预订)以及还书服务。
2.信息管理服务:负责提供借阅者、书刊和物理书刊的信息维护服务。
2.6独立完成系统的功能细化1. 借书管理服务的功能:2. 信息管理服务的功能:2.7为系统的用例建模1. 识别参与者:2. 识别用例:3. 画出系统用例图:4. 为“登录”、“借书”、“还书”三个用例编写用例叙述。
实验数据:1登录注册用户查询浏览预订图书普通读者取消预订管理读者管理图书资料登记借书图书管理员登记还书图书管理系统用例图实验心得:实验三、实验四创建类图、序列图和协作图1实验目的●学会构思类图、序列图和协作图●掌握在Rational Rose 2003中绘制类图、序列图和协作图2实验内容2.1针对综合实例:图书管理系统的分析与设计。
中南大学软件学院软件体系结构实验1-UML实验-参考答案

《UML实验》参考答案1. 某酒店订房系统描述如下:(1) 顾客可以选择在线预订,也可以直接去酒店通过前台服务员预订;(2) 前台服务员可以利用系统直接在前台预订房间;(3) 不管采用哪种预订方式,都需要在预订时支付相应订金;(4) 前台预订可以通过现金或信用卡的形式进行订金支付,但是网上预订只能通过信用卡进行支付;(5) 利用信用卡进行支付时需要和信用卡系统进行通信;(6) 客房部经理可以随时查看客房预订情况和每日收款情况。
绘制该酒店订房系统的用例图。
参考答案:顾客在线预订房间前台预订房间前台服务员客房部经理通过现金支付订金通过信用卡支付订金查看客房预订情况查看每日收款情况信用卡系统2. 根据以下场景绘制用例图:某企业为了方便员工用餐,为企业餐厅开发了一个订餐系统(COS:Cafeteria Ordering System),企业员工可通过企业内联网使用该系统。
该系统功能描述如下:(1) 企业的任何员工都可以查看菜单和今日特价;(2) 系统的顾客是注册到系统的员工,可以在线订餐(以下操作均需先登录)、注册工资支付、修改订餐信息和删除订餐信息,在注册工资支付时需要通过工资系统进行身份验证;(3) 餐厅员工是特殊的顾客,可以进行备餐(系统记录备餐信息)、生成付费请求和请求送餐,其中对于注册使用工资支付的顾客生成付费请求并发送给工资系统;(4) 菜单管理员是餐厅员工的一种,可以管理菜单;(5) 送餐员也是餐厅员工的一种,可以打印送餐说明、记录送餐信息(如送餐时间)以及记录收费(对于没有注册工资支付的顾客,由送餐员收取现金后记录)。
参考答案:<<include>>查看菜单查看今日特价在线订餐注册工资支付修改订餐信息删除订餐信息工资系统备餐生成付费请求请求送餐管理菜单打印送餐说明记录送餐信息记录收费注册登录3. 根据以下场景绘制用例图:某公司需开发一个反馈处理系统作为其CRM 的一部分。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验1 UML实验实验学时: 4每组人数: 1实验类型: 3 (1:基础性2:综合性3:设计性4:研究性)实验要求: 1 (1:必修2:选修3:其它)实验类别: 3 (1:基础2:专业基础3:专业4:其它)一、实验目的1. 学会安装和使用建模工具PowerDesigner,熟练使用PowerDesigner绘制常用的UML 图形,熟悉常用的UML建模符号;2. 构建用例模型来描述软件需求,包括绘制用例图,撰写用例文档并制作用例检查矩阵;3. 学习使用状态图描述对象的状态及转换;4. 学习使用活动图为业务流程建模;5. 学习使用顺序图描述对象之间的交互;6. 学习类图的绘制;7. 学习从系统需求中识别类,并构建相应的面向对象模型;8. 学习使用PowerDesigner实现正向工程和逆向工程;9. 学习使用组件图描述每个功能所在的组件位置以及它们之间的关系;10. 学习使用部署图描述软件中各个组件驻留的硬件位置以及这些硬件之间的交互关系。
二、实验内容1. 某酒店订房系统描述如下:(1) 顾客可以选择在线预订,也可以直接去酒店通过前台服务员预订;(2) 前台服务员可以利用系统直接在前台预订房间;(3) 不管采用哪种预订方式,都需要在预订时支付相应订金;(4) 前台预订可以通过现金或信用卡的形式进行订金支付,但是网上预订只能通过信用卡进行支付;(5) 利用信用卡进行支付时需要和信用卡系统进行通信;(6) 客房部经理可以随时查看客房预订情况和每日收款情况。
绘制该酒店订房系统的用例图。
2. 根据以下场景绘制用例图:某企业为了方便员工用餐,为企业餐厅开发了一个订餐系统(COS:Cafeteria Ordering System),企业员工可通过企业内联网使用该系统。
该系统功能描述如下:(1) 企业的任何员工都可以查看菜单和今日特价;(2) 系统的顾客是注册到系统的员工,可以在线订餐(以下操作均需先登录)、注册工资支付、修改订餐信息和删除订餐信息,在注册工资支付时需要通过工资系统进行身份验证;(3) 餐厅员工是特殊的顾客,可以进行备餐(系统记录备餐信息)、生成付费请求和请求送餐,其中对于注册使用工资支付的顾客生成付费请求并发送给工资系统;(4) 菜单管理员是餐厅员工的一种,可以管理菜单;(5) 送餐员也是餐厅员工的一种,可以打印送餐说明、记录送餐信息(如送餐时间)以及记录收费(对于没有注册工资支付的顾客,由送餐员收取现金后记录)。
3. Draw a use case diagram for the following library system:The library stores various items that can be borrowed, including books and journals. Books can be borrowed by both staff and students, but only staff members can borrow journals. When a user borrows a book, their loan details are checked to ensure that they have no overdue books on loan, and have not already borrowed the maximum permitted number of books.Users can check their own loan details at any time. Librarians are permitted to check the loan details of any user.Library users can reserve books that are currently out on loan. If three reservations have already been made for a given book, and a further reservation is made, a new copy will be ordered by the librarian.4. 某银行准备开发一个网上信用卡管理系统CCMS,该系统的基本功能为:(1) 信用卡申请。
非信用卡客户填写信用卡申请表,说明所要申请的信用卡类型及申请者的基本信息,提交CCMS登录。
如果信用卡申请被银行接受,客户会收到银行的确认函,并告知用户信用卡的有效期及信贷限额;否则银行会发送一封拒绝函给该客户。
客户收到确认函后,需再次登录CCMS,用信用卡号和密码激活该信用卡。
激活操作结束后,CCMS 将激活通知发送给客户,告知客户其信用卡是否被成功地激活。
(2) 月报表生成。
在每个月第一天的零点,CCMS为每个信用卡客户创建一份月报表,对该客户上月的信用卡交易情况及交易额进行统计。
信用卡客户可以登录CCMS查看月报表,也可以要求CCMS提供打印出的月报表。
(3) 信用卡客户信息管理。
信用卡客户的个人信息可以在CCMS 中进行在线的管理。
每个信用卡客户可以在线查询其个人信息。
(4) 信用卡交易记录。
信用卡客户使用信息卡进行的每一笔交易都会记录在CCMS中。
(5) 交易信息查询。
信用卡客户可以登录CCMS查询并核实其信用卡交易记录及交易额。
构造该系统的用例模型,要求绘制用例图,编写相应的用例文档,还需提供用例追踪矩阵。
5. 根据以下描述绘制状态图:某销售信息管理系统中销售部员工可以提交订单,刚提交的订单为“初始”状态;系统管理员可以处理订单,如果订单无误,则修改订单为“备货”状态,否则将订单退还给提交订单的销售部员工修改,员工此时可以取消订单;仓库管理员备货完毕后可将订单状态改为“发货”状态;销售部员工在确认客户已经收到货物后,可将订单改为“关闭”状态。
6. 某航空公司会员积分系统描述如下:乘客只要办理该航空公司的会员卡,即可成为普卡会员,普卡会员可以升级到银卡会员或金卡会员。
非会员不能积累里程数。
每年年末,系统根据会员在本年度累积的里程数对下一年会员等级进行调整。
普卡会员在一年内累积的里程数若满25000英里但不足50000英里,则自动升级为银卡会员;若累积的里程数在50000英里以上,则自动升级为金卡会员。
银卡会员在一年内累积的里程数若在50000英里以上,则自动升级为金卡会员。
若一年内没有达到对应级别要求的里程数,则自动降低会员等级。
金卡会员一年内累积的里程数若不足25000英里,则自动降级为普卡会员;若累积的里程数达到25000英里,但是不足50000英里,则自动降级为银卡会员。
银卡会员一年内累积的里程数若不足25000英里,则自动降级为普卡会员。
请根据以上描述绘制会员对象的状态图。
7. 根据以下描述绘制某订餐系统中顾客订餐过程的活动图(要求绘制泳道):(1) 顾客请求查看菜单;(2) 系统显示菜单和今日特价;(3) 顾客选菜;(4) 系统显示订单和价格;(5) 顾客确认订单;(6) 系统显示可送餐时间;(7) 顾客指定送餐时间、地点和支付方式;(8) 系统确认接受订单,然后发送Email给顾客以确认订餐,同时发送相关订餐信息通知给餐厅员工。
8. 某在线拍卖网站的拍卖流程描述如下:(1) 卖方在网站上发起一次拍卖,并设置本次拍卖的起拍价。
(2) 卖方确定拍卖标的以及拍卖标的保留价(若在拍卖时间结束时,所有出价均低于拍卖标的保留价,则本次拍卖失败)。
(3) 卖方在网站上发布本次拍卖品的介绍。
(4) 买方参与拍卖,给出竞拍价,多个买方可以出价。
(5) 卖方选择接受一个竞拍价作为成交价,买方在线支付,结束拍卖。
根据以上描述绘制活动图(要求绘制泳道)。
9. 根据如下描述绘制顺序图:在某在线订房系统中,顾客输入房间套数、房间类型、入住时间、入住天数等信息,系统显示符合要求的房间号;顾客确定预订的房间,系统显示预付订金信息;顾客输入信用卡账号和密码,系统请求银行信用卡系统提供支付服务;银行信用卡系统验证用户信息并返回验证通过和支付成功消息;顾客请求系统打印预订单和收据,系统打印相关资料;预订结束。
11. 根据以下描述绘制类图,再正向工程生成Java源代码(也可生成其他面向对象语言的源代码,如C++或C#等):图形(Shape)可分为圆形(Circle)、矩形(Rectangle)、椭圆形(Ellipse)等具体图形,在Shape 类中提供了一个抽象的draw()方法用于绘制图形,而在具体的图形类中实现该抽象draw()方法。
提供一个图形工厂类(ShapeFactory),该类提供一个静态方法createShape(char type),其返回类型为Shape,参数type为所需绘制图形对应的代码,例如“c”表示圆形,“r”表示矩形,“e”表示椭圆形等,在createShape()方法中,可以使用条件语句来判断所需绘制图形的类型,并根据参数的不同返回不同的具体形状对象。
【注:“创建关系”是一种特殊的“依赖关系”】12. 根据以下描述绘制类图:某商场会员管理系统包含一个会员类(Member),会员的基本信息包括会员编号、会员姓名、联系电话、电子邮箱、地址等,会员可分为金卡会员(GoldMember)和银卡会员(SilverMember)两种,不同类型的会员在购物时可以享受不同的折扣;每个会员可以拥有一个或多个订单(Order),每一个订单又可以包含至少一条商品销售信息(ProductItem),商品销售信息包括订单编号、商品编号、商品数量、商品单价和折扣等;每一条商品销售信息对应一类商品(Product),商品信息包括商品编号、商品名称、商品单价、商品库存量、商品产地等。
13. 某基于C/S的即时聊天系统的注册和登录模块功能描述如下:(1) 注册功能:用户通过注册界面(RegisterForm)输入新帐号,系统检测该帐号是否已存在,如果不存在则可注册成功,否则提示“帐号已存在”,用户再次输入帐号;用户输入其他个人信息;系统保存用户个人信息;用户个人信息包括帐号、密码、姓名、性别、年龄、电话、电子邮箱等。
(2) 登录功能:用户通过登录界面(LoginForm)输入账号和密码,系统将输入的账号和密码与存储在数据库(User)表中的用户信息进行比较,验证用户输入是否正确,如果输入正确则进入主界面(MainForm),否则提示“输入错误”。
现对这两个模块进行设计,要求如下:(1) 根据以上描述绘制类图,要求分析出每个类中的主要方法;(2) 需要提供独立的业务逻辑类和数据访问类,考虑到数据库的移植性,需提供抽象的数据访问接口;(3) 尽量使用数据传输对象(DTO)来传递参数,减少方法中参数的个数。