地铁铁路的Uml类图

时间:2019-03-18 11:29:10

标签: uml class-diagram conceptual conceptual-model

我正在尝试为以下问题绘制和定义UML中的类。

  

地铁铁路信息系统

     

设计上述系统的概念方案的一部分,该部分将   请允许我注册电台(通过区分   互换和终端),站的互连(即   网络拓扑)和距离(以铁路公里为单位)   行)他们分开。

     

每列火车通过运行连续的路线而排成一行,即   在规定的极端站对之间,不是   在每条路线上都必须相同(例如布朗克斯-曼哈顿,布鲁克林-   皇后区)。每条路线都有特定的到达时间并停留在每条路线上   站。每个车站的实际到达时间可能与   程序化的站点以及站点之间的通信速度。

我首先想到的是主要类应该是:

Metro Line, Metro Station, Metro Route, Metro Route Stop, Metro Train

而且我正在努力地表示计划时间和实时时间。

2 个答案:

答案 0 :(得分:1)

让我们看一下很明显的类:

  • Metro line是一组Metro routes
  • Metro routeMetro stations的序列
  • Metro route由两个极端Metro stations
  • 定义
  • TrainMetro routes上运行
  

每条路线都有特定的到达时间,并停留在每个车站。

这意味着路线不是一般的路线(例如,布鲁克林-皇后区),而是非常特定的路线(例如,布鲁克林-皇后区,始于15:03)。

此外,由于多个Metro routes可能使用相同的Metro station,并且由于Metro route由多个Metro stations组成,因此这两个之间存在多对多关联类。 时间停留既不完全取决于路线,也不完全取决于车站。因此,最好的办法是将其视为association class的属性:

enter image description here

您有计划的停留时间和实际的停留时间,这意味着只有两个不同的属性。车站之间每列火车的位置告诉我们有关交通的信息。

最后,处理不同时间的更精细的方法是考虑一个Time table类。 Metro routeMetro stationTime table之间的关联将为ternary association,并且三元关联关联类可以保存计时数据(针对计划表进行计划,或实际表;但是您也可以有计划的多个版本,以及一年中每一天的实际版本,这将是完全灵活的。

现在,如果您对关联类不满意,则可以将多对多关联分解为带有中产阶级的两个多对一关联,您可以将其命名为Route stop

答案 1 :(得分:-1)

最后,

我想出了这个设计

enter image description here

非常感谢您