模型驱动体系结构的剖析及应用
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
在计算机领域,相对于硬件技术的突飞猛进,软件技术发展的严重滞后已是一个不争的事实。如何为软件的工业化大生产创造必要的技术条件和生产模式成为软件工程研究的当务之急。
     80年代软件工程领域曾经出现过计算机辅助软件工程(CASE)的热潮,人们希望依靠CASE来实现工业化大生产。然而早期的努力没有获得成功,现在已经没有人再提“无程序员编程”了。
     希望往往在绝望中孕育成长。随着面向对象技术和组件技术的逐渐成熟,人们期望能像工业领域大量使用标准件生产产品那样,大量重用组件来“装配”软件。然而这种生产模式有几个根本性的问题没有得到解决,因此大规模的“装配”软件生产还是一个遥远的梦想。
     虽然面向对象技术结出的一个果子——组件技术,并不那么好吃,但它的另一个果实——面向对象建模技术却越来越成熟。对象管理集团(OMG)于2001年7月推出的模型驱动体系结构(Model Driven Architecture,MDA)草案是建模技术发展史上的一个里程碑。这个体系结构的提出,带给软件结的影响将是深远的,很可能就是软件业新篇章的序曲。
     本文对MDA的产生背景、核心技术以及互操作模型框架做了深入剖析,并对MDA的模型框架做了一定的扩展。以此为基础,在一个软件系统的开发中应用了MDA和核心技术,采用了扩展MDA的开发模式,收到了良好的效果。
In the computer society, contrasted clearly with the rush of the hardware technology, it's unarguable that the software technology has lagged behind. The urgent affair of software engineering research is how to provide the necessary technical condition and productive mode for the industrialized production of software.
    In the early 80's, there has been a CASE upsurge, which was expected to realize the industrialized production of software. But it's failed. No one will mention the "no programmer programming".
    Hope often grows by the despair. With the maturing of the Object-Oriented technology and Component technology, it's imaged that software can be "assembled" with a huge quantity of reusable components. But, there is always but, because of several unsolved essential problem, the large scale assembling software production is still a dream.
    While an apple, the Component technology, from the OO technology tree is not test well, another one, OO modeling technology is maturing day by day. The Model Driven Architecture (MDA) presented by OMG in July 2001, was a landmark of the history of modeling technology. It will have a far-reaching impact of the software society. Maybe it's just the beginning of a new age. This thesis made an anatomy of the background, core technology and the framework of MDA. Some extensions were built on MDA. Based those works, the core technology and extended MDA develop mode was exploit in a real software development. A good effect was made.
引文
[1] Carma McClure, Model-Driven Software Reuse, available at http://www.reusability.com/papers2. html
    [2] Ivar Jacobson, Martin Griss, Patrick Jonsson, Software Reuse: Architecture Process, and Organization for Business Success, Addison Wesley, 1997
    [3] Tomas Isakowitz, Robert J. Kauffman, Supporting Search for Reusable Software Object, IEEE software engineering, vol 22, no 6, June 1996
    [4] John Mylopoulos and Alexander Borgida and Matthias Jarke and Manolis Koubarakis, Telos: Representing Knowledge About Information Systems, Information Systems, vol 8, no 4, 325-362, 1990
    [5] CHEN, P. P.: The Entity-Relationship Model-Toward a Unified View of Data. ACM Trans, on Database Systems, 1(1) , 9-36. 1976
    [6] Peter P. Chen, From Ancient Egyptian Language to Future Conceptual Modeling, Conceptual Modeling, 1997,url = "citeseer.nj.nec.com/394627. html
    [7] Peter Frohlich, Nicola Henze, and Wolfgang Nejdl, Meta-Modeling for Hypermedia Design, In Proc. of Second IEEE Metadata Conference, 16-17 Sep. 1997, Maryland, 1997.
    [8] Nectaria Tryfona and Frank Busborg and Jens G. Borch Christiansen , starER: A Conceptual Model for Data Warehouse Design, International Workshop on Data Warehousing and OLAP, 3-8,1999
    [9] OMG Meta Object Facility (MOF) Specification, available at http://www.omg.org/
    [10] OMG Unified Modeling Language (UML) Specification, version 1. 4, September 2001, available at http://www.omg.org/
    [11] OMG Common Warehouse Metamodel(CWM) Specification, version 1. 0, February 2001, available at http://www.omq.org/
    [12] OMG XML Metadata Interchange (XMI) Specification, version 1. 1, November 2000 available at http://www.omg.org/
    [13] OMG Model Driven Architecture (MDA), Draft, July 2001 available at http://www.omg.org/
    [14] Jan Hendrik Hausmann and Reiko Heckel and Stefan Sauer, Towards Dynamic Meta Modeling of UML Extensions: An Extensible Semantics for UML Sequence Diagrams, available at http://citeseer.ni.nec.com/hausmann01towards.html
    [15] P. Coad and E. Yourdon. Object-Oriented Analysis, 2nd Ed. Yourdon Press , Prentice Hall, 1990.
    [16] Grady Booch. Object-Oriented Design With Applications. Benjamin/Cummings Publishing Company, Inc., 1991
    [17] Ivar Jacobson, Magnus Christerson, Patrik Jonsson and Gunnar Overgaard, Object-Oriented Software Engineering : A Use Case Driven Approach. ACM Press, 1992.
    [18] James Rumbaugh, Michael Blaha.William Premerlani, Frederick Eddy, andWilliam Lorenson. Object-Oriented Modeling and Design. Prentice Hall, Englewood Cliffs, NJ,
    
    1991.
    [19] Software Engineering with JAVA: Fourth Edition, Stephen R. Schach,
    [20] XML中国论坛,XML实用进阶教程。北京:清华大学出版社,2000
    [21] 张海藩,软件工程导论。北京:清华大学出版社,1998