面向对象分析建模之自动售货机案例

合集下载

面向对象分析建模之自动售货机案例

面向对象分析建模之自动售货机案例
通过面向对象分析建模,将自动售货机系统的功能需 求和业务逻辑抽象为对象,建立对象之间的关系,为
后续的系统设计和开发提供基础。
PART 02
面向对象分析建模基础
对象与类的概念
对象
现实世界中事物的抽象,具有属性和 行为。

对象的抽象,定义了一组具有共同属 性和行为的对象。
封装与继承
封装:将对象的属性和行为封装在一起,通过 接口对外提供服务。
WENKU DESIGN
WENKU DESIGN
2023-2026
ONE
KEEP VIEW
面向对象分析建模之 自动售货机案例
WENKU DESIGN
WENKU DESIGN
WENKU
REPORTING
https://
CATALOGUE
目 录
• 引言 • 面向对象分析建模基础 • 自动售货机系统分析 • 自动售货机系统设计 • 自动售货机系统实现 • 总结与展望
定期备份系统数据,以防止数据丢失或损坏。
系统升级
根据需求对系统进行升级和维护,确保系统的稳定性和安全性。
PART 06
总结与展望
面向对象分析建模的优势
清晰地表示对象及其关系
通过使用面向对象的方法,我们可以清晰地定义和表示自动售货机中的各个对象及其之间的关系 ,如商品、货币、用户等。
提高可维护性和可扩展性
金融领域
面向对象分析建模可以应用于金融领 域中的账户管理、交易处理、风险管 理等模块,使得金融系统更加安全、 稳定和高效。
WENKU DESIGN
WENKU DESIGN
2023-2026
END
THANKS
感谢观看
KEEP VIEW

自动售货机系统用例图

自动售货机系统用例图
对象模型是最基本最重要的,它为其他两种模型 奠定了基础,我们依靠对象模型完成3种模型的集成。
9.8 小结
9.8 小结
对于大型软件产品来说,把该产品看作是由一 系列本质上相互独立的小产品组成,这就不仅降 低了开发工作的技术难度,而且也使得对开发工 作的管理变得比较容易了。面向对象范型明显优 于结构化范型。此外,使用面向对象范型能够开 发出稳定性好、可重用性好和可维护性好的软件, 这些都是面向对象方法学的突出优点。
9.6.2 用例建模
获取用例是需求分析阶段的主要工作之一,而 且是首先要做的工作。
大部分用例将在项目的需求分析阶段产生,并且随 着开发工作的深入还会发现更多用例,这些新发现的用例 都应及时补充进已有的用例集中。用例集中的每个用例
都是对系统的一个潜在的需求。
一个用例模型由若干幅用例图组成。
创建用例模型的工作步骤:
例如, 在自动售货机系统中,张三投入硬币购买矿泉水,
系统收到钱后把矿泉水送出来,上述过程就是一个 脚本;
李四投币买可乐,但是可乐已卖完了,于是系统 给出提示信息并把钱退还给李四,这个过程是另一 个脚本。
3. 行为者
3. 行为者(参与者(Actor))
•参与者(Actor)是系统外部的一个实体(可以是 任何的事物或人),它以某种方式参与了用例的执行过程。
其中,对象模型是最基本、最核心、最重要的。
-
本章所讲述的面向对象方法及定义的概念和表示 符号,可以适用于整个软件开发过程。软件开发人 员无须像用结构分析、设计技术那样,在开发过程 的不同阶段转换概念和表示符号。
•参与者通过向系统输入或请求系统输入某些事件来 触发系统的执行。参与者是系统之外,透过系统边界与系统进行 有意义交互的任何事物(人或事物)。

毕业设计-基于plc原理设计的自动售货机

毕业设计-基于plc原理设计的自动售货机

摘要在今天的工业生产中,可编程序控制器已经成为实现工业自动化的关键。

本文简要介绍了有关可编程序控制器的一些基础知识和三维力控组态软件的简单应用,而且,还介绍了可编程控制器的技术特点,并重点在硬件、软件和组态软件方面进行了介绍。

对它们在工业自动化中的典型应用、最新的技术发展趋势也作了介绍。

在这次毕业设计中,我以PLC原理为基础、利用三维仿真力控软件设计了自动售货机系统,利用松下编程软件FPWIN-GR编制了相应的PLC应用控制程序并进行了调试和三维力控组态软件ForceControl编制了自动售货机系统,完成了设计的基本要求.采用可编程序控制器进行实际生产过程控制,顺序严格,可靠性高。

