图书管理系统uml实验报告.doc
图书管理系统uml实验报告.doc

面向对象分析与设计大作业学院:计算机科学与工程学院班级:计算机软件 3学生姓名:陈俊伟学号:2174指导老师:苏锦钿提交日期:华南理工大学面向对象分析与设计大作业课程实验报告实验题目 :_____ 图书管理系统 uml 图__________________________ 姓名 :___ 陈俊伟 ________学号:_ 2174_____班级 : ___09 软件 3 班________ 组别 : ________合作者 : __________________指导教师 : ______ 苏锦钿 __________实验概述【实验目的及要求】一.目的1.掌握面向对象技术的基本原理和各种相关概念;Rational Rose 2003 、 IBM 2. 熟练掌握 UML的基本知识和9 种常见的 UML图形 , 并能够利用Software Architecture、或trufun UML工具进行建模;3.根据问题进行学习,拓广、深化;4.独立完成一个应用程序的分析、设计和建模,为以后软件项目的开发打下实践基础。
【实验原理】UML建模,就是用模型元素来组建整个系统的模型,模型元素包括系统中的类、类和类之间的关联、类的实例相互配合实现系统的动态行为等。
UML提供了多种图形可视化描述模型元素,同一个模型元素可能会出现在多个图中对应多个图形元素,人们可以从多个视图来考察模型。
UML建模主要分为结构建模、动态建模和模型管理建模 3 个方面,第 1 个方面是从系统的内部结构和静态角度来描述系统的,在静态视图、用例视图、实施视图和配置视图中适用,采用了类图、用例图、组件图和配置图等图形。
例如类图用于描述系统中各类的内部结构(类的属性和操作)及相互间的关联、聚合和依赖等关系,包图用于描述系统的分层结构等;第 2 个方面是从系统中对象的动态行为和组成对象间的相互作用、消息传递来描述系统的,在状态机视图、活动视图和交互视图中适用,采用了状态机图、活动图、顺序图和合作图等图形,例如状态机图用于一个系统或对象从产生到结束或从构造到清除所处的一系列不同的状态;第 3 个方面描述如何将模型自身组织到高层单元,在模型管理视图中适用,采用的图形是类图。
基于UML的图书馆管理系统分析设计报告(1)

图书馆管理系统分析设计1、系统简介本系统为一个小型的图书管理系统,需完成以下工作:(1)借书、还书(2)在图书馆中增加或删除一本书(3)按照作者或者专业领域查找一批书(4)找出被某位读者借出的一批书(5)找出最近借出某本书的读者系统的用户有两类:图书管理员和普通读者。
功能(1)(2)(5)只供图书管理员使用,功能(4)只能供读者查找自己借出的书,功能(3)为管理员和读者的共同功能。
本系统需满足以下限制:(1)图书馆中所有未借出的书可供读者随时借阅(2)在同一时刻,一本书不能既被借出又可供阅读(3)一个读者一次借出图书的数目不能超过预定值2、用例分析与设计从以上系统简介内容中可以看出,本系统有以下几类参与者:图书管理员Admin读者Reader读卡器CardReader服务器System在上述参与者中,图书管理员和读者与系统进行交互,通过对交互场景进行归类和抽象,本系统应具有以下用例:借书lendBook还书returnBook增加图书addBook删除图书delBook按作者、专业检索图书findBook_Author按读者检索图书findBook_Reader按书检索读者findReader_Book2.1生成用例图由以上用例分析可生成用例图,如图2.1所示图2.1 系统用例图2.2用例的顺序图为了使每个用例的操作流程更简洁明了,本系统采用UML的顺序图来对每个用例进行细化,如下所示。
1、借书图2.2 借书顺序图函数说明:InsertCard():刷卡ReadCard():读卡ifMax()判断借书数量是否达到上限ReturnReaderInfo()返回读者信息Return(true):该读者可继续借书lendBook():输入借书信息Update()更新数据库2、还书图2.3 还书顺序图函数说明:BookInfo():输入还书信息Update():更新数据库ReturnReaderInfo():返回读者信息3、增加图书图2.4 增加图书顺序图函数说明:addBook():输入增加的图书信息ifAllowsAdd():判断是否允许添加Update():更新图书信息Return(true):返回添加成功4、删除图书图2.5 删除图书顺序图函数说明:delBook():输入删除的图书信息ifAllowsDel():判断是否可以删除ifSure():是否确定删除Return(true)5:确定删除Update():更新图书信息Return(true)7:返回删除成功5、按作者检索图书图2.6 按作者或专业检索图书顺序图函数说明:findBook_Author():管理员或读者选择按作者或专业检索图书Author(String):输入作者或专业信息returnBookInfo():返回图书信息6、按读者检索图书管理员部分:图2.7 按读者检索图书顺序图读者部分图2.8 读者检索个人借阅图书顺序图函数说明:findBook_Reader():选择按读者检索图书ReaderId():输入读者编号ReaderIdandPass():输入读者编号密码returnBookInfo():返回书籍信息7、按书检索读者图2.9 按图书检索读者顺序图函数说明:findReader_Book():选择按图书检索读者BookID():输入图书编号returnReaderInfo():返回读者信息3、概念模型和顶层架构设计3.1概念模型设计图3.1 系统概念模型——分析类图说明:表示控制类表示实体类表示边界类3.2顶层架构设计图3.2 系统顶层架构4、用户界面设计4.1 界面变化分析根据管理员的功能分析,与管理员相关的主要界面有以下10个:Admin Welcome:管理员主界面findReader_Book:按读者检索图书界面lendBook:借书界面returnBook:还书界面addBook:增加图书界面delBook:删除图书界面findBook_Author:按作者或专业查找图书界面findBook_Reader:按读者检索图书界面UserInfo:显示读者信息界面BookInfo:显示图书信息界面各界面之间的转换如状态图4.1所示图4.1 管理员屏幕变化状态图根据读者的功能分析,与读者相关的主要界面有以下5个:Reader Welcome:读者主界面findBook_Author:按作者或专业查找图书界面findBook_Reader:按读者检索图书界面InputPass:读者验证账户名密码界面BookInfo:显示图书信息界面各界面之间的转换如状态图4.2所示图4.2 读者屏幕变化状态图4.2 界面的类图表示针对每个屏幕的结构及功能,采用类图对其进行详细说明,如下所示。
UML实验报告

