- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象分析实践大作业(40%
下面是自动售货机系统的需求陈述,请 你:
1. 编写分析和设计报告;
2. 报告分需求分析、 系统设计和对象设 计三部分编撰, 各部分应按相应的格式 编写,并包含用例图、顺序图、类图、 业务流程图、系统结构图等;
3. 大作业的结构为:
A 项目需求说明
B 需求分析报告
C 系统设计报告
D 对象设计报告
E 分析设计过程说明:这部分介绍分析
和设计过程中使用了什么技术
需求陈述:
自动售货机系统是一种无人售货系统。 售货时,顾客把硬币投入机器的投币口 中,机器检查硬币的大小、重量、厚度 及边缘类型。有效的硬币是一元币、五 角币、五分币、二分币、一分币。其他 货币被认为是假币。 机器拒绝接受假币, 并将其从退币孔退出。当机器接受了有 效的硬币之后,就把硬币送入硬币储藏 器中。顾客支付的货币根据硬币的面值 进行累加。
自动售货机装有货物分配器。每个货物 分配器中包含零个或多个价格相同的货 物。顾客通过选择货物分配器来选择货 物。如果货物分配器中有货物,而且顾 客支付的货币值不小于该货物的价格, 货物将被分配到货物传送孔送给顾客, 并将适当的零钱返还到退币孔。如果分
配器是空的,则和顾客支付的货币值相 等的硬币将被送回到退币孔。如果顾客 支付的货币值少于所选择的分配器中货 物的价格,机器将等待顾客投进更多的 货币。 如果顾客决定不买所选择的货物, 他投放进的货币将从退币孔中退出。
参考资料:《软件工程》 张海藩 清华大 学出版社 2009年第一版
下面是自动售货机系统的需求陈述,试 建立它的对象模型、动态模型和功能模 型:
自动售货机系统是一种无人售货系统。 售货时,顾客把硬币投入机器的投币口 中,机器检查硬币的大小、重量、厚度 及边缘类型。有效的硬币是一元币、五 角币、五分币、二分币、一分币。其他 货币被认为是假币。 机器拒绝接受假币, 并将其从退币孔退出。当机器接受了有 效的硬币之后,就把硬币送入硬币储藏
器中。顾客支付的货币根据硬币的面值 进行累加。
自动售货机装有货物分配器。每个货物 分配器中包含零个或多个价格相同的货 物。顾客通过选择货物分配器来选择货 物。如果货物分配器中有货物,而且顾 客支付的货币值不小于该货物的价格, 货物将被分配到货物传送孔送给顾客, 并将适当的零钱返还到退币孔。如果分 配器是空的,则和顾客支付的货币值相 等的硬币将被送回到退币孔。如果顾客 支付的货币值少于所选择的分配器中货 物的价格,机器将等待顾客投进更多的 货币。 如果顾客决定不买所选择的货物, 他投放进的货币将从退币孔中退出。
参考资料:《软件工程》 张海藩 清华大 学出版社 2009年第一版
面向对象的分析
面向对象分析方法的核心思想是利用面 向对象概念和方法为软件需求构造一组 相关模型(对象模型,动态模型和功能 模型 ,来获得关于问题域的全面认识。
这三个模型从不同的角度对系统进行描 述, 其中:对象模型描述了系统静态的、 结构化的数据性质;动态模型描述了系 统顺势的、行为化的控制性质;功能模 型描述了变化的系统的功能性质。这三 个模型都涉及到数据。控制和操作等共 同的概念,但每种模型描述的侧重有所 不同。它们各自以不同侧面反应系统的 实质内容,综合起来则全面反映了目标 系统的需求。
对象模型是三个模型中最关键的。它的 作用是描述系统的静态结构,包括构成 系统的类和对象、它们的属性和操作以 及它们之间的联系。 UML 中类图适用于 建立对象模型,状态图适用于建立动态
模型。每个类的动态行为用一张状态图 来表示,各个类的状态图通过事件合并 起来,构成系统的动态模型。 也就是说, 动态模型是基于事件共享而相互关联的 一组状态图的集合。建立对象模型大体 上按照下列顺序进行 :寻找问题域内的 对象,识别出对象间的关系、定义属性 和服务。事实上,分析工作不可能严格 按照预定顺序进行,系统的模型往往需 要反复构造多遍才能建成。
5
注:对象硬币计算器和对象硬币检测器 可以作为对象自动售货器的一部分,它 们的属性作为自动售货器的属性。
建立动态模型
对于仅存数静态数据的系统来说,动态 模型并没有什么实际意义。然而在开发
6
交互式系统时,动态模型却起着很重要 的作用。如果收集输入信息是目标系统 的一项主要工作,则在开发这类应用系 统时建立正确的动态模型是至关重要 的。
建立动态模型的步骤:
(1 编写典型的对话脚本;
(2 从脚本中提取出事件, 联系该事 件与其目标对象;
(3 组织事件的顺序和状态 (采用状 态图描绘 ;
(4 比较各个不同对象的状态图, 检 查对象之间的一致性,确保事件之间的 匹配。
7
功能模型
功能模型描述了系统的所有计算。
8
功能模型指出发生了什么,动态模型确 定什么时候发生,而对
原创力文档


文档评论(0)