银行管理系统的UML建模
课程设计报告
专业:
学号:
姓名:
任课教师:
一、系统概述
银行是与人们生活密切相关的一个机构,银行可以提供存款、取款、转账等业务。
在银行设立账户的人或机构被称为银行的客户(customer)。一个客户可以在银行开设多个账户(account),客户可以存钱到账户中,也可以从自己的账户中取钱,还可以将存款从一个账户转到另一个账户。另外,客户可以随时查询自己的账户情况,以及查询以前所进行的存款、取款等交易记录。客户还有权利要求关闭自己的账户。
实际生活中的银行功能其实还要复杂得多,但为了简化系统,本次设计只考虑银行的基本功能。简化版的银行信息系统至少应具有如下功能:
1. 一个银行可以有多个账户;
2. 一个银行可以有多个客户;
3. 一个客户可以持有多个账户;
4. 一个账户可以有多个持有者;
5. 银行可以为客户开设账户;
6. 银行可以为客户注销账户;
7. 客户可以从自己账户中取钱;
8. 客户可以向自己账户中存钱;
9. 客户可以在同一银行的不同账户之间转账;
10. 客户可以在不同银行的不同账户之间转账;
请完成登录、存款、取款、转账和查询几个模块的设计。
二、需求分析
银行系统是与生活紧密相关的一个机构,银行提供了存款、取款、转账等业务。在银行设立账户的人或机构通常被称为银行的储户。一个储户可以在银行开多个账户,储户可以存钱到账户中,也可以从自己的账户中取现,还可以将存款从一个账户转到另一个账户。储户还可以随时查询自己账户的情况,并查询以前所进行的存款、取款等交易记录。后台管理员可以对客户的账户进行注销、删除、查询等管理,还有就是银行利息、汇率、手续费之类参数的设置,以及财务管理以及财务分析。
软件分别有开户,查询存取款,转账等功能。各个模块各有不同的功能,但都能完成查询和存取功能。各模块的数据都存放在数据库中。数据的调用和连接都有程序来完成。
此软件所要完成的主要功能有三方面:如果是存款,用户填写存款单,然后交给收银员键入系统,同时系统还要记录存款人姓名,住址,身份证号码,存款类型,存款日期,利率及密码(可选)等信息,完成后由系统反馈成功存款信息给用户。如果是取款,用户填写取款的相关信息(取款金额、取款币种)进行提交,系统要求用户输入密码以确认身份,核对密码正确无误后系统计算利息并印出利息单给用户。如果是转账,用户填写转账的相关信息进行提交,系统要求用户输入密码以确认身份,核对密码正确无误后系统计算利息并反馈信息给用户。系统及时更新数据库。
外部功能:实现化窗口,开户/销户、存款/取款、查询/转账。
内部功能:同步,过滤,定位,识别,更新,连接。
三、系统的UML基本模型
(1)、用例图
通过分析对银行管理系统的需求分析,确定参与者有银行客户、收银员。
收银员具有维护系统信息、维护客户信息、查询客户情况和处理处理客户需求的作用。
用例包括:
1)开户、
2)存款、
3)取款、
4)转账、
5)查询、
6)销户等
(2)、用例描述:
用例名称:银行信息系统
描述:银行客户对需要办理业务的需求以及收银员对事件的处理。
(3)、银行信息系统的事件流
1.用例存款的事件流
1.1 前置条件
在存款之前,客户已经办理银行账号并且带来现金若干,并到达银行网点。
1.2 后置条件
如果这个用例成功,这个存款事件是成功的,否则,系统没有变化。
1.3 扩充点
无
1.4 事件流
1.4.1 基流
(1)客户将银行卡交给收银员。
(2)收银员要求客户输入卡密码。
(3)客户输入卡密码,并确认密码。
(4)收银员提示,请客户选择服务类型。
(5)客户选择存款服务。
(6)收银员提示:存款数目。
(7)客户说出数目,并把钱交给收银员。
(8)收银员完成服务。
(9)收银员退还卡。
1.4.2 替代流
如果输入的密码无效,用户可以重新输入密码或者终止用例。
2. 用例转账的事件流
2.1 前置条件
在转账之前,客户已经办理银行账号,被转账人的账号已经存在并且已经知道了对方的账号。
2.2 后置条件
如果这个用例成功,这个转账事件是成功的,否则,系统没有变化。
2.3 扩充点
无
2.4 事件流
2.4.1 基流
(1)客户填写转账单。
(2)客户把转账单和银行卡交给收银员。
(3)收银员要求客户输入卡密码。
(4)客户输入卡密码,并确认密码。
(5)收银员转账成功。
(6)收银员退还卡。
2.4.2 替代流
如果输入的密码无效,用户可以重新输入密码或者终止用例。
3.用例查询的事件流
3.1 前置条件
在查询之前,客户已经办理银行账号并且携带银行卡,并到达银行网点。
3.2 后置条件
如果这个用例成功,这个查询事件是成功的,否则,系统没有变化。
3.3 扩充点
无
3.4 事件流
3.4.1 基流
(1)客户将银行卡交给收银员。
(2)收银员要求客户输入卡密码。
(3)客户输入卡密码,并确认密码。
(4)收银员提示,请客户选择服务类型。
(5)客户选择查询服务。
(6)客户说出查询内容,收银员将内容反馈给客户。
(7)收银员完成服务。
(8)收银员退还卡。
3.4.2 替代流
如果输入的密码无效,用户可以重新输入密码或者终止用例。
(4)、活动图
活动图是基于对象的状态变迁所绘制的视图。
收银员首先凭着自己的系统用户名和密码登录系统,收银员可以通过银行客户提供的有效证件号开户,提供客户账号开户、存款、取款、转账、查询、销户等功能,最后退出系统。
1.存款活动图
2.转账活动图
3.查询活动图
(5)、时序图
时序图(Sequence Diagram)主要用于按照交互发生的一系列顺序,显示对象之间的这些交互。收银员通过用户账号和密码登录系统,在系统的操作窗口对需要存款、取款、转账、查询、销户的用户进行操作,最后退出操作窗口。
我们所开发的银行管理系统时序图如图所示:
(6)、类图
类图是对象结构建模的一部分,类图描述系统中类的静态结构。类图是代码生成(将模型转化为代码)的来源,也是逆向工程(将代码转化为模型)的目标设生成物。
类图设计如下图:
系统中主要的类
(1)用户类:
它的属性有用户名(Name)、密码(Password)、银行卡号(Cardnumber)、用户身份证号码(ID)。
操作包括修改密码(Changpassword)、存款(deposit)、取款(cash)、转账(transfer)、 查询(Chaxun)、、用户开户(Registered)。
(2)系统类:
它的属性有电脑号(Computernumber)、机器地址(Mac)。
本身的操作没有,但有被管理员使用的操作。
(3)收银员类:
它的属性有用户名(name)、密码(password)。
操作包括用户开户(Registeredusers)、注销用户(Deleteusers)、查询用户信息(Chaxun)、系统维护(Weihu)。
(7)状态图
状态图用来表示建模对象是如何改变其状态的,状态定义为对象行为在某一时刻的快照或转折点。
四、结论
系统主要的实现目标是实现客户开户、存款、取款、转账、查询、销户和后台服务器端系统的设计,提供完善的功能设计。
五、总结及心得体会
UML工具很好的帮助我们实现了对银行信息系统的设计,通过UML建模,把事物从抽象到实例化的过程,对每个对象进行细化分析,从而得到简单而方便,容易理解的模型结构。通过此次试验收获很大,使我们认识到了通过UML模型可以高效完成软件设计,收获颇丰。
5
一、开发背景与目标
1.1开发背景
本系统选题为银行存储系统,是模拟银行存储开发的。随着计算机的飞速发展及应用领域的扩大,特别是计算机网络和电子商务的发展,极大的改变了商业银行传统的经营模式。能够为客户提供方便、快捷、安全的服务,也能够有效的降低银行的营运成本,这是银行存储系统追求的目标。目前,对于现代化银行运营的要求是客户可以实现方便安全的业务交易,银行职员可以进行高效合理的工作管理,实现银行业务电子化
在银行管理系统中,系统包括4个节点,分别是:银行管理员业务处理节点、
ATM自动取款机节点、系统维护节点、数据库节点。
银行管理员业务处理节点,银行管理员通过该节点办理相应业务; ATM自动取款节点,用户通过该节点进行自动取款服务;
系统维护节点,系统管理员通过该节点进行后台维护,执行银行管理员允许的所有操作;数据库节点,负责数据的存储与处理。
谁使用系统的主要功能?谁改变系统的数据? 谁从系统获取信息? 谁需要系统的支持才能完成日常的工作任务?谁负责维护,管理并保持系统的正常运行?系统需要应付,处理那些硬件设备?系统需要和那些外部系统交互?谁(或是什么)对系统运行产生的结果感兴趣?
用例图主要用来描述“用户、需求、系统功能单元”之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。
【用途】:帮助开发团队以一种可视化的方式理解系统的功能需求
第二篇:利用 UML 对学生宿舍管理系统建模
利用 UML 对学生宿舍管理系统建模
1.案例分析目标
本案例采用 UML语言对进销存系统进行分析和设计,通过本案例的讲解, 目的是使学生了解面向对象的基本思想方法,学会使用UML语言对面向对象开 发的软件系统进行可视化描述、分析与设计。
2. UML 建模基础知识
一般而言,我们可以从以下几种常用的视角来描述一个系统:
系统的使用实例:从系统外部的操作者的角度描述系统的功能。
系统的逻辑结构:描述系统内部的静态结构和动态行为,即从内部描述如 何设计实现系统功能。
系统的构成:描述系统由哪些程序组件所组成。
系统的并发性:描述系统的并发性,强调并发系统中存在的各种通信和同 步问题。
系统的配置:描述系统的软件和各种硬件设备之间的配置关系。
根据这种思想,UML采用 9 种视图描述系统的结构和行为,如下图所示:
3. 案例简介——学生宿舍管理系统需求调查
随着近几年高校招生人数的不断扩大,学生的宿舍管理工作也越来越繁重和 琐碎。比如:一年一度的新生住宿安排;每个月进行一次的收费、统计及打印报 表(包括:水费、电费、热水费);各种查询问题等等。原来有的是靠手工完成, 有的简单报表是靠 Word 或 Excel 完成。现在仅靠传统的办法已不能适应这个时 代的要求,本作业主要任务是采用UML对学生宿舍管理系统进行面向对象建模。 通过对系统的分析,我可以找到这样一些参与者:一般的查询者、住宿的学 生用户、时钟、财务管理人员、系统管理员、学生工作人员、宿舍管理人员、物 业管理人员和人事经理等。
通过分析参与者的活动,可以初步确定这样一些用例:(1 )查询信息,(2 学
生管理,(3)宿舍分配,(4)住宿管理,(5 )基础数据管理,(6)财务管理,(7 )决策支持。
4. UML 建模
根据前面的需求分析,分别建立系统的用例图、包图、类图、顺序图、协作图、活动图。
4.1 整体宿舍管理系统用例的组织——用例包图
图 2:学生宿舍管理系统的包图
4.2 子系统的用例图
画出图 2 中的“学生宿舍管理子系统”的用例图:
图 3:学生宿舍管理子系统的用例图
然后划出图 3 中,“学生信息管理“子用例的用例图:
图 4:学生信息管理子用例
用例的详细描述——以“登录用例”为例
4.3 系统类图
分析用例,从用例中寻找对象和类。例如 ,通过分析宿舍分配管理子系统, 可以发现以下实体类:学生、宿舍管理员、班级、楼栋、床位等
图 5:静态分析阶段—学生宿舍分配类图
4.4 为对象分配操作——通过协作图
图 6:为对象分配操作—通过协作图
4.5 系统的动态分析——用顺序图表示用例的实现
图 7:动态分析阶段——登陆顺序图
4.6 活动图
利用 UML的活动图工具进行工作流程建模。
图 1:学生入住业务流程--活动图
5. 案例总结
本案例以学生宿舍管理系统 UML建模为例,列举了几个相对重要视图中的
图形建模,旨在为大家分析此类问题提供参考性的方法和思路。每类图中更细节 的问题有待进一步深入分析和细化。
UML 不是一种方法学,它不需要任何正式的工作产品,而且它还提供了多
种类型的模型描述图(diagram),当在某种给定的方法学中使用这些图时,它使 得开发中的应用程序的更易理解。
UML 的内涵远不只是这些模型描述图,但是对于入门来说,这些图对这门
语言及其用法背后的基本原理提供了很好的介绍。通过把标准的UML图放进工 作产品中,精通UML的人员就更加容易加入您的项目并迅速进入角色。最常用 的 UML图包括:用例图、类图、序列图、状态图、活动图、组件图和部署图。