UML系统建模--图书馆图书管理系统实验使用UML进行系统建模一.实验目的针对指定软件系统的需求进行分析和设计;使用Microsoft Visio软件,绘制UML图。
二.实验设备计算机、Microsoft Visio软件。
三.实验内容及步骤图书馆图书管理系统的域描述如下:在图书管理系统中,要为每个借阅者建立一个账户,并给借阅者发放借阅卡(借阅卡可以提供借阅卡号、借阅者名),账户中存储借阅者的个人信息、借阅信息以及预定信息。
持有借阅卡的借阅者可以借阅书刊、返还书刊、查询书刊信息、预定书刊并取消预定,但这些操作都是通过图书管理员进行的,也即借阅者不直接与系统交互,而是图书管理员充当借阅者的代理与系统交互。
在借阅书刊时,需要输入所借阅的书刊名,书刊的ISBN/ISSN号,然后输入借阅者的图书卡号和借阅者名,完成后提交所填表格,系统验证借阅者是否有效(在系统中存在账户),若有效,借阅请求被接受,系统查询数据库系统,看借阅者所借阅的书刊是否存在,若存在,则借阅者可借出书刊,建立并在系统中存储借阅记录。
借阅者还书后,删除关于所还书刊的借阅记录。
如果借阅者所借的书刊已被借出,借阅者还可预定该书刊,一旦借阅者预定的书刊可以获得,就将书刊直接寄给预定人(为了简化系统,预定书刊可获得时就不通知借阅者了)。
另外,为了简化系统,也不考虑书刊的最长借阅期限,假设借阅者可以无限期地保存所借阅的书刊。
对上述图书管理系统的域描述进行分析,可以获得如下功能性需求:(1)借阅者持有借阅卡(借阅者名和借阅卡号);(2)图书管理员作为借阅者的代理借书;(3)图书管理员作为借阅者的代理预定书刊;(4)图书管理员作为借阅者的代理取消预定;(5)图书管理员作为借阅者的代理还书;(6)图书管理员可以创建新的借阅者账户;(7)图书管理员可以修改借阅者的账户信息;(8)图书管理员可以删除已存在的借阅者账户;(9)图书管理员可以添加新书刊种类;(10)图书管理员可以修改书刊种类信息;(11)图书管理员可以删除系统中的书刊种类;(12)图书管理员可以在系统中添加书刊信息;(13)图书管理员可以编辑书刊信息;(14)图书管理员可以删除书刊信息;对上述系统进行建模,按照下列要求完成实验报告:1.进行需求分析:识别参与者,识别用例,画出用例图;使用“用例说明书”对每个用例进行描述。
基于UML的图书馆管理系统分析设计报告1