关键词:可编程序控制器;自动售货机;仿真;三维力控组态软件AbstractIn today‟s factories, programmable logic controllers(PLC) have become the key building blocks of industrial automation. Some basic knowledge of programmable logic controller is introduced in the paper. Moreover, the technical features, application status and technology development of PLC is presented in this paper.The hardware, software and network structure of PLC are introduced in detail. An introduction of their typical applications in industrial automation, the latest development trend and system considerations are also introduced.V ending machine system is regarded as a project to design the programmable logic controller practical system. The applied system design of water treatment system is finished by the use of FP1 C24 programmable logic controller and ForceControl 2.6. Controlling software about this system are designed, While emulation research are done in the lab.Good succession and high reliability of real production process control due to the use of programmable logic controller are available. The analog test method given in the paper may be applied to lab teach.Subject T ermsProgrammable logic controller,Forcecontrol,Simulation,vending machine目录第一章可编程控制器的基本知识 (5)1.1 可编程控制器的产生与发展 (5)1.2 可编程序控制器的特点和应用........................................................... .. (6)1.3 可编程序控制器与其他工业装置的比较 (8)1.4 可编程控制器的应用场合 (9)1.5 可编程控制器的发展趋势 (10)第二章可编程控制器的组成和基本原理 (11)2.1 可编程控制器组成的控制系统 (12)2.2 可编程控制器的组成 (13)2.3 可编程控制器的基本工作原理 (14)2.4 PLC的几种编程语言 (15)2.5 立石公司C系列P型机的基本特征 (18)2.6 松下电工可编程控制器产品-FP1介绍 (19)2.7 可编程控制器的编程编制 (21)第三章松下电工PLC编程工具及三维组态软件的介绍 (21)3.1 松下电工PLC编程工具简介 (21)3.2 监控组态软件简介 (22)第四章基于PLC原理的自动售货机的设计 (25)4.1 仿真系统组成 (25)4.2 自动售货机功能分析 (25)4.3 设计任务的确定 (27)4.4 程序设计部分 (27)4.5 仿真界面的设计 (31)4.6 仿真界面中各变量的定义 (32)4.7 数据连接 (32)4.8 自动售货机PLC梯形图 (35)4.9 助记符语言 (40)结束语 (49)参考文献 (50)第一章可编程控制器的基本知识第一节可编程控制器产生与发展可编程控制器问世于1969年。

C语言编程例子-模拟自动售货机

C语言编程例子-模拟自动售货机

C语⾔编程例⼦-模拟⾃动售货机演⽰版本VS2013模拟⾃动售货机实例说明:设计⼀个⾃动售货机的程序,运⾏程序,提⽰⽤户输⼊要选择的选项,当⽤户输⼊以后,提⽰所选择的内容。

本程序使⽤switch分⽀结构,来解决程序中的选择问题。

使⽤清屏语句system(cls);需要引⽤头⽂件stdlib.h。

其语义是:计算表达式的值,并逐个与其后的常量表达式值⽐较,当表达式的值与某个常量表达式的值相等时,即执⾏其后的语句,然后不再进⾏判断,继续执⾏后⾯case后⾯的所有语句。

当表达式的值与所有case后的常量表达式的值均不相同时,则执⾏default后的语句。

关于switch语句有以下⼏点说明:每⼀个case的常量表达式的值必须互不相同,⽃则就会出现互相⽭盾的现象。

各个case和default的出现次序不影响执⾏结果。

在执⾏⼀个case分⽀后,如果像使流程跳出switch结构,即终⽌switch语句的执⾏,可以在相应语句后加break来实现。

最后⼀个default可以不加break语句。

#include <stdio.h>#include <stdlib.h>int main(){int button;//定义变量system("cls");//清屏printf("*************************\n");//输出普通字符printf("* 可选择的按键: *\n");printf("* 1.巧克⼒: *\n");printf("* 2.蛋糕: *\n");printf("* 3.可⼝可乐: *\n");printf("*************************\n");printf("从1~3中选择按键\n");scanf_s("%d", &button);switch (button){case1:printf("你选择了巧克⼒");break;case2:printf("你选择了蛋糕");break;case3:printf("你选择了可⼝可乐");break;default:break;}printf("\n");return0;}阿飞2021年8⽉6⽇。

作业四 面向对象需求建模解答(第9-11章)

作业四   面向对象需求建模解答(第9-11章)

作业四面向对象需求建模(第9-11章)4-1、根据以下描述,使用面向对象的分析方法,分析有那些主要对象和这些对象的主要属性、方法,画出对象图。

一个饮料自动售货机可以放置五种不同或部分相同的饮料,可由厂商根据销售状况自动调配,并可随时重新设置售价,但售货机最多仅能放置50罐饮料,其按钮设计在各种饮料样本的下方,若经金额计算器累计金额足够,则选择键灯会亮;若某一种饮料已销售完毕,则售完灯会亮。

