Siebel应用数据结构层次

在Siebel应用里数据在多个层次上使用了不同的定义方式,每一个层次侧重于数据的不同的特征,主要分为数据用户界面层定义(UI),业务逻辑层定义(Business Layer,可以是业务含义层)以及数据存储层定义,如图:

UI展示层主要定义用户界面接口,它包含的主要对象是我们以前已经交代过的Screen,View以及Applet(View里当前显示的部分就是一个Applet,而不是JAVA里applet的含义,可以是当前View的数据的列表或者当前某一条记录的详细的FORM展示),展示层也分为两个部分,展现部分是一个HTML的模板,它的定制可以通过一个HTML编辑器进行CSS,公司图片等各种HTML元素的客户化,而UI定义层则和逻辑层和数据层一样,都是使用Siebel Tools进行定义。数据存储层定义主要定义数据存储的逻辑结构,主要以表和列的形式来体现,在这层同时还屏蔽了不同厂商数据库的差别,从而对业务层提供一个统一的数据视图,一个典型的例子就是,在Siebel的数据结构完全不使用特定关系数据库的约束方式,而是在Siebel Tool里进行各种关系的建立,比如主键约束使用了自己的一个rowid,而不是使用关系数据库的通常的主键的定义,Siebel Tools的输出是一个*.srf(Siebel Repository File,也就是被编译后的UI/BOBC/DATA的定义文件)文件,由AOM来使用。
业务逻辑层是Siebel应用里最重要的一个部分,主要包含Business Object(BO)和Business component(BC),在这一层需要把下层的关系数据以一种业务容易理解的形式(如账户信息BC)提供给上层消费者。熟悉BIEE的用户可能会发现,Siebel应用也使用了类似于BIEE里结构分层的定义方式(物理层,逻辑业务层,展现层等),这种特点还是比较Siebel的。

数据结构层次
整个Siebel的数据的层次结构分为三个层次,每一个层次都对应了下一个层次的相应的元素,一个层次的改动不影响另一个层次的稳定性,一张表现他们层次的经典图如下:

可以看到,一个BC其实对应的就是一个逻辑的表(可以是一个基表也可以是几个关联的表的一个逻辑的表),BC里的field就是对应了数据表的列,多个相关主题的BC则组成了BO前面的文章已经交代了View,Screen等屏幕元素,这些屏幕元素和BC,BO也存在一定关系,从BO和BC的观点来重新定义这些概念就是,View其实对应的就是一个BO,而Applet则对应着一个BC,所谓Control则是屏幕上对应于关系数据字段的显示。多个相关的View则组成了一个Screen,而多个相关的Screen则组成了一个Siebel应用(如Call Center应用)。

需要注意的是一个BO需要有个一个主要的BC(该BC表示了自己关注的业务实体),如下图:

原文地址:https://www.cnblogs.com/tdskee/p/6509592.html