面向对象分析与设计——实验七

一、第一个类图——ATM系统类图

1、图形文档

面向对象分析与设计——实验七_第1张图片

ATM系统类图

2、文字说明

1)类图综述

银行系统中的ATM的目的是在图形文档的基础上,结合词汇表详细地给出每一个名词所涉及到的类,并且进一步地说明内在结构所涉及到的属性以及对应的方法,其基本流程与用况图一致。

2)类描述

类名

ATM使用者

整体说明

主要标识使用该ATM系统的人员,即银行客户或ATM维护员

属性说明

+使用者身份:String 

操作说明

关系说明

拥有两个子类,银行用户和ATM维护员

 

类名

ATM维护员

整体说明

标识维护ATM系统的人员

属性说明

+姓名:String

+工号:double

操作说明

+维修ATM机():bool

关系说明

继承父类ATM使用者

 

类名

银行客户

整体说明

标识使用ATM系统的银行客户

属性说明

+姓名:String

+性别:String

+身份证号:String

+籍贯:String

+银行卡号:String

操作说明

+插入银行卡():bool

+推出银行卡():bool

关系说明

继承父类ATM使用者,与ATM类为二元关联关系,与银行卡为单向关联关系

 

类名

银行卡

整体说明

标识不同的银行卡,用来储存银行卡的基本信息

属性说明

+银行卡类别:int

+银行卡卡号:String

操作说明

+获得银行卡卡号():double

关系说明

与银行客户类为单向关系

 

类名

ATM

整体说明

标识不同的ATM

属性说明

+编号:double

+插入卡号:String

操作说明

+接受银行卡():bool

+推出银行卡():bool

关系说明

与银行客户为二元关联关系,与金融业务为二元关联关系

 

类名

金融业务

整体说明

保存不同的ATM金融业务操作方法

属性说明

+银行卡号:String

+业务流水号:int

操作说明

+存款():bool

+取款():bool

+转账():bool

+余额查询():void

+打印凭条():bool

关系说明

与ATM类、凭条类、余额系统类、银行系统类为二元关联关系

 

类名

凭条

整体说明

该类记录了打印出来的凭条的信息

属性说明

+业务流水号:int

+银行卡号:String

+交易时间:Time

+交易类型:int

操作说明

+打印凭条():bool

关系说明

 与ATM类为二元关系

 

类名

余额

整体说明

记录存放当前银行卡账户的余额

属性说明

+银行卡号:String

+当前余额:double

操作说明

关系说明

 与ATM类为二元关系

 

类名

银行系统

整体说明

连接银行后台数据库的类,用来实现ATM数据的持久化

属性说明

+银行名字:String

+银行卡号:String

操作说明

+读出数据():bool

+读入数据():bool

关系说明

 与ATM类为二元关系

 

3)关联描述

银行客户-银行卡:类型为单向关联;关联所连接的类:银行客户和银行卡

银行客户-ATM:类型为二元关联;关联所连接的类:银行客户和ATM

金融业务-ATM:类型为二元关联;关联所连接的类:金融业务和ATM

金融业务-银行系统:类型为二元关联;关联所连接的类:金融业务和银行系统

金融业务-余额:类型为二元关联;关联所连接的类:金融业务和余额

4)继承描述

ATM使用者和银行客户:后者继承前者

ATM使用者和ATM维护员:后者继承前者                                    

5)依赖描述

银行卡与银行客户:前者依赖于后者

6)其他与类图有关的说明

暂无

 

二、第二个类图——金融业务类图

1、图形文档

面向对象分析与设计——实验七_第2张图片

ATM金融业务类图

2、文字说明

              1)类图综述

ATM系统中的金融业务类图目的是完整地描述银行客户在使用ATM机时候

              2)类描述

类名

ATM选择界面

整体说明

主要显示银行客户使用登陆进入ATM
以后所要进行的业务操作

属性说明

+存款:Object

+取款:Object

+转账:Object

+余额查询:Object

+打印凭条:Object

操作说明

客户选择不同的功能实例化对应的业务类

关系说明

业务类的实例化通过该类来实现

 

类名

取款

整体说明

银行客户选择取款业务以后所实例化的取款类

属性说明

+取款金额:String

+取款账号:String

操作说明

客户在界面输入取款金额后数据传送到这个类进行处理

关系说明

该类通过ATM选择界面进行初始化,同时聚合打印凭条类

 

类名

存款

整体说明

银行客户选择存款业务以后所实例化的取款类

属性说明

+使用者身份:String 

+存款金额:String

+当前账号:String

操作说明

客户在界面输入存款金额后数据传送到这个类进行处理

关系说明

该类通过ATM选择界面进行初始化,同时聚合打印凭条类

 

类名

转账

整体说明

银行客户选择转账业务以后所实例化的取款类

属性说明

+转账金额:String

+转账账号:String

+当前帐号:String

操作说明

客户在界面输入转账金额和转账帐号后数据传送到这个类进行处理

关系说明

该类通过ATM选择界面进行初始化,同时聚合打印凭条类

 

类名

余额查询

整体说明

银行客户选择转账业务以后所实例化的余额转帐类

属性说明

+当前帐号:String

操作说明

客户在界面选择余额查询后跳转到这个类进行逻辑处理

关系说明

该类通过余额查询选择界面进行初始化,同时聚合打印凭条类

 

类名

打印凭条

整体说明

银行客户了所需要的业务以后所选择的打印凭条类

属性说明

+流水号:double

+业务类型:String

+银行卡号:String

操作说明

所有的业务都可以选择打印凭条

关系说明

该类聚合在所有的业务逻辑类里面,让所有的业务功能都可以选择打印凭条

 

类名

银行主机

整体说明

