电梯系统的UML文档03
·开/关门:乘客进出电梯,电梯应该开关门。这个用例应该包括当电梯正关闭时乘客想进入,乘客可以使电梯门反转。
·触发紧急制动器:电梯有安全机制确定一个不安全的状态不是瞬时产生的。
电梯系统的唯一角色就是乘客,乘客和系统交互完成任务。乘客通过呼叫电梯和楼层与电梯系统交互。
乘客通过观察电梯移动方向和电梯位置指示器决定是否进/出电梯。因此用例图表明角色和处理电梯呼叫、处理楼层呼叫、标识运行方向和标识电梯位置四个用例有关。
4.3 类图
类图是面向对象系统中应用最广的图,它对系统进行静态建模。静态图主要描述系统的功能需求-系统给最终用户提供的服务。从我们过去的实践经验来看,当用类图完成系统建模后会得到许多乐趣。系统类图的不同视图将在本文后面的章节重点讨论。
类图描述一组类、接口和协作,及它们的关系。类图包括整个系统的描述,如系统的结构和细节,还有类的属性和操作等细节。一个类图的基本内容有:
·类
·接口
·协作
·依赖、泛化和关联关系
·节点和约束
接下来的小节,将详细描述和分析三组类图。
在4.4 节中介绍每一张类图对应的顺序图。
4.3.1 类图-对象构造视图
从4.2 节的电梯系统用例和系统需求,我们直观地得到了如图2 所示的类图。
从图2 中类的描述我们可得出系统组成的一些概念。我们不深入细化类成分,如每个类属性和操作,这超出了我们当前视图的范围。基于此,我们从系统对象组成的角度,建立了类图。
·电梯控制器:电梯系统的核心控制对象。和系统中所有其他对象通信并控制它们。
·门:系统中有两扇门,“上帝”对象-电梯控制器-命令门打开和关闭,这和用例中的描述相对应。
图2:类图-对象构造视图
·电梯:电梯在控制下上升和下降(用不同的速度),需要时可以停下。
·按钮:电梯控制器类(ElevatorControl)也控制按钮类,按钮类生成两个子类电梯呼叫按钮类和楼层呼叫按钮类(CarCallButton and HallCallButton)。控制对象和按钮对象通信,得到按钮是否被按下,反过来控制按钮灯的发光。
· 指示器: 系统有两类指示器, 电梯位置指示器( CarPositionIndicator ) 和电梯方向指示器
(CarDirectionIndicator)(例如:电梯灯)。指示器提供电梯的当前位置和移动方向。
·安全装置:依照需求文档中紧急制动器的定义,任何紧急情况时,电梯控制器触发安全装置。