从图1.1可以看出,MDA是MDD发展的高级阶段,当前还处在方兴未艾的阶段。其关键在PIM(Platform Independent Model,平台独立模型),它是一个屏蔽了“平台相关技术”诸多细节的模型,但其语义必须完备,否则无法自动生成PSM(Platform Specific Model,平台相关模型)。
关于模型驱动的软件开发趋势的看法,可概括如下:模型在开发中的作用会继续增大,其应用范围会更加广泛、更加深入;模型的分工会产生分化,“隐藏细节”的理念会发展到“隐藏不应暴露的模型”;暴露给用户使用的是符合用户视图的模型。
构件服务化趋势
为了满足客户提出的越来越多的新要求,技术方面的改进也在不断地加快。企业必须快速地适应这种改变,否则就难以生存,更别提在这个动荡不安、竞争激烈的环境中取得成功,而IT基础设施必须支持企业提高适应能力。
因此,企业组织正在从20世纪80年代或更早时期的相互隔离的垂直业务部门,以及20世纪80年代和90年代关注业务流程的水平结构,向新的生态系统业务范例发展。重点是扩展供应链,支持客户和合作伙伴访问业务服务。
为了减少异构性、增强互操作性和适应不断改变的需求,这样的体系结构应该提供平台来构建具有下列特征的构件服务:
◆松散耦合
◆位置透明
◆协议独立
应用基于这样的构件服务的体系结构,服务使用者甚至不必关心与之通信的特定服务,因为底层基础设施或服务“总线”将代表使用者做出适当的选择。基础设施对请求者隐藏了尽可能多的技术细节。特别地,来自不同实现技术(如J2EE或.NET)的技术规范不应该影响构件服务的用户。通过对已有服务构件的组装又可以创造出新的服务构件。