写点什么

微软的模型驱动开发战略

  • 2008-11-11
  • 本文字数:1706 字

    阅读完需:约 6 分钟

随着微软下一代模型驱动的面向服务架构(SOA)平台——OSLO 的出现,模型驱动开发将跨越业务分析师与 IT 人员之间的沟壑,并确保 SOA 平台中应用开发向业务需求看齐。微软系统连接部门(Microsoft Connected Systems division)主管 Burley Kawasaki 表示:

模型驱动开发是整个软件开发行业在发展过程中一直寻找的、不可缺失的组成部分。OSLO 将会成为下一代模型驱动应用开发的新起点,而且它终将成为主流。模型不应该是仅供导入导出、生成代码所用,模型就是应用,是打破各种筒仓(silo)的应用。我们正在创建一套通用的建模工具,建模语言以及模型仓库,这一整套东西将会桥接起描述同一个应用的不同类型的模型,并将模型置于应用开发的中心。这样模型就可变成应用。服务器看到的是各种模型,而不是打印机吐出的纸张。

虽然微软的这个整体愿景非常清晰,但问题在于:该模型愿景是否会基于 UML——目前架构领域的通用语言。Burley Kawasaki 这样澄清微软的位置

UML 是微软需要支持的标准之一,但不是唯一的标准。我们视其为一种重要的建模标记方法,但它并非唯一的一种。微软计划广泛支持系列建模工具,从自己的 Visio 图表绘制软件到 UML,同时也满足其他建模语言的要求,比如对业务流程建模标记语言(Business Process Modeling Notation,BPMN)的支持。

随着 OSLO 不断成熟,微软开始改变建模方式的发展路线。经过数年专注于领域特定语言(DSLs)相关建模工具的研究,微软扩宽了他们的产品策略,包含了更多 UML 相关建模工具。尽管微软此前通过在 Visual Studio 中支持 Rational Rose 插件以提供对 UML 的支持,他们目前已经开始规划在 Visual Studio 10 中内建支持 UML,并已加入了OMG 组织以更好地支持UML 开发。

上周,微软发布声明称,Visual Studio Team System 2010 将提供一套基于UML 的团队架构工具——Team Architect,该工具不仅面向架构师,而且还可供应用开发人员,数据库开发人员和测试人员使用。Team Architect 不仅可以设计新的应用,同时也支持对现有应用的反向工程,架构师们和开发者们可以藉此在添加模块或调整代码前就了解到整体架构。

SourceGear LLC 的 Teamprise 部门资深软件工程师 Martin Woodward 写道:

Team System Architecture Edition 2010 发布版本中最令人印象深刻的是,他们不仅仅提供了自顶向下的架构设计方式,同时也自下向上的展示出一个软件架构师每天真正在做的事情。这套产品比它的前身更加适合“真实场景”的架构工作,它使架构师可以在多种技术和平台上开展工作应用,而不仅仅是微软的产品体系中。

Team Architect 工具将融合进 OSLO 的建模平台中,从而支持组合应用开发。Chappell & Associates 的负责人 David Chappell 在谈及 Team Architect 和 Oslo 的定位时表示:

你不仅仅可以使用 Visual Studio 编写代码,同时也可以使用 OSLO 的建模工具把创造的人工制品(artifact)整合到工作流程中。早期发布的 OSLO 版本已经具备这些集成特性。

尽管集成 Team Architect 和 OSLO 的计划还没有完全确定,Visual Studio Team System 2010 的产品经理 Cameron Skinner 表示:

我们仍然刚刚开始考虑这样的做法。现阶段的计划还是只实现互操作的极小一部分。

虽然 Oslo 和团队架构工具的具体进展仍处于很低端的层面上,但 Woodward 仍然表示微软已经选对了正确的方向:

假如微软可以在 Visual Studio Team System 2010 中实现他们之前提到的一半想法,他们肯定将彻底改变这个市场。到目前为止,我所看到的每一件事情都让我觉得,这将会是一个改变游戏规则的产品。

