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

上传人:b****3 文档编号:26827165 上传时间:2023-06-23 格式:DOCX 页数:11 大小:89.76KB
下载 相关 举报
基于自动售货机的软件工程.docx_第1页
第1页 / 共11页
基于自动售货机的软件工程.docx_第2页
第2页 / 共11页
基于自动售货机的软件工程.docx_第3页
第3页 / 共11页
基于自动售货机的软件工程.docx_第4页
第4页 / 共11页
基于自动售货机的软件工程.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

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

《基于自动售货机的软件工程.docx》由会员分享,可在线阅读,更多相关《基于自动售货机的软件工程.docx(11页珍藏版)》请在冰豆网上搜索。

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

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

面向对象分析实践大作业(40%

下面是自动售货机系统的需求陈述,请你:

1.编写分析和设计报告;

2.报告分需求分析、系统设计和对象设计三部分编撰,各部分应按相应的格式编写,并包含用例图、顺序图、类图、业务流程图、系统结构图等;

3.大作业的结构为:

A项目需求说明

B需求分析报告

C系统设计报告

D对象设计报告

E分析设计过程说明:

这部分介绍分析

和设计过程中使用了什么技术

需求陈述:

自动售货机系统是一种无人售货系统。

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

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

其他货币被认为是假币。

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

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

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

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

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

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

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

如果分

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

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

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

参考资料:

《软件工程》张海藩清华大学出版社2009年第一版

下面是自动售货机系统的需求陈述,试建立它的对象模型、动态模型和功能模型:

自动售货机系统是一种无人售货系统。

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

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

其他货币被认为是假币。

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

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

器中。

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

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

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

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

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

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

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

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

参考资料:

《软件工程》张海藩清华大学出版社2009年第一版

面向对象的分析

面向对象分析方法的核心思想是利用面向对象概念和方法为软件需求构造一组相关模型(对象模型,动态模型和功能模型,来获得关于问题域的全面认识。

这三个模型从不同的角度对系统进行描述,其中:

对象模型描述了系统静态的、结构化的数据性质;动态模型描述了系统顺势的、行为化的控制性质;功能模型描述了变化的系统的功能性质。

这三个模型都涉及到数据。

控制和操作等共同的概念,但每种模型描述的侧重有所不同。

它们各自以不同侧面反应系统的实质内容,综合起来则全面反映了目标系统的需求。

对象模型是三个模型中最关键的。

它的作用是描述系统的静态结构,包括构成系统的类和对象、它们的属性和操作以及它们之间的联系。

UML中类图适用于建立对象模型,状态图适用于建立动态

模型。

每个类的动态行为用一张状态图来表示,各个类的状态图通过事件合并起来,构成系统的动态模型。

也就是说,动态模型是基于事件共享而相互关联的一组状态图的集合。

建立对象模型大体上按照下列顺序进行:

寻找问题域内的对象,识别出对象间的关系、定义属性和服务。

事实上,分析工作不可能严格按照预定顺序进行,系统的模型往往需要反复构造多遍才能建成。

5

注:

对象硬币计算器和对象硬币检测器可以作为对象自动售货器的一部分,它们的属性作为自动售货器的属性。

建立动态模型

对于仅存数静态数据的系统来说,动态模型并没有什么实际意义。

然而在开发

6

交互式系统时,动态模型却起着很重要的作用。

如果收集输入信息是目标系统的一项主要工作,则在开发这类应用系统时建立正确的动态模型是至关重要的。

建立动态模型的步骤:

(1编写典型的对话脚本;

(2从脚本中提取出事件,联系该事件与其目标对象;

(3组织事件的顺序和状态(采用状态图描绘;

(4比较各个不同对象的状态图,检查对象之间的一致性,确保事件之间的匹配。

7

功能模型

功能模型描述了系统的所有计算。

8

功能模型指出发生了什么,动态模型确定什么时候发生,而对象模型确定发生的客体。

功能模型表明一个计算如何从输入值得到输出值,它不考虑计算的次序。

功能模型由多张数据流图组成。

数据流图用来表示从源对象到目标对象的数据值的流向,它不包含控制信息,控制信息在动态模型中表示,同时数据流图也不表示对象中值的组织,值的组织在对象模型中表示。

数据流图中包含有处理、数据流、动作对象和数据存储对象。

1.处理

数据流图中的处理用来改变数据值。

最低层处理是纯粹的函数,一张完整的数据流图是一个高层处理。

2.数据流

数据流图中的数据流将对象的输出与处理、处理与对象的输入、处理与处

9

理联系起来。

在一个计算机中,用数据流来表示一中间数据值,数据流不能改变数据值。

3.动作对象

动作对象是一种主动对象,它通过生成或者使用数据值来驱动数据流图。

4.数据存储对象

数据流图中的数据存储是被动对象,它用来存储数据。

它与动作对象不一样,数据存储本身不产生任何操作,它只响应存储和访问的要求。

C语言课程设计需求分析与系统设计报告

1引言.......................................................................................................131.1背景...............................................................................................131.2定义...............................................................................................13

1.3参考资料......................................................................................13

2需求分析...............................................................................................142.1需求分析......................................................................................14

2.2运行环境........................................................................................4

3系统设计.................................................................................................53.1功能需求描述................................................................................53.2软件结构........................................................................................7

3.3程序模块划分...............................................................................8

4组员分工及时间安排............................................................................94.1组员分工.......................................................................................94.2时间安排.......................................................................................9

1引言

1.1背景

自动售货机是能根据投入的钱币自动付货的机器。

自动售货机是商业自动化的常用设备,它不受时间、地点的限制,能节省人力、方便交易。

是一种全新的商业零售形式,又被称为24小时营业的微型超市。

自动售货机能够充分补充人力资源的不足,适应消费环境和消费模式的变化,可以更省力,运营时需要的资本少、面积小,有吸引人们购买好奇心的自身性能,可以很好地解决人工费用上升的问题等各项优点。

1.2定义

课程设计中用到的专门术语的定义(暂定。

1.3参考资料

1.王士元.C高级实用程序设计.北京:

清华大学出版社.1996

2.潭浩强.C语言程序设计.北京:

清华大学出版社,2000

3.XX

2需求分析

2.1需求分析

说明:

本自动售货机图形模拟系统为模拟饮料自动售货机。

(1包含实体

1,顾客实体

2,物品管理系统实体(饮料

3,记币管理器实体

4,管理员实体

5,故障系统实体

(2关系模式

1,顾客:

投币,选择饮料,购买数量,取货,取零钱;2,物品管理系统:

饮料名称,饮料价格,饮料数量,出货;3,记币管理系统:

顾客投钱数,总金额,饮料单价,投币金额不足,找零金额;

4,管理员:

补货,查询,统计;

5,故障系统:

故障显示,报警;

2.2运行环境

本自动售货机图形模拟系统是对自动售货机工作行为及工作环境的模拟实现,因此,对此系统的运行环境将是在计算机上面进行,即在电脑上模拟实现。

根据自动售货机图形模拟系统设计环境要求,即在DOS环境下,用C语言编译实现,使用TC或BC开发软件,因此,此模拟系统可在绝大多数现形计算机系统上运行,包括最常见的windowsxp操作系统以及windows732位机上运行,但由于兼容性问题,此自动售货机图形模拟系统在含windows764位操作系统的计算机上运行可能出现意想不到的问题或根本不能运行,因而,不推荐在包含64位操作系统的计算机上测试本自动售货机图形模拟系统。

3系统设计

3.1功能需求描述

(1自动售货机能销售三种饮料:

罐装可乐(2元、果汁(3.5元、牛奶(4元,设饮料数量无限。

(2自动售货机允许投入5角、1元硬币,5元纸币,只找出5角、1元硬币。

(3ⅰ.当总币值等于顾客需要的饮品单价时,机器显示交易金额并送出需要的商品;

ⅱ.当总币值大于顾客需要的饮品单价时,机器显示交易金额并除提供所需饮品外,还提供找零:

A.若机内5角硬币不足时,当投入5元纸币购买2元、4元或3.5元饮料时,2元4元饮料卖,并正常找零,3.5元饮料不卖并退回5元;

B.若机内5角、1元硬币都不足时,当投入5元纸币购买2元4元或3.5元的饮料时,均不卖,并退回5元;

ⅲ.当总币值小于顾客需要的商品单价时,机器会退出顾客投入的硬币,并显示投币金额不足的提示。

(4当投入的硬币总值达到或大于饮品的最低单价时,物品管理系统自动接入,并提供能够选择的饮品类型,交易金额将输出到显示屏。

(5每次投币时间有限制,设定每次投币时间不超过30秒,在时间到时,总币值不足顾客购买的饮品单价时,自动售货机按不足钱数处理,输出投币金额不足提示,并自动计时10秒,10秒内若金额还不足,系统则自动取消交易并退还全部硬币。

(6设置取消键,当交易过程中顾客输入错误时,按下取消键系统自动终止交易,返回到初始状态并退出全部金额。

(7当顾客完成一次购买后系统自动恢复到初始状态。

(8顾客一次只能购买一种饮品的一个,若需要更多饮品,需要重复操作。

3.2软件结构

系统流程图

3.3程序模块划分

显示模块外部接口

4组员分工及时间安排组员分工及时间安排4.1组员分工内部商定,协调安排。

4.2时间安排第4周第5周第6周第7周第8周第9周第10周系统需求分析与设计报告界面设计,算法设计键盘、鼠标接口设计,算法设计编码实现编码实现编码实现、调试调试、验收、提交报告20

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1