10郑永欣_uml实验报告

实 验 报 告

     

          计算机科学  学院  工业中心204     实验室

二〇##年 1月 3 日

广东技术师范学院实验报告

实验 1  项目名称:银行信息系统的分析与设计

目  录

 

目  录... 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)银行信息系统用例分为两部分:Use Case View 和 Logical View

2)Use Case View部分:

3)Logical View部分:

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.查询活动图

(五)时序图

时序图(Sequence Diagram)主要用于按照交互发生的一系列顺序,显示对象之间的这些交互。收银员通过用户账号和密码登录系统,在系统的操作窗口对需要存款、取款、转账、查询、销户的用户进行操作,最后退出操作窗口。

我们所开发的银行信息系统时序图如图所示:

操作时序图

(六)类图

类图是对象结构建模的一部分,类图描述系统中类的静态结构。类图是代码生成(将模型转化为代码)的来源,也是逆向工程(将代码转化为模型)的目标设生成物。

类图设计如下图:

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模型可以高效完成软件设计,同时也要感谢老师以及同学们对于我们的大力帮助,使我们能很好的完成此次软件工程设计,谢谢!

 

第二篇:linux实验报告(QT)

 

学号:092201046                 姓名:张攀                   班级:信工0901       

实验时间:20##-4-26             实验地点:A4049              指导老师:雷鸿