4.2 CoCoME示例

本章以 CoCoME 应用程序作为主要示例。CoCoME 代表通用组件建模示例(另见 [CoCoME]、[RR++08])。CoCoME 旨在为基于组件的架构方法提供基准。为此:

a) 该应用程序的公开可用实现是可用的。它包括一个信息系统和一个嵌入式系统。该实现试图实现当前的架构方法(如分层架构和总线架构),但仍然足够小,易于理解。 b) CoCoME 架构的基于 UML 的描述也是可用的。作者定义的视图也已用于架构描述。 在 [RR++08] 中,超过 15 个独立的小组对该应用程序进行了描述,每个小组都使用了他们特定的架构方法。这为比较不同的架构方法提供了一个极好的基础。 从我们的角度来看,CoCoME 非常适合用于说明以下各节中介绍的概念和方法。我们首先对该应用程序进行简短介绍。 4.2.1 CoCoME系统中的用例 CoCoME 是一个连锁超市的应用系统。它的首要任务是涵盖超市收银台的核心功能(见图 4 - 1)。这包括收银台的实际销售(用例 UC 1:处理销售)和收银台的自动重新配置。如果在过去 60 分钟内,超过 50%的销售由少于 8 件商品组成且顾客以现金支付,那么收银台会将自身重新配置为快速收银台(UC 2:管理快速收银台)。这意味着顾客随后只能在该收银台购买最多 8 件商品且必须用现金支付。 CoCoME 的另一项主要任务包括库存管理的用例 - 例如,价格管理(UC 7:更改价格)。UC 5:显示库存报告提供超市库存商品的概述。UC 3:订购商品能够订购货物,UC 4:接收订购商品用于将交付的货物接收到超市的仓库中。

图4-1 CoCoME系统中心用例 由于涉及连锁超市,因此也存在在公司级别(即超出单个超市的边界)运行的用例。例如,UC 8:商店间产品交换在一家超市特定产品开始缺货而其他超市有充足库存时,为重新调配库存提供建议。UC 6:显示交付报告提供不同供应商交付货物所需时间的信息。 4.2.2 CoCoME系统结构概述 如图 4 - 2 所示,CoCoME 系统在三个层次上进行了分层结构设计:收银台、超市和连锁超市。收银台与它所控制的一些外部硬件组件(打印机、读卡器、现金抽屉、条码阅读器、快速灯)相连接。收银台还具有用于信用卡支付的与银行提供商的接口。 所有收银台都连接到一个中央服务器,在那里进行超市的商品管理。然而,如果收银台和超市服务器之间的链接中断,收银台不能停止提供服务。因此,收银台被设计为在必要时能够自主运行。这意味着收银台必须管理产品和价格数据的本地副本。此外,它们还必须临时存储有关已售商品的相关数据,并在预定义的时间点与服务器同步。

同样的情况自然也适用于与连锁超市中央服务器的连接。该服务器监控各个商店的收货和销售情况,在公司层面控制物流,并管理供应商。然而,如果与公司服务器的链接暂时中断,各个商店必须能够自主行动。

图4-2 CoCoME系统结构概述

Last updated