3901130721-谭淇蔚-实验一.doc
60页《软件体系构造》实验报告项目名称 UML实验 专业班级 软件工程1307班学 号 姓 名 谭淇蔚 实验成绩:批阅教师: 11 月 25 日实验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实现正向工程和逆向工程。
二、实验内容1. 某酒店订房系统描述如下:(1) 顾客可以选择预订,也可以直接去酒店通过前台服务员预订;(2) 前台服务员可以运用系统直接在前台预订房间;(3) 不管采用哪种预订方式,都需要在预订时支付相应订金;(4) 前台预订可以通过钞票或信用卡的形式进行订金支付,但是网上预订只能通过信用卡进行支付;(5) 运用信用卡进行支付时需要和信用卡系统进行通信;(6) 客房部经理可以随时查看客房预订状况和每日收款状况绘制该酒店订房系统的用例图2. 根据如下场景绘制用例图:某公司为了以便员工用餐,为公司餐厅开发了一种订餐系统(COS:Cafeteria Ordering System),公司员工可通过公司内联网使用该系统该系统功能描述如下:(1) 公司的任何员工都可以查看菜单和今日特价;(2) 系统的顾客是注册到系统的员工,可以订餐(如下操作均需先登录)、注册工资支付、修改订餐信息和删除订餐信息,在注册工资支付时需要通过工资系统进行身份验证;(3) 餐厅员工是特殊的顾客,可以进行备餐(系统记录备餐信息)、生成付费祈求和祈求送餐,其中对于注册使用工资支付的顾客生成付费祈求并发送给工资系统;(4) 菜单管理员是餐厅员工的一种,可以管理菜单;(5) 送餐员也是餐厅员工的一种,可以打印送餐阐明、记录送餐信息(如送餐时间)以及记录收费(对于没有注册工资支付的顾客,由送餐员收取钞票后记录)。
3. 根据如下场景绘制用例图:某公司需开发一种反馈解决系统作为其CRM的一部分系统基本功能描述如下:(1) 客户可通过系统发布反馈信息;(2) 公司客户关系(CR)部门员工也可以在系统中记录反馈信息;(3) 业务部门的主管和员工均能看到本部门的反馈信息,但只有CR部门员工拥有修改与删除反馈的权限;(4) 对于部分需要调查以便验证其真实性并需要做有关解决的反馈信息,业务部门主管有权通过系统安排本部门员工调查及解决该反馈;(5) 反馈调查与解决完毕后,负责调查的员工可通过系统输入反馈的具体状况;(6) 公司高层可查看未决反馈记录报表和各业务部门的反馈记录报表;(7) 所有人员进入本系统需先登录4. 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.5. 某银行准备开发一种网上信用卡管理系统 CCMS,该系统的基本功能为: (1) 信用卡申请。
非信用卡客户填写信用卡申请表,阐明所要申请的信用卡类型及申请者的基本信息,提交 CCMS登录如果信用卡申请被银行接受,客户会收到银行的确认函, 并告知顾客信用卡的有效期及信贷限额;否则银行会发送一封回绝函给该客户客户收到确认函后,需再次登录 CCMS,用信用卡号和密码激活该信用卡激活操作结束后,CCMS将激活告知发送给客户,告知客户其信用卡与否被成功地激活2) 月报表生成在每月第一天的零点,CCMS为每个信用卡客户创立一份月报表,对该客户上月的信用卡交易状况及交易额进行记录信用卡客户可以登录 CCMS查看月报表,也可以规定 CCMS提供打印出的月报表 (3) 信用卡客户信息管理信用卡客户的个人信息可以在 CCMS 中进行的管理每个信用卡客户可以查询其个人信息 (4) 信用卡交易记录信用卡客户使用信息卡进行的每一笔交易都会记录在 CCMS中 (5) 交易信息查询信用卡客户可以登录 CCMS查询并核算其信用卡交易记录及交易额 构造该系统的用例模型,规定绘制用例图,编写相应的用例文档,还需提供用例追踪矩阵6. 根据如下描述绘制状态图:某销售信息管理系统中销售部员工可以提交订单,刚提交的订单为“初始”状态;系统管理员可以解决订单,如果订单无误,则修改订单为“备货”状态,否则将订单退还给提交订单的销售部员工修改,员工此时可以取消订单;仓库管理员备货完毕后可将订单状态改为“发货”状态;销售部员工在确认客户已经收到货品后,可将订单改为“关闭”状态。
7. 根据如下描述绘制某订餐系统中顾客订餐过程的活动图(规定绘制泳道):(1) 顾客祈求查看菜单;(2) 系统显示菜单和今日特价;(3) 顾客选菜;(4) 系统显示订单和价格;(5) 顾客确认订单;(6) 系统显示可送餐时间;(7) 顾客指定送餐时间、地点和支付方式;(8) 系统确认接受订单,然后发送Email给顾客以确认订餐,同步发送有关订餐信息告知给餐厅员工8. 根据如下描述绘制顺序图:在某订房系统中,顾客输入房间套数、房间类型、入住时间、入住天数等信息,系统显示符合规定的房间号;顾客拟定预订的房间,系统显示预付订金信息;顾客输入信用卡账号和密码,系统祈求银行信用卡系统提供支付服务;银行信用卡系统验证顾客信息并返回验证通过和支付成功消息;顾客祈求系统打印预订单和收据,系统打印有关资料;预订结束9. 根据如下Java源代码绘制相应的顺序图:public class Sale {ﻩprivate List<SalesProductItem> productItems = new ArrayList<SalesProductItem>;ﻩﻩpublic Money getTotal() {ﻩﻩMoney total = new Money();ﻩﻩMoney subTotal = null; ﻩﻩ for (SalesProductItem item : productItems) {ﻩ ﻩsubTotal = item.getSubTotal();ﻩﻩﻩtotal.add(subTotal);ﻩﻩ}ﻩﻩﻩ return total;ﻩ}}10. 根据如下描述绘制类图,再正向工程生成Java源代码(也可生成其她面向对象语言的源代码,如C++或C#等):图形(Shape)可分为圆形(Circle)、矩形(Rectangle)、椭圆形(Ellipse)等具体图形,在Shape类中提供了一种抽象的draw()措施用于绘制图形,而在具体的图形类中实现该抽象draw()措施。
提供一种图形工厂类(ShapeFactory),该类提供一种静态措施createShape(char type),其返回类型为Shape,参数type为所需绘制图形相应的代码,例如“c”表达圆形,“r”表达矩形,“e”表达椭圆形等,在createShape()措施中,可以使用条件语句来判断所需绘制图形的类型,并根据参数的不同返回不同的具体形状对象注:“创立关系”是一种特殊的“依赖关系”】11. 根据如下描述绘制类图:某商场会员管理系统涉及一种会员类(Member),会员的基本信息涉及会员编号、会员姓名、联系、电子邮箱、地址等,会员可分为金卡会员(GoldMember)和银卡会员(SilverMember)两种,不同类型的会员在购物时可以享有不同的折扣;每个会员可以拥有一种或多种订单(Order),每一种订单又可以涉及至少一条商品销售信息(ProductItem),商品销售信息涉及订单编号、商品编号、商品数量、商品单价和折扣等;每一条商品销售信息相应一类商品(Product),商品信息涉及商品编号、商品名称、商品单价、商品库存量、商品产地等12. 某基于C/S的即时聊天系统的注册和登录模块功能描述如下:(1) 注册功能:顾客通过注册界面(RegisterForm)输入新帐号,系统检测该帐号与否已存在,如果不存在则可注册成功,否则提示“帐号已存在”,顾客再次输入帐号;顾客输入其她个人信息;系统保存顾客个人信息;顾客个人信息涉及帐号、密码、姓名、性别、年龄、、电子邮箱等。
2) 登录功能:顾客通过登录界面(LoginForm)输入账号和密码,系统将输入的账号和密码与存储在数据库(User)表中的顾客信息进行比较,验证顾客输入与否对的,如果输入对的则进入主界面(MainForm),否则提示“输入错误”现对这两个模块进行设计,规定如下:(1) 根据以上描述绘制类图,规定分析出每个类中的重要措施;(2) 需要提供独立的业务逻辑类和数据访问类,考虑到数据库的移植性,需提供抽象的数据访问接口;(3) 尽量使用数据传播对象(DTO)来传递参数,减少措施中参数的个数三、实验规定1. 对的安装PowerDesigner;2. 纯熟使用PowerDesigner绘制用例图、状态图、活动图、顺序图和类图;3. 需按照用例建模的流程,提供用例图、用例文档和用例追踪矩阵;4. 纯熟使用PowerDesigner实现正向工程和逆向工程;5.。





