我的银行系统的分析与设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
现代软件工程学课程
论文(报告、案例分析)
院系研究生部
专业计算机应用技术
班级1221
学生姓名刘南星
学号1208120302
任课教师唐恒亮
2012年12 月21日
银行系统的分析与设计
——基于UML建模语言
简介:
实际生活中的银行功能其实还要复杂得多,但为了简化系统,本次设计只考虑银行的基本功能。简化版的银行信息系统至少应具有如下功能:
1.一个银行可以有多个账户;
2.一个银行可以有多个客户;
3.银行可以为客户开设账户;
4.银行可以为客户注销账户;
5.一个客户可以持有多个账户;
6.一个账户可以有多个持有者(客户);
7.客户可以从自己账户中取钱;
8.客户可以向自己账户中存钱;
9.客户可以在同一银行的不同账户之间转账;
10.客户可以在不同银行的不同账户之间转账;
需求分析
——采用用例驱动分析方法
1.识别参与者:
(1)Clerk(银行职员)
描述:Clerk可以创建、删除账户,并可以修改账户信息,它是用户与银行交互的媒介,为客户实现需求。
示例:银行工作人员。
(2)CustomerActor(客户)
描述:需要进行开户,存钱,取钱,转账,销户等业务的对象。
示例:任何在银行中开有账户的个人和组织,是银行的服务对象。
(3)BankActor(银行)
描述:可以提供开户,存款,取款,转账,销户等业务功能的对象。
示例:中国工商银行
2.识别用例:
用例:规定系统或部分系统的行为,描述系统所执行的动作序列集,并为执行者产生一个可供观察的结果。通过对需求的进一步分析,可确定系统中有如下用例存在:
(1)Login(登录):验证用户身份。
(2)Deposit fund(存款):存钱到帐户。
(3)Withdraw fund(取款):从帐户中取钱。
(4)Maintain Account(管理帐户):创建帐户(开户)、删除帐户(销户)及修改帐户信息。
(5)Transfer fund(转帐)
(6)Transfer fund within a bank(在银行内转帐)
(7)Transfer fund between banks(在不同银行之间转账)
其中用例(5)是(6)和(7)的父用例。
3.用例图:
4.用例名称:银行信息系统
描述:银行客户对需要办理业务的需求以及收银员对事件的处理。
5. 用例事件流描述:
(1)Login(登录)
前置条件:无
后置条件:如果用例成功,则用户登录到系统中,否则,系统状态不变。
扩充点:无
事件流:a、基流(basic flow)
当用户想登录到银行信息系统中时,用例启动。
1)用户输入自己的用户名和密码,提交成功
2)系统验证输入的名字和密码(E-1),用户登录成功
b、替代流(alternative flow)
E-1如果不能通过,系统提示错误信息,用户可以重新输入或终止用例。
(2)Deposit fund(存款)
前置条件:在存款之前,客户已经办理银行账号并且带来现金若干,并到达银行网点而且本用例开始前clerk必须登录到系统中。
后置条件:如果这个用例成功,这个存款事件是成功的,否则,系统没有变化。
扩充点:无
事件流:a、基流
当customeractor想存钱到账户时,要向clerk提交存款单和现金。
1)clerk向customeractor确认服务类型并接收所存金额
2)系统提示Clerk输入用户姓名、用户ID、账号和所存款金额
3)clerk输入相关信息后提交,系统确认账户是否存在并有效
4)系统建立存款时间记录,并更新帐户的相关信息
b、替代流
如果账户不存在或者冻结,显示提示信息,,用户可以重新输入或者终止该用例。
(3)withdraw fund(取款)
前置条件:本用例开始前clerk必须登录到系统中
后置条件:如果这个用例成功,这个取款事件是成功的,否则,系统没有变化。。
扩充点:无
事件流:a、基流(basic flow)
当用户想取钱时,用例启动。
1)clerk向customeractor确认服务类型并确定所取金额
2)系统提示Clerk输入用户姓名、用户ID、账号和所取金额
3)clerk输入相关信息后提交,系统确认账户是否存在并有效(E-1),确认账户余额是否充足(E-2)
4)系统建立取款时间记录,并更新帐户的相关信息
b、替代流(alternative flow)
E-1如果不能通过,系统提示错误信息,用户可以重新输入或终止用例
E-2如果不能通过,系统显示提醒信息,用户可以重新输入金额或者终止用例。
(4)trancefer fund(转账)
前置条件:在转账之前,客户已经办理银行账号,被转账人的账号已经存在并且已经知道了对方的账号而且本用户已经登录系统。
后置条件:如果这个用例成功,这个转账事件是成功的,转账人和被转账人的账户中存款金额均发生变化,否则,系统没有变化。
扩充点:无
事件流:a、基流(basic flow)
当用户想转账时,用例启动。
1)clerk向customeractor确认服务类型并确定所取金额
2)客户填写转账单客户把转账单和银行卡交给收银员。
3)系统提示Clerk输入用户姓名、用户ID、账号和所转入金额及账户和姓名
4)clerk输入相关信息后提交,系统确认资金转出账户是否存在并有效(E-1),确认资金转出账户余额是否充足(E-2)
5)系统更新资金转出帐户的相关信息
6)为资金转出账户建立转账记录
7)存储转账记录
8)判断自己转入账户是否属于同一家银行:如果是,则执行分支流S-1,如果不是,则执行分支流S-2。
b、分支流(sub flows)
S-1 在同一银行的账户间转账:
1)系统确认资金转入账户是否有效,姓名和账号是否对应
2)更新资金转入帐户的相关信息