所有的ATM业务数据操作最后数据持久化都会集中到这个类里面

属性说明

+银行名字:String

+银行卡号:String

操作说明

所有的业务数据持久化所在的类

关系说明

所有的业务执行完毕都要进行这个类的数据交换和持久化操作

 

              3)关联描述

ATM选择界面-取款:类型为单向关联;关联所连接的类:ATM选择界面和取款

ATM选择界面-存款:类型为单向关联;关联所连接的类:ATM选择界面和存款

ATM选择界面-余额查询:类型为单向关联;关联所连接的类:ATM选择界面和余额查询

ATM选择界面-转账:类型为单向关联;关联所连接的类:ATM选择界面和转账

ATM选择界面-打印凭条:类型为单向关联;关联所连接的类:ATM选择界面和打印凭条

打印凭条和取款、存款、余额、转账、打印凭条:类型为聚合,打印凭条聚合到其他的业务逻辑里面

银行主机额和取款、存款、余额查询、转账:类型为单向关联

              4)继承描述

              5)依赖描述

打印凭条的界面是依赖于其他的业务逻辑类,只有选择了特定的功能业务才可以打印凭条

              6)其他与类图有关的说明

              这个金融业务类是对ATM系统类金融业务的具体拓展

三、第三个类图——银行客户类图

1、图形文档

面向对象分析与设计——实验七_第3张图片

ATM银行客户类图

2、文字说明

              1)类图综述

ATM系统的银行客户类图主要描述了银行客户在使用ATM初始过程的状态

              2)类描述

类名

他行银行卡

整体说明

记录客户使用ATM机时候的其他银行银行卡的信息

属性说明

+银行名称:String

+银行卡号:String

+卡号类型:String

操作说明

无特殊操作,用于银行卡数据记录

关系说明

继承父类银行卡

 

类名

本行银行卡

整体说明

记录客户使用ATM机时候的本ATM所属银行的银行卡的信息

属性说明

+银行名称:String

+银行卡号:String

+卡号类型:String

操作说明

无特殊操作,用于银行卡数据记录

关系说明

继承父类银行卡

 

类名

银行卡

整体说明

记录客户使用ATM机时候银行卡的信息

属性说明

+银行卡类别:int

操作说明

无特殊操作,用于银行卡的类别

关系说明

有子类他行银行卡、本行银行卡

 

类名

银行客户

整体说明

记录银行客户的个人信息

属性说明

+姓名:String

+性别:String

+身份证号:String

+籍贯:String

+银行卡卡号:String

操作说明

无特殊操作,用于记录银行客户的个人信息

关系说明

与银行卡类单向关联

 

类名

ATM选择界面

整体说明

显示银行客户进行的ATM机操作

属性说明

+输入密码:int

操作说明

无特殊操作,用于显示银行客户进行的ATM
操作

关系说明

与ATM维护员、银行客户单向关联

 

类名

银行主机

整体说明

所有的ATM业务数据操作最后数据持久化都会集中到这个类里面

属性说明

+银行名字:String

+银行卡号:String

操作说明

所有的业务数据持久化所在的类

关系说明

所有的业务执行完毕都要进行这个类的数据交换和持久化操作

 

              3)关联描述

银行卡与银行客户之间是单向关联:一个银行客户可以拥有多张有效银行卡,银行卡可以来自不同的银行

ATM选择界面和ATM维护员之间是单向关联:每个ATM维护员可以维护多台ATM机和为客户提供帮助

              4)继承描述

他行银行卡、本行银行卡继承银行卡类

              5)依赖描述

              银行主机类必须在插入有效银行卡后才会触发实现

              6)其他与类图有关的说明

该类是ATM系统类图的中银行客户的具体拓展。

四、第四个类图——ATM界面类图

1、图形文档

面向对象分析与设计——实验七_第4张图片

ATM界面类图

2、文字说明

              1)类图综述

该类图描述的是ATM系统间的界面跳转逻辑

              2)类描述

类名

登陆前界面

整体说明

描述了ATM机在插入银行卡登陆前的状态

属性说明

+输入密码:int

+帮助:Object

操作说明

通过这个类用户进行插入银行卡的一些基本操作

关系说明

该类聚合于ATM系统界面类

 

类名

退出后界面

整体说明

描述了ATM机在推出银行卡后的状态

属性说明

+输入密码:int

+帮助:Object

操作说明

通过这个类用户进行退出银行卡后的一些基本操作

关系说明

该类聚合于ATM系统界面类

 

类名

登陆后界面

整体说明

描述了ATM机在插入银行卡并成功登陆后的状态

属性说明

+业务选择:int

+帮助:Object

操作说明

通过这个类用户进行成功登陆后的一些基本操作

关系说明

该类聚合于ATM系统界面类,与业务界面单向关联

 

类名

ATM系统界面

整体说明

描述了ATM机的三种状态

属性说明

+登陆前界面:Object

+登陆后界面:Object

+退出后界面:Object

操作说明

这个类记录了用户当前的操作类型

关系说明

登陆前界面、登陆后界面和退出后界面聚合于该类

 

类名

业务界面

整体说明

描述了成功登陆ATM机以后所显示的具体ATM业务操作

属性说明

+业务类型:Object

操作说明

这个类记录了具体的业务操作

关系说明

与登陆后界面单向关联

 

              3)关联描述

              业务界面和登陆后界面:单向关联关系

        ATM系统界面和登陆前界面、登陆后界面、退出后界面是聚合关系

              4)继承描述

              无

              5)依赖描述

              无

              6)其他与类图有关的说明

ATM系统类图中的所有功能界面的跳转逻辑依据该界面类来实现

你可能感兴趣的:(面向对象分析与设计)