一、第一个类图——ATM系统类图
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、图形文档
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、图形文档
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、图形文档
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系统类图中的所有功能界面的跳转逻辑依据该界面类来实现