摘要
本文描述了一种处理业务资源管理的模式语言。该语言覆盖了业务系统中的大量应用,包括资源出租模式、交易模式和维护模式,并且是在实际信息系统开发的基础上设计的。在这种语言中采用了现有的可重用模式,是这些模式在这个特定的问题域的实例。我们的想法是尽可能地将这种语言设计完整,使其可以用于这个问题域中的各种应用设计。
文中将15 个模式放在同一张图中,用来检验它们使用的方便性。模式结构描述和实例描述中的对象模型都采用UML 的描述方式。这种模式语言的应用表明它使分析变得容易,因为它是工作的指导。
引言
最近发表了许多对信息系统开发有用的通用模式,如Type-Object[Joh 98],Association-Object[Boy 98],Specific-Item-Transaction,Transaction-Transaction Line Item 以及Item-Specific Item[Coa97]。这些可复用的模式可以被广泛地应用在跨领域的信息系统应用中。
我们展现的处理资源管理应用的模式语言针对一个特定领域的信息系统。该模式语言是在总结了在该领域中10 多年中小规模信息系统的设计经验而得出的。这些系统中存在相似性,值得考虑建立一种模式语言,使分析员在开发类似系统时使用。
本文描述的模式语言,叫做业务资源管理模式语言,是许多模式的组合,其中一些是上面提到的可复用模式的实际应用。实际上,该模式语言的定位是比那些可复用模式更高的抽象层次上。它应用在特定的领域并且包含该领域中应用系统的特定术语。它给没有经验的开发人员提供开发新系统所必要的充实的材料,它在开发过程中指导他们,提供可选择的解决方案并且指出下一步需要做的工作。
业务资源管理模式语言用来帮助软件工程师开发处理业务资源管理的应用,这些应用需要记录诸如资源出租、交易或维护等过程。对于事务(transctions),我们的定义与Coad[Coa 97]相同:一个重要的、需要记住的事件,也就是,一个系统必须按时间序列记忆的事件。
资源出租主要关注物品满足某种临时需要,如内科医生的出诊时间或是为观看影片而使用的录象带。资源交易关注物品所有权的转移,例如,产品销售。资源维护关注一种特定物品的维护,使用劳动或产品,如电器维修商店。
业务资源管理模式语言
15 种模式组成了这种语言。根据具体应用的特点,在许多情况下可以选择使用。图一表现了检查这些模式的先后顺序。虽然每个模式都提供了选择方向,但作为一个整体,图一的优点是非常明显的。语言中的主要模式是“资源出租(RentTheResource)”(7),“资源交易(TradeTheResource)”(8)和“资源维护(MaintainTheResource)”
(9),以粗线表示。
它们互相之间不是相互孤立,实际上,在应用中它们可以安装在一起。“资源维护”可能用到“资源出租”或“资源交易”,例如在汽车维修店的应用系统中,部件是购买的,而劳力是出租的。
第一个模式是“资源标识(IdentifyTheResource)”。模式11、12、13 表示在一个方框内说明它们适用于箭头指向它们的所有情况。指向11 的没有源头的箭头表示该模式首先被检查,紧跟着是模式11 和模式12。每个模式的“下一模式”部分对图一进行详细说明。
如图一所示,模式按照它们的目的分为三个部分。采用UML(统一建模语言)[Eri 98]描述这些模式。基础类方法,创建对象、设置获得属性、添加删除对象连接以及删除对象没有包含在略图中,因为它们将增加图的复杂程度,而且效果不明显。
我们假设这些方法已经在每个类中都存在了。为了加强整个系统的可理解性,我们赋予系统操作到类方法中,在已有的类中选择适合的操作功能。实际上,系统操作不仅仅是方法,它们反映了真实世界的输入系统的事件,它们的功能通过调用多个不同的类中的多种方法实
现。