图书馆管理系统分析设计1、系统简介本系统为一个小型的图书管理系统,需完成以下工作:(1)借书、还书(2)在图书馆中增加或删除一本书(3)按照作者或者专业领域查找一批书(4)找出被某位读者借出的一批书(5)找出最近借出某本书的读者系统的用户有两类:图书管理员与普通读者。
功能(1)(2)(5)只供图书管理员使用,功能(4)只能供读者查找自己借出的书,功能(3)为管理员与读者的共同功能。
本系统需满足以下限制:(1)图书馆中所有未借出的书可供读者随时借阅(2)在同一时刻,一本书不能既被借出又可供阅读(3)一个读者一次借出图书的数目不能超过预定值2、用例分析与设计从以上系统简介内容中可以瞧出,本系统有以下几类参与者:图书管理员Admin读者Reader读卡器CardReader服务器System在上述参与者中,图书管理员与读者与系统进行交互,通过对交互场景进行归类与抽象,本系统应具有以下用例:借书lendBook还书returnBook增加图书addBook删除图书delBook按作者、专业检索图书findBook_Author按读者检索图书findBook_Reader按书检索读者findReader_Book2.1生成用例图由以上用例分析可生成用例图,如图2、1所示图2、1 系统用例图2.2用例的顺序图为了使每个用例的操作流程更简洁明了,本系统采用UML的顺序图来对每个用例进行细化,如下所示。
1、借书图2、2 借书顺序图函数说明:InsertCard():刷卡ReadCard():读卡ifMax()判断借书数量就是否达到上限ReturnReaderInfo()返回读者信息Return(true):该读者可继续借书lendBook():输入借书信息Update()更新数据库2、还书图2、3 还书顺序图函数说明:BookInfo():输入还书信息Update():更新数据库ReturnReaderInfo():返回读者信息3、增加图书图2、4 增加图书顺序图函数说明:addBook():输入增加的图书信息ifAllowsAdd():判断就是否允许添加Update():更新图书信息Return(true):返回添加成功4、删除图书图2、5 删除图书顺序图函数说明:delBook():输入删除的图书信息ifAllowsDel():判断就是否可以删除ifSure():就是否确定删除Return(true)5:确定删除Update():更新图书信息Return(true)7:返回删除成功5、按作者检索图书图2、6 按作者或专业检索图书顺序图函数说明:findBook_Author():管理员或读者选择按作者或专业检索图书Author(String):输入作者或专业信息returnBookInfo():返回图书信息6、按读者检索图书管理员部分:图2、7 按读者检索图书顺序图图2、8 读者检索个人借阅图书顺序图函数说明:findBook_Reader():选择按读者检索图书ReaderId():输入读者编号ReaderIdandPass():输入读者编号密码returnBookInfo():返回书籍信息7、按书检索读者图2、9 按图书检索读者顺序图findReader_Book():选择按图书检索读者BookID():输入图书编号returnReaderInfo():返回读者信息3、概念模型与顶层架构设计3.1概念模型设计图3、1 系统概念模型——分析类图说明:表示控制类表示实体类表示边界类3.2顶层架构设计图3、2 系统顶层架构4、用户界面设计4、1 界面变化分析根据管理员的功能分析,与管理员相关的主要界面有以下10个: Admin Welcome: 管理员主界面findReader_Book:按读者检索图书界面lendBook:借书界面returnBook:还书界面addBook:增加图书界面delBook:删除图书界面findBook_Author:按作者或专业查找图书界面findBook_Reader:按读者检索图书界面UserInfo:显示读者信息界面BookInfo:显示图书信息界面各界面之间的转换如状态图4、1所示图4、1 管理员屏幕变化状态图根据读者的功能分析,与读者相关的主要界面有以下5个: Reader Welcome: 读者主界面findBook_Author:按作者或专业查找图书界面 findBook_Reader:按读者检索图书界面 InputPass:读者验证账户名密码界面 BookInfo:显示图书信息界面各界面之间的转换如状态图4、2所示图4、2 读者屏幕变化状态图4、2 界面的类图表示针对每个屏幕的结构及功能,采用类图对其进行详细说明,如下所示。
基于UML的图书馆管理系统分析设计报告