查看英文原文: Microsoft’s Modeling Strategy


译者简介:王速瑜,毕业于华中科技大学,就职于腾讯科技(深圳)有限公司,担任R&D 研发总监,现负责腾讯敏捷产品开发技术的实践和推广及研发基础平台的管理工作。熟悉Java、Microsoft.net、Lamp 等技术。对互联网大规模应用技术、高性能网格技术,SOA 等有非常浓厚的兴趣和深入的实践,喜欢Open Source,关注Ruby、Erlang 的发展并积极实践,愿意为技术而挥洒激情,为让更多人了解精彩技术而付出努力!志愿参与InfoQ 中文站内容建设,请邮件至 editors@cn.infoq.com 。也欢迎大家到 InfoQ 中文站用户讨论组参与我们的线上讨论。

2008-11-11 20:201086

评论

发布
暂无评论
发现更多内容

销售 小姐姐 给买家打分系统,用 Python Django 又整了一个花活

梦想橡皮擦

8月日更

程序员必备!5款小众高效的开发神器

Jackpop

CSS的设计模式(一)OOCSS

Augus

CSS 8月日更

缓存函数的简单使用

编程三昧

JavaScript 8月日更

网络攻防学习笔记 Day111

穿过生命散发芬芳

网络安全 8月日更

白手起家之注册中心zookeeper

卢卡多多

ZooKeeper原理 8月日更

iOS开发:开发过程中单例模式的使用

三掌柜

8月日更 8月

10 个超棒的 JavaScript 简写技巧

前端依依

程序员 大前端 js 代码规范

开源应用中心 | 做项目,不敏捷?快来部署这款灵活的项目管理系统

Vue进阶(五十二):vue-cli 脚手架 webpack.dev.conf.js 配置文件详解

No Silver Bullet

Vue 8月日更

Go 语言, 一文彻底搞懂 iota 实现原理

微客鸟窝

Go 语言 8月日更

前端自动化测试及 Karma 介绍

devpoint

单元测试 自动化测试 Karma 8月日更

金九银十旗开得胜!秋招字节正式批4面,顺利拿到offer

编程susu

Java 编程 程序员 面试 编程开发

【设计模式】访问者模式

Andy阿辉

C# 后端 设计模式 8月日更

低品质的勤奋者

箭上有毒

8月日更

硬盘空间免费扩容了2TB!!!

Jackpop

帮小姐姐打分系统的模型创建,滚雪球学 Python 第三轮第 11 篇

梦想橡皮擦

8月日更

【Flutter 专题】61 图解基本 Button 按钮小结 (一)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

Ansible 变量

耳东@Erdong

变量 ansible 8月日更

在线HTML5,CSS3,VueJS,jQuery运行测试练习工具

入门小站

工具

管道(Channel)的读取与写入「让我们一起Golang」

Regan Yue

协程 Go 语言 8月日更 管道

腾讯良心了?!!!

Jackpop

Linux之bc命令

入门小站

Linux

vue入门:router路由简介与使用

小鲍侃java

8月日更

人工智能下的音频还能这样玩!!!!

Python研究者

8月日更

Flink生态提供的其它工具(十一)

Databri_AI

sql flink CEP

大数据技术不能被平台滥用,必须维护消费者的合法权益

石头IT视角

Vue进阶(五十一): vue-cli 脚手架 webpack.base.conf.js 配置文件讲解

No Silver Bullet

Vue 8月日更

Netty如何解决粘包以及拆包问题

慕枫技术笔记

后端 Netty

秀到飞起!Alibaba全新出品JDK源码学习指南(终极版)限时开源

今晚早点睡

源码

手撸二叉树之根据二叉树创建字符串

HelloWorld杰少

数据结构与算法 8月日更

微软的模型驱动开发战略_SOA_Boris Lublinsky_InfoQ精选文章