




已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件工程文档银行ATM系统基于UML的设计与实现目 录1、引言41.1 编写目的41.2 读者对象41.3 软件项目概述41.4 文档概述41.5 定义51.6 引用文件5引用文档5参考文件52、任务概述62.1目标62.2软件的开发和运行环境62.3 用户特征62.4 假设与约束612 初步需求分析83、分析问题域831 Actor(参与者)832 Use case(用例)933 Use Case Diagram(系统用例图)94静态结构模型1042 CRC11边界类:11实体类:13控制类:14其他类:165动态行为模型1851事件流描述1852 顺序图216 界面设计要求307、软件测试方案38四、功能测试394.1 子功能1插卡394.2 子功能2登录394.3 子功能3选择账户394.4 子功能4选择操作39五、用例测试403.1 用例1存款403.2 用例2取款403.3 用例3转账403.4 用例4查询余额403.1 用例5更改密码407工程进度总览419、工程进度总览381、引言1.1 编写目的按照面向对象软件工程思想,为便于银行ATM系统软件开发,为其提供可靠的文档资料,增强此软件的可读性与可维护性,记录整个软件开发过程。此文档为程序员控制整个开发过程的必备文档,记录了软件的开发过程,并指导程序员逐步实现软件的开发。 1.2 读者对象该软件是一个课程设计,属于小组开发,对象是教员、欲拷贝此软件进行参考的专业人员。 1.3 软件项目概述l 项目名称:工商银行ATM系统 l 简称:银行ATM系统 l 项目代号:国标90010603 l 软件项目的大致功能:银行客户存款、取款、转账、查询余额、更改密码。 1.4 文档概述本文档的大致内容为: l 软件的编写目的 l 软件的功能、性能描述 l 软件的开发过程描述 l 软件的界面设计 l 软件的测试与维护 1.5 定义1、文档: 记录软件开发活动和阶段性成果,为理解软件所必需的阐述性资料 2、数据:是客观事物的符号表示,是现实世界的事物采用计算机能够识别、存储和处理的形式进行描述的符号的集合。 3、正确性:满足用户的需求(功能、性能等)。 4、可靠性:具有能够防止因概念、设计和结构等方面的不完善而造成的系统失效,具有挽回因操作不当而造成软件系统失效的能力。 5、 有效性:充分利用计算机的时间和空间资源。 6、 可验证性:软件系统应易于检查、测试和评审 1.6 引用文件 引用文档 软件工程术语 (GB/T 114571995) 中华人民共和国国家标准 1995-12-01 实施 参考文件 1UML与Rational Rose从入门到精通.Wendy Boggs等著 2、Visual C+动感设计飞思科技,电子工业出版社,2002年9月 3、Visual C+入门与提高清华大学出版社,2002年6月 4、Visual C+、MFC导学人民邮电出版社,2xxx年1月 5、Visual C+编程高手机械工业出版社,2001年12月 2、任务概述2.1目标本项软件是为了实现对银行ATM系统的模拟。软件在VISUAL C+ 6.0 的环境下开发,是一项独立软件,包含所有源代码。软件中的BMP图片由WINDOWS的画图工具和图形软件PHOTOSHOP制作或处理而成。 2.2软件的开发和运行环境开发:此软件代码由Visual C+6.0完成,由MFC工具开发。 运行环境:Pentium ll 以上处理器的Windous环境下,包括Win.NT等操作系统。2.3 用户特征教员:教授与研究生,负责检查此软件,具有丰富的软件开发经验。 同学:计算机专业本科生,进行参考,具有一定的编程能力和软件工程经验。 2.4 假设与约束2.4.1 假设经费限制:此软件为课程设计作业,无经费限制。 开发期限:7周。 预计困难: 1、 时间紧; 2、 难度大; 3、 知识与能力不够。 2.4.2 约束性能约束:不能在除Windows以外的环境下运行。 12 初步需求获取 此软件的设计将实现银行ATM系统的基本功能。ATM系统一次服务一名客户。客户插入一张ATM卡并进入个人数字识别号码(PIN),系统进行验证,通过后客户 才能执行一种或更多操作。客户完成所有操作后,退卡。 ATM系统必须向客户提供如下服务: 1、客户可以做一次取款(取款金额必须是100元人民币的整数倍),在现金被提取之前,必须得到银行的许可。 2、客户可以做一次存款,客户把存款量输入到ATM系统中,必须从银行得到许可。3、客户可以做一次转帐。 4、客户可以进行一次详细账户信息查询。 5、客户通过有效验证后可以更改密码。 6、客户可以在取回磁卡是选择是否得到记录操作的打印凭条。 ATM系统将把每一处理传达到银行并且获得银行许可。如果银行确定客户PIN 是无效的,客户将被要求再进入PIN。 如果客户不能在五次尝试之后成功地进入PIN,客户的卡将被机器没收,而客户不得不联系银行取回它。 3、系统功能需求31 Actor(参与者)描述(1)Bankserve(银行服务器) 描述:Bankserve管理机器。 示例:银行中央服务系统。 (2)Operator(银行服务人员) 描述:负责开/关机器和往机器中放现金。 示例:银行的工作人员。 (3)Customer(客户) 描述:Customer可以存款、取款、转账、查询余额、更改密码。 示例:任何一个在银行开有账户的个人。 32 Use case(用例)描述(1)Session(会话) 当一名客户将一张ATM卡片插入机器时,一个Session开始,ATM系统读卡(如果客户执行非法操作或卡片损坏,卡片将被退出,同时屏幕将显示出错信息,而被Session异常中断)。进行验证客户密码的登录功能。客户成功登录系统后,可以选择一种或多种操作,直至退卡。如果客户输入五次无效的PIN,则Session被异常中断 ,ATM卡将被吞掉。 (2)Task(任务) Task是一种抽象的用例,表示所有类型的处理所共有的行为,Task的具体类型按照适当的方式执行一定的操作。根据Task(存款、取款,转帐,查询,更改密码)的事件流描述给出具体的处理。 (3)Deposit(存款) 提供存款到帐户的功能。 (4)Withdraw(取款) 提供从账户取款的功能。 (5)Transfer(转账) 提供转账功能。 (6)QueryAccount(查询余额) 提供查询余额的功能。 (7)ChangePIN(更改密码) 提供更改密码的功能。 (8)PrintReceipt(打印凭条) 客户选择打印凭条,包括显示日期,时间,机器位置,操作,理由,数量,结果类型,受到影响的原因和可供使用的选择。 33 Use Case Diagram(系统用例图)4静态结构模型分析41 类的分析(初步)42 CRC 类的责任与交互的描述边界类:1. CcardReader a) Responsibility: i. Tell ATM When Card is Inserted ii. Eject Card iii. Read info from card iv. Retain card b) Collaborations: i. ATM ii. Session iii. Card 2. CcashDispenser a) Responsibility: i. Dispense cash ii. Keep the amount of cash available iii. Init cash amount b) Collaborations: i. Clog ii. CTransaction 3. CCustomerConsole a) Responsibility: i. Display messages ii. Display menu and receive a choice iii. Display a prompt and receive a PIN iv. Display a prompt and receive the amount of money v. Display a dialog and receive the response b) Collaborations: i. CTransaction ii. CSession 4. CKeyboard a) Responsibility: Watch the gesture from the keyboard b) Collaborations: CCustomerConsole 5. CScreen a) Responsibility: Display drawing and strings b) Collaborations: CCustomerConsole 6. CCashReceiver a) Responsibility: Receive the cash from the customer b) Collaborations: Clog 7. Cbank a) Responsibility: i. Connect to bank ii. Send message to bank iii. Receive message to bank iv. Shut down connection to bank b) Collaborations: i. Clog ii. CSession iii. Cmessage 8. CoperatorPannel a) Responsibility: i. Inform ATM system is shutdown ii. Inform ATM system is started iii. Inform cashdispenser the initial amount of cash b) Collaboration: i. CATM ii. CCashDispenser 9. Cprinter a) Responsibilities: Print the receipt b) Collaboration: i. CATM ii. CTransaction iii. Clog iv. CReceipt 实体类:1、 Clog a) Responsibility: i. Write log message from bank ii. Write log message from cardreader iii. Write log message from session iv. Write log message from Transaction b) Collaborations: i. CBank ii. CCardreader iii. CTransaction 2、 Cmessage a) Responsibility: Hold information to send to the bank server b) Collorations: i. CBank ii. CTransaction 3、 Creceipt a) Responsibility: Hold the message to be printed b) Collaborations: Cprinter 4、 CCard a) Responsibility: Hold the information of a card b) Collaborations: i. CCardReader ii. CSession 5、 CAccount a) Responsibility: Hold the information of an account b) Callaborations: CQueryAccount 控制类:1、 CSession a) Responsibility: i. Perform Session ii. Perform invalid PIN exception iii. Allow customer to choose a transaction iv. Start transaction b) Collaborations: i. CATM ii. CTransaction iii. CCustomerConsole iv. Clog 2、 CTransaction a) Responsibility: Perform transaction b) Collaborations: i. CCustomerConsole ii. Clog iii. CBank iv. Cprinter v. CWithDraw vi. CDeposit vii. CWithDraw viii. CTransfer ix. CInquery x. CChangePIN 3、 CATM a) Responsibility: i. Start up when switch is turned on ii. Shut down when switch is turned off iii. Start a new session when card is inserted by customer b) Collaborations: i. OperatorPanel ii. CashDispenser iii. NetworkToBank iv. CustomerConsole v. Session 4、 CWithDraw a) Responsibility: Perform transaction of withdrawing b) Collaborations: CTransaction 5、 CTransfer a) Responsibility: Perform transaction of transfer b) Collaborations: CTransaction 6、 CDposit a) Responsibility: Perform transaction of depositing b) Collaborations: CTransaction 7、 CChangePIN a) Responsibility: Perform transaction of depositing b) Collaborations: CTransaction 8、 Cinquery a) Responsibility: Perform transaction of depositing b) Collaborations: CTransaction 其他类:CTimer a) Respoonsibility: Keep the time updated b) Collaborations: Clog 43 类图5动态行为模型51事件流描述 Login(登录) 简要说明 本用例描述
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中兽医员三级安全教育(班组级)考核试卷及答案
- 搪瓷制品制造工技能操作考核试卷及答案
- 美容师岗位操作技能考核试卷及答案
- 鄂教版五年级下册科学课堂互动计划
- 高端写字楼卫生间隔断施工管理措施
- 输水管道防腐蚀施工方案和技术措施
- 游戏建模面试题目及答案
- 新北师大版五年级下期数学教师教学培训计划
- 小学数学组合作教学教研计划
- 物业经理2025年度物业费收缴总结及改进计划
- 2025年安徽高中学业水平合格性考试化学试卷试题(含答案详解)
- DB33T 592-2015 农贸市场建设与管理规范
- 《糖尿病视网膜病变》课件
- 网络规划设计师知识点总结
- 《公司法完整版》课件2024
- 泡沫灭火系统维护保养方案
- 《低能耗建筑多排孔自保温砌块墙体体系应用技术规程》
- 《光伏产业链介绍》课件
- DB37T 1914-2024 液氨存储与装卸作业安全技术规范
- 有限空间监理实施细则
- 期末练习卷(模拟试题)-2024-2025学年 一年级上册数学人教版
评论
0/150
提交评论