论文部分内容阅读
软件产业在IT产业中历来占有重要的地位,进入21世纪,这种地位继续得到巩固和凸现。随着软件产业技术的不断发展,对软硬件的要求也越来越高,为了不断提高软件开发效率,人们一直在努力探索着。面向对象、基于组件开发、模式、分布式计算等新方法的出现都为提高软件质量和延长生命期做出了一定的贡献,但面对不同平台的互操作性、软件的可移植性以及开发过程中出现的文档与代码不同步的问题,人们又显得手足无措。2001年对象管理组织(OMG)提出了一种全新的软件开发框架---模型驱动架构(MDA),它不仅解决了传统软件开发所存在的问题,而且与其他新方法相辅相成,为软件开发业揭开了一个新的篇章。MDA通过提高抽象层次来应对软件开发的复杂性,将业务逻辑设计与不同的软件平台分离,先建立与具体技术无关的平台无关模型(PlatformIndependent Model,PIM),然后通过模型转换得到加入了平台信息细节的平台相关模型(Platform Specific Model,PSM),最后由代码生成器根据PSM生成可执行的代码。The Middleware公司研究的结果表明:MDA能带来快速开发、可移植性、代码一致性、可维护性以及体系结构等方面的好处。在特定框架的基础上建立目标应用系统是当前Web应用开发的主流,如面向J2EE平台的Struts、Spring、JSF、Cocoon、Axis和Xalan等框架都得到了广泛的应用。这些框架是软件开发人员从以往的经验和教训中总结出的设计模式。这些模式的应用,不仅降低了软件开发的成本,同时也保证了Web应用系统的质量。目前多数基于MDA的Web应用开发方法将平台相关模型(PSM)定义为具体的目标运行框架,代码生成器与这些框架绑定,如OptimalJ、RationalXDE、Arcstyler以及AndroMDA等,这使得基于某种平台的业务逻辑设计与目标运行框架产生过于紧密的耦合,从而降低了软件演化过程中系统模型的可移植能力和设计模型的可重用性。为解决上述问题,本文将Web应用的运行框架描述添加到模型驱动的软件开发过程中,并且引入抽象平台相关模型和具体平台相关模型的概念,从而提出了一种支持多目标框架代码生成的扩展MDA开发模型,该方法提升了模型描述的清晰性和灵活性。利用该方法,可以充分体现模型的可重用性,平台无关模型、抽象平台相关模型都可以为基于J2EE的不同框架所利用。可以一次设计,根据需要,生成多种框架代码。这种研究,是对DMA模型的扩展和延伸,为基于模型驱动的代码生成提供了积极的推动,能够为模型驱动的软件开发提供有力的支持。