Work Finished:
1.Basic learning of SOA,ESB,MDA in RSA.
2.Gathering lots of integration related materials to study.
3.Learn a bunch of BPEL samples.
4.Discussion of overall system architecture and technologies to use.
5.Disucssion of basic system requiements.
6.Basic design of service architecture.
Work ToDO:
1.Continue learning
2.Study integratioin cases
3.Continue discuss of system and requiements.
4.Refine design of service architecture.
posted @
2006-05-21 18:08 silver.sun 阅读(612) |
评论 (1) |
编辑 收藏
上一篇:
BPEL Notes
不小心发在了文章里面,才知道首页看不到。。。,请大家注意。
~~~~~~~~~~~~~~~~~~
1.MDA
是什么
模型驱动的框架。简单来说就是由原来编程序改成编模型。看起来好像是
4GL
甚至
5GL
的样子。不过区别还是很大的,一个是语言,一个是模型。
2.MDA
和现有的编程语言的关系
没关系而又有关系。没关系是因为
MDA
不与任何一种编程语言邦定。有关系是因为
MDA
最后生成的还是具体编程语言的代码。
3.MDA
的流派
转自
Steve Cook
:
1. The UML PIM camp: MDA involves the use of UML to build Platform Independent Models (PIMs) which are transformed into Platform Specific Models (PSMs) from which code is generated.
2. The MOF camp: MDA does not involve the use of UML, but instead the crucial technology is MOF, and the definition of modelling languages and language transformations using MOF.
3. The Executable UML camp: MDA involves building a UML compiler, making it a first class programming language.
4. MDD
(
Model Driven Development
)
个人觉得:
最好理解的是第一种,直接用
UML
描述
PIM,
然后转换为
PSM
,然后再转成代码,这当中的每一个转换都会用到很多已有的
Pattern
或者说技术细节。
从建模方面来讲最灵活和能力最强大的是第二种,同时也是最不好理解的。就像高等代数谁都能用,但是要从代数的基础理论推导出高等代数的体系就不是人人都能干的了。
MOF
的抽象层次脱离了实际的世界,不过这也是它能够灵活和强大的基础。
最不现实奖颁发给第三种方法,可执行的
UML
。
UML
在设计之初就没想过要可执行的东西。现在
UML
里面最像可执行代码的就是
OCL
,不过老早之前
Rule-based
系统就已经出现,而且向我们证明了这种系统只适合特定的需求和环境。那么我们能否扩充UML的动作语义来实现执行呢?简单的情况是可以的,比如算法的描述即程序流程的描述,动作图或者状态图可以很好的描述这种情况。但是数据库连接呢?
UML
是否要扩展到连关系型数据库连接都要用个
notation
的程度?那么
UML
就不是建模语言,而是图形化类库了。
第四种我不甚了解,不敢妄加评论。
4.MDA
的工具
基本上现在的
UML
建模工具都或多或少支持
MDA
的功能。如:
Rational Software Architect
Enterprise
Architect
Together
还有很多专门的
MDA
工具,如:
acceleo
GMT
AndroMDA
5.RSA
里面的
MDA
这两天一直在看红皮书
Patterns: Model-Driven Development Using IBM Rational Software Architect
。郁闷的事情是我手上的
RSA
是
6.0.0.0
,而需要的版本是
6.0.0.1
而且升级要
1G
多。。。。只能纸上谈兵一下了。
个人感觉:最重要的就是
transformation
。
RSA
里面是采用扩展
profiling
的方式来实现
MDA
的。因此首先要做的就是建立商务领域内的
profile
。之后写一些
transformation
插件来将用这些
profile
描述的需求转化为
PIM
,之后再利用现有的(或者有需要的话自己扩展的)
UML to XXX
插件来转化为
PSM
和代码。这个方式理解起来比较简单,但是需要大量的领域
specific
并且设计良好的
Profile
和转换器来支撑整个系统。
另一方面,
transformation
插件是以
eclipse
插件的形式存在的,利用了
eclipse
本身良好的插件系统。有点自己开发工具自己用的感觉:)不过在我的机器上真的很慢。。。
posted @
2006-05-16 14:28 silver.sun 阅读(710) |
评论 (0) |
编辑 收藏