顾客将硬币投入售货机,经累加金额足额的饮料选择键灯亮,等顾客按键选择。

顾客按键后饮料由出物口掉出,并自动结算及找钱。

顾客可在按下选择键前任何一个时刻,可以拉动退币杆取消交易收回硬币。

4-2、请画出一个用户使用银行ATM的状态转换图。

从用户将卡插入卡槽开始,到用户取卡结束(如果用户忘记,ATM应报警),用户可以完成以下几个步骤:登录(卡片进入ATM机后,如果不是可读卡,退卡;如是,等待用户输入密码,三次错,吞卡,正确后进入主菜单),取钱(进入取钱菜单,输入金额,如果帐户余额不足,提示余额,并要求用户重新输入,如果帐上钱够,吐钱币,并询问是否打印凭证,最后返回主菜单),主菜单提供退出取卡选择。

4-3、某公安报警系统在一些公安重要保护单位(银行、学校等)安装了报警装置,其工作过程如下:一旦发生意外事故,故事发生单位只需按报警按钮,系统立即向公安局发出警报信息、自动显示出报警单位的地址、电话号码等。

110警车立即出动前往出事地点。

值班人员可以接通事故单位的电话、问清情况,需要时再增派公安人员到现场处理。

根据以上情况进行分析,确定本系统有哪些用例、对象,画出用例图、类图及顺序图。

下面是某位同学做的用例:按报警按钮,向公安局发出警报信息,显示报警单位地址电话,110警车前往出事地点,值班人员接通事故单位的电话、问清情况,增派公安人员对象:事故单位、报警系统、公安局、值班人员、公安人员,警车类图:用例图:事故单位报警系统值班人员顺序图:4-4、小李新接了一个项目:设计一个简单的学生选课系统,系统能注册符合要求的同学,同学注册以后就能进行选课,选课过程如下:先选课名,然后根据课程的上课老师、时间、地点和人数限制来决定是否成功选课;老师也可以根据情况提供新的课程说明或修改过去课程的说明;教务处的老师统一管理注册的情况,可以有删除、修改学生、老师和课程的权限。

基于自动售货机的软件工程

基于自动售货机的软件工程

面向对象分析实践大作业(40%)下面是自动售货机系统的需求陈述,请你:1.编写分析和设计报告;2.报告分需求分析、系统设计和对象设计三部分编撰,各部分应按相应的格式编写,并包含用例图、顺序图、类图、业务流程图、系统结构图等;3.大作业的结构为:A项目需求说明B需求分析报告C系统设计报告D对象设计报告E分析设计过程说明:这部分介绍分析和设计过程中使用了什么技术需求陈述:自动售货机系统是一种无人售货系统。

售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。

有效的硬币是一元币、五角币、五分币、二分币、一分币。

其他货币被认为是假币。

机器拒绝接受假币,并将其从退币孔退出。

当机器接受了有效的硬币之后,就把硬币送入硬币储藏器中。

顾客支付的货币根据硬币的面值进行累加。

自动售货机装有货物分配器。

每个货物分配器中包含零个或多个价格相同的货物。

顾客通过选择货物分配器来选择货物。

如果货物分配器中有货物,而且顾客支付的货币值不小于该货物的价格,货物将被分配到货物传送孔送给顾客,并将适当的零钱返还到退币孔。

如果分配器是空的,则和顾客支付的货币值相等的硬币将被送回到退币孔。

如果顾客支付的货币值少于所选择的分配器中货物的价格,机器将等待顾客投进更多的货币。

如果顾客决定不买所选择的货物,他投放进的货币将从退币孔中退出。

参考资料:《软件工程》张海藩清华大学出版社 2009年第一版下面是自动售货机系统的需求陈述,试建立它的对象模型、动态模型和功能模型:自动售货机系统是一种无人售货系统。

售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。

有效的硬币是一元币、五角币、五分币、二分币、一分币。

其他货币被认为是假币。

机器拒绝接受假币,并将其从退币孔退出。

当机器接受了有效的硬币之后,就把硬币送入硬币储藏器中。

顾客支付的货币根据硬币的面值进行累加。

自动售货机装有货物分配器。

每个货物分配器中包含零个或多个价格相同的货物。

面向对象程序设计课设论文-模拟自动售货机

面向对象程序设计课设论文-模拟自动售货机

