编辑推荐: |
本文主要介绍UML 2.0 实战中的范例分析,希望对您的学习有所帮助。
本文来自于csdn,火龙果软件Alice编辑,推荐。 |
|
基本原则和背景知识
本书后续章节讲述的大部分内容都是基于少量基础概念的,本章总结了这些概念。
2.1 范例分析简介
我们选择了一个机场——UML机场作为范例分析。任何一个坐过飞机的读者都能够理解这个案例。
在这个例子中,仅限于与离港乘客相关的区域,也就是主要关注乘客办登机牌(passenger check-in)和登机(boarding)活动。在图2.1中阐述了如何区分客运服务区域和机场其他区域。在图中展现了乘客直到在飞机上坐下、扣上安全带,飞机准备起飞为止所经历的各个阶段。不过并非乘客经历的所有阶段都是与客运服务相关的,属于客运服务的阶段都加上了外框。
像这样的步骤序列就称为一个场景(scenario)。不过,这里描述的场景只是诸多可能场景中的一个。在乘客办理登机牌和登机的过程中可能出现以下例外情况:

图2.1 范例分析:乘客坐飞机开始旅程
-
- 乘客刚乘飞机到达机场,不过将在此转乘其他航班,也就意味着他/她还没有离开运输区(transit area);
乘客已经办理完登机牌,但却在等候区中并不舒服的椅子上睡着了,因而错过了他/她的航班,尽管已经多次呼叫过;
- 乘客未能通过护照检查,因为他/她的护照已经过期了。
想想上述场景中哪些是和乘客离港相关的,除此之外,是否还有更多相关场景。
如图2.2所示的UML机场示意图可以让你更好地理解案例中发生的事件。许多在客运服务区域周围的区域也以一种或多种方式与客运服务相关联。以下就是一些例子:

图2.2 UML机场示意图
- 售票点;
- 报刊亭;
-
- 护照检查/移民入境;
- 飞行控制站;
- 服务台;
- 行李托运。
客运服务需要与这些区域进行某些数据交换,还需要与机场其他区域进行沟通。当讨论业务模型和系统集成模型时,将会介绍这些区域。因此在后续的章节中,会对这个案例进行扩展。
UML机场是个小型机场,而且在这个范例分析中也故意让其保持简单。
这个范例分析的目的是为了将本书各章内容结合起来提供一个实例。关于该范例分析的详细信息需要进一步解释。
(1)飞机票由实际机票和最多4个附加区域(即联票券)组成。机票是一个小册子,对于旅程的每个部分都有一张独立的联票券。例如一张票可以包括几张联票券:从Zurich(苏黎世)到Frankfurt(法兰克福)、从法兰克福到London(伦敦)以及从伦敦到苏黎世的联程票。每次在使用合适的联票券时,都将换得一张登机牌,而飞机票始终都在乘客手里。
(2)要区分一下航班和航班号。例如,航班号可能是LH435或LX016,它表示一个在确定时间从某个出发机场到目的地机场的航班规则。而航班的例子则可能是“2000年8月26号的LH435”,也可以说航班是航班号的一次执行。当天气不好时,某个航班是可以取消的。而航班号则是作为定期航线使用,用来提供一个明确的航班规则。
(3)另外,办理登机牌(check-in)可以分为3种类型:
- 正常Check-in 在普通登机牌办理柜台办理,要托运行李;
- 快速Check-in 在特定登机牌办理柜台办理,不用托运行李;
- 自助Check-in 在机器上办理,不用托运行李。
|