图书管理系统动态建模
图书馆管理系统动态视图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):消息是定义交互和协作中交换信息的类, 用于对实体间的通信内容建模。消息用于在实体间传递信息, 允许实体请求其他的服务,类角色通过发送和接收消息时行 通 信
图书馆管理系统uml建模--完美
基于UML的图书馆管理系统建模设计摘要在对U M L 及用U ML 建模的步骤作了简介之后, 介绍了在图书馆系统设计与开发中用U M L建模的过程, 其中重点描述了图书馆借阅子系统中用例图、顺序图和类图, 总结了U M L建模优势。
一、UML简介及用UML建模步骤1. 1 U M L简介统一建模语言 U ML 是一个通用的可视化建模语言, 用于对软件进行描述、可视化处理、构造和建立软件系统制品的文档。
它记录了对必须构造的系统的决定和理解,可用于对系统的理解、设计、浏览、配置、维护和信息控制。
UM L的最终目标是在尽可能简单的同时能够对实际需要建立的系统的各个方面建模。
UML需要有足够的表达能力以便可以处理现代软件系统中出现的所有概念, 例如并发和分布, 以及软件工程中使用的技巧等。
1. 2 利用U ML 建模步骤a.建立需求模型。
主要通过用例图来描述该系统完成的主要功能。
这是系统设计人员与用户进行沟通后的产物, 也是提供给系统开发人员的粗放蓝图。
b.建立系统的对象模型。
UML的主要内容归纳为静态建模机制和动态建模机制。
静态模型描述系统的对象之间的静态关系, 使用UML的包图、类图和对象图;动态模型描述对象间的交互关系、对象的生命周期及其在生命周期中各种可能的状态和状态之间转换的约束,使用UML的顺序图、活动图和协作图。
c.建立系统的体系结构模型,定义系统的软、硬件体系结构及通信机制,使用UML的组件图、配置图。
d.在组件图的基础之上生成所选开发语言的代码框架,由系统设计转入开发阶段。
二、图书馆管理系统分析系统分析的目的是捕获和描述所有的系统需求, 并且建立一个模型来定义系统中主要的域类( 系统中的关键类) , 通过系统分析达到开发者和需求者的理解和沟通。
因此, 分析一般都是分析员和用户协作的产物。
在这个阶段, 程序开发者不应该考虑代码或程序的问题, 它只是理解需求和实现系统的第一步。
2. 1 需求分析分析的第一步是确定系统能够做什么? 谁来使用这个系统? 这些分别称用例( use cases) 和角色( actors) 。
图书管理系统-动态设计-状态图解读
可行性研究
领域分析
需求分析
设计
编码
测试
交付
软件工程实践
状态图的概念和内容
我们的进度,在这里
• 状态图是UML中对系统动态方面建模的图之一。 • 状态图是一种特殊种类的图形,它拥有所有其他图一 样的公共特性,即名称和投影在一个模型上的图形。 状态图和其他图的区别在于它的内容。状态图通常包 括如下内容:(1)状态(2)转换 • 在UML中,图形上每一个状态图都有一个初始状态( 实心圆),用来表示状态机的开始还有一个终止状态 (半实心圆),用来表示状态机的终止,其他的状态 用一个圆角的矩形表示
开始
重填 图书借阅
软件工程实践
阅读“图书归还”用例描述
• 用例名称:图书归还 • 用例描述:图书馆工作人员输入图书登录号进行图书 归还。 • 参与者:图书馆工作人员。 • 前置条件:图书馆工作人员点击“图书归还” • 基本路径: • 输入图书登录号 • 点击“查询” • 显示该书借阅信息(书名,ISBN,借阅时间,应归还时 间) • 点击“归还” • 提示“归还成功” • 备选流程: • 点击重新填写,实现图书登录号重新填写
软件工程实践
状态图和活动图的区别
• 状态图:用来描述对象,子系统,系统的生命周期。通 过状态图可以了解一个对象所能达到的所有状态,以及 对象收到的事件对对象状态的影响。 • 活动图:显示动作及其结果。着重描述操作(方法)实 现中所完成的工作以及用例实例或对象中的活动,它是 状态图的一个变种。 • 状态图与活动图的区别:活动图主要描述动作及对象状 态改变的结果。状态图主要描述的是事件对对象状态的 影响。
事件、动作、参数、警戒(监护条件)
软件工程实践
1.2 状态(State)
图书管理系统—UML系统建模
图书管理系统--------UML系统建模1.1系统需求图书管理系统需要满足来自三方面的需求,这三个方面分别是图书借阅者、图书馆工作人员和图书馆管理人员。
图书借阅者的需求是查询图书馆所存的图书、个人借阅情况及个人信息的修改;图书馆工作人员的功能最为复杂,包括图书借阅者及图书进行管理和维护,以及对系统状态的查看和维护。
满足用户基本需要的系统,必须有如下功能:⑴基本数据维护功能需求⑵基本业务功能需求;⑶数据库维护功能需求;⑷查询功能需求;⑸安全使用管理功能需求;⑹帮助功能需求;总之,该图书管理系统能够是图书馆管理员方便地管理图书馆内的多种事物,让图书馆工作人员更有效地为读者提供借阅和归还书籍的服务,能够为读者提供查询书籍信息和个人借阅信息的服务。
2.1用例图2.1.1借阅者请求服务的用例图借阅者请求服务的用例包括:1.登录系统3.查询自己的借阅信息5.查询书籍信息 2.预定书籍4.借阅书籍6.归还书籍此用例图如图1所示。
BorrowerSearch for bookReserve the bookLogon the system<<use>>Query hfo<<use>>Borrow the bookReturn the bookReturn with Fine<<extend>>图1借阅者请求服务的用例图2.1.2读书馆管理员处理借书、还书的用例图图书管理员处理借书、还书的用例包括:1.处理书籍借阅3.处理书籍借还2.删除预定信息此用例图如图2所示。
LibrarianGetbookGet With FineLend bookcheck user accountRemove Resservation<<extend>><<i ncl ude>><<use>>图2图书管理员处理借书、还书的用例图2.1.3系统管理员进行系统维护的用例图系统管理员进行系统维护的用例包括:1.查询借阅者信息4.查询书籍信息7.增加书目2.删除或更新书目5.增加书籍8.删除书籍3.添加借阅者账户6.删除或更新借阅者账户此用例如图3所示。
郑州大学图书管理系统UML建模
图书管理系统UML建模设计20107760246唐亚伟20107760152徐源目录一、需求分析1、业务需求 (2)2、功能需求 (2)二、UML系统建模1、创建系统用例模型 (4)1-1、图书处理业务用例图 (4)1-2、维护图书、用户(读者、工作人员)数据用例图 (9)1-3、基本数据查询模块用例图 (16)2、创建系统静态模型 (17)3、创建系统动态模型 (18)3-1创建序列图和协作图 (19)3-2创建状态图 (49)3-3创建活动图 (50)一、需求分析1、业务需求人们常说,图书馆是一座大学的灵魂。
高校图书馆是广大师生日常生活不可或缺的部分,是人们汲取知识、提高自身素质的重要途径。
伴随着高校的不断扩张——在校人数大大增加、图书信息产业的爆炸式增长、网络技术的飞速发展以及学校内部网络的建立和不断完善,搭建一个高效、自动化、网络化、通用的图书管理系统平台,是广大师生的迫切需求。
当然,为了适应Internet技术的不断发展和人们上网习惯。
本系统将采用更流行、方便、经济的B/S模式搭建网络图书管理系统。
2、功能需求读者能够查询图书信息、预定图书、取消预订、借书、还书、查询个人借阅信息、缴纳罚款。
图书馆普通工作人员能够受理还书和借书、查询图书信息、查询读者信息、受理读书预定、收缴罚款系统管理员能够添加读者信息、删除读者信息、变更读者信息、查询读者信息;添加图书馆普通工人员信息、删除图书馆工作人员信息、查询工作人员信息;添加图书信息、变更图书信息、删除图书信息、查询图书信息;维护数据库。
满足上述功能需求,主要需要以下模块:1、图书馆数据维护模块○1用户(读者、管理员)信息添加、删除、变更;○2图书信息添加、删除、变更;2、图书馆业务模块○1借书、还书○2收缴罚金○3图书预定、取消预订3、图书馆数据查询模块○1用户信息查询○2图书信息查询○3借阅信息查询4、数据库维护模块○1图书信息表○2用户信息表○3图书借阅信息表○4读者信息表二、UML系统建模1、创建系统用例模型首先确定图书管理系统参与者:读者、系统管理员、普通工作人员。
面向对象设计 6.6 图书管理系统软件建模设计实践
(2)图书管理员(Librarian)
• 处理 借 书 :借阅者通过图书管理员借阅图书。处理借书时,图书管理员检查借阅者的 合法性和最大借阅数量以及该书是否可借 。 如果借阅者不合法或者超出最大借阅数量 或者该书不可借,则借书失败。如果该借阅者预定过该书,则将该预订删除。
4
系统分析与设计
二、系统用例图
数据库原理及应用
5
系统分析与设计
数据库原理及应用
三、系统静态模型
建立系统静态模型就是建立系统的类图。建立类图需要确定系统中的类,确定类的 属性,确定类之间的关系。根据系统动态模型确定类的操作并完善类图。
(1)确定系统中的类
• 有系统管理员(Administrator)、图书管理员(Librarian)和借阅者( Borrower)三个参与者,他们的信息需要存储。
• 系统管理员负责对系统的日常管理,包括对图书信息的添加、删除、修改、查询 ,对借阅者信息的添加、删除、修改、查询,以及对图书管理员信息的添加、删 除、修改、查询。
2
系统分析与设计
数据库原理及应用
经过需求分析,确定系统具有三个参与者:借阅者、图书管理员和系统管理员。 (1)借阅者(Borrower)
• 登录系统:系统管理员能够根据自己的账号和密码登录系统。
• 管理图书信息 • 添加图书信息 • 删除图书信息 • 修改图书信息 • 查询图书信息
• 管理借阅者信息 • 添加借阅者信息 • 删除借阅者信息 • 修改借阅者信息 • 查询借阅者信息
图书管理系统动态建模
活动图的基本要素
活动图的基本要素
状态、转移、分支、分叉和汇合、泳道、对象流等。
状态(State)
状态是指在对象的生命周期中满足某些条件、执行某些活动或等
待某些事件时的一个条件或状况。
活动图中的状态包括动作状态和活动状态。
动作状态
动作状态
对象的动作状态是活动图中最小单位的构造块,表示原子动作。 动作状态有三个特性: 原子性:是构造活动图的最小单位,不可再分; 不可中断性:一旦运行就不能中断,一直运行到结束; 瞬时性: 所占用时间极短,有时甚至可以忽略。 动作状态使用带圆端的方框表示
活动图的建模技术
活动图的建模技术
活动图用于对系统的动态行为建模,在对一个系统建模时,通 常有两种使用活动图的方式: 为工作流建模(动作流指所有动作状态之间的转换)
为对象的操作建模
活动图的建模步骤
使用活动图对系统建模 的步骤 ①确定活动图所关注的业务流程。 ②确定该业务流程中的业务对象。 ③确定该工作流的起始状态和终止状态。 ④从该工作流的起始状态开始,说明随着时间发生的动作和 活动,并在活动图中把它们表示成活动状态或动作状态。 ⑤将复杂的动作,或多次出现的动作集合归并到一个活动状 态,并对每个这样的活动状态提供一个可展开的单独的活动 图。 ⑥找出连接这些活动和动作状态的转移。 ⑦如果工作流中涉及重要的对象,则也把它们加入到活动图 中。
活动图示例
示例
描述打电话活动中的并发事件
摘机
拨号
分叉
说
听
挂机
汇合
泳道
泳道(swimlane)
“泳道”技术,是将一个活动图中的活动 状态进行分组,每一组表示一个特定的类、 人或部门,他们负责完成组内的活动。
图书馆管理系统 系统建模
宁波工程学院电信学院《软件模型》实验报告实验名称图书管理系统实例专业、班级计科07级软件工程(一)班姓名学号07401010112实验日期2010. 6. 20指导教师王宇12第十一次实验:图书管理系统实例实验目的:通过四次实验,以图书管理系统为例,使学生掌握使用UML 统一建模语言为软件系统建模的方法步骤。
实验内容与要求:图书管理系统需要满足三方面的需求,这三个方面分别是图书借阅者、图书馆工作人员(图书管理员)和图书馆管理人员(系统管理员)。
图书借阅者的需求是查询图书馆所存的图书、个人借阅情况及个人信息的修改;图书管理员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书记录;系统管理员的功能最为复杂,包括对图书借阅者和图书进行管理和维护,及系统状态的查看、维护。
(可参考的)图书管理系统结构图1、系统需求分析建立用例图并进行用例描述2、建立系统静态模型类图的建立3、建立系统动态模型建立顺序图、协作图、活动图和状态图4、程序代码生成选择Java语言实现类,并生成代码,可以一次生成一个类、一个组件或者一个包。
选择要生成代码的类,使用“Tools”→“Java”→“Generate Codes”命令生成代码,Rose帮助用户生成所需要的Java框架代码。
一.图书馆系统需求:31.1图书管理系统的域描述如下:在图书管理系统中,图书管理员为每个借阅者建立一个帐户,并给借阅者发放借阅卡(借阅卡包括借阅卡号、借阅者名),帐户中存储借阅者的个人信息、借阅者信息以及预定信息。
持有借阅卡的借阅者可以借阅书刊、返还书刊、查询书刊信息、预定书刊并取消预定,但这些操作都是通过图书管理员进行的,也即借阅者不直接与系统交互,而是图书管理员充当借阅者的代理与系统交互。
在借阅书刊时,需要输入所借阅的书刊名、书刊号,然后输入借阅者的图书卡号和借阅者名,完成提交所填表格,系统验证借阅者是否有效(在系统中存在帐户),若有效,借阅请求被接受,系统查询数据库系统,看借阅者所借阅的书刊是否存在,若存在,则借阅者可借出书刊,建立并在系统中存储借阅记录。
ch8-图书管理系统-动态设计-状态图
• 采用方法:面向对象的设计方法(OOD) • 内容: 1. 静态结构设计:类和对象的设计,架构设计 (设计模式),数据库设计 • 静态结构设计建模技术:类的建模(系统类 图),对象的建模,组件图,配置图,数据库 设计类图 2. 动态结构设计:状态、行为的设计 • 动态结构设计建模技术:状态建模(状态图), 行为建模(时序图、交互图)
我们的进度,在这里
在已有的状态图上加入新的状态和转换
我们的进度,在这里
重填 新办借阅 证 登录失败 点击新办借阅证 重填 开始 登录 登录成功 图书管理系 统主界面 点击补办借阅证 补办借阅 证 查询 提交
返回 显示新办借 阅证信息
显示旧借 补办 阅证信息
显示新借 阅证信息 返回
阅读“图书借阅”用例描述
在已有的状态图上加入新的状态和转换
重填 新办借阅 证 登录失败 点击新办借阅证 重填 开始 登录 登录成功 图书管理系 统主界面 点击补办借阅证 补办借阅 证 查询 显示旧借 阅证信息 补办 显示新借 阅证信息 返回 重填 图书借阅 点击图书归还 返回 重填 返回 图书归还 查询 显示借阅 信息 归还 归还成功 提交 返回 显示新办借 阅证信息
我们的进度,在这里 即将开始的任务——图书管理系统设计 阶段
今天的工作任务
我们的进度,在这里
1. 根据需求规格说明书,进行状态分析和状态 建模(属于动态结构设计) 2. GUI工程师准备开始进行图形用户界面设计.
提交内容
1. 系统状态图 2. GUI工程师在下周交付GUI设计图
我们的进度,在这里
我们的进度,在这里
点击图书借阅
借阅
所借图书 信息
点击注销
取消注销 注销 确认注销 结束
7图书管理系统动态结构设计协作图1
设计
编码
测试
我们的进度,在这里
协作图的用途
交付 软件工程实践
• 如果按组织对控制流建模,应该选择使用协作 图。协作图强调交互中实例间的结构关系以及 所传送的消息。协作图对复杂的迭代和分支的 可视化以及对多并发控制流的可视化要比时序 图好。
• 协作图有别于时序图的两点特性:
(1)协作图有路径
( 2)协作图有顺序号
4
可行性研究 领域分析 需求分析
链
设计
编码
测试
我们的进度,在这里
交付 软件工程实践
• 链是关联的实例,当一个类与另一个类之间有 关联时,这两个类的实例之间就有链,一个对 象就能向另一个对象发送消息。所以链是对象 间的发送消息的路径。
• 要在协作图中增加消息,必须先建立对象之间 的链接。
• 链接一般建立在两个对象或者两个类实例之间, 也可以建立反身链接。
只是它们侧重点有所不同。
11
图书管理系统中的一个协作图
2
可行性研究 领域分析 需求分析
设计
编码
测试
交付 软件工程实践
我们的进度,在这里
学习情境 知识点:协作图(Collaboration Diagram)
• UML中的交互图是用于对系统动态方面的建模, 交互图又可分为时序图和协作图。
• 协作图是动态视图的另一种表现形式,它强调 参加交互的各对象结构的信息。
7
可行性研究 领域分析 需求分析
设计
编码
测试
交付 软件工程实践
我们的进度,在这里
1.2 协作图的建模技术
• 对系统动态行为建模,当按组织对控制流建模时,一般使用协作图。 • 使用协作图对系统建模时,可以遵循如下策略。 (1)设置交互的语境,语境可以是系统、子系统、操作、类、用例或用例的脚
图书馆管理系统建模设计(基于UML)
图书馆管理系统建模设计-------基于UML一、图书馆管理系统需求分析1.1系统目标设计图系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。
能够对图书进行注册登记,也就是将图书的基本信息(如:书的编号、书名、作者、价格等)预先存入数据库中,供以后检索。
能够对借阅人进行注册登记,包括记录借阅人的姓名、编号、班级、年龄、性别、地址、电话等信息。
提供方便的查询方法。
如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。
提供对书籍进行的预先预订的功能。
提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。
能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。
提供较为完善的差错控制与友好的用户界面,尽量避免误操作。
1.2系统功能需求分析(1) 读者管理:读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注等。
(2) 书籍管理:书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注。
(3) 借阅管理:包括借书,还书,预订书籍,续借,查询书籍,过期处理和书籍丢失后的处理。
(4)系统管理:包括用户权限管理,数据管理和自动借还书机的管理满足以上需求的系统主要包含有一下几个子系统(1)基本业务功能子系统:该系统中主要包含了借书还书和预订等功能。
(2)基本数据录入功能子系统:该子系统主要包含有书籍信息和读者信息录入功能。
(3)信息查询子系统:包含了多功能的查询书籍信息和读者信息。
(4)数据库管理功能子系统:主要包含了借阅信息管理功能,书籍信息管理功能和预订信息管理功能。
(5)帮助功能子系统。
下图为该图书馆管理系统的主要功能模块图:图书馆管理系统基本业务功能基本数据录入功能信息查询功能数据库管理功能帮助功能借书还书预订书籍信息录入借阅者信息录入书籍信息查询读者信息查询借阅信息管理书籍信息管理预订信息管理图1:图书馆管理系统功能模块图1.3功能描述(1)借书。
图书管理系统的分析与设计——基于UML的系统建模 ppt课件
8. 登录
ppt课件
用例编号 用例名 用例描述 参与者 前置条件 后置条件 基本路径
US08 Log In (登录) 完成书刊的添加、修改或删除功能 图书管理员 无 参与者可以启动系统并使用系统所提供的功能
(1)系统提示用户输入用户名和密码。
(2)用户输入用户名和密码。
(3)系统验证输入的用户名和密码,若正确(E-1),则用户登 录到系统中。
E-3: 预定信息不存在,系统显示提示信息,用例终止。
17
5. 维护借阅者信息
ppt课件
用例编号 US05
用例名
Maintain Borrower Info
用例描述 完成系统添加、修改或删除借阅者信息功能
参与者
图书管理员
前置条件 在这个用例开始前,Librarian必须登录到系统中
后置条件 如果这个用例成功,系统添加、修改或删除借阅 者信息。
Librarian 描述:图书管理员维护系统,可以创建、修改、删除借阅 者的信息,可以添加、编辑、删除书刊信息,即维护目录, 还可以添加、编辑、删除物理书刊信息。
示例:图书管理员。 8
2.2 识别用例
ppt课件
前面已经识别出了参与者,通过对需求的进一步 分析,可以确定系统中有如下用例存在: Borrow Book (借书) 本用例提供了借阅物理书刊的功能。 Return Book (还书) 本用例提供了返还物理书刊的功能。 Reserve Title (预定书刊) 本用例提供了预定书刊的功能。
ppt课件
图书管理系统的分析与设计 ——基于UML的系统建
模
2011.6.1
1
UML建模概述
ppt课件
2
ppt课件
图书管理系统的UML建模分析与研究
图书管理系统的UML建模分析与研究摘要:UML是一种常用的建模语言,它具有定义较好、功能强大的优点。
本篇文章对图书管理系统里如何采用UML建模语言作了详细的分析和设计,而且在分析图书馆系统需求和功能的同时给出了整个系统建模的设计分析,最后对整个系统进行总结。
Key:UML;图示管理系统;建模:TP311.52随着图书馆规模的壮大,各种图书信息量成倍增大,传统的人工管理方式必然会导致图书馆管理杂乱无章,从而影响图书馆的正常运作。
因此为了保证整个图书馆正常运行和管理,这时就需要一套新的有效、合理、实用和规范的系统,来满足管理需求。
然而在进行管理系统开发之前,我们必须先做好需求分析,分析越是详细越是节约系统开发所需的时间。
1 UML简介1.1 UML的概念UML即统一建模语言,是一种面向对象技术领域内的标准建模语言。
它采用统一的图形和符号来代表模型元素,可避免一些不太必要的差异存在,这就是图书管理系统开发所需的成熟性的建模语言。
1.2 UML建模机制UML主要包括静态建模机制与动态建模机制两种形式。
(1)静态建模机制主要有力图、对象图、类图、组件、包等。
(2)动态建模之地主要有消息、协作图、顺序图、活动图等。
2 图书管理系统需求与功能分析2.1 图书管理系统的需求图书管理系统是用来为学生提供方便的,他们对系统的需求:(1)能依照譬如书名、作者、编号等多种方式来查询图书馆的藏书,以便更好的借阅、续借、预借和归还;(2)能及时的查询和更新图书借阅情况、浏览动态信息和自己的基本资料等。
图书管理人员对系统的需求:(1)能便于查询图书和图书借阅情况,对借书还书进行处理,以及浏览图书动态信息;(2)能随时更新一些学生借阅图书超期通知、及图书借阅情况、藏书情况,方便学生能及时获取一些借书信息。
图书系统管理对系统的需求:(1)能提供录入、修改、登记、注销图书等功能;(2)能轻松进行新生信息登记和已毕业学生信息的注销等信息。
基于UML图书管理系统的建模与设计【呕心沥血整理版】
基于UML图书管理系统的建模与设计张毅(新疆信息工程学校乌鲁木齐 830013 )【摘要】UML是一种定义良好的、功能强大的且普遍实用的建模语言。
本文借助UML 建模语言对图书管理系统进行了详细的分析和设计,同时在需求分析的基础上给出了系统的总体用例图、顺序图和活动图等,最后对此进行了归纳总结。
【关键词】 UML , 图书管理系统,系统分析Modeling and design of Library management system based on UMLZhang Yi( Information Engineering School,Xinjiang,Urumqi , 830013)[Abstract]UML is a kind of well—defined ,powerful and useful modelling language.This paper applies UML to design the library mangement system, and the requirement analysis of system is done。
Based on the requirement analysis ,Based on the requirement analysis and use case model , the static diagram and the dynanic model are given。
Finally ,summarize the technology。
[Key words]UML , Library Management System,System Analysis中图分类号:TP311。
1 文献标识码:A 0引言随着社会的发展,各大高校图书馆规模的不断扩大,有关图书的各种信息量成倍增加.,传统的人工方式管理会导致图书馆管理上的混乱,影响整个图书馆的运作和管理。
软件工程UML作业图书管理系统建模
软件工程UML建模课题:图书管理系统建模专业名称:软件工程姓名:完成时间:一、图书馆管理系统的需求分析1、系统功能需求图书管理系统实现如下几个方面的功能:借阅者可以通过网络查询书籍信息和预定书籍;借阅者能够借阅书籍和还书;图书管理员能够处理借阅者的借阅和还书请求;系统管理员可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者帐户,增加和删除书籍。
系统主要包括以下几个模块:基本数据维护模块;基本业务模块;数据库管理模块;信息查询模块。
2、基本数据维护模块基本数据维护模块包括的主要功能模块:添加借阅者帐户、修改更新借阅者帐户信息、添加书目、修改和更新书目信息、添加书籍、删除书籍。
3、基本业务模块基本业务模块包含的功能:借书、还书、书籍预留、取消书籍预定。
4、数据库模块数据库模块的功能:借阅信息管理、书籍信息管理、帐户信息管理、书籍预留信息管理。
5、信息查询模块信息查询模块主要是查询数据库中的相关信息:查询书籍信息、查询借阅者信息。
二、图书管理系统的UML基本模型创建用例图之前首先需要确定参与者。
系统的参与者主要有三类:①读者(也可称为借阅者)②图书馆管理员③图书馆管理系统维护者2、图书管理系统用例图借阅者请求服务的用例图:图书馆管理员处理借书、还书等的用例图:系统管理员进行系统维护的用例图3、图书管理系统的时序图系统管理员添加书籍的时序图:系统管理员添加借阅者帐户的时序图:系统管理员删除书目的时序图:图书管理员处理书籍借阅的时序图:图书管理员处理书籍归还的时序图:借阅者查询书籍信息的时序图:借阅者预留书籍的时序图:4、系统的协作图系统管理员添加书籍的协作图系统管理员删除书籍的协作图图书管理员处理借书的协作图图书管理员处理还书的协作图借阅者预留书籍的协作图5、系统的状态图书的状态图借阅者帐户的状态图6、系统的活动图借阅者的活动图图书管理员的活动图(1)系统管理员维护借阅者帐户的活动图(2)系统管理员进行书目信息维护的活动图(3)系统管理员维护书籍信息的活动图三、系统中主要的类1、参与者相关的类2、系统中用到的其他类3、各个类之间的关系四、系统的配置与实现1、系统的组件图业务对象组件图用户界面的组件图2、系统的配置图。
4.1 图书管理系统动态建模_tgh
软 件 开 发 过 程 与 U M L 建 模
任务3
活动图组成-动作流、分支和合并
动作流是指所有动作状态之间的转换。 分支是软件系统流程中很常见的一种逻辑,它一 般用来表示对象所具有的条件行为 。 合并包括两个带条件的入转换和一个出转换(即
两个入口和一个出口),用来表示从对应的分支
开始的条件行为的结束。
事件名(参数表|条件)/动作表达式。
软 件 开 发 过 程 与 U M L 建 模
2.1状态图基本符号表示
状态描述
任务2
2.2状态描述(状态图标)的细节
name entry / Action_1 exit / Action_2 do / Action_3
入口动作:进入该状态发生的动作 出口动作:离开该状态发生的动作 动作:处于该状态发生的动作
【状态图说明】增加图书 外借 书籍在未变成图书馆在库书籍时,为新加书籍状态 。书籍 正常 处于在库状态时既可以预订也可以外借,外借后变为 借出 借书 在库中 时也可以外借,超出预订时间期限则 状态。处于预订状态 过期 还书 从预订状态直接转为可用状态。借阅者在规定的预订时间 内也可以考虑取消预订,取消预订后书籍的状态转为可用。 取消预借 预借 外借书籍归还后变为可用状态。
软 件 开 发 过 程 与 U M L 建 模
任务3
活动图组成-分叉与汇合
分叉用于将动作流分为两个或
多个并发运行的分支,每一个分
叉可以有一个入转换和两个或多 个出转换,并且每个转换都可以 是独立的控制流; 汇合则用于将不同的分支汇聚 一起,当所有分支的控制流都达 到汇合点后,控制才能继续往下 进行,每个汇合可以有两个或多 个输入转换和一个输出转换。
软 件 开 发 过 程 与 U M L 建 模
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
顺序图
任务目标 了解顺序图的基本功能和绘制方法,并绘 制图书管理系统的顺序图
顺序图
顺序图概述
描述了对象之间传送消息的时间顺序,它用来表示用例中的行为顺 序,当执行一个用例行为时,顺序图中的每条消息对应了一个类操作 中引起转换的触发事件。
顺序图
顺序图组成-对象、生命线
对象:顺序图中的对象的符号与对象图中的对象的符号是一样的,都 是使用矩形将对象名称包含起来,并且在对象名称下加下划线。 生命线:生命线是一条垂直的虚线,表示顺序图中的对象在一段时间 内的存在。每个对象的底部都带有生命线。
活动图示例
示例
图书馆管理系统中需要提供对用户信息的修改功能,请使用活动 图描述该用例。
录入读者姓名
关键字 分支
从读者名册中查 找读者信息 [else] [查找成功] 编辑读者信息 显示读者记录不 存在
监护条件
保存读者信息
分叉和汇合
分叉(fork)和汇合(join) 在UML中使用分叉和汇合表示并行发生的事件流 分叉表示把一个单独的控制流分成两个或多个并发的控制 流。一个分叉可以有一个进入转移和两个或多个输出转移, 每一个转移表示一个独立的控制流。 汇合表示两个或多个并发控制流的同步发生,一个汇合可 以有两个或多个进入转移和一个输出转移。 分叉和汇合应该是平衡的 分叉和汇合在图形上都使用同步条来表示,同步条通常用 一条粗的水平线表示
状态是对象操作的前一次活动的结果,通常情况下,状态由对象的属性值 以及指向其它对象的链来决定的。
“SQL Server 2005实例教程”(图书对象)被借出(在借状态); “软件测试实例教程”(图书对象)在图书馆里(在库状态); 小王(读者对象)在校(在校状态); 小王的借书证(借书证对象)可以用(有效状态); 小王的借书证(借书证对象)丢失(挂失状态); 小王(读者对象)已毕业(毕业状态); 小王的借书证(借书证对象)不可以用(无效状态)。
活动状态
活动状态
表示的是可以分割的动作 特点是:它可以被分解成其他子活动或动作状态,它能够被中断, 占有有限的时间。 活动状态可以理解为一个组合,它的控制流由其他活动状态或动作 状态组成。 图形表示同动作状态
活动图中的特殊状态
活动图中的特殊状态
活动图中还有一类特殊的状态,用于表示活动的开始和结束, 分别称为起始状态(start state)和终止状态(end state)。 起始状态表示一个工作流程的开始,用实心圆点来表示 终止状态表示了一个活动图的最后和终结状态,用实心圆 点外加一个小圆圈来表示
转移
转移(transition)
转移是两个状态间的一种关系,表示对象将在当前状态中 执行动作,并在某个特定事件发生或某个特定的条件满足时 进入后继状态。 在UML中用一条简单的直线表示一个转移 示例:打电话
摘机
初始状态
转换
拨号 通话
动作状态
挂机
终止状态
分支
分支(Branch) 分支用于描述基于某个条件的可选择路径。 一个分支可以有一个进入转移和两个或多个输出转移。 在每条输出转移上都有监护条件表达式保护,当且仅当监 护条件表达式为真时,该输出路径才有效。 在所有输出转移中,其监护条件不能重叠,而且它们应该 覆盖所有的可能性。 分支在图形表示上 用菱形表示
活动图的建模技术
活动图的建模技术
活动图用于对系统的动态行为建模,在对一个系统建模时,通 常有两种使用活动图的方式: 为工作流建模(动作流指所有动作状态之间的转换)
为对象的操作建模
活动图的建模步骤
使用活动图对系统建模 的步骤 ①确定活动图所关注的业务流程。 ②确定该业务流程中的业务对象。 ③确定该工作流的起始状态和终止状态。 ④从该工作流的起始状态开始,说明随着时间发生的动作和 活动,并在活动图中把它们表示成活动状态或动作状态。 ⑤将复杂的动作,或多次出现的动作集合归并到一个活动状 态,并对每个这样的活动状态提供一个可展开的单独的活动 图。 ⑥找出连接这些活动和动作状态的转移。 ⑦如果工作流中涉及重要的对象,则也把它们加入到活动图 中。
任务解决
补充:
绘制图书管理系统读者活动图
活动图 VS 流程图
流程图着重描述处理过程,它的主要控制结构是顺序、分支和循 环,各个处理过程之间有严格的顺序和时间关系;而活动图描述的 是对象活动的顺序关系所遵循的规则,它着重表现的是系统的行为, 而非系统的处理过程; 活动图能够表示并发活动的情形,而流程图不能; 活动图是面向对象的,而流程图是面向过程的。
状态图组成
状态图组成-状态
1.名称(name) 是可以把该状态和其他状态区分开的字符串;状态也可能是匿名的,即没有名称。 2.进入/退出动作(entry/exit action) 分别指进入和退出这个状态时所执行的动作。 3.内部转换(internal transition) 不会导致状态改变的转换。 4.子状态 (substate) 主要是在状态的嵌套结构中,包括不相交(顺序活动)或并发(并发活动)子状态。 5.延迟事件 (deferred event) 是指在该状态下暂不处理,但将推迟到该对象的另一个状态下排队处理的事件列表。
任务解决
•"新增读者"用例属于读者信息管理中的一个功能,主要用于 在系统中增加新的读者信息,其具体的办理流程是:
(1)"读者"填写申请表,并交给"图书管理员"; (2)"图书管理员"将申请表中的信息通过录入界面,输入 到图书管理系统; (3)系统中的"业务逻辑"组件将判断输入的信息是否合法; (4)如果不合法则转入步骤(5),否则转入步骤(6); (5)显示"添加错误信息",转到(8); (6)在数据库添加相信的用户信息; (7)显示"添加成功信息"; (8)结束。
活动图示例
示例
描述打电话活动中的并发事件
摘机
拨号
分叉
说
听
挂机
汇合
泳道
泳道(swimlane)
“泳道”技术,是将一个活动图中的活动 状态进行分组,每一组表示一个特定的类、 人或部门,他们负责完成组内的活动。
“泳道”技术来描述每个活动是由哪个对 象负责完成 UML中,每个组被称为一个泳道,用一条 垂直的实线与邻居分开 每个活动都明确属于一个泳道,不可以跨 越泳道,而转移则可以跨越泳道
状态图组成
状态图组成-事件
“事件”指的是发生的且引起某些动作执行的事情,即事件表示在 某一特定的时间或空间出现的能够引发状态改变的运动变化。
状态图组成
状态图组成-转换
转换表示当一个特定事件发生或者某些条件满足时,一个源状态下 的对象完成一定的动作后将发生状态转变,转向另一个称之为目标状 活动图的图形表示 熟悉活动图的应用 任务 根据图书管理系统开发进度,用活动图 描述系统中已知用例的业务过程: 1.描述新增读者用例 2.描述删除读者用例
任务描述:新增读者活动图
“新增读者"用例属于读者信息管理中的一个功能,主要用 于在系统中增加新的读者信息,其具体的办理流程是: (1)"读者"填写申请表,并交给"图书管理员"; (2)"图书管理员"将申请表中的信息通过录入界面,输入到 图书管理系统; (3)系统中的"业务逻辑"组件将判断输入的信息是否合法; (4)如果不合法则转入步骤(5),否则转入步骤(6); (5)显示"添加错误信息",转到(8); (6)在数据库添加相信的用户信息; (7)显示"添加成功信息"; (8)结束。
活动图的基本概念
活动图概述
活动图(Activity Diagram)显示活动动作及其结果,着重描述操作
(方法)实现中所完成的工作以及用例实例或对象中的活动。
活动图的主要目的是描述动作(执行的工作和活动)及对象状态改变 的结果。
使用活动图主要目的: 描述一个操作执行过程中(操作实现的实例化)所完成的工作(动作); 描述对象内部的工作; 显示如何执行一组相关的动作,以及这些动作如何影响它们周围的对象; 显示用例的实例是如何执行动作以及如何改变对象状态; 说明一次商务活动中的参与者、工作流、组织和对象是如何工作的。
活动图的基本要素
活动图的基本要素
状态、转移、分支、分叉和汇合、泳道、对象流等。
状态(State)
状态是指在对象的生命周期中满足某些条件、执行某些活动或等
待某些事件时的一个条件或状况。
活动图中的状态包括动作状态和活动状态。
动作状态
动作状态
对象的动作状态是活动图中最小单位的构造块,表示原子动作。 动作状态有三个特性: 原子性:是构造活动图的最小单位,不可再分; 不可中断性:一旦运行就不能中断,一直运行到结束; 瞬时性: 所占用时间极短,有时甚至可以忽略。 动作状态使用带圆端的方框表示
小结
• 活动图是UML中用于对系统的动态方面建模的五种图中的一种,一张活动图从
本质上说是一个流程图,显示从活动到活动的控制流 • 多数情况下,活动图用于对业务过程中顺序和并发的工作流程进行建模。活 动图中的基本要素包括状态、转移、分支、分叉和汇合、泳道、对象流。
• 状态是指在对象的生命周期中满足某些条件、执行某些活动或等待某些事件
绘制状态图
绘制图书管理系统图书状态图
(1)打开工程book.mdl (2)新建状态图 (3)添加状态 (4)设置状态转移事件 (5)添加活动 (6)调整大小和位置
状态图
活动图 VS 状态图
状态图描述类的对象所有可能的状态以及事件发生时状态的转移条 件。通常,状态图是对类图的补充。在实用上并不需要为所有的类画 状态图,仅为那些有多个状态其行为受外界环境的影响并且发生改变 的类画状态图; 而活动图描述满足用例要求所要进行的活动以及活动间的约束关 系,有利于识别并行活动。