《面向对象程序设计》课程设计题目:模拟自动售货机院系:数学与计算科学专业:信息与计算科学姓名学号: 1指导老师:日期:2015年 1 月8 日摘要随着社会的发展和不断进步,人们的物质文化与精神文化都在明显的提高,各种各样的高科技产品也应运而生并慢慢融入人们的生活,如信用卡支付、手机、地铁等等,当然,还有随处可见的自动售货机。

我基于自己所学,设计了一款饮料自动售货机。

该售货机操作简单,适合广大民众生活。

这个自动售货机是在Windows 环境下用 Microsoft Visual Studio 2008工具,基于MFC框架设计的,可以实现初始化界面,让界面美观简洁。

程序通过CRC 卡分析,建立UML类图,把程序功能具体化,用需求分析与方案论证,从而实现自动售货机的开发过程。

关键字:自动售货机MFC CRC卡UML类图AbstractWith the development of society and progress,people's material culture and spiritual culture are obviously improved,a variety of high-tech products also arises at the historic moment and slowly into people's lives,such as credit card payments, mobile phone,the subway and so on,of course,and the everywhere vending machine.I use my learned knowledge,designed a drinks vending machine.The vending machine operation is simple, so it is suitable for the general public life.This vending machine is in the Windows environment using Microsoft Visual Studio 2008 tools, and based on the MFC framework to design,it can implement initialization interface, and let the interface beautiful and concise.The program through the analysis of CRC card to establish a UML class diagram, let the program function is specific,it also using demand analysis and scheme comparison to realize the development process of the vending machine.Key words:The vending machine MFC CRC card UML class diagrams目录摘要 (2)Abstract (3)目录 (4)引言 (5)一、课程设计内容 (5)1.1、题目要求 (5)1.2、课程设计目的 (6)1.3、CRC分析过程陈述 (6)1.4、UML类图 (7)二、设计分析 (7)2.1、界面初始化 (7)2.1.1、关于对话框设置 (7)2.1.2、关于按钮设置 (8)2.2、出售商品设置 (9)2.3、售货机工作员设置 (15)三、运行结果 (16)3.1、投币操作 (16)3.1.1、金额充足显示 (16)3.1.2、金额不足显示 (16)3.2、继续投币操作 (17)3.3、退币操作 (18)3.4、停止售卖 (18)3.4.1、金额上限停止显示 (19)3.4.2、商品售完显示 (19)四、心得体会 (20)五、参考文献 (21)引言本次课设是用C++语言编写一个模拟自动售货机程序,要求用户从售货机商品列表选择某一商品并投入硬币。

对象模型动态模型和功能模型

对象模型动态模型和功能模型



顾客投入硬币
自动售货机计算并显示金额 顾客持续投入硬币直到足够的金额 自动售货机选择按钮灯亮 顾客选择饮料种类并按下选择按钮
自动售货机送出相应饮料并结算、找零
自动售货机扣除该饮料的存量 如自动售货机该饮料有存货,回到初始状态
如自动售货机该饮料无存货,显示该饮料“售空”灯亮,
不再接受选择,回到初始状态
实例
设计支持银行网络的软件,银行网络包括出纳站和分行共享的自动出 纳机。每个分析通信,出纳站录入用户和事务数据;自动出纳机与 分行计算机通信,分行计算机与拨款分理处结帐,自动出纳机与用 户接口接受现金卡,与分行计算机通信完成事务,发放现金,打印 收据;系统需要记录保管和安全措施;系统必须正确处理同一账户 的并发访问;每个分理处为自已的计算机准备软件,银行网络费用 根据顾客和现金卡的数目分摊给各分理处。
2.面向对象建模 (1)建模与模型 建模是将问题域的解空间定义成一种模型,以帮助系统分析 人员更好地理解问题。 模型是为了理解问题而对问题所做出的一种抽象,而且是对 问题的一种无歧义的描述。模型由一组图示符号和组织这些 符号的规则组成。利用它们来定义和描述问题域中的术语和 概念。 建模的目的主要是为了减少复杂性。 (2)面向对象模型
3) 五个层次对应的五个活动
五个主要活动可以同时(并行)处理;可以从较高抽象层转移 到较低的具体层,然后再返回到较高抽象层继续处理;当系统 分析员在确定类-&-对象的同时,想到该类的服务,则可以先 确定服务后,再返回去继续寻找类-&-对象;没有必要遵循自 顶向下,逐步求精的原则。 4) 面向对象分析流程 一般情况下,面向对象分析过程可按照下列流程进行:确 定类—&—对象、识别结构、识别主题、定义属性、建立动态 模型、建立功能模型、定义服务(方法)。但是,对于大型的、 复杂的问题,不可能严格按照上面流程进行,需要反复多次进 行寻找、确定、识别、建立和定义来构造模型。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档