图书馆管理系统分析设计1、系统简介本系统为一个小型的图书管理系统,需完成以下工作:(1)借书、还书(2)在图书馆中增加或删除一本书(3)按照作者或者专业领域查找一批书(4)找出被某位读者借出的一批书(5)找出最近借出某本书的读者系统的用户有两类:图书管理员和普通读者。
功能(1)(2)(5)只供图书管理员使用,功能(4)只能供读者查找自己借出的书,功能(3)为管理员和读者的共同功能。
本系统需满足以下限制:(1)图书馆中所有未借出的书可供读者随时借阅(2)在同一时刻,一本书不能既被借出又可供阅读(3)一个读者一次借出图书的数目不能超过预定值2、用例分析与设计从以上系统简介容中可以看出,本系统有以下几类参与者:图书管理员Admin读者Reader读卡器CardReader服务器System在上述参与者中,图书管理员和读者与系统进行交互,通过对交互场景进行归类和抽象,本系统应具有以下用例:借书lendBook还书returnBook增加图书addBook删除图书delBook按作者、专业检索图书findBook_Author按读者检索图书findBook_Reader按书检索读者findReader_Book2.1生成用例图由以上用例分析可生成用例图,如图2.1所示图2.1 系统用例图2.2用例的顺序图为了使每个用例的操作流程更简洁明了,本系统采用UML的顺序图来对每个用例进行细化,如下所示。
1、借书图2.2 借书顺序图函数说明:InsertCard():刷卡ReadCard():读卡ifMax()判断借书数量是否达到上限ReturnReaderInfo()返回读者信息Return(true):该读者可继续借书lendBook():输入借书信息Update()更新数据库2、还书图2.3 还书顺序图函数说明:BookInfo():输入还书信息Update():更新数据库ReturnReaderInfo():返回读者信息3、增加图书图2.4 增加图书顺序图函数说明:addBook():输入增加的图书信息ifAllowsAdd():判断是否允许添加Update():更新图书信息Return(true):返回添加成功4、删除图书图2.5 删除图书顺序图函数说明:delBook():输入删除的图书信息ifAllowsDel():判断是否可以删除ifSure():是否确定删除Return(true)5:确定删除Update():更新图书信息Return(true)7:返回删除成功5、按作者检索图书图2.6 按作者或专业检索图书顺序图函数说明:findBook_Author():管理员或读者选择按作者或专业检索图书Author(String):输入作者或专业信息returnBookInfo():返回图书信息6、按读者检索图书管理员部分:图2.7 按读者检索图书顺序图读者部分图2.8 读者检索个人借阅图书顺序图函数说明:findBook_Reader():选择按读者检索图书ReaderId():输入读者编号ReaderIdandPass():输入读者编号密码returnBookInfo():返回书籍信息7、按书检索读者图2.9 按图书检索读者顺序图函数说明:findReader_Book():选择按图书检索读者BookID():输入图书编号returnReaderInfo():返回读者信息3、概念模型和顶层架构设计3.1概念模型设计图3.1 系统概念模型——分析类图说明:表示控制类表示实体类表示边界类3.2顶层架构设计图3.2 系统顶层架构4、用户界面设计4.1 界面变化分析根据管理员的功能分析,与管理员相关的主要界面有以下10个:Admin Welcome:管理员主界面findReader_Book:按读者检索图书界面lendBook:借书界面returnBook:还书界面addBook:增加图书界面delBook:删除图书界面findBook_Author:按作者或专业查找图书界面findBook_Reader:按读者检索图书界面UserInfo:显示读者信息界面BookInfo:显示图书信息界面各界面之间的转换如状态图4.1所示图4.1 管理员屏幕变化状态图根据读者的功能分析,与读者相关的主要界面有以下5个:Reader Welcome:读者主界面findBook_Author:按作者或专业查找图书界面findBook_Reader:按读者检索图书界面InputPass:读者验证账户名密码界面BookInfo:显示图书信息界面各界面之间的转换如状态图4.2所示图4.2 读者屏幕变化状态图4.2 界面的类图表示针对每个屏幕的结构及功能,采用类图对其进行详细说明,如下所示。
uml图书管理系统实验报告

