图书管理系统时序图与协作图
时序图-协作图-详解
动态图概念:从静态图中抽取瞬间值的变化描述系统随时间变化的行为,动态图包括交互图活动图状态图,这篇博客研究交互图包括时序图和协作图;-- 时序图:显示对象之间的关系,强调对象之间消息的时间顺序,显示对象之间的交互;--协作图:描述对象之间的交互关系;~一.时序图(Sequenee Diagram)1. 时序图的概念时序图定义:描述了对象之间传递消息的时间顺序,用来表示用例中的行为顺序,是强调消息时间顺序的交互图;时序图描述的事物:时序图描述系统中类和类之间的交互,将这些交互建模成消息交换,时序图描述了类以及类之间的交换以完成的期望行为的消息,时序图中每条消息都代表了类的一个操作或者引起状态机改变的触发事件;时序图表示:参与交互的对象在时序图顶端水平排列,每个对象的底端绘制了一条垂直虚线,对象A像对象B发送消息,用一条带箭头的实线表示,该实线起始于对象A底部的虚线,终止于对象B底部的虚线;实线箭头水平放置,越靠近顶端越早被发送时序图轨迹:时序图提供了随时间推移的,清晰的可视化的轨迹;2. 时序图组成时序图组成:时序图包括四个元素对象(Object),生命线(Lifeline) ,激活(Activation) ,消息(Message)(1)对象(Object)对象:时序图中的对象在交互中扮演的角色就是对象;对象的符号:时序图中的对象与对象图中的表示方法一样,使用矩形将对象名称包含起来,并且对象名称下有下划线对象创建时机:对象可以在交互开始的时候创建,也可以在交互过程中进行创建;--处于顶部:如果对象的位置在时序图顶部,说明在交互开始的时候对象就已经存在了;--不在顶部:如果对象的位置不在顶部,那么对象在交互过程中创建的;(2)生命线(Lifeli ne)生命线:生命线是一条垂直的虚线,这条虚线表示对象的存在,在时序图中,每个对象的底部都有生命线生命线作用:生命线是一个时间线,从时序图顶部一直到底部都存在,其长度取决于交互的时间;对象的生命线:对象与生命线结合在一起就是对象的生命线,这个概念包含对象图标以及对象下面的生命线图标如上图;⑶激活(Activati on)LilIii激活(Activation) :代表时序图中对象执行一项操作的时期,激活期可以理解为语义中{}中的内容,表示该对象被占用以完成某个任务去激活(Deactivation) :指对象处于空闲状态,在等待消息激活这个对象;激活的表示:当对象处于激活时期,生命线可以拓宽为矩形,这个矩形条成为激活条;激活去激活的时机:--激活:对象激活是在激活条的顶部激活;--去激活:激活条的底部去激活,通常发生在一个消息离开对象生命线;⑷消息消息概念:定义交互和协作中交换信息的类,对对象之间的通信内容建模;消息动作:--动作种类:消息允许在实体间传递信息(传递参数),允许实体请求其它服务,对象之间通过发送和接收消息进行通信;--产生结果:消息可以触发操作,唤起信号,或使目标对象创建或销毁;消息的异步和同步通信:--异步通信:消息是信号的时候,发送信号之后,等待对方触发相应方法,这是明确的命名的对象间的异步通信;--同步通信:直接调用对象的方法,执行方法返回结果,这种具有返回控制机制的操作是同步通信;时序图和协作图中消息的区别:时序图中的消息强调顺序,协作图中的消息强调交换消息的对象间的关系;消息类型:两个对象间绘制消息3. 时序图示例示例简介:--使用场景:汽车租赁公司;-- 使用的对象:Customer ( 客户),Worker ( 工作人员),Order ( 请求),Record ( 记录),Car ( 汽车); --工作流程:①客户 向工人 提出租车要求,②工人 检查 请求,③客户 付款,④工人 填写 记录,⑤工人 取车;时序图:4.对象的创建和撤销对象位置:--顶部:时序图中对象的默认位置是在时序图顶部,这表明对象在交互开始之间就已经存在 --中间:如果对象在时序图中间部分,说明对象时在交互过程中创建的; 交互过程中创建对象的方法:--消息指向对象:消息是构造方法,箭头指向对象所代表的的矩形;过程调用中返回的消息E)两个对象之间的过程调用两个对象之间的异步消息绘制反身消息d!:□3 ok.. ...... ->I ... .....U .....5 wrrteReGQird()6 gfllCenf)CUSM men Gustomer--消息指向激活条:消息是构造方法,箭头指向对象下面的激活条撤销对象:如果想要在时序图中撤销一个对象,因为如果同时有几个对象,如果不进行特殊操作其生命周期将会一样长--效果图:下图中将Customer 和Order对象撤消了,因为它们基本没有参与后期的交互口njgr 砒record Record[]~ru■: 2 chackO,― __________-> 1 i: a■•'il J'n •>a »■a aii 11a Ha *!tl "a *■a »J "3: nkA\*y[)u 5 writeRacorci:]X■;£ g机盹* :• ■iu1 日(hew: OrdBr(J5.时序图建模技术时序图使用时机:对动态行为建模,强调时间展开信息的次序的时候,使用时序图;时序图管理策略单一控制流:一个单独的时序图只能显示一个控制流--多个时序图:完整的控制流很复杂,可以绘制多个时序图,一个主干时序图,多个分支时序图,使用包对这些时序图进行管理 时序图建模策略:--设置交互语境:交互所在的环境,包括哪些对象,属于什么系统,子系统,相关的操作类用例等; --对象排列顺序:根据对象重要性,从左到右排列在时序图中;--对象生命线:对象通常存在于交互的整个过程,也可以在交互过程中被创建和撤销;--消息排列:引发交互信息之后,消息按照时间顺序从上向下画出,先发出的消息 在后发出的消息上面; --激活期设置:可以将实际操作发生的时间点 消息 明确的显示出来;--时间空间约束:每个消息都可以附加合适的时间 和空间约束;--前置后置条件:每条消息可以附加前置 或 后置 条件;(1) 创建时序图新建时序图:在 视图浏览器 中 右键点击 Logical View (逻辑视图),选择New (新建)-> Sequence Diagram (6. Ratio nal Rose时序图操作时序图);添加对象:时序图中有两种对象,一种是参与者Actor, 一种是普通的对象;--参与者对象:在类图中创建一个对象,将其Stereotype 修改为Actor, 就变成了参与者,然后在视图浏览器中将这个元素拖到时序图中即可;(luiiti tied)三 口 Use Cast Vi 關Main 三AsEociati&ns竝血J B帼 $¥.*■rj艮發 UnitsAs 5 0 亡IMIEI帼 HerD i agr SJB 3 Component View €Jl Main Il^ploymeJit Vi &w Modal FropsrtiesCl BS EClass ytility tfse Case [nt trftce :F&cktg«CI BSS Ci agrw Use Case Dxa ■耳raai Ih 电虽Ssq.uftnc« Di Mchart Vi agramActivi t^- DiagramFilfeBL(2)添加对象鞍务人员设置对象属性:双击对象,在弹岀的General 对话框中修改对象属性--Name :对象名称,不输入也可以; --Document : 描述对象的文档;載务人员-- 普通对象 直接在时序图中点击按钮,在界面中创建对象--两种对象效果 学位管理nu ....null:对象保存在数据库或其它形式的永久存储体中 对象保存在内存中知道程序终止; :短时间内保存在内存中;⑶添加消息消息作用:消息用两个对象生命线之间的箭头表示,一个对象可以通过消息请求另一个对象执行某个操作 增加消息:--发送消息:将从发送消息对象的生命线拖到接收消息对象的生命线上;-- 显示取消编号和激活条:菜单栏Tools -> Options -> Diagram 选项卡,Sequence numbering 是消消息编号 of control 显示激活条;设置对象持续性--持续(Persistent) --静态(Static) --临时仃 ransient)Focus协作图(Collaboration Diagram)1. 协作图概念协作图:协作图是一种类图,包含类元角色和关联角色,不仅仅是类元和关联;--强调:强调参与交互的各个对象的结构信息和组织;协作图建模对象:对有交互的对象和这些对象之间的关系建模,不参与交互的对象及它们的关系忽略协作图内容:协作图中表现了类操作中用到的参数,布局变量,操作中的永久链;对象图扩展:协作图可以看做对象图的扩展,该图展示了对象之间的关联,显示岀了对象间的消息传递2. 协作图内容(1) 对象(Object)对象:代表协作图交互中的主体,和时序图中对象的概念类似;协作图和时序图中对象区别:协作图中对象无法创建和撤销,因此对象在协作图的位置没有限制(2) 链(Link)链的表示:链的符号和对象图中链所用的符号是一样的,用来连接两个类角色的实线;/)-- :创建对象之间的通信路径;-- :显示对象可以调用自己的属性;在两个对象之间或一个对象本身增加消息在两个对象之间或一个对象本身从反方向增加消息-- :显示两个对象之间的信息流;-- :在反方向显示两个对象之间的信息流;路径构造性:对象之间的连接可以由链末尾附加的路径构造型表示--添加方式:双击链,选择visibility 属性即可;⑶消息(Message)消息概念:对象间通过链接发送的就是消息;--消息传递方向:对象之间的箭头表明对象间交换的消息流,一个对象发出消息,链指向的对象接收消息,链用于实现消息传输--消息标识:消息流标有消息的序列号和对象间发送的消息名称;--消息结果:每条消息否会触发接收对象的一系列操作;消息序号:协作图与时序图中的消息类型是一样的,为了表明消息顺序,需要为消息添加序号;3. 协作图示例示例简介:汽车租赁流程;-- 涉及到的对象:Customer (客户),Order (订单),Worker (工人),Record (记录),Car (汽车);--流程简介:客户写好订单,工人核对订单,核对后订单存在,允许客户取车,工人填写记录,并将车取岀;114. 协作图建模策略协作图使用场景:对系统动态行为建模,按组织对控制流建模使用协作图;协作图管理策略:--单个协作图:单个协作图只能显示一个控制流;--多个协作图:描述复杂系统的时候,需要许多协作图共同描述,一些图是主干协作图,还有许多分支路径的控制流的协作图,使用包管理这些协作图;协作图的建模策略:--设置语境:设置协作图所在的环境,如系统,子系统,类,操作,用例或用例脚本;--对象顶点:识别对象在协作图中扮演的角色,协作图中,对象是图的顶点;--变化修改:每个对象最初都会设置初始值,如果期间对象发生了变化,修改的方式是:协作图中放置一个复制对象,更新复制对象,同过后造型become copy 连接二者;--确定链接顺序:先确定关联链接,哪些对象相互链接;在确定消息链接,路径构造型等表示对象间如何连接;--消息顺序:从引起交互的消息开始编号,将编号信息和描述信息附到链接上,描述了对象之间的传递次序;--时间空间约束:可以为每个消息附加时间和空间上的约束;--前置后置条件:可以为每个消息附加前置和后置条件;5. Rati onal Rose 绘制协作图13(1)创建协作图创建流程:视图浏览器-> Logical View ( 逻辑视图)-> New ( 新建)-> Collaboration Diagram (协作图);链)Cunt i tied ) E Cl Use Case Vi ew 里 Main 玄 Asscci at i ons o Ma: Cor IS 固 Niodal Froparti es ClassClass Utility Use Cas€InterfaceFackAg®Class Di agram ; Sequence Diagram Statfrchar t Di agr un Activi tjr Diagram Die URL(2) 添加对象协作图中添加对象:与时序图基本类似; --添加参与者对象:在类图中创建好类,然后将类型设置为Actor, 然后在视图浏览器中将 Actor拖到协作图中--添加普通对象:直接点击工具栏中的图标设置即可 ; ⑶添加消息添加对象间消息:在两个对象之间添加消息--添加消息:使用在通信路径上添加消息--设置消息名称:双击消息箭头,可以在弹岀的对话框中修改消息名称(4) 添加数据流数据流概念:数据流是一个对象向另一个对象发送消息返回的消息;--使用场景:没必要在每个消息上都加上数据流,只要在中药消息上附加数据流即可;I Q Q数据流添加方法:选择或按钮,单击要返回的数据消息,数据流箭头就会被添加到这个消息上-- 建立通信路径使用/I连接两个对象,建立两个对象间的通信路径添加反身消息:选择象添加消息;QI点击对象,就会岀现指向对象本身的路径可以为该对选择点击这个指向本身的路径6.时序图与协作图转换各自侧重点:时序图和协作图是等价的,可以任意转换,而不丢失信息--时序图:描述交互过程中的时间顺序,没有明确表达对象间关系;--协作图:描述了对象间的关系,但是时间顺序必须从消息的序号中获取转换示例--场景介绍:学生毕业管理--对象介绍:教务人员,学位评价,成绩管理,奖惩管理,信息打印;--控制流介绍:①教务人员输入学号进入学位评价模块,②学位评价模块会向成绩管理模块查询成绩,③向奖惩管理模块询奖惩记录,④学位评价模块会将结果打印到信息打印模块,⑤信息打印模块将结果返回给教务人员;时序图151学号协作图学位萱理nu::成绩管理2学号---------- >奖焦官理nu::3成绩6结果信息打印17信息打学位管印w ------ 理6■结果7.时序图和协作图对比时序图和协作图 共同点:都是有 消息和类角色组成 接口方法由消息发送对象触发 --支持消息:时序图和协作图都支持消息时序图和协作不同点--衡量工具 时序图和协作图可以作为衡量系统耦合性的工具耦合性就是系统中模型之间的依赖性两个模型之间的依赖关系通过查看两个模型之间的消息数量和类型就可以看岀,消息交互少的耦合性高;--规定责任 时序图和协作图 都规定了消息发送对象 和消息接收对象 的责任,每个接收对象都有消息对应的接口这个--对象创建撤销侧重点:时序图侧重描述对象的创建和撤销,新创建的对象放在对象生命线上对应的时间点,撤销的对象在结束的地方放一个X表示该对象不能再继续使用;协作图中创建撤销的概念不存在,对象时始终存在的,只能通过消息描述或约束来说明对象的创建和撤销;--链接侧重点:时序图中的链没有表示岀来,可以随意绘制消息,有些逻辑交互可能不会发生;协作图的消息是映射在链上的,消息和链平行放置,如果想要通过消息查看对象之间的关联使用协作图最好;--激活和去激活:时序图表现有激活和去激活,协作图上没有时间概念的描述,无法清晰地表示对象的激活和去激活;实例-图书管理系统1. 管理员为图书添加类别控制流说明:-- 涉及到的对象:Admin (管理员),BooklnfoWindow (图书信息窗口),Tittle (图书类别),Item (图书条目);--流程:管理员查询图书信息窗口,查看有没有相应的图书类别,如果有插入该图书条目;时序图:192. 管理员删除图书协作图BooktafaVViidoTittleVVnu::nu ........ .1添加图书2查询粪别 3类别有在 < .控制流说明:-- 涉及到的对象:Admin (管理员),BooklnfoWindow (图书信息窗口), Tittle (图书类别),ltem(图书条目); --控制流程:管理员登陆图书信息窗口删除图书,查表图书类别是否存在,查找图书是否存在,如果都返回true, 删除图书条目;时序图:Admin菅理员Be oh Info'//in dowTjttb协作图:AdminWJf 员3. 管理员借书时序图nu';nu. ................................... 1刪除團书 ------------ >nu2查找圈书类别丨 -------------------------------- ---- -------------- --- ------------------------3存在< ................ 4查找由书条目I~~i~■5存在< --------------- -:---- G删除歯书衆目nu……r 1睛除图毛Booklnfo ItemWindow控制流说明:21-- 参与的对象:Admin ( 管理员),BooklnfoWindow (图书信息窗口 ), Tittle ( 图书类别),Borrower ( 借阅者),Loan(借书记录),item ( 图书条目); --流程:管理员登陆图书信息窗口,查询图书类别是否存在,查询图书条目是否存在,查询借阅者是否存在,创建借书 记录; 时序图:3存在 < -----------5存在7有在3创建倍阅记录:协作图 Booklnfo'A'indcTit" BorrowerLoan□ □ 0 t □1借书请或 2査询娄别------------ - -----------。
图书馆管理系统动态视图3
它可被理解为一个组合,它的控制流由其他活动状态或动 作状态组成
– 转移 – 分支(Ex6: Activity_Diagram_Transition)
6.4 活动图(Activity Diagram)
Activity Diagram包括:
– 分叉和汇合(Ex6: Activity_Diagram_Branch) – 泳道
Sequence Diagram是强调消息时间顺序的交 互图 Sequence Diagram它描述类系统中类和类之 间的交互,它将这些交互建模成消息交换,也 就是说,时序图描述了类以及类相互交换以完 成期望行为的消息
6.1 时序图(Sequence Diagram)
Sequence Diagram包括如下元素:
6.1 时序图(Sequence Diagram)
时序图建模技术 使用时序图建模时,可遵循如下策略:
– 从引发某个交互的信息开始,在生命线之间按从上向下的顺 序画出随后的消息
– 设置对象的激活期,这可以可视化实际计算发生的时间点、 可视化消息的嵌套
– 如动作 – 对建模结果进行精化和细化
6.3 状态图(Statechart Diagram)
手机的状态图 Ex6:CellPhone
6.3 状态图(Statechart Diagram)
Java 源代码
– 10个数的和 – Ex6:Statechart_Diagram_Sum
6.4 活动图(Activity Diagram)
– 消息(Message):消息是定义交互和协作中交换信息的类, 用于对实体间的通信内容建模。消息用于在实体间传递信息, 允许实体请求其他的服务,类角色通过发送和接收消息时行 通 信
图书馆管理系统用例图、活动图、类图、时序图
图书馆管理系统一.图书馆管理系统需求分析1、系统目标设计系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。
能够对图书进行注册登记,也就是将图书的基本信息(如:书的编号、书名、作者、价格等)预先存入数据库中,供以后检索。
能够对借阅人进行注册登记,包括记录借阅人的姓名、编号、班级、年龄、性别、地址、电话等信息。
提供方便的查询方法。
如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。
提供对书籍进行的预先预订的功能。
提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。
能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。
提供较为完善的差错控制与友好的用户界面,尽量避免误操作。
2、系统功能需求分析(1) 读者管理:读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注等。
(2) 书籍管理:书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注。
(3) 借阅管理:包括借书,还书,预订书籍,续借,查询书籍,过期处理和书籍丢失后的处理。
(4)系统管理:包括用户权限管理,数据管理和自动借还书机的管理基于UML的图书馆管理系统建模设计满足以上需求的系统主要包含有一下几个子系统(1)基本业务功能子系统:该系统中主要包含了借书还书和预订等功能。
(2)基本数据录入功能子系统:该子系统主要包含有书籍信息和读者信息录入功能。
(3)信息查询子系统:包含了多功能的查询书籍信息和读者信息。
(4)数据库管理功能子系统:主要包含了借阅信息管理功能,书籍信息管理功能和预订信息管理功能。
(5)帮助功能子系统。
二、系统动态建模1、用例图、图书馆管理系统的用例图从用例图中我们可以看出管理员和读者之间对本系统所具有的用例。
图书管理系统时序图知识讲解
天津城市建设学院验证性实验任务书系专业______________________ 班姓名_____ 学号—课程名称:统一建模语言UML A ____________________________设计题目:时序图和协作图的建立__________________________完成期限:自2012 年3 月23 日至2012 年J—月30 日设计依据、要求及主要内容(可另加附页):1、设计依据:本实验是以教材《UML基础与Rose建模案例》一书的第6章为依据,掌握时序图和协作图的建立。
2、设计要求:(1)利用Rose建立图书管理系统的时序图。
(2)利用Rose建立图书管理系统的协作图。
指导教师:____________一、实验目的1.理解顺序图的基本概念;2.理解协作图的基本概念;3.掌握在Rational Rose中绘制交互图的操作方法。
二、实验内容根据图书馆管理系统的需求分析和用例模型,完成系统的交互图,对用例进行动态建模。
三、实验思想1.分析:根据图书馆管理系统的需求分析和用例模型,对系统中的用例进行动态建模。
2.在Rational Rose中绘制上述的交互图。
四、实验结果・用户登录•新书注册图书查询•图书类别管理librarian 登录界面校验信息图书类别管理界面数据库•借书还书添加读者・删除读者•查询读者1 :验证身份() >2:返回验证信息 3:删除数据库书目() 4:册U 除馆藏书目()) < 5:返回删除信息 6:更新数据库()•注销图书:librarian 登录界面 数据库 图书记录7 :删除成功 •报表管理1 :验证身份()2 :返回验证信息< --- v 3 :查询报表信息()6 :打印报表()添加用户:librarian 用户记录 报表信息 文件 打印 机6:将新开设的帐号给用户 5:返回添加用户信息 2:返回验证信息 [ 3:向数据库添加用户记录() 检查用户信息 1:身份验证() 4 : :System administrators 登录 用户记录 用户 4 5 :返回报表信息:报表输出到文件(1 :身份验证...2 :返回验证...3:对数据库删除用户记录()1 :身份验证()2:返回验证信息3:查找用户信息(),一.4:查找信息()、5 5 :检盲^信息^ 18:返回更新密码成功1 新数据库administrators登录用户记录5:返回删除用户成功检查用户...•修改密码:Systemadministrators查找界面用户记录•数据备份administrators•数据修改:System用户记录数据存储记录备份文件2 :返回验证.备份数据()1 :身份验证.:System administrators| 1 :身份3佥证()|2 :返回验证信息.।3 :按条件查询需修改数据()用户记录数据表数据存储系统运行日志4:修改数据表()7 :返回数据更改成功5 :修改数据()6:更新数据库()administrators1 :身份验证()A ------- - ------- 2:返回验证信息< ---- —— ------3:按条件查询日志记录() __________________________________ 飞」4:修改日志信息() 5:备份日志信息() 6:返回备份结果()系统设置:System 用户记录日志记录日志备份文件____ ।5:存储数据() 6 :更新数据库信息()6:返回设置结果(五、实验心得通过对需求的分析,大体掌握了图书管理系统的功能,依据上节实验所做的用例图和事件流的描述,画出了各个用例的时序关系图。
时序图和协作图
时序图的最大特点是:它以二维的平面上 的一维来表示时间进度,在时间维上定义 各个对象所执行的操作以及它们之间所传 送的消息。从而能够在逻辑上清晰的刻画 这些操作和消息的时序关系乃至因果关系。
简单时序图
7.2 时序图元素及表示法
在UML中,时序图用一个二维图描述系统 中各个对象之间的交互关系。其中,纵轴 是时间轴,时间沿竖线向下延伸,由上至 下表示时间的先后顺序。横轴代表了参与 相互作用的对象。 当对象存在时,生命线由一条虚线表示; 当对象的过程处于激活状态时,生命线上 用一个激活条表示。消息用从一个对象到 另一个对象生命线的箭头表示,箭头以时 间顺序从上到下排列。
时序图(Sequence Diagram)也被称为 顺序图,是一种详细地表示对象之间行为 交互关系的图,主要用来描述对象之间信 息交换时的时间顺序。因此可以清晰而直 观的表示对象之间的行为交互关系以及操 作和消息的时序关系。
时序图的主要用途把用例表达的要求转化 为更进一步的精细表达。它还能用来记录 一个存在系统的对象现在如何交互。 用例常常可被细化为一个或多个时序图。
7.2 时序图元素及表示法
时序图有4种基本图形元素,包括:
对象(object) 生命线(lifeline) 激活(activation) 消息(message)
1. 对象
时序图中的对象在概念上和它在对象图中 的定义是一致的,其图形表示也相同。 每个对象显示在单独的列里,用一个矩形 框代表一个对象,框内填写对象名和它所 属的类名,中间用一个冒号隔开。
2.链接
链接是两个对象间的连接。 它的图形符号也是用一条连接在两个对象间 的实线表示。在连接线上可以标明对象名。
3.消息
图书馆管理系统的UML建模【活动图-时序图-用例图-部署图-组件图】
图书馆管理系统的UML建模评分:一.实验目的熟悉开发绘图工具Microsoft Visio软件的使用方法;针对指定软件系统的需求进行分析和设计;使用Microsoft Visio软件,绘制UML图。
二.实验设备计算机、Microsoft Visio软件。
三.实验内容及步骤实验内容:1、熟悉开发绘图工具Microsoft Visio软件的工作环境和基本使用方法。
2、根据课本对图书馆管理系统进行分析和设计。
3、使用Microsoft Visio软件,绘制图书馆管理系统的UML图。
实验步骤:1、在启动操作系统之后,启动Microsoft Visio软件。
2、进入Visio的UML建模绘图界面3、参考课本画出图书馆管理系统的用例图、顺序图、活动图、状态图、部件图、部署图。
四、实验结果(一) 用例图该系统中主要涉及的用户有读者、图书管理员和系统管理员。
系统管理员图 1用例图图 2读者用例图图 3 系统管理员用例图图 4 图书管理员用例图图 5 图书借阅时序图图 6 图书管理员顺序图图 7 读者活动图是否超过借阅记录图 8 图书管理员活动图图 9 系统管理员活动图图 10 图书管理员活动图(二) 状态图图 11 书籍状态图图 12 借阅者状态图(三) 构件图图 13 构件图(四) 部署图图 14 部署图五、实验小结在学习UML这门课之前,我一直心底有一个疑问,那就是我们和那些所谓的程序员速成班培训出来的程序员到底有什么差别,都是写代码,那我们在大学里学习的意义是什么呢,直到我学习了UML这门课。
我才知道写代码并没有想象中的那么简单,对于同一个功能,肯定有着多种不同的实现方法,而这些方法也肯定有优劣之分。
我们之所以不像外面那样的培训班一样速成,是因为我们需要锻炼自己去写出高质量的代码,我觉得这就是我们学习的意义。
其实在上UML课之前,我以为UML跟C++和java一样是一门编程语言,直到经过老师的介绍,我才知道UML的全称是Unified Modeling Language,他不同于C++,java这些编程语言,他是统一建模语言。
图书管理系统时序图与协作图(UML)
学号 **********
统一建模语言UML B
实验报告
实验2 顺序图和协作图
学生姓名黄源
专业、班级14软件(2)班
指导教师高天迎
成绩
计算机与信息工程学院
2016年 10 月 18 日
一、实验目的
在熟悉顺序图概念与应用的基础上,掌握顺序、协作图的建立。
1.理解顺序、协作图的基本概念。
2.掌握顺序、协作图的建立。
二、实验内容
建立图书管理系统的顺序、协作图。
三、实验思想
1.利用需求分析和用例模型,分析图书馆管理人员的行为活动,完成系统行为交互建模。
2.使用Rose完成图书馆管理系统中的时序图。
四、实验结果
五、实验心得
通过Rose2003绘制出图书管理系统的时序图和协作图,使我进一步了解并更加熟练绘制。
本次实验根据书本,网络及同学帮助顺利完成。
今后会更加熟练地掌握。
时序图和协作图
1. 对象
❖ 时序图中的对象在概念上和它在对象图中 的定义是一致的,其图形表示也相同。
❖ 每个对象显示在单独的列里,用一个矩形 框代表一个对象,框内填写对象名和它所 属的类名,中间用一个冒号隔开。
Object1 : ClassA
2.生命线
❖ 生命线是对象标识符在垂直方向上拖出的一 条长虚线,表示时序图中的对象在一段时间 内的存在。
激活示例
激活的应用
❖ 当进行时序图建模时,所用到的消息主要 包括以下几种类型:
简单消息(Simple Message) 同步消息(Synchronous Message) 异步消息(Asynchronous Message) 反身消息(Message to Self) 返回消息(Return Message)
(1)简单消息(Simple Message)
❖ 简单消息是在同步和异步之间没有区别的 消息。
❖ 在不知道消息的类型的情况下就可以使用 简单消息。
❖ 在对系统进行时序图建模时,可以对所有 的消息都使用简单消息进行表示,然后再 根据情况确定消息的类型。
(2)同步消息(Synchronous Message)
如果对象在这个位置上,那么说明在发送 消息时,该对象就已经存在了; ❖ 如果对象是在执行的过程中创建的,那么 它的位置应该处在图的中间部分。
❖ 对象的创建有两种方法:
ObjectA 1: Create() ObjectB 2: ReturnMessage
ObjectA
ObjectB
1: Create()
: Administrator
:ManageWindow
1: UpdateBorrower()
:UpdateBorrowerDialog
七交互图-时序和协作
实验五时序图和协作图一、实验目的1.理解时序图的基本概念。
2.理解协作图的基本概念。
3.掌握在Rational Rose中绘制交互图的操作方法。
二、实验器材1.计算机一台。
2.Rational Rose 工具软件。
三、Rose中绘制时序和协作图示例步骤1.分析:根据演示部分对图书业务功能模块中的交互操作进行动态建模的操作步骤和方法,请你对书籍管理模块中的交互操作进行动态建模。
该模块中主要存在新增书籍、修改书籍信息和删除书籍三种交互操作。
绘图步骤:(1)在Rose软件的左边栏目上的Logicl View单击右键,新建一个时序图,时序图是交互图一种表示,可以用时序来表示,如图6.1;在此,先单间介绍一下用法:图中的直线箭头是发送消息;虚线箭头是返回消息;曲折线是对象自己给自己发送消息并调用。
(2)接下来的是添加类,系统中的类是其他的方法的边界,在上面做好的类找到可以直接拖拉来图中,见图6.2 和图6.3所示。
图6.2(3)添加类后,便可以添加方法了,开始是必需是外面的实体向系统发送消息,如图6.4所示,是管理员登录时向系统发送的消息;图6.4(5)可以按上一步的方法来完成其他的方法,如viladate(验证),返回验证结果,当用户收到结果后,可以正常登录后便能进行增加图书见图6.5到图6.9。
最后得到的时序图如图6.10所示。
图6.5: administrator图6.6: administrator图6.7: administrator图6.8: administrator图6.9: administrator图6.10(6)完成了时序图后,可以按F5键便得到增加图书的协作图,见图6.11所示。
图6.11(7)剩下的更新图书信息和删除图书信息的交互图在此不再一一详细的介绍,其绘图方法跟绘制增加图书的方法一样,最后得到见图6.12 到图6.15,此处仅作参考可以不完成。
: administrator图6.12图6.13图6.14图6.15四、实验内容通过对教学内容的学习,使我们完成了图书馆的管理系统的需求分析,并从业务对象中抽象出了类。
图书管理系统-OOD-协作图与时序图
17
为消息分配操作(Distribute Operation for Message)
• 要给消息分配操作:
–右键单击框图中的消息; –从弹出的列表中选择一个操作;或者单击 <new operation>定义一个新操作。
• 改变消息指定的操作:
10
时序图的用途(Sequence Diagram Use)
• 当不同类之间存在多个简短的方法时,描述控 制流的整体序列。 • 显示并发进程和激活。 • 显示在协作图中难以描述的时间序列。 • 显示涉及类交互而与对象无关的一般形式。
11
时序图的建模技术(Sequence Diagram’s Modeling Technologies)
上右键?时序图工具箱时序图工具箱toolboxforsequencediagramtoolboxforsequencediagram15?消息消息messagemessage??将消息加进将消息加进时序图单击工具箱中的单击工具箱中的将鼠标从发送消息的对象或参与者的生命线拖动到接将鼠标从发送消息的对象或参与者的生命线拖动到接受消息的对象或参与者的生命线
3: 提交案卷录入命令 4: 提示输入案卷的相关信息
5: 显示输入的案卷相关信息 6: 提交案卷列表
7: 提交成功 8: 显示案卷录入成功信息
9
时序图的用途(Sequence Diagram Use)
• 时序图可供不同的用户使用,以帮助他们进一步 了解系统: • 用户:进一步了解业务细节 • 分析人员:进一步明确事件的处理流程 • 开发人员:进一步了解需要开发的对象和对这些 对象的操作 • 测试人员:通过过程的细节开发测试案例
实验五--1 顺序图和协作图
实验五—1 顺序图、协作图一、实验目的1.理解顺序图的基本概念。
2.理解协作图的基本概念。
3.掌握在Rational Rose 中绘制顺序图、协作图的操作方法。
二、实验器材1.计算机一台。
2.Rational Rose 工具软件。
三、实验内容通过对课堂学习和前面的实验,使我们完成了图书馆的管理系统的需求分析,并从业务对象中抽象出了类。
现在需要对前面所给出的用例进行实现,而用例的实现主要由顺序图来描述系统的动态特性,协作图与顺序图是同构的,Rose 可自动转换。
现指派你运用课堂所学的相关知识,完成如下任务:1.对图书管理功能中的借书用例、还书用例进行动态建模。
四、实验步骤4.1 分析阶段的动态建模1.分析:在分析阶段,绘制的顺序图中,所有消息可以使用便于理解的自然语言来描述,并且可以仅在实体类中识别对象职责,而不涉及边界类和控制类。
根据课堂讲授,参见教材P213 可完成借书用例和还书用例分析阶段的动态建模。
2.绘图步骤:(1)鼠标右击导航窗口“Logicl View”节点,选择“New——Package”,建立1 个子包:“Sequence Di ag ra m”(用于存放顺序图、协作图),完成后如图 3.1 所示。
(2)如图 3.2 所示,鼠标右击“Sequence Diagram”子包,选择快捷菜单项“New——Sequence Di ag ram”,创建一张新的顺序图,取名为“借出图书”(注意:为了好对应,顺序图名称最好与相应的用例名称相同)。
鼠标双击新建的顺序图,在右边绘图窗口中将其打开,如图 3.3 所示。
(3)设置支持嵌套消息的环境:选择主菜单项“Tools——O ptions”,打开Rose 环境设置的对话框,点击“D i a g r a m”选项卡,在如图3.4所示界面中,将“D i s p l a y”下的“Hierarchical Message”选中,点击“确定”即可。
图 3.1图 3.2图3.3图3.4(4)绘制类:从导航窗口中,将“Use Case View”节点下的参与者“图书管理员”拖到绘图窗口;将“Class Diagram”包下“BO”实体包中的相关类“Reader”、“ResourceItem”、“ResourceTitle”和“Loan”拖到绘图窗口中,如图3.5 所示。
图书管理系统时序图
图书管理系统时序图图书管理系统时序图天津城市建设学院验证性实验任务书系专业班姓名学号课程名称:统一建模语言UML A 设计题目:时序图和协作图的建立完成期限:自 2021 年 3 月 23 日至 2021 年 3 月 30 日设计依据、要求及主要内容(可另加附页): 1、设计依据:本实验是以教材《UML 基础与Rose 建模案例》一书的第6章为依据, 掌握时序图和协作图的建立。
2、设计要求:(1)利用Rose 建立图书管理系统的时序图。
(2)利用Rose 建立图书管理系统的协作图。
1.理解顺序图的基本概念; 2.理解协作图的基本概念;3.掌握在Rational Rose中绘制交互图的操作方法。
二、实验内容根据图书馆管理系统的需求分析和用例模型,完成系统的交互图,对用例进行动态建模。
三、实验思想1.分析:根据图书馆管理系统的需求分析和用例模型,对系统中的用例进行动态建模。
2.在Rational Rose中绘制上述的交互图。
: librarian● 图书类别管理: librarian: librarian: librarian: librarian: librarian: librarian: librarian: librarian: System: System: System: System: System: System: System: System通过对需求的分析,大体掌握了图书管理系统的功能,依据上节实验所做的用例图和事件流的描述,画出了各个用例的时序关系图。
通过画时序图,进一步理清了图书管理系统的实现方法,使我对图书管理系统的功能实现有了更进一步的了解,对图书管理系统的功能考虑更加全面,通过这次实验,是我对建模语言产生了浓厚的兴趣,为以后的系统的实现奠定了良好的基础。
实验4 UML时序图和协作图实验
大理学院课程教案(理论教学)课程名称:软件工程课程类型:( 2 )1、必修;2、选修;3、其它授课对象:计算机科学与技术专业(本、专科) 2010 级1,2班授课时间: 2012 至 2013 学年第 3 学期计划学时: 64 学时(其中:理论 48 ,实验: 16 )任课教师:杜英国所属学院:数学与计算机学院课程管理部门(教研室):软件教研室大理学院教务处制课程名称:软件工程教材:面向对象软件工程-使用UML、模式与Java清华大学出版社出版(出版社),Bernd Bruegge Allen H. Dutoit编著,2006 年第2 版授课人1:杜英国专业技术职务:讲师学历:研究生学位:硕士授课人2:专业技术职务:学历:学位:实验题目:实验四 UML时序图和协作图实验计划学时:4学时实验类型:(1 )1、演示性2、验证性3、综合性4、设计性每组实验的学生人数:1 人教学目的和要求:掌握时序图和协作图的相同点和区别;能够根据事件流,准确确定对象,画出时序图和协作图;熟练使用软件创建时序图和协作图。
实验方法(包括实验中需要注意的问题等):通过Rose工具完成本实验,注意区别时序图、状态图的概念。
实验重点(主要解决的问题和达到的目的):重点掌握时序图的概念,创建方法。
实验难点(预计实验过程中会遇到的问题和解决方案):教学方法(实验前的教学和实验过程中的指导方法):实验前理论课上讲解UML基本原理,在实验过程中结合实验环境(Rational Rose工作环境)演示实验内容,再由学生自己练习。
实验仪器和材料:计算机,Windows XP, Rational Rose2003企业版实验报告要求和思考题:实验完提交实验报告。
参考资料:1.《UML实践教程—面向.NET开发人员》(美)Martin L. Shoemaker著清华大学出版社2.《UML和模式应用》(美)Craig Larman著李洋郑龚译机械工业出版社3.《SOFTWAREENGINEERING》A PRACTITIONER’S APPROACH ROGER S. PRESSMAN 清华大学出版社UML中,如果要撤销一个对象,只要在其生命线终止点放臵一个“X”符号即可,该点通常是对删除或取消消息的回应。
实验三+时序图和协作图
实验三时序图和协作图[实验目的]1.掌握时序图、协作图的绘制方法。
2.验证Rose的交互图自动生成功能。
[实验内容]1.用Rose绘制图书馆管理系统的时序图与协作图。
2.利用Rose的交互图自动生成功能,将已经设计好的时序图转换成协作图。
[实验要点及说明]一、时序图建模技术按时间顺序对控制流建模,要遵循如下策略。
①设置交互的语境。
②通过识别对象在交互中扮演的角色,设置交互的场景。
③为每个对象设置生命线。
④从引发某个消息的信息开始,在生命线之间画出从顶到底依次展开的消息,显示每个消息的特性(如参数)。
⑤如果需要可视化消息的嵌套或实际计算发生时的时间点,可以用激活修饰每个对象的生命期。
⑥如果需要说明时间或空间的约束,可以用时间标记修饰每个消息,并附上合适的时间和空间约束。
⑦如果需要更形式化的说明某控制流,可以为每个消息附上前置和后置条件。
实例1——图书馆管理系统的时序图1.使用Rational Rose绘制时序图的步骤。
①创建时序图。
在浏览器窗口中,在“Use Case View”的图标上单击鼠标右键,在弹出的菜单中选择New →Sequence Diagram。
此时,在“Use Case View”树形结构下多了一个名为“New Diagram”的图标,右键单击此图标,在弹出的菜单中选择Rename菜单项,可以更改新创建的时序图的名字。
双击时序图图标,出现时序图的编辑区和编辑工具栏。
②时序图工具栏按钮简介。
时序图工具栏中各个按钮的图标及其作用如图3-1所示。
③添加对象。
向时序图添加对象。
首先点击工具栏中的对象图标按钮,然后在编辑区要放置对象的位置单击鼠标左键。
图3-1 时序图工具栏各个按钮的图标及作用⏹设置对象属性。
可以双击相应的对象图标,弹出对象属性设置对话框。
也可以选中要改变属性的对象,单击右键,在弹出的菜单中选择“Open Specification...”,打开属性设置对话框。
⏹设置对象持续性。
时序图和协作图PPT课件
⑥ 如果需要设置时间或空间的约束,可以为每个 消息附上合适的时间和空间约束。
⑦ 如果需要形式化的说明某控制流,可以为每个 消息附上前置和后置条件。
2021/7/23
24
7.4 时序图建模实例
例:图书管理系统时序图建模
1.添加借阅者
❖ 在UML中,时序图用一个二维图描述系统 中各个对象之间的交互关系。其中,纵轴
是时间轴,时间沿竖线向下延伸,由上至
下表示时间的先后顺序。横轴代表了参与 相互作用的对象。
❖ 当对象存在时,生命线由一条虚线表示;
当对象的过程处于激活状态时,生命线上
用一个激活条表示。消息用从一个对象到
另一个对象生命线的箭头表示,箭头以时
第7章 时序图
❖ 系统或对象的动态模型主要包括状态模型 和交互模型。
❖ 状态模型用来描述系统或对象的动态行为, 用状态图和活动图进行描述,因此状态图和 活动图又统称为行为图;
❖ 交互模型主要用来帮助人们观察和分析系 统的交互行为,用时序图和协作图进行描述, 因此时序图和协作图又统称为交互图。
2021/7/23
❖ 消息流上标有消息的序号和对象间发送的消 息,消息的序号表明了消息发送的先后顺序。
❖ 一条消息会触发接收对象中的一项操作。
2021/7/23
36
对象
1: Create()
2: Return Message
2021/7/23
20
❖ 在新创建的对象时,都可以发送“destroy”消息 来撤销新创建对象。
❖ 要想说明某个对象被撤销,需要在被撤销对象的 生命线末端放一个“×”符号进行标识。
ObjectA
图书馆管理系统用例图、活动图、类图、时序图
图书馆管理系统一.图书馆管理系统需求分析1、系统目标设计系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。
能够对图书进行注册登记,也就是将图书的基本信息(如:书的编号、书名、作者、价格等)预先存入数据库中,供以后检索。
能够对借阅人进行注册登记,包括记录借阅人的姓名、编号、班级、年龄、性别、地址、电话等信息。
提供方便的查询方法。
如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。
提供对书籍进行的预先预订的功能。
提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。
能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。
提供较为完善的差错控制与友好的用户界面,尽量避免误操作。
2、系统功能需求分析(1) 读者管理:读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注等。
(2) 书籍管理:书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注。
(3) 借阅管理:包括借书,还书,预订书籍,续借,查询书籍,过期处理和书籍丢失后的处理。
(4)系统管理:包括用户权限管理,数据管理和自动借还书机的管理满足以上需求的系统主要包含有一下几个子系统(1)基本业务功能子系统:该系统中主要包含了借书还书和预订等功能。
(2)基本数据录入功能子系统:该子系统主要包含有书籍信息和读者信息录入功能。
(3)信息查询子系统:包含了多功能的查询书籍信息和读者信息。
(4)数据库管理功能子系统:主要包含了借阅信息管理功能,书籍信息管理功能和预订信息管理功能。
(5)帮助功能子系统。
二、系统动态建模1、用例图、图书馆管理系统的用例图从用例图中我们可以看出管理员和读者之间对本系统所具有的用例。
管理员所包含的用例有:(1)登录系统:管理员可以通过登录该系统进行各项功能的操作(2)书籍管理:包括对书籍的增删改等。
【免费下载】图书管理系统时序图
天津城市建设学院验证性实验任务书系专业班姓名学号课程名称:统一建模语言UML A设计题目:时序图和协作图的建立完成期限:自2012 年 3 月23 日至2012 年 3 月30 日设计依据、要求及主要内容(可另加附页):1、设计依据:本实验是以教材《UML基础与Rose建模案例》一书的第6章为依据, 掌握时序图和协作图的建立。
2、设计要求:(1)利用Rose建立图书管理系统的时序图。
(2)利用Rose建立图书管理系统的协作图。
指导教师:一、实验目的1.理解顺序图的基本概念;2.理解协作图的基本概念;3.掌握在Rational Rose中绘制交互图的操作方法。
二、实验内容根据图书馆管理系统的需求分析和用例模型,完成系统的交互图,对用例进行动态建模。
三、实验思想1.分析:根据图书馆管理系统的需求分析和用例模型,对系统中的用例进行动态建模。
2.在Rational Rose中绘制上述的交互图。
四、实验结果●用户登录●新书注册图书查询: librarian●图书类别管理: librarian●借书: librarian还书: librarian添加读者: librarian●删除读者: librarian丢●查询读者: librarian丢●注销图书: librarian●报表管理: librarian添加用户: System●删除用户: System●修改密码: System丢丢●数据恢复: System丢●数据备份: System丢●数据修改: System丢丢 系统运行日志: System系统设置: System丢丢丢五、实验心得通过对需求的分析,大体掌握了图书管理系统的功能,依据上节实验所做的用例图和事件流的描述,画出了各个用例的时序关系图。
通过画时序图,进一步理清了图书管理系统的实现方法,使我对图书管理系统的功能实现有了更进一步的了解,对图书管理系统的功能考虑更加全面,通过这次实验,是我对建模语言产生了浓厚的兴趣,为以后的系统的实现奠定了良好的基础。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学号 **********
统一建模语言UML B
实验报告
实验2 顺序图和协作图
学生姓名黄源
专业、班级14软件(2)班
指导教师高天迎
成绩
计算机与信息工程学院
2016年 10 月 18 日
一、实验目的
在熟悉顺序图概念与应用的基础上,掌握顺序、协作图的建立。
1.理解顺序、协作图的基本概念。
2.掌握顺序、协作图的建立。
二、实验内容
建立图书管理系统的顺序、协作图。
三、实验思想
1.利用需求分析和用例模型,分析图书馆管理人员的行为活动,完成系统行为交互建模。
2.使用Rose完成图书馆管理系统中的时序图。
四、实验结果
五、实验心得
通过Rose2003绘制出图书管理系统的时序图和协作图,使我进一步了解并更加熟练绘制。
本次实验根据书本,网络及同学帮助顺利完成。
今后会更加熟练地掌握。