《软件架构理论与实践》 —1.3.2 概念体系和核心技术形成阶段(1991—2000)

举报
华章计算机 发表于 2019/12/18 10:49:14 2019/12/18
【摘要】 本节书摘来自华章计算机《软件架构理论与实践》一书中第1章,第1.3.2节,作者是李必信 廖力 王璐璐 孔祥龙 周颖。

1.3.2 概念体系和核心技术形成阶段(1991—2000)

基于工程实践经验,研究者对软件开发中所采用的结构描述方法进行了反思,软件架构概念作为一个独立的研究领域出现是在20世纪90年代,Winston W. Royce 与 Walker Royce 在1991年的一篇文章中首次对软件架构进行了定义[8]。1992年D.E.Perry与A.L.Wolf对软件架构进行了阐述,创造性地提出了著名的“{elements, forms, rationale} = software architecture”公式[9],使之成为后续软件架构概念发展的基础。与此同时,大量关于软件架构的研究陆续展开并卓有成效,其中最著名的是卡内基–梅隆大学软件工程研究所(CMU/SEI)进行的研究。1996年CMU/SEI的Mary Shaw和David Garlan出版了《Software Architecture: Perspectives on an Emerging Discipline》[10],其对软件架构概念的内涵与外延进行了详尽阐述,这对软件架构概念的形成起到了至关重要的作用。

从1995年起,软件架构研究领域开始进入快速发展阶段,来自于工业界与学术界的研究成果大量出现。在这一阶段中,研究关注点主要集中于对前一阶段研究成果进行整合与完善,使得软件架构作为一个技术领域日渐成熟。在此阶段中,对软件架构概念的探讨越加深入,Booch、Rumbaugh和Jacobson从另一个角度对软件架构的概念进行了全新的诠

释[11],认为架构是一系列重要决策的集合。此阶段还提出了第一个由软件工程研究机构提出的软件架构实践方法体系—SAAM[12];企业界也提出并完善了多视角软件架构表示方法以及针对软件架构的特定设计模式[13–14]。Siemens、Nokia、Philips、Nortel、Lockheed Martin、IBM,以及其他一些大型软件开发组织开始关注软件架构,并联手进行了软件产品线架构的重用性调查。Rechtin 与 Mark Maier在1998年出版的《The Art of Systems Architecting》一书中很好地阐述了系统与软件的关系[15]。

2000年,IEEE 1471—2000的“软件密集型系统架构描述的推荐实践”发布[16],第一次定义了软件架构的形式化标准。这标志着软件架构理论体系已基本建立,并已具备普及应用的基础。

这一阶段最重要的成果之一就是软件组件化技术,通过沿用20世纪的工业组件概念,提升了软件重用能力和质量。

软件技术发展在几十年里经历了面向机器、面向过程、面向对象、面向组件的发展历程,每个阶段较于前一个阶段在关注点和思维层次上都有一定的升华,并解决了某类问题,对当时的软件发展起到了重要作用。

首先,业务组件之间相对独立,并且具有可组装性和可插拔性。每个组件的运行仅依赖于平台或者容器,组件与组件之间不存在直接的耦合关系。同时,组件与组件之间又并非绝对的独立。组件经过组装后可以与其他组件进行业务上的交互。

组件化开发并不等同于模块化开发。模块化开发只是在逻辑上做了切分,物理上(开发出的系统代码)通常并没有真正意义上的隔离。组件化也不等同于应用集成,应用集成是将一些基于不同平台或不同方案的应用软件和系统有机地集成到一个无缝的、并列的、易于访问的单一系统中,以建立一个统一的综合应用。组件化应比模块化更独立,但比应用集成结合得更加紧密。


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。