UML 实验报告计算机与信息技术学院综合性实验报告一、实验目的学生的信息管理系统的目标是在学生的信息管理中,使用计算机的网络技术,通讯技术和信息处理技术,使学生的信息得到加工,依次传达及保存。
根据学生的信息管理的电子化和网络化,来实现全面改善学生信息的管理环境,提高管理效率。
系统要对使用要求不同的用户群体,设置不同的权限,设置系统的不同功能。
管理员能有效管理学生的信息,同时,学生可以随时大量检索查询多种信息。
这个项目从结构上分为:(1)管理员:通过已有学生信息仓库,管理学生的信息,还可以管理教师的信息,管理课程的信息,管理班级的信息;(2)学生:可以修改学生的信息,选择课程,检索成绩等;(3)教师:修改教师的信息,检索学生的成绩,登记授课的学生状况等。
二、实验仪器或设备学生用计算机一台三、总体设计(设计原理、设计方案及流程等)设计原理:用例图:被称为参与者的外部用户所能观察到的系统功能的模型图,在UML语言中,用例模型也就是用例视图是用例图描述的。
用例模型可以由若干个用例图组成,用例图中包含系统、角色和用例三种模型元素。
用例是外部可见的一个系统功能单元,这些功能由系统单元所提供,并通过一系列系统单元与一个或多个参与者之间交换消息所表达。
顺序图:它描述对象是如何交互的并且将重点放在消息序列上,也就是说描述消息是如何在对象间发送和接收的。
设计方案及流程:1.系统功能(1)学生功能:查询课表,选课,成绩,修改学生个人信息。
(2)教师功能:录入成绩,查询教授学生状况,修改老师个人信息。
2.管理员功能(1)学生管理:学生用户的追加,学生信息的浏览,修改,删除。
(2)教师管理:教师用户的追加,教师信息的浏览,修改,删除。
(3)课程管理:课程查询,添加,修改,删除,公布课表等。
(4)班级管理:班级的查询,添加,修改,删除四、实验步骤(包括主要步骤、用例图、时序图等)一、打开rational rose画图结果如下:二、用例图:1.系统用户参与的总的用例图:用例分析如下:选课:2. 管理员参与的用例图:用例分析如下:课程删除:用例名称课程删除标识符UC0002基本操作流程1.管理员输入课程信息2.检索选择该课程学生信息3.删除该课程可选操作流程1a.输入信息不存在,进行确认3a.删除课程错误,重新删除学生信息的修改:用例名称学生信息的修改标识符UC0003基本操作流程1.管理员输入学生信息2.检索学生信息3.修改学生信息可选操作1a.输入的学生信息不存在,进行确认3.教师参与的用例图:用例分析如下:录入成绩:查询教授学生状况:用例名称查询教授学生状况标识符UC0005基本操作流程1.登陆查询教授学生状况页面2.老师输入学生信息3.查询学生状况4.退出登陆可选操作流程1a.登陆失败,重新登陆2a.输入得学生不存在,进行确认4a.退出失败,重新退出4b.注销登录4.学生参与的用例图:用例分析如下:查询成绩:用例名称查询成绩标识符 UC0006基本操作流程1. 登陆查询成绩页面2. 查询成绩3. 退出登陆可选操作流程1a.登陆失败,重新登陆 2a.查询出现错误,重新查询 2b.查询成绩不存在,进行确认 3a.退出失败,重新退出 3b.注销登录三、顺序图:1. 管理员时序图:管理员时序图说明:(1)登陆到登陆页面(2)在学生信息管理页面中进行追加学生用户、浏览、修改、删除学生信息操作,提交到学生信息数据库,并在本页面显示(3)返回成功(4)在教师信息管理页面中进行追加教师用户、浏览、修改、删除教师信息操作,提交到教师信息数据库,并在本页面显示(5)返回成功(6)在课程信息管理页面中进行查询、添加、修改、删除、公布课表操作,提交到课程信息数据库,并在本页面显示(7)返回成功(8)在班级信息管理页面中进行查询、添加、修改、删除班级操作,提交到班级信息数据库,并在本页面显示(9)返回成功(10)退出登录2.教师时序图:教师时序图说明:(1)登陆到登陆页面(2)在教师信息管理页面中进行修改老师个人信息操作,提交到教师信息数据库,并在本页面显示(3)返回成功(4)在学生信息库中进行录入成绩、查询教授学生状况操作,提交到学生信息数据库,并在本页面显示(5)返回成功(6)退出登陆3.学生时序图:学生时序图说明:(1)登陆到登陆页面(2)在学生信息管理页面中进行查询课表、选课、查询成绩、修改学生个人信息操作,提交到学生信息数据库,并在本页面显示(3)返回成功(4)退出登陆五、结果分析与总结用例图:(1)用例是用户期望系统具备的功能,每一个用例说明一个系统提供给它的使用者的一种服务或功能。
UML综合实验报告网上书店系统

