写点什么

微软的模型驱动开发战略

  • 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:201075

评论

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

“四个维度” 讲明白什么是微服务!

攀岩飞鱼

微服务 单体系统 架构设计 团队组织 康威定律

如何在 Mac 上优雅的截图和录屏

Winann

macos 效率 效率工具 Mac

高仿瑞幸小程序 09 云数据库初体验

曾伟@喵先森

小程序 微信小程序 大前端 移动

游戏夜读 | Scikit-learn的2018自述

game1night

浅析 - CocoaLumberjack 3.6 之 DatabaseLogger

Edmond

ios sqlite log4j CocoaLumberjack DDLog

找一个更好的理由

史方远

职场 成长 工作

经历过疫情,你懂得了什么

Winann

疫情 个人成长 生活 成长

elasticsearch源码解析(一)——restapi

罗琦

elasticsearch 源码分析 RESTful

网站系统架构演进

Janenesome

读书笔记 程序员 架构 系统设计

看完这篇HTTP,跟面试官扯皮就没问题了

苹果看辽宁体育

https okhttp

程序员的晚餐 | 5 月 15 日 如果不写代码了,那就开个饺子店

清远

美食

Azure App 部署Django 和 PostgrSQL

yann [扬] :曹同学

Python azure

零基础如何学架构

兆熊

架构

记一次MHA切换故障踩的坑

一个有志气的DB

MySQL 高可用 复制 主从同步 故障分析

Java实现Base64

Java

数列找规律的问题

oldj

数学

JVM源码分析之Object.wait/notify实现

猿灯塔

JVM

奔腾吧,“后浪”李子柒!

无量靠谱

网红

为什么软件开发很难外包

刘华Kenneth

外包 DevOps 风险 背锅

决战下半场:小程序技术助力金融APP重回C位

FinClip

小程序 数字化转型 app重构

游戏发行中学到的重要经验(严肃长文)

谢锐 | Frozen

独立开发者 游戏开发 游戏出海 移动互联网

Web3极客日报#140

谢锐 | Frozen

区块链 独立开发者 技术社区 Rebase Web3 Daily

阿里巴巴泰山版《Java 开发者手册》,也是一份防坑指南

古时的风筝

Java规范 Java开发手册

Leetcode 556. Next Greater Element III

隔壁小王

算法

回“疫”录(17):返宁的前一天

小天同学

疫情 回忆录 现实纪录 纪实

一篇文章搞定Java处理Excel的各种疑难杂症

知春秋

Java Excel POI

谈谈控制感(4):损失的后果很严重

史方远

职场 心理 成长

谈谈双亲委派模型的第四次破坏-模块化

寻筝

Java JVM

战略懒惰有多可怕

Neco.W

创业 重新理解创业 初创公司

服务发现:ZooKeeper vs etcd vs Consul

Tux Hu

Docker 容器 微服务 etcd Consul

初次见面

KAMI

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