下载此文档

软件架构和架构师.doc


文档分类:IT计算机 | 页数:约4页 举报非法文档有奖
1/4
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/4 下载此文档
文档列表 文档介绍
论软件架构师的角色和培养:架构与架构师
随着软件系统的规模越来越大,复杂程度越来越高,软件设计的核心已经超越了传统的“算法+数据结构=程序”的设计模式,取而代之的是对系统的总体结构的设计和规范[1]。软件架构在软件系统中充当着重要的角色,软件架构也是软件工程中迅速发展的一个研究实践领域,有很多的文献[2~4]讨论了如何构架一个好的软件系统。软件架构师作为软件架构的设计者是关系到软件成败的关键因素。然而,有关软件架构师的角色定位以及教育培养问题,仍然比较模糊,没有一致的结论
作者近年来在软件架构的理论研究和实践方面做了一些工作,也取得了一定的成绩。负责起草了全国计算机技术与软件专业技术资格(水平)考试中的系统分析师和系统架构设计师考试大纲,主编了有关考试教材。本文主要讨论软件架构师的角色和培养问题。文章按如下方式组织:第1节介绍软件架构和软件架构师的定义。第2节讨论软件架构师在整个软件项目中所充当的角色,包括软件架构师的职责、软件架构师与系统分析师(系统分析员)的区别。第3节研究软件架构师的资格,包括知识体系和任职条件。第4节主要讨论如何评估软件架构师的工作。第5节研究软件架构师的培养和认证问题。第6节是全文的总结。
1 软件架构与软件架构师
软件架构
架构(architecture)的英文本意是来源于建筑行业的建筑艺术、建筑风格和结构,引入到软件领域后,并没有一个统一的定义。IEEE-Std-1471-2000认为[5]:架构是一个系统的基本组织,它蕴含于系统的构件中、构件之间的相互关系中、构件与环境的相互关系中、以及呈现于其设计和演化原则中。其实,软件架构(Software architecture,软件体系结构),但是直到20世纪90年代初才开始流行起来。为了提高软件需求和软件设计的的质量,软件工程界提出了需求分析工程技术和各种软件建模技术。但是在需求和设计之间仍然存在一条很难逾越的鸿沟,即缺乏能够反映做决策的中间过程,从而很难有效地将需求转化为相应的设计。为此,软件架构的概念应运而生,并试图在软件需求与软件设计之间架起一座桥梁,着重解决软件系统的结构和需求向实现平坦过渡的问题[6]。由于领域的不同,学术研究和应用实践的不同,人们对软件架构也有不同的理解和定义[7~9]。尽管各种定义都从不同的角度关注软件架构,但其核心内容都是软件系统的结构,并且都涵盖了如下一些实体:构件、构件之间的交互关系、配置、构件和连接件构成的拓扑结构、设计原则与指导方针。
在此,作者对软件架构的理解和认识可用定义1进行描述。
定义1(软件架构) 软件架构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。软件架构不仅指定了系统的组织结构和拓扑结构,并且显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。
目前,软件架构的研究已发展为软件工程领域的一个独立学科分支,具有比较严格的理论基础和工程指导原则[10]。软件架构已经成为软件工程领域的研究热点以及大型软件系统与软件产品线开发中的关键技术之一。有许多相关的研究人员对软件架构描述语言[11~13],软件架构的描述与表示[14,1

软件架构和架构师 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数4
  • 收藏数0 收藏
  • 顶次数0
  • 上传人szh187166
  • 文件大小0 KB
  • 时间2013-01-09