账户与密码匹配不成功,系统反馈给用户,报告错误
后置条件
Ⅱ. 图书信息管理(接收图书订单、拒绝图书订单、查询图书库存、)----员工
(浏览、查询、图书订购)----会员
(浏览、查询)----游客
用例2:
用例名称
图书信息管理
参与者
员工、会员、游客
用例说明
用户进行相应的权限操作,对图书信息进行录入、删除、浏览、查询、修改等基本操作
用例名称
员工信息管理
参与者
管理员
用例说明
管理员进行相应的权限操作,对员工信息进行录入、删除、浏览、查询、修改等基本操作
前置条件
对具有不同权限的用户分配一定的权限管理
基本事件流
1.登陆员工信息管理界面
2.系统响应相应的用户权限操作
3.列出相应的信息
4.用户选择相应的操作
其它事件流
异常事件流
员工信息与实际不符合,上报管理员进修修改
前置条件
对具有不同权限的用户分配一定的权限管理
基本事件流
1.登陆商品信息管理界面
2.系统响应相应的用户权限操作
3.列出相应的信息
4.用户选择相应的操作
其它事件流
异常事件流
1.订单信息与会员订购的书籍不符合,报告管理员错误信息,管理员修改信息;
2.书籍商品信息出现错误或者缺货时,管理员及时修改商品信息;
《面向对象技术与UML》综合实验报告
学号
姓名
实验地点
实验时间
任课教师
实验指导教师
系统名称
网上书店系统
总分(60分)
实验结果(学生填写)
一.系统需求描述(软件使用者提出的需求200字以上)
UML实验报告

