UML设计 银行信息系统.docx
《UML设计 银行信息系统.docx》由会员分享,可在线阅读,更多相关《UML设计 银行信息系统.docx(13页珍藏版)》请在冰豆网上搜索。
UML设计银行信息系统
计算机专业UML建模论文
姓名:
班级:
计本0703班
专业:
计算机科学与技术
院系:
信息学院计算机系
完成日期:
2010年12月24日
目录
目录I
序言1
一、系统的概述1
(一)银行信息系统1
二、需求分析1
(一)需求分析1
三、系统的UML基本模型2
(一)、用例图2
(二)、用例描述:
3
(三)、银行信息系统的事件流3
1.用例存款的事件流3
2.用例转账的事件流4
3.用例查询的事件流4
(四)、活动图5
1.存款活动图5
2.转账活动图5
3.查询活动图6
(五)时序图6
(六)类图7
1.系统中主要的类8
(七)状态图9
(八)部署图9
四、实验结论10
五、总结及心得体会10
序言
统一建模语言(UML)是非专利的第三代建模和规约语言,是在开发阶段,说明,可视化,构建和书写一个面向对象软件密集系统的制品的开放方法。
UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。
UML可以贯穿软件开发周期中的每一个阶段。
它最适于数据建模,业务建模,对象建模,组件建模。
被OMG采纳作为业界的标准。
一、系统的概述
(一)银行信息系统
银行是与人们生活密切相关的一个机构,银行可以提供存款、取款、转账等业务。
在银行设立账户的人或机构被称为银行的客户(customer)。
一个客户可以在银行开设多个账户(account),客户可以存钱到账户中,也可以从自己的账户中取钱,还可以将存款从一个账户转到另一个账户。
另外,客户可以随时查询自己的账户情况,以及查询以前所进行的存款、取款等交易记录。
客户还有权利要求关闭自己的账户。
实际生活中的银行功能其实还要复杂得多,但为了简化系统,本次设计只考虑银行的基本功能。
简化版的银行信息系统至少应具有如下功能:
1.一个银行可以有多个账户;
2.一个银行可以有多个客户;
3.一个客户可以持有多个账户;
4.一个账户可以有多个持有者;
5.银行可以为客户开设账户;
6.银行可以为客户注销账户;
7.客户可以从自己账户中取钱;
8.客户可以向自己账户中存钱;
9.客户可以在同一银行的不同账户之间转账;
10.客户可以在不同银行的不同账户之间转账;
11.请完成登录、存款、取款、转账和查询几个模块的设计。
二、需求分析
(一)需求分析
银行系统是与生活紧密相关的一个机构,银行提供了存款、取款、转账等业务。
在银行设立账户的人或机构通常被称为银行的储户。
一个储户可以在银行开多个账户,储户可以存钱到账户中,也可以从自己的账户中取现,还可以将存款从一个账户转到另一个账户。
储户还可以随时查询自己账户的情况,并查询以前所进行的存款、取款等交易记录。
后台管理员可以对客户的账户进行注销、删除、查询等管理,还有就是银行利息、汇率、手续费之类参数的设置,以及财务管理以及财务分析。
软件分别有开户,查询存取款,转账等功能。
各个模块各有不同的功能,但都能完成查询和存取功能。
各模块的数据都存放在数据库中。
数据的调用和连接都有程序来完成。
此软件所要完成的主要功能有三方面:
如果是存款,用户填写存款单,然后交给收银员键入系统,同时系统还要记录存款人姓名,住址,身份证号码,存款类型,存款日期,利率及密码(可选)等信息,完成后由系统反馈成功存款信息给用户。
如果是取款,用户填写取款的相关信息(取款金额、取款币种)进行提交,系统要求用户输入密码以确认身份,核对密码正确无误后系统计算利息并印出利息单给用户。
如果是转账,用户填写转账的相关信息进行提交,系统要求用户输入密码以确认身份,核对密码正确无误后系统计算利息并反馈信息给用户。
系统及时更新数据库。
外部功能:
实现化窗口,开户/销户、存款/取款、查询/转账。
内部功能:
同步,过滤,定位,识别,更新,连接。
三、系统的UML基本模型
(一)、用例图
通过分析对银行信息系统的需求分析,确定参与者有银行客户、收银员。
收银员具有维护系统信息、维护客户信息、查询客户情况和处理处理客户需求的作用。
用例包括:
1)开户、
2)存款、
3)取款、
4)转账、
5)查询、
6)销户等。
用例图如下所示:
1)银行信息系统用例分为两部分:
UseCaseView和LogicalView
2)UseCaseView部分:
3)LogicalView部分:
4)具体用例关系图:
(二)、用例描述:
用例名称:
银行信息系统
描述:
银行客户对需要办理业务的需求以及收银员对事件的处理。
(三)、银行信息系统的事件流
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替代流
如果输入的密码无效,用户可以重新输入密码或者终止用例。
(四)、活动图
活动图是基于对象的状态变迁所绘制的视图。
收银员首先凭着自己的系统用户名和密码登录系统,收银员可以通过银行客户提供的有效证件号开户,提供客户账号开户、存款、取款、转账、查询、销户等功能,最后退出系统。
1.存款活动图
2.转账活动图
3.查询活动图
(五)时序图
时序图(SequenceDiagram)主要用于按照交互发生的一系列顺序,显示对象之间的这些交互。
收银员通过用户账号和密码登录系统,在系统的操作窗口对需要存款、取款、转账、查询、销户的用户进行操作,最后退出操作窗口。
我们所开发的银行信息系统时序图如图所示:
操作时序图
(六)类图
类图是对象结构建模的一部分,类图描述系统中类的静态结构。
类图是代码生成(将模型转化为代码)的来源,也是逆向工程(将代码转化为模型)的目标设生成物。
类图设计如下图:
1.系统中主要的类
(1)用户类:
它的属性有用户名(Name)、密码(Password)、银行卡号(Cardnumber)、用户身份证号码(ID)。
操作包括修改密码(Changpassword)、存款(deposit)、取款(cash)、转账(transfer)、查询(Chaxun)、、用户开户(Registered)。
(2)系统类:
它的属性有电脑号(Computernumber)、机器地址(Mac)。
本身的操作没有,但有被管理员使用的操作。
(3)收银员类:
它的属性有用户名(name)、密码(password)。
操作包括用户开户(Registeredusers)、注销用户(Deleteusers)、查询用户信息(Chaxun)、系统维护(Weihu)。
(七)状态图
状态图用来表示建模对象是如何改变其状态的,状态定义为对象行为在某一时刻的快照或转折点。
(八)部署图
系统部署图如下:
四、实验结论
系统主要的实现目标是实现客户开户、存款、取款、转账、查询、销户和后台服务器端系统的设计,提供完善的功能设计。
五、总结及心得体会
UML工具很好的帮助我们实现了对银行信息系统的设计,通过UML建模,把事物从抽象到实例化的过程,对每个对象进行细化分析,从而得到简单而方便,容易理解的模型结构。
通过此次试验收获很大,使我们认识到了通过UML模型可以高效完成软件设计,同时也要感谢老师以及同学们对于我们的大力帮助,使我们能很好的完成此次软件工程设计,谢谢!