再学UML-深入浅出UML类图(五)

实例分析3——售票机控制程序

某运输公司决定为新的售票机开发车票销售的控制软件。图I给出了售票机的面板示意图以及相关的控制部件。

图I   售票机面板示意图

售票机相关部件的作用如下所述:

(1) 目的地键盘用来输入行程目的地的代码(例如,200表示总站)。

(2) 乘客可以通过车票键盘选择车票种类(单程票、多次往返票和座席种类)。

(3) 继续/取消键盘上的取消按钮用于取消购票过程,继续按钮允许乘客连续购买多张票。

(4) 显示屏显示所有的系统输出和用户提示信息。

(5) 插卡口接受MCard(现金卡),硬币口和纸币槽接受现金。

(6) 打印机用于输出车票。

(7) 所有部件均可实现自检并恢复到初始状态。

现采用面向对象方法开发该系统,使用UML进行建模,绘制该系统的初始类图。

    参考解决方案:

参考类图如下:

      类说明:


类  名


说  明


Component


抽象部件类,所有部件类的父类


Keyboard


抽象键盘类


ActionKeyboard


继续/取消键盘类


TicketKindKeyboard


车票种类键盘类


DestinationKeyboard


目的地键盘类


Screen


显示屏类


CardDriver


卡驱动器类


CashSlot


现金(硬币/纸币)槽类


Printer


打印机类


TicketSoldSystem


售票系统类

      方法说明:


方法名


说  明


Component 的init()方法


初始化部件


Component 的doSeltTest()方法


自检


Keyboard的getSelectedKey()方法


获取按键值


ActionKeyboard的getAction()方法


继续/取消键盘事件处理


TicketKindKeyboard的getTicketKind()方法


车票种类键盘事件处理


DestinationKeyboard的getDestinationCode()方法


目的地键盘事件处理


Screen的showText()方法


显示信息


CardDriver的getCredit()方法


获取金额


CardDriver的debitFare()方法


更新卡余额


CardDriver的ejectMCard()方法


退卡


CashSlot的getCredit()方法


获取金额


Printer的printTicket()方法


打印车票


Printer的ejectTicket()方法


出票


TicketSoldSystem的verifyCredit()方法


验证金额


TicketSoldSystem的calculateFare()方法


计算费用

文章出处:http://blog.csdn.net/lovelion/article/details/7843437

时间: 2024-10-08 08:44:17

再学UML-深入浅出UML类图(五)的相关文章

设计模式——UML中的类图及类图之间的关系

一丶统一建模语言简介 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标准.它的特点是简单.统一.图形化.能表达软件设计中的动态与静态信息. 统一建模语言能为软件开发的所有阶段提供模型化和可视化支持.而且融入了软件工程领域的新思想.新方法和新技术,使软件设计人员沟通更简明,进一步缩短了设计时间,减少开发成本.它的应用领域很宽,不仅适合于一般系统的开发,而且适合于并行

UML类图五种关系与代码的对应关系

转: UML类图中的五种关系的耦合强弱比较:依赖<关联<聚合<组合<继承 一.依赖关系: (一)说明 虚线+箭头 可描述为:Uses a 依赖是类的五种关系中耦合最小的一种关系. 因为在生成代码的时候,这两个关系类都不会增加属性. (二)依赖关系图与代码的对应关系 (PS:依赖关系:Animal依赖于Water(动物依赖于水)) [csharp] view plaincopyprint? Public class Animal() { Public Animal(){} } Pub

UML设计:类图说明及一步一步制作UML类图

什么是类图 UML类图是用来描述一个系统的静态结构.它既可以用于一般概念建模也可以用于细节建模.类包含了数据和行为,是面向对象的重要组成部分,它是具有相同属性.操作.关系的对象集合的总称. UML类图也可以用于数据建模.它可以用来描述应用程序内部或和其他用户之间的对象和信息结构.在UML中问题域终要被逐步转化,通过类来建模,通过编程语言构建这些类.类加上他们之间的关系就构成了类图,类图中还可以包含接口.包等元素,也可以包括对象.链等实例. 类图中的符号 class 类通过一个矩形表示,被两条直线

