实验二 使用UML进行对ATM系统建模

一.实验目的
针对指定软件系统的需求进行分析和设计;
使用Microsoft Visio软件,绘制UML图。
二.实验设备
计算机、Microsoft Visio软件。
三.实验内容及步骤
下图所示是一个自动取款机(ATM)系统,它的需求陈述如下:

本案例将要开发的ATM系统能够为顾客提供以下基本服务(它们统一称为交易):
(1)取款服务。顾客可以用银行卡从对应的账户中支取现金,现金必须是100元的整数倍,且每次取款不能超过2000元。
(2)存款服务。顾客可以把现金存入与银行卡对应的账户中。
(3) 转帐服务。顾客可以把一个银行卡对应的账户中的款项转帐到另一个银行账户中。
(4)查询服务。顾客能够查询一个银行卡对应的账户中的余额。
该ATM系统包括以下组成部分:
(1)能够读取银行卡信息的读卡器。
(2)与客户进行交互的顾客控制台(包括键盘和显示器)。
(3)送出顾客所取现金的装置(下文中称为取款器)。
(4)用于放入存款的插槽(下文中称为存款器)。
(5)打印客户回执的打印机。
(6)启动和关闭ATM系统的开关键盘。
(7)ATM系统与银行服务器通过特定的网络连接进行通信。
ATM系统在提供以上服务的过程中,必须满足以下要求:
(1)一个顾客可以在最终确认前放弃一项交易。
(2)ATM在执行交易过程中将与银行系统进行通信,对是否允许交易进行验证。
(3)ATM为每次成功的交易提供一个打印回执。
(4)ATM需要维护一个内部日志,对每次交易进行记录。
要求对ATM机软件系统进行建模,按照下列要求完成实验内容:
(a)画出顶层和细化的用例图;
(b)画出系统的分析类图;
(c)选取用例图中的两个用例,画出它们的序列图;
(d)画出系统的体系结构图、构件图和部署图。

四、实验结果

4.1顶层和细化的用例图

4.1.1顶层用例图

4.1.2系统用例图

4.2系统的分析类图;

4.3选取用例图中的两个用例,画出它们的序列图;

4.4画出系统的体系结构图、构件图和部署图。
4.4.1体系结构图

4.4.2构件图

4.4.3部署图

考虑该软件只部署在ATM的终端上,更新后的部署图如下:

五、实验小结
通过实验我了解到在实际过程中基于UML的软件设计分析过程中的活动和步骤的执行过程中一般不是单向的,而是一个不断迭代的过程。面向对象分析与设计是一个从问题领域出发,以万物皆对象的思想为指导,逐步精化的过程。
我在对用例图的绘制过程中了解到:对用例的完整描述不只是简单的了解事件的一些步骤和操作者等等需要明确包括用例名称、参与者、前置条件、一个主事件流、0到多个辅事件流和后置条件才算把一个事件的用例流程了解清楚。
通过第二次实验,我对visio的使用更加熟悉,基本可以熟练使用visio进行建模,下次会更加努力。

[顶层架构图]
[构件图]

实验二 使用UML进行对ATM系统建模相关推荐

  1. ATM系统-实验二:Use Case图与Use Case详细描述

    ATM系统-实验二:Use Case图与Use Case详细描述 实验一文档所在博客:https://blog.csdn.net/aptx1255/article/details/80080013 一 ...

  2. 《Java程序设计》实验二 实验报告

    实验二 Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验要求 1.没有Lin ...

  3. 20175333曹雅坤 实验二 Java面向对象程序设计

    实验二 Java面向对象程序设计 实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初步掌握UML建模 4. 熟悉S.O.L.I.D原则 5. 了解设计 ...

  4. 20175212童皓桢 Java实验二-面向对象程序设计实验报告

    20175212童皓桢 Java实验二-面向对象程序设计实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设 ...

  5. java程序面向对象show,20165309 实验二 Java面向对象程序设计

    2017-2018-2 20165309实验二<Java面向对象程序设计>实验报告 一.实验内容 1. 初步掌握单元测试和TDD 2. 理解并掌握面向对象三要素:封装.继承.多态 3. 初 ...

  6. java构成对象的三要素_20155237 《JAVA程序设计》实验二(JAVA面向对象程序设计)实验报告...

    20155237 <JAVA程序设计>实验二(JAVA面向对象程序设计)实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S ...

  7. 2016-2017-2 20155117实验二《Java面向对象程序设计》实验报告

    实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验要求 1.参考Intellj IDEA 简易教程 提交 ...

  8. 20145207《Java程序设计》实验二(Java面向对象程序设计)实验报告

    <Java程序设计>实验二(Java面向对象程序设计)实验报告 目录 改变 Java面向对象程序设计实验要求 实验成果 课后思考 改变 看了下之前实验二的整体,很搞笑,大图+代码,没了.. ...

  9. 20172310 《程序设计与数据结构》实验二报告

    20172310 2017-2018-2 <程序设计与数据结构>实验二报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 仇夏 学号:20172310 实验教师:王志 ...

  10. 20175208 实验二 《Java面向对象程序设计》实验报告

    一.实验报告封面 课程:Java程序设计  班级:1752班  姓名:张家华  学号:20175208 指导教师:娄嘉鹏  实验日期:2019年4月09日~2019年4月18日 实验序号:实验二 实验 ...

最新文章

  1. OpenCV实现FloodFill泛洪填充算法的代码及相关函数详解
  2. 在mysql中什么情况下不能指定字符集_如何为Mysql选择合适的字符集?
  3. python生成元组_python 列表生成、元组、字典
  4. UNIX环境高级编程笔记
  5. Python批量运行Gprmax仿真并快速提取雷达波走时和振幅
  6. 在perl中获取当前的日期和时间
  7. 樱桃OTC前工程师感恩自白
  8. 短视频转场 10个炫酷故障数字闪变PR转场过渡模板
  9. 局域网vnc远程控制软件,那些超级好用的局域网vnc远程控制软件
  10. 使用selenium自动登录126/163邮箱并自动发送邮件
  11. 在线apt-get安装mysql_apt-get安装mysql
  12. java华容道代码_Java 华容道完整源码
  13. Linux如何查找域名IP地址
  14. Android PC同步软件 类似 apple 的 itunes
  15. 解决:IEDA在plugins里搜不到mybatisx插件
  16. 用R语言玩玩茅台股票
  17. tanh函数图像以及求导
  18. 计算机组成原理(4)IO
  19. 计算机图形学 使用OpenGL的场景建模
  20. 人体部位检测:BodyHands

热门文章

  1. CVPR 2021 目标检测论文大盘点(65篇论文)
  2. 服务器做虚拟网吧,一种基于游戏的虚拟网吧实现方法
  3. Java实现微信公众号模板消息管理群发和单发
  4. 爬虫 一些爬取图片时出现的错误
  5. Linux下解压分包文件zip(zip/z01/z02)【转】
  6. 数值分析常见算法C++实现
  7. 《21世纪的书:信息时代商业思想10×10阅读》書目信息
  8. python图片提取文字软件_这款Python 库 4行代码提取图片中的文字
  9. 关于计算机英语手抄报全国一等奖,获奖手抄报图片
  10. 【Linux】域名解析