UML系统分析实验报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

本科实验报告
课程名称:系统分析与设计
实验项目:《网上书店系统》实验实验地点:逸夫楼
专业班级:学号:
学生姓名:
指导教师:
2012年11月22日
实验一用例图
一、实验目的
初步掌握UML用例图的创建方法及其用例的描述。

二、实验要求
1.结合工具StartUML,熟悉UML用例图的模型元素。

2.使用StartUML工具建模网上书店系统的用例图。

三、实验主要设备:台式或笔记本计算机
四、实验内容:
根据下面给出的网上书店问题陈述,分析该系统总体需求,建模网上书店系统的用例图并提供一个主要用例的事件流文档。

网上书店陈述:
书店经理:我们原本是一个传统的实体书店,顾客要买书都是亲自到书店里来的,这样挺不方便。

面且随着书店销售图书种类和数量的增加以及顾客的增长,尤其是大量顾客到书店选购图书,使得书店场地不足,工作人员也很忙碌。

其实,还有一点就是,有不少人进入书店后并不买书,只是查找一些资料。

有的甚至会在这呆上很长的时间直到把书免费看完。

这种行为,工作人员一般是不阻止的,结果最后这些被看过的书会因为有阅读过的痕迹而影响销售。

而且现在电子商务已经发展起来了,所以我们想到借助网络,让顾客通过网上书店购买图书。

这样我们书店可以省掉大量的场地维护和工作人员成本支出,同时计算机可以方便的检索图书信息,让顾客可以足不出户以更优惠的价格买到需要的书。

系统分析员:能谈谈您对网上书店的要求吗?
书店经理:网上书店要能实现对外和对内的功能,对外是顾客能在网上书店订购图书,提交订单。

对内,书店工作人员能够通过网上书店及时的看到这些订单,并进行处理。

为了把书送到顾客手里,我们已经联系了快递公司,初步达成协议,由他们往返场客和书店之间把图书送到顾客手里。

书店管理员受理订单后,就会通知快递公司送货。

当然,书店的图书上架和下架也应该由网上书店完成了。

工作人员甲:实体店中,图书是按照不同种类放置的,方便顾客挑选。

网上书店的图书也应该能够按照这种模式分类显示。

这样,图书的信息和种类要由网上书店设置和管理。

已有种类的新书或新种类的图书上架,网上书店能够保存这些信息。

如果信息输入错误,能够进行修改。

工作人员乙:另外书店会搞一些促销,推出一些特价图书。

以前这些特价书的信息,都是我们根据促销活动整理出来,贴在书店的醒目位置。

促销活动过后,特价图书会恢复原来的价格。

希望网上书店也能够管理这些特价图书。

系统分析员:能谈谈平时买书的经过吗?
顾客甲:一般都是先在书店里看看图书的简要介绍,或者先找找看有没有自己需要的书,有时是没有目标的寻找,有时直奔一类图书而去。

找到我想买的书或者觉得看的书不错,就会去柜台结帐。

工作人员丙:不过有时在结帐的时候,顾客会突然改变主意,不买一些书或者又回去挑选图书了。

顾客甲:有时好像是这样的。

要是网上书店在结帐前能方便管理我所选购的图书就好了,这样通过计算机直接操作,就不用跑来跑去了。

系统分析员:可以使用虚拟的购物车。

工作人员丙:对,这样在用户确认购买前可自行管理选购的图书,决定要不要购买还有的购买的数量。

系统分析员:顾客先使用虚拟的购物车选购管理图书,然后提交订单给书店处理,是这样吧。

书店经理:没错,就这样办。

另外最好顾客能够留下自己的信息,方便以后的购买。

顾客:你们可以实行会员制啊。

就像我们在网上逛论坛一样,会员才能发言,普通游客只能看。

这样我们平时就在网上书店查查资料什么的,只在购买图书的时候才使用会员身份。

书店经理:嗯,这样不仅可以保留你们的信息,也可以保留购买记录。

系统分析员:会员提交购买订单后,书店打算如何收取或者说用户怎么付款?
书店经理:我们可以接受货到付款,顾客也可以使用网上银行、汇款等方式付款。

顾客:这样我们就方便多了。

对了那是不是付款前,我还多了一次“反悔”的机会啊。

书店经理:在我们书店没有受理订单之前,你们可以取消交易。

不过受理后就不行了。

……
通过几次这样的访谈(限于篇幅,在此并未列出所有访谈内容),可以获得网上书店的需求信息,确定系统范围。

网上书店是实现对实体书店内部图书商品和顾客购买图书的综合管理系统。

