全球旧事资料 分类
SoftwareArchitectureSoftwareE
gi
eeri
g
20世纪60年代随着计算机在工业、商业、科研和国防等领域的广泛应用计算机程序的规模愈来愈大其复杂性也急剧增加软件开发和维护过程遇到了一系列难以解决的严重问题如软件价格高、难以控制开发进度、工作量估计困难、软件质量低、错误多、且修改和维护十分困难等等针对这种所谓的“软件危机”现象1968年在德国Garmish召开的NATO北大西洋公约组织计算机科学会议上FBauer首先提出“软件工程”概念其目标是采用工程的概念、原理、技术和方法来开发与维护软件把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术和方法结合起来从而解决或缓解软件危机。在另一方面软件危机也促使人们深入探讨程序和程序开发过程的规律建立严密的理论以期能用来指导软件开发实践从而促进了软件方法学特别是形式化方法的研究。
一、起源
软件系统规模在迅速扩大的同时,软件开发方法也经历了一系列的变革。在此过程中,软件架构也由最初模糊的概念发展到一个渐趋成熟的理论和技术。20世纪70年代以前,尤其是在以ALGOL68为代表的高级语言出现以前,软件开发基本上都是汇编程序设计,此阶段系统规模较小,很少明确考虑系统结构,一般不存在系统建模工作。70年代中后期,由于结构化开发方法的出现与广泛应用,软件开发中出现了概要设计与详细设计,而且主要任务是数据流设计与控制流设计,因此,此时软件结构已作为一个明确的概念出现在系统的开发中。20世纪80年代初到90年代中期,是面向对象开发方法兴起与成熟阶段。由于对象是数据与基于数据之上操作的封装,因而在面向对象开发方法下,数据流设计与控制流设计统一为对象建模。同时,面向对象方法还提出了一些其他的结构视图,如在OMT方法中提出了功能视图、对象视图与动态视图;后来提出了类视图、对象视图、状态迁移图、交互作用图、模块图、进程图;而1997年出
f现的统一建模语言切UML则从功能模型、静态模型、动态模型、配置模型描述应用系统的结构。20世纪90年代以后进入基于构件的软件开发阶段,该阶段以过程为中心,强调软件开发采用构件化技术和软件架构技术,要求开发出来的软件具备很强的自适应性、互操作性、可扩展性和重用性。此阶段中,软件架构已经作为一个明确的文档和中间产品存在于软件开发过程中。同时,软件架构作为一门学科逐渐得到人们的重视,并成为软件工程领域的研究热点。纵观软件架构技术的发展过程。从最初的r
好听全球资料 返回顶部