类图是描述类、接口以及它们之间关系的图,它显示了系统中各个类的静态结构是一种静态模型。类图根据系统中的类以及各个类的关系描述系统的静态视图。类图是面向对象系统建模中最常用和最基本的图之一,类图可以包含类、接口、依赖关系、泛化关系、关联关系和实现关系等模型元素。
包图是维护和控制系统总体结构的重要建模工具。
实验内容
实验二 图书管理系统的类图和包图的绘制
学号:
姓名:
实验成绩:
一、实验目的
1.理解类、类间关系的基本概念。
2.掌握如何从需求分析中抽象出类的方法以及描绘类间关系的方法。
3. 熟悉包的基本概念。
4.掌握在Rational Rose中绘制类的操作方法以及包的绘制。
二、实验内容
通过前面内容的学习,完成了对TJKD图书馆的图书馆管理系统的需求的初步分析,得出系统的用例图和相应的活动态和状态图。通过这两类图我们可以初步了解系统的业务处理流程。现在需要对系统进行静态建模,这就需要从系统的用例图、活动图和状态图去寻找和发现类。因此,指派你运用本节所学的有关如何抽象出类的知识,完成如下任务:
四、实验小结(本次实验涉及的知识点)
顺序图描述了对象之间传递消息的时间顺序,它用来表示用例中的行为顺序。顺序图代表了一个相互作用、在以时间为次序的对象之间的通信集合。
活动图本质上是流程图,其中几乎所有或大多数的状态都处于活动状态,它描述从活动到活动的控制流。
状态指对象的生命周期中满足某些条件、执行某些活动或者等待某些事件时的一个条件或情况,状态和事件之间的关系是状态机图的基础。
3.学习使用Microsoft Project对题目进行进度安排。
二、实验内容
根据TJKD的图书管理系统开发进度,在完成对系统的需求建模,得到用例模型后,应针对每个用例进行业务分析,说明其具体的业务流程,现系统分析部指派您完成该项任务。要求:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图书管理系统uml实验报告.doc面向对象分析与设计大作业学院:计算机科学与工程学院班级:计算机软件 3学生姓名:陈俊伟学号:2174指导老师:苏锦钿提交日期:华南理工大学面向对象分析与设计大作业课程实验报告实验题目:_____ 图书管理系统uml 图__________________________ 姓名 :___ 陈俊伟 ________学号:_ 2174_____班级 : ___09 软件 3 班________ 组别 : ________合作者 : __________________指导教师 : ______ 苏锦钿 __________实验概述【实验目的及要求】一.目的1.掌握面向对象技术的基本原理和各种相关概念;Rational Rose 2003 、 IBM 2. 熟练掌握 UML的基本知识和9 种常见的 UML图形 , 并能够利用Software Architecture、或trufun UML工具进行建模;3.根据问题进行学习,拓广、深化;4.独立完成一个应用程序的分析、设计和建模,为以后软件项目的开发打下实践基础。
【实验原理】UML建模,就是用模型元素来组建整个系统的模型,模型元素包括系统中的类、类和类之间的关联、类的实例相互配合实现系统的动态行为等。
UML提供了多种图形可视化描述模型元素,同一个模型元素可能会出现在多个图中对应多个图形元素,人们可以从多个视图来考察模型。
UML建模主要分为结构建模、动态建模和模型管理建模 3 个方面,第 1 个方面是从系统的内部结构和静态角度来描述系统的,在静态视图、用例视图、实施视图和配置视图中适用,采用了类图、用例图、组件图和配置图等图形。
例如类图用于描述系统中各类的内部结构(类的属性和操作)及相互间的关联、聚合和依赖等关系,包图用于描述系统的分层结构等;第2 个方面是从系统中对象的动态行为和组成对象间的相互作用、消息传递来描述系统的,在状态机视图、活动视图和交互视图中适用,采用了状态机图、活动图、顺序图和合作图等图形,例如状态机图用于一个系统或对象从产生到结束或从构造到清除所处的一系列不同的状态;第3 个方面描述如何将模型自身组织到高层单元,在模型管理视图中适用,采用的图形是类图。
建模的工作集中在前两方面,而且并非所有图形元素都适用或需要采用需求阶段:用例图、领域模型(类图)分析阶段:用例详细详细说明、协作图或顺序图、类图设计阶段:详细类图、包设计、(建议不要做详细的协作图或顺序图- 很难维护)实施阶段:部署视图【实验环境】Rational Rose 2003Windows Xp实验内容【实验方案设计】三、步骤§1软件需求分析三、功能需求分析系统的功能需求主要包括以下几个方面:① 借阅者可以通过网络查询书籍信息和预定书籍。
② 借阅者能够借阅书籍和还书,书过期的话要罚款。
③ 图书管理员能够处理借阅者的借阅和还书请求。
④系统管理员可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者帐户,增加和删除书籍。
§ 2图书馆管理系统的需求分析用户提出的需求包括下列内容:1.这是一个图书馆支持系统;2.图书馆将图书和杂志借给借书者。
借书者已经预先注册,图书和杂志也预先注册;3.图书馆负责新书的购买。
每一本图书都购进多本书。
当旧书超期或破旧不堪时,从图书馆中去掉。
4.图书管理员是图书馆的员工。
他们的工作就是和读者打交道并在软件系统的支持下工作。
5.借阅人可以预定当前没有的图书和杂志。
这样,当他所预定的图书和杂志归还回来或购进时,就通知预定人。
当预定了某书的借书者借阅了该书后,预定就取消。
或者通过显式的取消过程强行取消预定。
6.图书馆能够容易地建立、修改和删除标题、借书者、借阅信息和预定信息。
7.系统能够运行在所有流行的技术环境中,包括Unix, Windows 和 Linux ,并应有一个良好的人机交互图形用户界面(GUI) 。
8.系统容易扩展新功能。
系统可以不必考虑预定的图书到达后通知预定人的功能。
9.如果读者还书超过期限(本科生1 个月,研究生2 个月,教师3 个月),需扣款。
§3 系统的 UML基本模型§4 系统中的类§5 系统的配置与实现§软件需求的定义§软件需求的层次软件需求包括三个层次:业务需求:反映了组织机构或客户对系统高层次的目标要求。
用户需求:描述了用户使用产品所能完成的任务。
功能需求:说明了软件的功能,用户使用这些功能以完成任务。
§2 图书馆管理系统的需求分析§系统功能需求§基本数据维护模块§基本业务模块§数据库模块§信息查询模块系统功能需求系统的功能需求主要包括以下几个方面:①借阅者可以通过网络查询书籍信息和预定书籍。
② 借阅者能够借阅书籍和还书。
③ 图书管理员能够处理借阅者的借阅和还书请求。
④ 系统管理员可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者帐户,增加和删除书籍。
§基本数据维护模块基本数据维护模块包括的主要功能模块:① 添加借阅者帐户② 修改更新借阅者帐户信息③ 添加书目④ 修改和更新书目信息⑤ 添加书籍⑥ 删除书籍§基本业务模块基本业务模块包含的功能:① 借书② 还书③ 书籍预留④ 取消书籍预定§数据库模块数据库模块的功能:① 借阅信息管理② 书籍信息管理③ 帐户信息管理④ 书籍预留信息管理§信息查询模块信息查询模块主要是查询数据库中的相关信息:① 查询书籍信息② 查询借阅者信息§3 系统的 UML基本模型§UML 初始模型§系统的用例图§系统的时序图§系统的协作图§系统的状态图§系统的活动图§系统的用例图创建用例图之前首先需要确定参与者。
系统的参与者主要有三类:① 读者(也可称为借阅者)② 图书馆管理员③ 图书馆管理系统维护者借阅者请求服务图书管理员处理借书还书系统管理员进行系统维护④§系统的用例图1.借阅者请求服务的用例图2.图书馆管理员处理借书、还书等的用例图3.系统管理员进行系统维护的用例图1.借阅者请求服务的用例图Search the book<>Reserve the book<>Logon the systemQuery InfoBorrowerBorrow the book<>Return the bookReturnwithfine2.图书馆管理员处理借书、还书等的用例图<>Get book GetWithFine<>Librarian Lend book Check user accout <>Remove reservation3.系统管理员进行系统维护的用例图§系统的时序图1.系统管理员添加书籍的时序图2.系统管理员添加借阅者帐户的时序图3.系统管理员删除书目的时序图4.图书管理员处理书籍借阅的时序图5.图书管理员处理书籍归还的时序图6.借阅者查询书籍信息的时序图7.借阅者预留书籍的时序图1.系统管理员添加书籍的时序图: MaintenanceWindow: Title: Item:Administrator1: addItem2: find(String)3: return():true4: create(Integer,Title)2.系统管理员添加借阅者帐户的时序图: : MaintenanceWindow: BorrowerAdministrator1: createBorrower2: create(String,String)3.系统管理员删除书目的时序图:: MaintenanceWindow : Title : Item Administrator1: removeTitle2: find3: find_on_title4: destroy5: destroy4.图书管理员处理书籍借阅的时序图: Librarian : LendWindow : Title : Borrower : Loan : Item 1: findTitle2: find(String)3: findItem4: findonTitle(Title)5: identifyBorrower6:find(String)7:create(Borrower,Item)5.图书管理员处理书籍归还的时序图: Borrower: ReturnWindow : Item : Loan : Librarian1: givetheBook2: returnItem3: check4: return():OK5: update6: update6.借阅者查询书籍信息的时序图7. 借阅者预留书籍的时序图: MaintenanceWindow : Item : Borrower1: QueryBook2: findonTitle7.借阅者预留书籍的时序图: MaintenanceWindow: Item : Borrower 1: QueryBook2: findonTitle§系统的协作图1.系统管理员添加书籍的协作图2.系统管理员删除书籍的协作图3.图书管理员处理借书的协作图4.图书管理员处理还书的协作图5.借阅者预留书籍的协作图1.系统管理员添加书籍的协作图1:addItem() 3: update(): MaintenanceWindow: Item: Administrator2: find(String): Title2.系统管理员删除书籍的协作图2: removeItem()3: create(Integer,Title) : MaintenanceWindow: Item: Administrator1: find(String): Title3.图书管理员处理借书的协作图: Item2: find reservation()5: update()1: identify borrower()4: borrow(): LendWindow: Title: Librarian6: borrow()7: check_if_max()3: find(Borrower,Title): Loan:Reservation4.图书管理员处理还书的协作图1: findBorrower()3: returnBack(): ReturnWindow: Title: Librarian2: find(String) 4: update()5: returnBack(): Item: Loan5.借阅者预留书籍的协作图: Title2: find(String)1: identifyBorrower() 4: reserve() : ReservationWindow : Item 3: reserveTitle(): Borrower5: create(Title,Borrower): Reservation§系统的状态图1.书的状态图2.借阅者帐户的状态图1.书的状态图New bookBorrowTime outAvailable ReserveReservedBorrowBorrowed CancleReturn backDelete2.2.借阅者帐户的状态图the number of book is okNew Account 书的数目超过限度Account Borrower Available unavailable还书DeleteAccount§系统的活动图1.借阅者的活动图2.图书管理员的活动图3.系统管理员的活动图1.借阅者的活动图Self-help serviceSearch for books LoginReserve the bookView bookinformationLogin?Exit the systemLeave the computer2.图书管理员的活动图Login thesystemGet book Lend bookOut of date? Is number limit? cept moneyUpdate borrower's information3.系统管理员的活动图1.系统管理员维护借阅者帐户的活动图2.系统管理员进行书目信息维护的活动图3.系统管理员维护书籍信息的活动图(1)系统管理员维护借阅者帐户的活动图Login thesystem Operation on borrowerQuery borrowerNew remove or updatenorrowerinformation borrowerExit the system ( 2)系统管理员进行书目信息维护的活动图Login the systemOperation on title query title new title remove or update title exit thesystem( 3)系统管理员维护书籍信息的活动图Login thesystemOperation onbookAdd book removebookExit the system§4 系统中的类§系统中主要的类( 1)参与者相关的类( 2)系统中用到的其他类§各个类之间的关系。