1. 用例图:
游客会员用例图:
员工用例图:
管理员用例图:
2.用例事件流
登录用例事件流:
用例名:登录(权限管理——管理员、工作人员、会员、游客) 目标:实现管理权限
前置条件:对具有不同权限的用户分配一定的权限管理
后置条件:用户登陆并进行相应的权限操作
信息管理用例事件流:
用例名:信息管理(录入、删除、浏览、查询、修改)——管理员
(个人信息维护)——工作人员、管理员
目标:对员工信息进行录入、删除、浏览、查询、修改等基本操作前置条件:对具有不同权限的用户分配一定的权限管理
后置条件:管理员和工作人员进行相应的权限操作
书籍信息管理用例事件流:
用例名:书籍信息管理(销售及商品信息维护)——管理员
(订单)——工作人员
(浏览、查询)——会员、游客
目标:对书籍销售、下订单及商品信息和库存进行录入、删除、浏览、查询、修改等基本操作
前置条件:对具有不同权限的用户分配一定的权限管理
后置条件:用户对图书信息进行和相应的权限操作
查询用例事件流:
用例名:查询(管理员对商品销售及相关信息的情况查询、员工对订单的库存信息的查询、会员和游客对图书的相关信息的查询)
目标:管理员对商品销售及相关信息的情况查询、员工对订单的库存信息的查询、
会员和游客
对图书的相关信息的查询
前置条件:1.对具有不同权限的用户分配一定的权限管理
2.查询信息必须是确实存在的
后置条件:用户在相应的权限操作下对信息进行查询
订单信息管理用例事件流:
用例名:订单信息管理(订单信息管理)——管理员
(订单处理—接收订单并发货、拒绝订单、查询库存)—工作人员
(订单处理—订购货品、订单增加、订单删除、订单查询)—会员目标:对订单信息进行维护和处理(包括:接收订单并发货、拒绝订单、查询库存、订购货品、订单增加、订单删除、订单信息查询)前置条件:1.对具有不同权限的用户分配一定的权限管理
2.游客是不能下订单的
后置条件:用户在相应的权限操作下对订单信息进行管理或处理
五、分析与讨论
1.建模用例图的步骤、方法?
分析系统,找到系统中的用例、参与者以及它们之间的关系。

(1)确定参与者;(2)确定系统的边界和范围;(3)确定用例;(4)将用例归档
(5)将用例细化
2.如何识别系统的参与者?
在书店管理系统中,工作人员和用户的的参与。

工作人员可以有自己的用户名
和密码对网站的后台进行维护和更新。

用户可以注册也可以登录来对图书进行浏览和购买,确认购买后通过转账汇款。

网站需要一个专门的管理者进行日常维护与管理,所以需要有系统管理员的参与。

参与者有主管人员和用户以及系统管理员,工作人员也可以替代系统管理员的功能。

3.应该如何划分用例,应注意哪些问题?
可通过回答下面问题来识别用例:
(1)每个参与者的任务是什么?
(2)有参与者要创建、存储、改变、删除或读取系统中的信息吗?
(3)什么用例会创建、存储、改变、删除或读取这个信息?
(4)参与者需要通知系统外部的突发变化吗?
(5)需要通知参与者系统中正在发生的事情吗?
(6)什么用例将支持和维护系统?
(7)所有的功能需求都能被用例实现吗?
4..心得
通过该实验,了解了UML的简单使用,用例图是对行为的动态描述,它可增进系统设计人员、开发人员与用户的沟通,正确的理解用户需求,还可以划分系统与外部实体的界限。

用例图是系统的一个基本构架,粒度比较大,只有参与者和用例及之间的关系,没有具体的实现,用例图是最基本也是很重要的图,用例图出错后面的类图、活动图、组件图都受到影响。

实验二类图
一、实验目的
了解类图的基本用法;初步掌握UML类图的创建及其方法。

二、实验要求
1、结合工具StartUML,熟悉UML类图的模型元素。

2、建模网上书店类图。

三、实验主要设备:台式或笔记本计算机
四、实验内容:
创建类图的步骤如下:
(1)使用名词识别法识别类。

(2)建模类与类之间的关系。

(3)为类图中的关联关系添加合适的角色名。

(4)为已被封装到类中的独立功能建模类。

(5)为类图中的类添加必要的特性和操作。

(6)迭代并细化该模型
1.识别类:
有游客类、会员类、工作人员类、书籍类、订单类、管理员类
2. 定义类:
图 2.1 定义类
图2.2完善后的类图
五、分析与讨论
1. 如何使用文本分析技术从问题陈述中识别对象和类?
类和对象具有本质的区别:
类是同一种对象的集合号抽象,是一种抽象的数据类型。

