UML面向对象建模与设计 课程设计.docx
《UML面向对象建模与设计 课程设计.docx》由会员分享,可在线阅读,更多相关《UML面向对象建模与设计 课程设计.docx(48页珍藏版)》请在冰点文库上搜索。
UML面向对象建模与设计课程设计
琼州学院电子信息工程学院
课程设计报告
课程名称:
UML面向对象建模与设计
设计题目:
基于UML的图书管理系统建模
专业:
软件工程
班级:
10软件工程
(1)班
组长:
XXXX10241044
组员:
XXXXX10241021
组员:
XXXX10241046
组员:
XXXX10241029
组员:
XXXX10241007
指导教师评语:
最终成绩:
指导教师签名:
年月日
成绩评定
项目
权重
成绩
1、设计过程中的学习态度
0.2
2、课程设计的质量及答辩
0.5
3、设计报告书规范程度
0.3
4、总成绩
起止日期:
2012.03.13~2012.05.14
指导教师:
XXXX
注意事项
一、设计目的
《UML面向对象建模与设计》是一门实践性较强的软件基础课,为了学好这门课程,必须在掌握理论知识的同时,加强上机实践。
本课程设计的目的就是要达到理论与实际应用相结合,使同学们能够根据数据对象的特性,学会数据组织的方法,能把现实世界中的实际问题在计算机内部表示出来,并培养基本的、良好的程序设计技能。
二、设计要求
1.通过这次课程设计,要求在数据结构的逻辑特性和物理表示、数据结构的选择应用、算法的设计及其实现等方面加深课程基本内容的理解。
同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。
2.学生必须仔细研读《UML面向对象建模与设计》课程设计要求,以学生自学为主、指导教师指导为辅,独立完成课程设计的任务,有问题及时主动与指导教师沟通。
3.本次课程设计按照教学要求需要在本学期7周前完成,学生要发挥自主学习的能力,充分利用时间,安排好课程设计的时间计划,并在课程设计过程中不断检测自己的计划完成情况,及时向指导教师汇报。
4.编程语言:
Java语言。
三、课程设计说明书的格式要求
设计文档的撰写必须提前进行,以保证使文档与程序同步提交。
1.设计题目2.运行环境(软、硬件环境)
3.算法的需求分析4.算法概要设计
5.算法详细设计6.算法的测试
7.运行结果分析8.收获及体会
四、问题分析、设计和测试过程要规范化。
1.需求分析:
将题目中要求的功能进行叙述分析。
2.概要设计:
算法的设计说明,描述解决此问题的数据存储结构,(有些题目已经指定了数据存储的,按照指定的设计),描述算法建议使用流程图,进行算法分析指明关键语句的时间复杂度。
3.详细设计:
即各个算法的具体实现步骤,每个题目要有相应的源程序,其中每个功能模块采用不同的函数实现。
源程序要规范编写:
结构要清晰,注释要清楚。
重点函数的重点变量和重点功能部分要加上清楚的程序注释。
4.调试和测试:
给出实现功能的一组或多组测试数据,程序调试后,将按照此测试数据进行测试的结果列出来。
在调试过程中遇到的问题和解决方法也要记录下来。
程序要能够正常运行,还要有基本的容错功能。
尽量避免出现操作错误时出现死循环。
5.改进措施:
对有些题目提出算法改进方案,比较不同算法的优缺点。
五、对指导教师的要求
指导教师要关心学生的课程设计进展,认真答疑。
对课程设计报告的撰写要给予充分的指导,报告中切忌出现大篇源代码,应严格要求学生将主要篇幅放在“原理实现”上,即如何用框图表达设计和实施思想。
课程设计报告要用红笔批阅,最终成绩以优、良、中、及格与不及格分等计算。
第一章基于UML的图书管理系统建模
摘要:
对UML产生的背景及其基本模型进行了阐述,在对图书管理系统进行分析的基础上,结合软件工程和面向对象技
术,设计了基于UML用例图、包图和顺序图的图书管理系统模型。
关键词:
建模语言;UML;图书管理系统
1.1UML的介绍:
UML(UnifiedModelingLanguage)是在Booeh方法、OOSE方法和OMT方法的基础上演化而来的基于面向对象技术的标准建模语言。
它统一了面向对象建模的基本概念、术语和图示符号,描述了建模过程中所
必须遵循的基本步骤,提供了一整套描述软件系统模型的概念和图形表示法,可从不同的视角为系统建模。
UML定义了五类视图,包含l0种描述系统的图。
1)用例图。
从用户角度描述系统的功能,并指出各功能的操作者。
一个用例图由一系列角色和用例组成。
.
2)静态图。
包括类图、对象图和包图。
类图描述系统中类的静态结构,包括类的定义和类之间的关系。
对象图是类图的一种实例化图。
包图用于描述系统的分层结构。
3)行为图。
包括类的状态图和活动图。
状态图描述类对象具有的所有可能的状态及其转移关系。
活动图展示系统中各种活动的执行流程。
4)交互图。
描述对象间的交互关系。
顺序图展示对象之间的一种动态协作关系(强调时间上的顺序关系)。
合作图从另一个角度展示对象的动态协作关系(强调相互间的通信关系)。
5)实现图。
包括构件图和配置图。
构件图展示程序代码的物理结构。
配置图展示软件在硬件环境中的配置关系(尤其在分布式及网络环境中)。
这5大类l0种模型图为开发者提供了从不同角度去观察和展示系统的各种特征的一种标准方法,不同类型、不同领域的系统会分别用到不同的模型或几个模型的组合。
本例中,以用例图、包图和顺序图的视角来描述系统。
1.2.需求分析
1.2.1业务组织结构
图书馆是让少部分人来管理大量的图书以方便更多的人,其中发生最多的就是借书与还书的过程。
因此,图书管理系统主要用来实现注册登录、图书的出借与归还、新书入馆信息登记、旧书出馆存档的操作,其中,注册登录操作分为管理人员注册和普通借阅人员。
1.2.2具体功能要求
1)用户管理:
图书管理人员账号由系统创建,并给予一定权限。
普通用户可以向图书管理人员申请创建账号,且只有部分权限。
2)图书借还管理:
借阅者登录后可查看自己的借阅信息,也可搜索相关书籍并查看其详细信息。
借阅者借书前,图书管理员必先查看借阅者借阅信息,如有超期未还图书、借书限定本数已到或拖欠罚金者不予办理借阅手续;若无上述情况,则新建借阅信息,完成借书。
当借阅者归还图书时,图书管理员查看其借阅信息,若有超期,则收缴相应罚金,并建立相关存档记录,更新其借阅信息,还书结束。
3)书籍管理:
图书馆购买新书后,由系统新建书籍信息表单,然后填写相关书籍信息,分类并保存。
图书馆过时或破损的旧书清理出图书馆时,由管理系统注销数据库中有关该书的相关信息,并另建出馆旧书表单,存档记录。
1.3.基于UML的图书管理系统建模
图书管理系统包含用户管理、图书信息管理、读者信息管理、用户信息管理及图书借阅管理五大子模块。
01用户管理:
不同类型的用户拥有不同的权限,从而可以实现不同的操作。
02图书信息管理:
包括图书信息的查询、增加、删除和修改。
03读者信息管理:
包括读者信息查询、增加、删除和修改。
04用户信息管理:
包括用户的添加、修改与权限管理。
05图书借阅管理:
包括图书借阅规则的维护、读者借阅图书的信息维护以及图书流通的查询统计功能。
1.4用例模型
使用用例模型能较正式、准确地识别系统的需求。
首先识别用例模型的角色,在此基础上再识别用例,从而得到完整的用例模型。
1.4.1角色识别
角色识别的任务是找出所有可能与系统发生交互行为的外部实体、对象、系统。
它们的行为不受系统控制,但是可以提供输入给系统。
在图书管理系统中,主要是图书管理员使用系统的主要功能;后台管理员需要系统支持他们的日常工作;系统管理员维护、管理使系统正常工作;系统需要操纵数据库、借阅证;需要与校园网接口、行政办公系统、外部数据源、合作网上图书馆等系统交互(包含其它计算机系统和其它应用程序);读者对系统产生的结果感兴趣。
即本系统共有三个角色:
读者、图书管理员、系统管理员。
1.4.2用例识别
在角色的基础上,可以识别出与角色相应的用例,从而得到系统的用例模型。
与读者相关的用例包括:
借书、还书、借阅查询(查询本人借书记录、还书期限、超期图书)、书目查询。
与图书管理员相关的用例包括:
办理借书、办理还书、读者信息管理、图书信息管理。
与系统管理员相关的用例包括:
用户信息管理、安全权限管理、系统更新维护。
归纳后本系统用例包括:
借书、还书、读者信息管理、图书信息管理、用户信息管理、安全权限管理、系统更新维护。
本系统的用例模型如图1所示。
只包含了最基本的用例模型,是系统的高层抽象。
图一:
基本用例模型
1.5系统包图
定义并描述了各类后,我们可以根据实际情况引入包来管理类,根据“高内聚、低耦合”的原则,图书馆管理系统划分为四个包:
用户管理:
对系统用户进行管理,为用户提供信息服务接口,便于系统进行操作。
借阅管理:
包括借书处理、还书处理和罚款处理等。
读者图书信息管理:
包括对读者、图书等信息进行维护,主要有读者信息的增删改,对图书管理员资料进行的增删改和对图书更新资料进行维护。
系统服务:
系统其它使用的服务,包括系统登录检查、安全维护等。
系统包图如图2所示。
图二:
所有类的包管理
第二章图书馆中的用例分析
2.1借阅者子系统的需求分析
通过分析,在借阅者子系统中,该系统可以完成以下功能:
借阅者可以进行书籍查询,借阅信息查询,借书还书,书籍预订和留言。
以便于借阅者借阅图书,预订图书和留言。
用例图如下:
图2-1借阅者的用例图
01.借阅者
留言
用例编号:
020101
用例:
留言
简述:
借阅者可通过登录图书管理系统给管理员留言
参与者:
借阅者
前置条件:
借阅者成功登录系统
后置条件:
系统显示借阅者留言信息
基本路径:
1、借阅者向系统发出留言请求,用例开始
2、系统显示留言界面
3、借阅者成功编辑留言,发出发送请求
4、系统确认留言成功,显示发送成功,用例结束
扩展路径:
无
借阅者登录系统
用例编号:
020102
用例:
借阅者登录系统
简述:
借阅者在进行一些操作时得先登录
参与者:
借阅者
前置条件:
无
后置条件:
系统显示借阅者登录成功
基本路径:
1、借阅者向系统发出登录请求,用例开始
2、系统显示登录界面
3、借阅者输入相关信息
4,、系统检查借阅者信息,如果输入的信息出现错误,转到A
5、系统显示登录成功,用例结束
扩展路径:
A
<1>、系统要求借阅者重新输入相关信息或取消登录
<2>、借阅者选择取消登录,则用例结束
<3>、借阅者选择重新登录,转到3
书籍查询
用例编号:
020103
用例:
书籍查询
简述:
借阅者可通过登录图书系统查询书目信息
参与者:
借阅者
前置条件:
借阅者成功登录系统
后置条件:
系统显示书籍信息
基本路径:
1、借阅者向借阅系统发出“借阅”请求,用例开始。
2、系统要求借阅者输入个人要求。
3、用户输入个人要求。
4、系统确认要求并显示书籍信息,如果系统根据借阅者个人要求没显示相关信息,转到A。
5、用例结束
扩展路径:
A
<1>、,则要求用户选择重新输入个人要求或取消输入
<2>、借阅者选择取消输入个人要求,则用例结束
<3>、借阅者重新输入个人要求,转到4
查询个人借阅信息
用例编号:
020104
用例:
查询借阅信息
简述:
借阅者可通过登录图书系统查询个人借阅的书籍信息
参与者:
借阅者
前置条件:
借阅者成功登录系统
后置条件:
系统显示借阅书籍信息
基本路径:
1、借阅者向系统提出查询请求,用例开始
2、系统要求借阅者输入查询类别
3、借阅者做出选择
4、系统显示相应界面,
5、借阅者输入信息
6、系统确认信息,显示借阅个人书籍信息,用例结束
扩展路径:
无
书籍预订
用例编号:
020105
用例:
书籍预订
简述:
借阅者可通过登录图书系统订阅书籍
参与者:
借阅者
前置条件:
借阅者成功登录系统
后置条件:
系统显示订阅书籍成功
基本路径:
1、借阅者向系统发送个人请求,用例开始
2、系统显示相应界面
3、借阅者选择想要预订的书籍
4、系统显示预订的书籍信息
5、借阅者发送确定预订信息
6、系统显示预订成功,用例结束
扩展路径:
无
借阅书籍
用例编号:
020106
用例:
借阅书籍
简述:
借阅者可通过登录图书系统借阅书籍
参与者:
借阅者
前置条件:
借阅者成功登录系统
后置条件:
系统显示借阅书籍成功
基本路径:
1、借阅者向系统提出个人借阅请求,用例开始
2、系统要求用户输入想要借阅书籍信息
3、借阅者输入个人要求
4、系统显示书籍信息
5、借阅者选择要借阅的书籍
6、系统检查借阅者信息,显示借阅成功,如果系统没有找到与输入的信息相应的书籍,转到A
7、用例结束
扩展路径:
A
<1>、系统要求借阅者重新输入要求或取消输入
<2>、借阅者选择取消输入,则用例结束
<3>、借阅者重新输入想要借阅书籍信息,转到5
归还书籍
用例编号:
020107
用例:
归还书籍
简述:
借阅者可通过登录图书系统归还书籍
参与者:
注册借阅者
前置条件:
借阅者成功登录系统
后置条件:
系统显示归还书籍成功
基本路径:
1、借阅者向系统提出个人归还请求,用例开始
2、系统要求借阅者输入想要归还的书籍的信息
3、借阅者输入要归还的书籍信息,转到A
4、系统检查归还书籍的信息,确认归还成功,用例结束
扩展路径:
A
<1>、如果输入的信息有错误,则系统要求用户重新输入要归还书籍信息或取消输入
<2>、借阅者选择取消输入,则用例结束
<3>、借阅者选择重新输入归还书籍的信息,转到3
交罚金
用例编号:
020108
用例:
交罚金
简述:
借阅者交完罚金后方可再借阅书籍
参与者:
借阅者
前置条件:
借阅者成功登录系统
后置条件:
系统显示成功缴纳罚金
基本路径:
1、借阅者向系统发出缴纳罚金请求,用例开始
2、系统要求借阅者输入个人信息
3、借阅者输入个人信息,如果输入的个人信息不正确,转到A
4、系统确认用户信息
5、借阅者查看个人信息,缴纳罚金,如果输入的罚金数量不正确,转到B
6、系统确认缴纳信息,确认缴纳成功,用例结束
扩展路径:
A
<1>、系统要求借阅者重新输入个人信息或取消输入
<2>、借阅者选择取消输入,用例结束
<3>、用户重新输入个人信息,转到4
B
<1>、系统要求借阅者重新输入罚金数量
<2>、借阅者重新输入罚金数量,转到6
2.2图书管理员系统的需求分析
通过分析,在图书管理员子系统中,该系统可以完成以下功能:
书目信息管理,书籍归还和借阅处理,预订信息的管理,整理归还图书和统计书籍数目。
以便对图书的流动信息进行管理。
用例图如下:
图2-2图书管理员的用例图
0201书籍归还处理
用例编号:
020201
用例:
书籍归还信息
简述:
管理员可通过登录图书管理系统对归还的书籍进行相关处理
参与者:
图书管理员
前置条件:
成功登录管理系统
后置条件:
系统显示书籍成功归还
基本路径:
1、图书管理员向图书管理系统发出请求
2、系统要求管理员输入书籍信息
3、图书管理员输入书籍信息
4、系统检查书籍信息,显示归还成功,如果输入的图书信息出现错误,转到A
5、用例结束
扩展点:
A
<1>、系统要求管理员重新输入书籍信息
<2>、管理员重新输入书籍信息,转到4
0202收取罚金
用例编号:
020202
用例:
收取罚金
简述:
管理员可通过登录图书管理系统对借书超过期限的学生进行处罚,未缴纳罚金的不予借书权利,即是设置为不可借阅
参与者:
系统管理员
前置条件:
借阅者借阅书籍超期
后置条件:
系统显示该学生借阅权限为不可借阅
基本路径:
1、管理员向系统发出查看学生信息请求
2、系统显示该学生有欠费信息
3、管理员代替系统向该学生收取罚金,向系统发出“已收罚金”信息,如果系统显示费用未交齐,转到A
4、系统确认收费,将学生更改为未欠费状态,用例结束
扩展点:
A
<1>、系统要求重新缴纳费用或取消缴纳
<2>、系统管理员取消缴费,用例结束
<3>、系统管理员重新代缴费用,转到4
0203书籍借阅处理
检查借阅凭证
用例编号:
020203
用例:
添加书目信息
简述:
管理员可通过登录图书管理系统,输入学生借阅证号确定该学生是否可以进行借阅图书
参与者:
系统管理员
前置条件:
借阅者借阅书籍
后置条件:
系统显示该学生的借阅权限
基本路径:
1、管理员向系统发出检查学生借阅证信息请求,用例开始
2、系统显示查询学生借阅证信息界面
3、管理员输入学生借阅证信息,如果输入信息错误,转到A
4、系统检查该学生信息,确认该学生为合法用户,用例结束
扩展点:
A
<1>、系统要求管理员重新输入信息
<2>、管理员重新输入借阅证信息,转到4
0204删除个人预订信息
用例编号:
020204
用例:
删除个人预订信息
简述:
管理员可通过登录图书管理系统删除学生的个人预订信息
参与者:
系统管理员
前置条件:
书籍成功借出书籍
后置条件:
系统显示删除个人预订信息成功
基本路径:
1、管理员向书籍预定信息系统发出请求,用例开始
2、系统显示该学生的借阅预定信息
3、管理员选定要删除的预定信息,向系统发出删除请求
4、系统显示删除成功,用例结束
扩展点:
无
0205整理归还图书
用例编号:
020205
用例:
整理归还图书
简述:
图书管理员可以对已归还的图书进行分类等处理
参与者:
图书管理员
前置条件:
管理员成功登录系统
后置条件:
系统显示管理员登录成功
基本路径:
1、管理员向系统发出整理图书请求,用例开始
2、系统要求管理员录入图书信息
3、管理员录入图书信息,如果录入的书籍信息出错,转到A
4、系统检查图书信息
5、管理员要求系统整理图书
6、系统将已录入的书籍按编号、分类进行整理,显示整理成功,用例结束
扩展路径:
A
<1>、系统要求图书管理员重新输入书籍信息或取消录入
<2>、图书管理员选择取消登录,则用例结束
<3>、用户选择重新登录,转到4
0206图书管理员登录系统
用例编号:
020206
用例:
图书管理员登录系统
简述:
图书管理员在进行一些操作时得先登录
参与者:
图书管理员
前置条件:
管理员登录系统
后置条件:
系统显示管理员登录成功
基本路径:
1、图书管理员向系统发出登录请求,用例开始
2、系统显示登录界面
3、图书管理员输入相关信息
4、系统显示登录成功,如果输入的信息出现错误,转到A
5、用例结束
扩展路径:
A
<1>、系统要求图书管理员重新输入相关信息或取消登录
<2>、图书管理员选择取消登录,则用例结束
<3>、用户选择重新登录,转到3
0207统计书籍数目
统计书籍总数
用例编号:
020207
用例:
统计书籍总数
简述:
管理员可通过登录图书管理系统统计图书馆内的书籍总数
参与者:
系统管理员
前置条件:
登录管理系统
后置条件:
系统显示图书馆内的书籍总数
基本路径:
1、管理员向图书管理系统发出请求,用例开始
2、系统显示图书管理界面
3、管理员发出统计书籍总数的请求
4、系统确认请求,显示图书馆书籍总数,用例结束
扩展点:
无
0208统计借出书籍总数
用例编号:
020208
用例:
统计借出书籍总数
简述:
管理员可通过登录图书管理系统统计外借的书籍总数
参与者:
系统管理员
前置条件:
登录管理系统
后置条件:
系统显示图书馆内的书籍总数
基本路径:
1、管理员向图书管理系统发出请求,用例开始
2、系统显示图书管理界面
3、管理员发出统计借出书籍总数的请求
4、系统确认请求,显示图书馆已借出书籍总数,用例结束
扩展点:
无
2.2.1书目信息管理子系统的需求分析
通过分析,书目信息管理子系统中,该系统可以完成以下功能:
书目信息添加,书目信息删除,书目信息更新,书目信息查看。
以便对图书信息进行管理。
用例图如下:
图2-3书目信息管理子系统用例图
查看书目信息
用例编号:
02020101
用例:
查看书目信息
简述:
管理员可通过登录图书管理系统对图书馆内现存书籍进行查看
参与者:
图书管理员
前置条件:
成功登录管理系统
后置条件:
系统显示可借阅的书籍信息
基本路径:
1、管理员向图书管理系统发出请求,用例开始
2、系统显示书目管理界面
3、管理员向系统发出查看请求
4、系统显示所有书目信息,
5、管理员开始查看,用例结束
扩展路径:
无
添加书目信息
用例编号:
02020102
用例:
添加书目信息
简述:
管理员可通过登录图书管理系统添加新的书目信息
参与者:
图书管理员
前置条件:
某书目归还成功
后置条件:
系统显示添加可借阅的书籍信息成功
基本路径:
1、管理员向图书管理系统发出请求,用例开始
2、系统显示书目管理界面
3、管理员向系统发出添加请求
4、系统要求管理员输入书目信息
5、管理员输入书籍信息
6、系统检查输入的信息,确认添加成功,如果输入的信息有错误,转到A
7、用例结束
扩展路径:
A
<1>、系统要求管理员重新输入书籍信息或取消输入
<2>、图示管理员选择取消输入,用例结束
<3>、图书管理员选择重新输入,转到6
更新书目信息
用例编号:
02020103
用例:
更新书目信息
简述:
管理员可通过登录图书管理系统更新书目信息
参与者:
图书管理员
前置条件:
某书目归还成功
后置条件:
系统显示更新书目信息成功
基本路径:
1、管理员向图书管理系统发出请求,用例开始
2、系统显示图书管理界面
3、管理员向系统发出更新请求
4、系统显示所有书目信息
5、管理员更新书目信息,如果输入的信息有误,转到A
6、系统确定更新信息,显示更新信息成功,用例结束
扩展路径:
A
<1>、系统要求管理员重新输入书籍信息或取消输入
<2>、图示管理员选择取消输入,用例结束
<3>、图书管理员选择重新输入,转到6
删除书目信息
用例编号:
02020104
用例:
删除书目信息
简述:
管理员可通过登录图书管理系统删除书目信息
参与者:
图书管理员
前置条件:
某书目全借出
后置条件:
系统显示删除可借阅的书籍信息成功
基本路径:
1、管理员向图书管理系统发出请求,用例开始
2、系统显示图书管理界面
3、管理员向系统发出删除请求
4、系统显示所有书目信息
5、管理员删除要删除的书目信息
6、系统确认删除请求,显示删除信息成功
扩展路径:
无
2.2.2预订信息管理子系统的需求分析
通过分析,预订信息管理子系统中,该系统可以完成以下功能:
预订信息添加,预订信息删除,预订信息更新,预订信息查看。
以便对图书预订信息进行管理。
用例图如下:
图2-4预订信息管理子系统用例图
020201预订信息管理
添加预订信息
用例编号:
02020201
用例:
添加预订信息
简述:
管理员可通过登录图书管理系统添加添加学生预订信息,该书一旦可借阅,该生即可优先借阅
参与者:
图书管理员
前置条件:
借阅者发送预订信息
后置条件:
系统显示添加预订信息成功
基本路径:
1、管理员向书籍预定信息系统发出请求,用例开始
2、系统显示学生的借阅预定信息
3、管理员向系统发出添加学生的预定信息的请求
4、系统显示添加界面
5、管理员添加预订信息,