图书管理系统类图(UML)
- 格式:doc
- 大小:45.00 KB
- 文档页数:2
UML作业第三次:分析《书店图书销售管理系统》,绘制类图分析书店图书销售管理业务,提取相关的类,并画出类图⼀、要求及步骤step2:以《书店图书销售管理》系统为例,分析系统中的类(属性、⽅法)step3: 分析上述类之间的关系step4:⽤PlantUML 编写《书店图书销售管理》类图脚本;step5:在线绘制《书店图书销售管理》类图。
在线绘制UML图的⼀.1 @startuml22 Dy01 "1" *-- "many" Dy02 : contains34 Dy03 o-- Dy04 : aggregation56 Dy05 --> "1" Dy067 @enduml1 @startuml2 class Car34 Driver - Car : drives >5 Car *- Wheel : have 4 >6 Car -- Person : < owns78 @enduml1 @startuml2 class Student {3 Name4 }5 Student "0..*" - "1..*" Course6 (Student, Course) .. Enrollment78 class Enrollment {9 drop()10 cancel()11 }12 @enduml⼆.《书店图书销售管理》的类图元素员⼯:姓名,性别,员⼯编号图书类:书名,作者,售价,出版社,图书编号买家秀:姓名,性别,电话,邮箱,地址订单类:订单编号,图书编号,⽇期,价格,书名销售汇总:每⽉销售数量,销售总额,图书编号三.《书店图书销售管理》脚本程序1 @startuml2 class 员⼯{3 -姓名:string4 -性别:string5 -员⼯编号:int6 }78 class 图书{9 -书名:string10 -作者:string11 -售价:char12-出版社:string13 -图书编号:int14 }1516 class 买家{17 -姓名:string18 -性别:string19 -电话:int20 -邮箱:string21 -地址:string22 }2324 class 销量汇总{25 -每⽉销售数量:int26 -销售总额:int27-图书编号:int28 }2930 class 订单{31 -订单编号:int32 -图书编号:int33 -⽇期:int34 -价格:int35-书名:string36 }3738 员⼯ -up-> 图书39 员⼯ -right-> 订单40 员⼯ -down-> 销量汇总41 买家 -up-> 图书42 买家 -left-> 订单43 @enduml四:《书店图书销售管理》类图。
软件系统分析与设计实验报告学院:计算机科学与技术学院专业:软件工程学号:*********姓名:***实验名称:图书管理系统用例建模时间:一、实验内容与要求本实验要求学生对学校的图书馆管理系统进行需求分析,对系统功能进行用例建模,画出用例图,类图以及相应的时序图。
在使用UML对系统建模时,学会使用UML建模工具,熟悉工具中的功能。
二、用例分析1、读者“借书还书系统”用例图(f还书(from Use Cases)1.1、行为者:主要行为者:读者。
1.2、前置条件:读者进入图书管理系统。
1.3、事件流:1.3.1、主要事件流:1.3.1.1:读者检索所需图书信息,并查看;1.3.1.2:读者检索到所需图书,登录系统,开始借书;1.3.1.3:系统查询图书信息,图书数目是否可借;1.3.1.3.1:图书显示可借,借书成功;1.3.1.3.2:图书显示不可借,借书失败;1.3.1.4:进入续借图书界面,续借图书;1.3.1.5:系统查看预约记录,1.3.1.5.1:没有冲突,续借成功;1.3.1.5.2:有冲突,续借失败;1.3.3.1:1.3.1.6:读者归还图书;1.3.1.6.1:归还时间没有逾期,归还成功;1.3.1.5.2:归还时间逾期,逾期处罚,归还成功;1.3.2、备选事件流:1.3.2.1:图书检索信息失败,未检索到图书,重新输入信息检索;1.3.2.2:未曾检索到用户检索的图书,系统显示相关联的信息的图书;1.3.2.3:用户名或密码输入错误,登录系统失败,重新输入用户名或密码登录;1.3.2.4:系统显示图书不可借后,进入图书预约界面,输入信息预约图书;1.3.3、异常事件流:1.3.3.1:读者登录系统失败,未曾注册用户;1.3.3.1.1:返回系统注册用户后,重新登录。
1.4、后置条件:退出系统。
1.5、1.6、扩展点:无。
2、“图书信息管理系统”用例图新书信息录入(f逾期通知(from Use Cases)(from Use Cases)2.1、行为者:主要行为者:管理员;2.2、前置条件:管理员打开图书信息管理系统;2.3、事件流:2.3.1:主要事件流:2.3.1.1:图书管理员输入管理员登录信息,登录系统;2.3.1.2:进入图书信息管理界面,查看已有图书信息,是否有需要购入图书;2.3.1.2.1:录入新购进图书信息,并确认;2.3.1.3:进入读者信息管理界面,管理已有用户信息;2.3.1.4:进入信息通知界面,查看已有用户图书借阅、预约情况;2.3.1.4.1:查看读者所预约图书,自动查询图书信息,确认是否已有可借图书,有则通知读者;2.3.1.4.2:查询读者已借图书信息,根据已借时间及归还时间分类;2.3.1.4.2.1:所借图书即将逾期,启动系统提醒功能;2.3.1.4.2.2:所借图书已经逾期,启动逾期及处罚通知功能;2.3.2:备选事件流:2.3.2.1:管理员用户名或登录名错误,重新登录;2.3.2.2:需要购进新图书,存储信息,通知相关人员;2.3.2.3:读者预约图书没有可借图书,不予通知;2.3.2.4:预约通知提醒后,删除该预约记录;2.3.2.5:读者所借图书距离归还时间仍很久,无需通知;2.3.3:异常事件流:2.3.3.1:登录失败超过一定次数后,系统冻结该用户名,一段时间后可以重用;2.4、后置条件:退出系统;2.5、扩展点:无。
UML作业第三次:分析《书店图书销售管理系统》,绘制类图⼀. 类图语法学习⼩结(类间关系的表⽰⽅法)1.抽象类和接⼝我们⽤关键字abstract或abstract class来定义抽象类(抽象类⽤斜体显⽰).也可以使⽤interface,annotation和enum关键字.abstract class AbstractListabstract AbstractCollectioninterface Listinterface CollectionList <|-- AbstractListCollection <|-- AbstractCollectionCollection <|- ListAbstractCollection <|- AbstractListAbstractList <|-- ArrayListclass ArrayList {Object[] elementDatasize()}enum TimeUnit {DAYSHOURSMINUTES}annotation SuppressWarnings2.包我们可以使⽤package声明包(包可以被定义为嵌套).@startumlpackage "Classic Collections" #777777 {Object <|-- ArrayList}package net.sourceforge.plantuml {Object <|-- Demo1Demo1 *- Demo2}@enduml3.命名空间在包中,类的名称是该类的唯⼀标识符,这意味着在不同的包中不能有两个同名的类.在这种情况下,应该使⽤名称空间⽽不是包。
@startumlclass BaseClassnamespace net.dummy #777777 {.BaseClass <|-- PersonMeeting o-- Person.BaseClass <|- Meeting}namespace net.foo {net.dummy.Person <|- Person.BaseClass <|-- Personnet.dummy.Meeting o-- Person}BaseClass <|-- net.unused.Person@enduml4.关系类我们可以在定义了两个类之间的关系后定义⼀个关系类 association class.@startumlclass Student {Name}Student "0..*" - "1..*" Course(Student, Course) .. Enrollmentclass Enrollment {drop()cancel()}@enduml5.帮助布局有时,帮助布局并不完美.我们可以使⽤together关键字将⼀些类组合在⼀起:布局引擎将尝试将它们组合在⼀起(就像它们在同⼀个包中).@startumlclass Bar1class Bar2together {class Together1class Together2class Together3}Together1 - Together2Together2 - Together3Together2 -[hidden]--> Bar1Bar1 -[hidden]> Bar2@enduml⼆. 书店图书管理系统类:图书|会员|会员卡|⼯作⼈员|售卖信息类的属性:图书:图书编号:stringISDN号:string书名:string作者:string出版社:string定价:float出版⽇期:date会员:会员编号:string姓名:string性别:string出⽣⽇期:date职业:string电话:string地址:string邮编:int邮箱:string会员卡:会员编号:string办证⽇期:date会员积分:string会员等级:string补办⽇期:date⼯作⼈员:⼯作⼈员编号:string姓名:string性别:string出⽣⽇期:date岗位:string学历:string职称:string售卖信息:图书编号:string出售⽇期:date书名:string会员编号:string⼯作⼈员编号:string三. 上述类之间关系会员(1)--(1)会员卡会员卡|⼯作⼈员 -- 出售 -- 售卖信息|图书图书(1)<--(n)售卖信息(n)-->(1)会员卡(n)|\/(1)⼯作⼈员四. 类图脚本程序@startumlskinparam class {BackgroundColor F0F0F0ArrowColor 919191BorderColor B5B5B5}skinparam stereotypeCBackgroundColor CDC5BF package "图书信息" #D6D6D6{class图书{- 图书编号:string- ISDN号:string- 书名:string- 作者:string- 出版社:string- 定价:float- 出版⽇期:date}class售卖信息{- 图书编号:string- 出售⽇期:date- 书名:string- 会员编号:string- ⼯作⼈员编号:string}}package "会员信息" <<Frame>> #D6D6D6{ class会员{- 会员编号:string- 姓名:string- 性别:string- 出⽣⽇期:date- 职业:string- 电话:string- 地址:string- 邮编:int- 邮箱:string}class会员卡{- 会员编号:string- 办证⽇期:date- 会员积分:string- 会员等级:string- 补办⽇期:date}}class⼯作⼈员{- ⼯作⼈员编号:string- 姓名:string- 性别:string- 出⽣⽇期:date- 岗位:string- 学历:string- 职称:string}会员卡"1" -- "1"会员图书"1" <-left- "n"售卖信息售卖信息"n" -right-> "1"会员卡售卖信息"n" --> "1"⼯作⼈员@enduml五.类图。
图书馆管理系统一、用例图本系统拟定的参与者有两类:读者和图书管理员。
1.图书管理员所包含的用例(1)登录系统:管理员可以通过登录该系统进行各项功能的操作。
(2)书籍管理:涉及对书籍的增、删、改等。
(3)书籍借阅管理:涉及借书、还书、预订、书籍逾期解决和书籍丢失解决等等。
(4)读者管理:包含对读者的增删改等操作。
(5)自动借书机的管理。
2.读者所包含的用例(1)登录系统(2)借书:进行借书业务。
(3)还书:读者具有的还书业务。
(4)查询:包含对个人信息和书籍信息的查询业务(5)预订:读者对书籍的预订业务。
(6)逾期解决:就是书籍过期后的缴纳罚金等。
(7)书籍丢失解决:对书籍丢失后的不同措施进行解决。
(8)自动借书机的使用等。
该图书馆管理系统的用例图如下:二、系统的顺序图顺序图是显示对象之间交互的图,这些对象是准时间顺序排列的。
该图书馆管理系统重要具有以下几个重要的顺序图:(1)借书顺序图(2)还书顺序图1、借书顺序图2、还书顺序图三、系统的状态图图书馆的书籍状态图如图5所示。
状态图说明:书籍在未变成图书馆在库书籍时,为新加书籍状态。
书籍处在在库状态时既可以预订也可以外借,外借后变为借出状态。
处在预订状态时也可以外借,超过预订时间期限则从预订状态直接转为可用状态。
借阅者在规定的预订时间内也可以考虑取消预订,取消预订后书籍的状态转为可用。
外借书籍归还后变为可用状态。
四、系统的活动图活动图描述的是某流程中的任务的执行,活动图描述活动是如何协同工作的,当一个操作必须完毕一系列事情,而又无法拟定以什么样的顺序来完毕这些事情时,活动图可以更清楚地描述这些事情。
下面描述了图书馆系统的借书、还书和预订的活动图。
1.借书活动图管理员一方面要扫描读者的借书证,检查证件是否符合图书馆借书条件,若该读者的借书数量尚未达成最大规定数量,并且其所借书籍均未属于过期范围,则符合借书条件。
则再扫描书籍条形码,检查书籍是否是不可借书籍或者已经被预订,若被预订,则取消预订,方可借书。
图书管理系统--------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所示。
图书馆管理系统一.图书馆管理系统需求分析1、系统目标设计系统开发的总目标是实现内部图书借阅管理的系统化、规范化和自动化。
能够对图书进行注册登记,也就是将图书的基本信息(如:书的编号、书名、作者、价格等)预先存入数据库中,供以后检索。
能够对借阅人进行注册登记,包括记录借阅人的姓名、编号、班级、年龄、性别、地址、电话等信息。
提供方便的查询方法。
如:以书名、作者、出版社、出版时间(确切的时间、时间段、某一时间之前、某一时间之后)等信息进行图书检索,并能反映出图书的借阅情况;以借阅人编号对借阅人信息进行检索;以出版社名称查询出版社联系方式信息。
提供对书籍进行的预先预订的功能。
提供旧书销毁功能,对于淘汰、损坏、丢失的书目可及时对数据库进行修改。
能够对使用该管理系统的用户进行管理,按照不同的工作职能提供不同的功能授权。
提供较为完善的差错控制与友好的用户界面,尽量避免误操作。
2、系统功能需求分析(1) 读者管理:读者信息的制定、输入、修改、查询,包括种类、性别、借书数量、借书期限、备注等。
(2) 书籍管理:书籍基本信息制定、输入、修改、查询,包括书籍编号、类别、关键词、备注。
(3) 借阅管理:包括借书,还书,预订书籍,续借,查询书籍,过期处理和书籍丢失后的处理。
(4)系统管理:包括用户权限管理,数据管理和自动借还书机的管理满足以上需求的系统主要包含有一下几个子系统(1)基本业务功能子系统:该系统中主要包含了借书还书和预订等功能。
(2)基本数据录入功能子系统:该子系统主要包含有书籍信息和读者信息录入功能。
(3)信息查询子系统:包含了多功能的查询书籍信息和读者信息。
(4)数据库管理功能子系统:主要包含了借阅信息管理功能,书籍信息管理功能和预订信息管理功能。
(5)帮助功能子系统。
二、系统动态建模1、用例图、图书馆管理系统的用例图从用例图中我们可以看出管理员和读者之间对本系统所具有的用例。
管理员所包含的用例有:(1)登录系统:管理员可以通过登录该系统进行各项功能的操作(2)书籍管理:包括对书籍的增删改等。
学号 **********
统一建模语言UML B
实验报告
实验4 状态图和活动图
学生姓名黄源
专业、班级14软件(2)班
指导教师高天迎
成绩
计算机与信息工程学院
年月日
一、实验目的
在熟悉状态、活动概念与应用的基础上,掌握状态图和活动图的建立。
1.理解什么状态和状态图。
2.掌握状态图的建立。
3.掌握活动图的建立。
二、实验内容
1.建立图书管理系统的状态图。
2.建立图书管理系统的活动图。
三、实验思想
1.分析:根据图书管理系统的需求分析和用例模型,对系统中的用例进行动态建模。
2.在Rational Rose工具中绘制状态图和活动图。
四、实验结果
1.状态图:
(1)登陆
(2)增添新书
(3)借阅者
2.活动图
(1)借阅者(2)图书管理员
(3)系统管理员管理借阅者信息(4)系统管理员维护图书信息
五、实验心得
这次实验学习的是状态图和活动图,感觉这次实验和前面实验相比较要容易一些,这些图按顺序来的,感觉会和我们传统的思维模式比较吻合,用心去绘制就很容易画出来。
学号 **********
统一建模语言UML B
实验报告
实验3 类图
学生姓名黄源
专业、班级14软件(2)班
指导教师高天迎
成绩
计算机与信息工程学院
2016年 10 月 24 日
一、实验目的
在熟悉类图概念与应用的基础上,掌握类图的建立。
1.理解类的基本概念。
2.掌握如何从需求分析中抽象出类的方法。
3.掌握绘制类的操作方法。
二、实验内容
建立图书管理系统的类图。
三、实验思想
对图书馆管理系统进行分析,确定类,明确类的含义和职责,确定类的属性和操作,进而确定类之间的关系。
调整和细化类及其关系,解决重复和冲突,绘制类图。
四、实验结果
五、实验心得
通过本次实验,我学会了很多东西。
掌握了应用Rational Rose工具来绘制UML图形及方法。
绘制类图时要注意变量名和函数名的类型,防止输入错误。
以后要不断的使用这些知识,熟练掌握。