PCOM图谱
分析
总结前面的所有设计,PCOM模块的架构最后就是 “图9”了。为方便程序模型的设计,让我们再重新标记说明一下这个表:artifacts
表9、PCOM原型 |
|
|
PCOM架构 |
3系M/P/A |
9元 3套(x,y,z) |
PCOM标架体系(一个可编程的COM控制器COMPLC) |
MachineOSO |
机器坐标系原点(scope,case,style) |
ProgrammingCSO |
编程坐标系原点(charateristic, lable, callAction) |
|
ArtifactsCSO |
工件坐标系原点(entry,feature,mode) |
|
|
FrameArchitecture |
|
上表只是在原表上增加了标题行,并标记了3个斜体。
可以看到,它给出了COM对象的9个元件,其中加粗斜体是动态元件, 它是 PCOM抽取出来为一个特定目标环境的一个具体应用系统的构造型Stereotype的变元--COM模型的定义域,它们具体表现为在3个坐标系中的像点。
下面具体给出这张表给出的全部“确定”意义(包括使它们有意义所需要的有关设施):
- Frame:任何一个坐标系所提供的用来填充动态元件的“框”,即任何PCOM扩展都是对一个特定Frame实体的扩展。一种Frame给出了一种具体的可扩展的范围和/或一个具体扩展方案适用的范围,换句话说,Frame表示了局部更新的类别Category。
- Widget:表示一个特定的Frame实体(提供基类模型并提供基础实现,由领域专家或设计者在设计图中完成)。即:任何与领域相关的部分都在其中;
- 在每个坐标系中的任意一个点(x,y,z):z 恒等 Widget(x,y);
- Box:任意一个动态元素在一个特定的应用系统中表示为一个Box实例。PCOM模块给它们提供了一个统一的外观。
- Pattern:模式。应用者当前所使用的系统(集成环境/开发环境/运行环境)中提供的、可直接使用的模式。顶级模式是提供了能构件应用系统平台的系统架构级别的构件模式(有这种模式能力的平台,被称为“生态平台”)。比如JavaEE中提供了13种模式类别(见http://java.sun.com/blueprints/patterns/catalog.html)。
- Mapping:任意两个相邻的不同元件之间的映射关系/对齐方法。这里“相邻”包括空间层相邻、平面上共边或同一层的两侧等一切需要建立两个元件之间的显式关系。(隐式关系通过转换);
- Transformation:
- 对P系:应用程序的所在,作为应用系统的架构根级,提供与应用有关的不同级别(如,应用框架/应用组件)的对象模型,同时提供需要的编程空间。PCOM模块中的P集元件(简称“应用元件”)表示了应用系统架构的元构件。一个生态平台提供的P集中, P(x,y,z)上:
- 一个z元件是真实意义上的应用程序,简称为“实元件”;
- 对任何一个z: Pz 恒等 Pattern(Mz,Wz);
- 整个P系:原点 恒等 Mapping(Box,Block,Lable)。意思是:一个应用系统的编程目标,就是要为在特定目标运行环境下用来表示需求的那些确定的Box类别的具体Lable填充实现/表达它的程序块.
9. 对M、A系:模式Pattern ,M/W(x,y,z),是已知的架构模式: Schema(应用元件的mode/Style),它表达了P系上的一个实元件(z元件) 在机器坐标系/工件坐标系的 z轴上的影像。同时:
- x表示z的范围(结构元件);
- y表示z的情况(情景元件);
关于设施:
- 设施是一个独立功能性组织为公民的不同公共目的而提供的必要的公共手段/公共设施。
- 在PCOM模块中,公民就是元件,各元件是彼此独立的。模块提供了基础的元设施(标记体系和三个坐标系),并在其上提供了一套基础的公共设施,上面列出的Frame、Widge、Mapping、Transformation等。
- 其中Mapping 和 Transformation 提供了面向动态元件的公共基础手段-是动态元件起作用的方法;
- 一个生态平台中,将提供除Transformation以外的全部实现,而任何应用系统都可以直接使用Mappng来建立元件之间的动态特性。
PCOM图谱
根据以上分析,给出PCOM的完整构成:
- 3种系、9种元件;
- 9种图:见“表10、PCOM图谱”
- 1个类:元件
表10、PCOM图谱 |
|
设施 |
图 |
Box |
部署图 |
Block |
组件图 |
Lable |
逻辑图 |
Widget |
小部件图 |
Frame |
框图 |
Pattern |
|
Transformation |
|
Mapping |
|
Schema |
配置Profile图 |
设计目标及最佳实践
最后,回到原点:
PCOM模块设计的目标,就是为构件平台的模式提供了一个统一的外观,使之能融入各种构件平台作为模式提供者。当今可用的构件开发平台(简称为“生态平台”),我所知道的,只有三个:J2EE、MS的DNA 和 CORBA。任何一个都可以作为验证PCOM模块的实践基础,其中,目前最具条件的是JavaEE。
2018-11-23 9:00