设计模式的学习(二)-UML中的类图及类图之间的关系

统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,为面向对象的建模语言的国际标准.他的特点是简单,统一,图形化,能表达软件设计中的动态与静态信息. 统一建模语言能为软件开发的所有阶段提供模型化和可视化支持,而且融入了软件工程领域的新思想.新方法和新技术,使软件设计人员沟通更简明,进一步缩短的设计时间,减少开发成本,它的应用领域很宽,不仅适合与一般系统的开发,而且适合于并行与分布式系统的建模. UML从目标系统的不同角度出发,定义了用例图

UML建模之 - 类图&amp;时序图

简介 简介 UML是面向对象开发中一种通用的图形化建模语言 UML建模技术就是用模型元素来组建整个系统的模型,模型元素包括系统中的类.类和类之间的关联.类的实例相互配合实现系统的动态行为等 UML建模工具 Rational Rose : 是直接从UML发展而诞生的设计工具,常用建模工具 Power Designer : 是对数据库建模而发展起来的一种数据库建模工具 Microsoft Visio :是一种画图工具,Visio 2010才开始引入UML建模,不是很专业 Star UML : 开源轻

uml精粹——5.类图(高级概念)

[关键字keyword] uml接口interface是一个只有公共操作public operations没有方法体method body的类.他用类图标class icon和关键字<<interface>>表示. <<interface>>简写为<<I>>,{abstract}简写为{A}. uml1中引号guillemets主要用于原型stereotype. 原型被用作概况profile的一部分. [分类和一般化classific

UML学习(一)——类图学习

在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization), 关联(Association), 聚合(Aggregation), 组合(Composition), 依赖(Dependency) 1. 泛化(Generalization) [泛化关系]:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为.例如:老虎是动物的一种,即有老虎的特性也有动物的共性. [箭头指向]:带三角箭头的实线,箭头指向父类 2. 实现(R

uml精粹——3.类图(必需)

3.类图class diagram(必需) 一个类图描述了系统中对象的类型及他们间存在的各种静态关系static relationship.类图也展示了一个类的属性和操作properties and operations以及对象相互连接的限制.uml使用属于feature特性来表示一个类的属性和操作. 类图中的盒子box表示类,它分成3部分:类名(粗体),属性attribute,操作operation. [属性property] property属性代表一个类的结构形态,但它以两种不同的标记出现

UML静态视图——类图、对象图、包图

画类图最重要的就是抽象出类,先来回忆类的基本内容. 一.类 1.类的概念: 类是面向对象程序设计的中的一个基本概念,类是具有相同属性.方法.语义和关系的一组对象的集合. 2.类的分类: 实体类:保存要放进永久存储的信息 边界类:位于系统与外界的交界处.包括所有的窗体.报表.打印机等硬件接口以及与其他系统的接口. 控制类:负责协调其他类的工作.一般每个用例都有一个控制类. 3.类的表达方式: 二.类图 类图是我们最常用的一种图,类图更直观的使我们了解一个系统的体系结构,类图通过图形化的方式描述了系

看懂UML(统一建模语言)类图

这里不会将UML的各种元素都提到,我只想讲讲类图中各个类之间的关系: 能看懂类图中各个类之间的线条.箭头代表什么意思后,也就足够应对 日常的工作和交流: 同时,我们应该能将类图所表达的含义和最终的代码对应起来: 有了这些知识,看后面章节的设计模式结构图就没有什么问题了: 本章所有图形使用Enterprise Architect 9.2来画,所有示例详见根目录下的design_patterns.EAP 从一个示例开始 请看以下这个类图,类之间的关系是我们需要关注的: 车的类图结构为<<abstr