UML之父:架构业务需求与软件开发的桥梁

原创
开发 架构
在计算机领域,他闻名于世的不止是天文学家的称号,还有数据流计算机体系结构和UML(统一建模语言)。他就是世界著名的软件开发方法学家James Rumbaugh(詹姆斯-朗博)。

【51CTO独家特稿】在天文学领域,他是最知名的计算机大师;在计算机领域,他闻名于世的不止是天文学家的称号,还有数据流计算机体系结构和UML(统一建模语言)。他就是世界著名的软件开发方法学家James Rumbaugh(詹姆斯-朗博)。

51CTO开发频道年终巨献:架构师最怕程序员知道的十件事

1947年出生在美国的James Rumbaugh拥有麻省理工学院的物理学学士学位和计算机科学博士学位,同时,他还是加利福尼亚理工学院的天文学硕士。按照OMG(标准化组织对象管理组)的评价,他是“全世界最早与计算机深入接触的人类”。

[[7607]]

早在上世纪七十年,Rumbaugh博士就开始研究软件方法学以及相关的工具和概念,那时他在纽约斯卡奈塔第的通用电气研发中心工作,主要进行一些大型IT项目的设计和开发。

那是一个大型机横行的年代,遍布机房的存储设备和繁琐的控制操作经常让人感到无法适从;但Rumbaugh却乐在其中,他为自己的指令能与隔壁房间的庞然大物交流而感到兴奋,为自己的代码能被完整的映射到现实世界并解决实际的问题而荣幸。但在每个软件系统开发之前,他们这群“最早与计算机深入交流的人”都要面对一个困惑,如何把现实世界的问题转化到计算机里解决。

业务需求与软件需求

无论当时还是现在,业务领域跟计算机领域之间的概念存在着很大差别。一般来说,业务是用自然的语言来表述,但是软件有可能是用一些非常低级的计算机语言来表述的。构建一个软件需要写很多的代码,要写很多的控制逻辑,有很多复杂的东西在里面。正如目前很多的企业都在把业务与IT相结合作为一项重要的任务来做一样,其根本是要业务与软件之间建起一座桥梁。

为了建起这座桥梁,Rumbaugh博士开始探索新的需求分析和软件架构方法,提高软件开发效率。现在,我们把这门学问成为软件方法学,是指软件设计的原理和原则,以及基于这些原理、原则的方法和技术。其关注的中心问题是如何设计正确的软件和高效率地设计软件。

GE岁月

在通用电气研究发展中心,Rumbaugh博士陆续开发了DSM(Domain-Specific Modeling)面向对象编程语言、OMT对象建模符号以及Object Modeling Tool图形编辑器等。

#t#DSM(Domain-Specific Modeling)领域定义建模,是通过使用领域概念直接指定解决方案的软件业务需求方法。DSM提高了超越程序代码之上的抽象层次,最终软件产品将从高层次的设计中直接自动产生,这样一个自动过程是可以实现的,因为 语言和代码产生器可以满足某一个公司或领域的需求,建模专家使用定义这个自动机器,而程序员只管使用即可。

OMT是Object Modeling Technology的缩写, 意为对象建模技术,我们可以将其堪称UML的前身。它从三个方面对系统进行建模,每个模型从一个侧面反映系统的特性,三个模型分别是:对象模型、动态模型和功能模型。目前,OMT法是目前最为成熟和实用的建模方法之一。Rumbaugh博士不止为OMT设计了完备的建模符号系统,还同时开发了OMT的图形编辑器。

UML统一建模语言

1994年,Rumbaugh博士来到Rational软件公司,在此,他遇到了UML的另外两位创始人,同样为软件工程和软件方法学的专家Grady Booch和Ivar Jacobson。

[[7608]]
左起分别是:Grady Booch、Ivar Jacobson和James Rumbaugh

Grady Booch自Rational于1981年创建以来,就担任重要职位,是多个Rational产品的最初开发人员之一。Grady曾担任全世界许多复杂精深软件项目的架构师和架构指导。Rational被IBM收购后,他一直担任IBM Rational的首席科学家,并于2003年3月荣获IBM名士(IBM fellow)称号。

Ivar Jacobson 在软件工程学领域非常有名,他在使用对象方法设计大型实时系统方面已经有超过25年的经验。在大规模架构重用方面也做了大量的工作,这是爱立信的AXE远程通信交换机取得成功的关键因素。

早期的Rational软件界面
早期的Rational软件界面

在Rational期间,Rumbaugh博士总结了自己在对DSM和OMT的研究,并在Grady Booch和Ivar Jacobson的共同努力下推出UML(Unified Modeling Language)统一建模语言。

UML的目标是以面向对象图的方式来描述任何类型的系统,具有很宽的应用领域。其中最常用的是建立软件系统的模型,但它同样可以用于描述非软件领域的系统,如机械系统、企业机构或业务过程,以及处理复杂数据的信息系统、具有实时要求的工业系统或工业过程等。总之,UML是一个通用的标准建模语言,可以对任何具有静态结构和动态行为的系统进行建模。

1996年,一些机构将UML作为其商业策略已日趋明显。UML的开发者得到了来自公众的正面反应,并倡议成立了UML成员协会,以完善、加强和促进UML的定义工作。当时的成员有DEC、HP、I-Logix、 Itellicorp、 IBM、ICON Computing、MCI Systemhouse、Microsoft、Oracle、Rational Software、TI以及Unisys。1997年,UML被对象管理组织(OMG)正式确定为国际标准。

目前,UML已经成为软件架构的核心工具,随之产生的IBM Rational和微软VSTS等工具也成为主流的软件开发工具。在Rational公司2003年被IBM收购后,Rumbaugh博士一直担任IBM建模工具的核心架构师,并成为享誉全球的软件开发方法学大师。

责任编辑:佚名 来源: 51CTO.com
相关推荐

2023-05-30 18:26:49

ZOMBIES软件开发

2010-06-18 10:27:41

UML软件开发

2010-06-17 17:22:46

UML软件开发

2011-05-19 08:57:41

软件开发项目

2010-06-11 13:45:30

UML建模

2021-11-02 20:39:35

数字化

2009-08-10 19:23:02

服务与业务融合IT运维管理广通信达科技

2021-02-05 15:01:40

开发软件职位

2010-06-18 10:21:01

UML建模

2010-06-18 10:48:05

UML面向对象软件开发

2010-07-05 11:54:54

RationalJazz需求管理

2010-06-10 12:19:07

UML2.0

2010-06-09 12:36:30

UML业务建模实例

2011-12-26 15:19:20

聚合

2011-05-12 11:28:40

软件开发

2023-01-09 16:08:19

2010-06-08 13:52:11

UML技术

2010-01-14 19:34:09

云计算IBMRational

2010-06-12 15:41:28

UML建模

2024-04-02 06:03:00

GenAI软件开发人工智能
点赞
收藏

51CTO技术栈公众号