对象是客观世界中具体的,由一组属性和行为构成的物理实体在计算机逻辑结构中的映射和体现。

类是对象的抽象,而对象是类的实例。

按照这个方法找就能分出对象和类。

2. 心得
类不是单独一个模块,各个类之间是存在联系,我们在画类图的时候不是把所有的对象都抽象成类,而是把具有相同属性和行为的对象抽象出来形成一个类,类图描述了类、借口、协作以及它们之间的关系。

类图是定义其他图的基础,,在类图的基础上,状态图、通信图等进一步描述了系统其它方面的特性。

所以我们在画类图的时候要斟酌考虑,尽量让类功能之间相对独立。

实验三顺序图及通信图
一、实验目的
初步掌握UML顺序图的建模及其思想。

二、实验要求
1、结合工具StartUML和Rose,熟悉UML顺序图的模型元素。

2、建模网上书店交互图。

三、实验主要设备:台式或笔记本计算机
四、实验内容:
1. 给出网上书店的一个用例的顺序图,例如,书店管理员登录顺序图、会员添加图
书到购物车顺序图或其他用例的顺序图。

会员订书顺序图:
工作人员工作顺序图:
游客浏览顺序图:
2. 把以上顺序图转换为通信图。

会员订书通信图:
工作人员工作通信图:
游客浏览通信图:
五、分析与讨论
1. 如何从用例图建模顺序图?
(1)只关注核心对象
(2)只描述某个用例的部分交互
(3)针对每个用例可生成一个控制类
(4)在图中有实体对象,边界对象,控制对象
2. 顺序图和通信图的比较?
两种图在语义上是等价的,但侧重点不同
顺序图强调的是信息的时间顺序的交互作用图
通信图强调的是发送和接受信息的对象的组织结构的交互作用图
3. 心得
通过对顺序图和通信图的绘制,我们了解了两种图的区别和共性,通信图描述了对象怎样相互连接,但相应的顺序图则没有显式的可视化了同样的信息;而顺序图可以显式的描述对象生命周期的结束,但相应的通信图则没有描述这个信息。

这两个图绘制完后,每个模块的功能显而易见,发生顺序也显而易见。

实验四活动图、状态图、组件及部署图
一、实验目的
1. 了解活动图、状态图、组件及部署图的基本用法;
2. 初步掌握活动图、状态图、组件及部署图建模方法。

二、实验要求
1、结合工具StartUML,熟悉UML活动图、状态图、组件及部署图的基本模型元素。

2、建模网上书店的活动图、状态图、组件及部署图。

三、实验主要设备:台式或笔记本计算机
四、实验内容:
活动图:
游客注册活动图:
会员登录活动图:
会员购物车删除书籍活动图:
会员购物车添加书籍活动图:
工作人员登录活动图:
管理员登录活动图:
管理员相关权限活动图:
状态图:
游客注册的状态图
会员登录的状态图:
确认订单的状态图:
组件图:
部署图:
五、分析与讨论
1. 什么情况下适合引入状态图进行建模?
状态图描绘了单个对象在它的整个生命周期的行为,描述了从事件到事件的控制流。

当对象的状态变化明显,复杂时,适合为事件驱动对象建模。

2. 心得
通过本次课程设计的编写,对本期的课程进行了系统的复习和应用,加深了对书上知识的了解。

在设计和制作网上书店的过程中,培养了自己的综合能力和从全局考虑的思想。

这个网上书店系统功能是很强大的,但出于自己水平有限,作为一个网上书店系统,该项目上有一些不完善和函待改进之处,有好多东西考虑不周,功能模块不是特别的完善。

通过这次实践,我学到了很多东西,用例图描述了希望用户如何使用一个系统。

用例图显示了谁将是相关用户、用户希望系统提供什么服务,以及用户需要为系统提供的服务,使系统的用户更容易的理解这些元素的用途。

在创建之前确定参与者是有:管理员、工作人员、会员、游客。

通过分析用例和问题域,得到相关的类。

类图描述了类、接口、协作以及它们之间关系的图。

用来显示系统中各个类的静态结构,描述了类之间的联系,还包过了类的属性和操作。

在描述对象之间的交互时,用到了时序图,以时间为序,来描述对象及对象之间传递消息的时间顺序,表示用例之间行为顺序,当执行一个用例行为时,时序图中每条消息对应了一个类操作中引起转换的触发事件。

相关文档
最新文档