在项目中支持这些相互映射模型的集合,将产生模型驱动 (model-driven development MDD)的开发模式.在MDD中,模型成为开发过程中的最重要的原材料之一.当一个系统架构模型允许或禁止横跨企业数据中心安全区域的信息路径时,这个模型就指导和约束了服务模型,很有可能影响服务设计.当数据架构模型确定数据访问方法,工具就产生代理代码和语言捆绑.
微软通过其软件工厂启动计划,努力在其动态系统启动计划(Dynamic Systems Initiative DSI)和Visual Studio Team System中积极地追求并达到这个目标.
DSI使用系统定义模型(System Definition Model SDM)--一种描述分布式系统和他们运营平台的模型--来在开发和运营之间协调同步.SDM可以根据软件组件对工作所要求的资源(例如CPU周期),以及对别的组件和服务的依赖性来对他们进行建模.同样地,SDM也可以对数据中心中的逻辑机器类型和安全区域建模,这依赖于他们可以提供给软件组件的资源.
有了SDM,一旦解决方案被部署和运行,并行的解决方案模型和托管工作环境就被建立起来,而且可以进行有效模拟,确认设计,计划和资源的动态分配.Visual Studio .NET 2005建模工具支持SDM,Microsoft Operations Manager (MOM)和Microsoft Systems Management Server (SMS) 的未来版本也都将支持SDM.
软件工厂通过促进DSLs和领域描述框架的使用来提升开发过程的自动化,最终的目标是使微软自己的集成开发环境--Visual Studio .NET,可以被配置成为创建特定类型的软件组件和解决方案的"工厂".例如,有价证券交易应用的工厂将整合适用于金融服务组织结构、会计实践和贸易实践的模型.