那么下一步呢?关注点继续上移,那么,人们将更多地思考业务需求的建模;智能化水平逐渐提高,那么,有了模型之后,工具能够将模型自动转化为可运行的系统。以模型为中心,实现系统的自动化构建,这就是MDA的预言与理想
MDA整理了概念和流程,将软件开发过程统一于基于模型的思想,用模型驱动整个开发过程;MDA定义的模型与当前分析、设计中常见的模型不同,它是精准定义的而并不是仅停留于纸面,它是能被机器识别的而不仅是人类可读;MDA致力于定义用于精确描述模型的标准化语言以及不同模型间的转换语言(目前来看是从UML入手,扩展与修改),鼓励厂商开发模型定义与转换的工具(如Rational相关产品、Eclipse建模工具),使得 PIM、PSM、代码之间能够自动化转换;基于精准模型定义的MDA包容不同类型的软件开发过程:其思想与敏捷开发并不相悖,它能将XP推向更高层次-极限建模,也能够解决RUP的繁冗与官僚现象;MDA的M0、M1、M2、M3四层模型体系,基本能够满足各种模型的定义;MDA利用多层模型思想,将业务逻辑与实现技术剥离,同时又保证逻辑与实现之间的同步,使得软件系统能够灵活适 应技术发展和业务逻辑的演进。
还有一些疑问:对于应用性项目的开发,MDA的思想是顺理成章的,而对于平台软件、框架性软件的开发呢?比如,如何用MDA开发一个GIS平台,或者开发一个3D渲染引擎?MDA的模型、变换机制似乎是以数据为中心的,算法密集型功能在MDA中的位置如何?
看完《MDA Explained》

没有评论:
发表评论