首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 软件时空 > 软件相关 > 软件体系结构与软件架构解析
【标  题】:软件体系结构与软件架构解析
【关键字】:
【来  源】:http://blog.csdn.net/pmlthy/archive/2007/04/14/1564436.aspx

软件体系结构与软件架构解析

软件体系结构与软件架构的中文翻译都是英文Software Architecture。两者都使用一样的定义,如IEEE的“一个系统的基础组织,包含各个构件、构件互相之间与环境的关系,还有指导其设计和演化的原则。”[IEEE-2000]
为了找到两者的区别,得先从应用的环境入手。我们利用网站搜索引擎对这个领域的常用关键词进行了检索,搜索区域分为开发者网站、所有网站、学术网站,结果如下(检索日期2007-04-08):
关键词
IBM开发者
微软
Google
百度
中国知网
软件体系结构
177
9,041
79,500
123,000
368
软件架构
233
10,478
236,000
462,000
56
软件体系架构
15
998
13,300
8,530
5
架构师
2,027
7,656
175,000
121,000
18
架构设计师
287
3,607
6,990
79,600
3
http://www-128.ibm.com/developerworks/cn
http://www.miscrosoft.com/china
google.com 采用精确匹配。“架构师”改为“软件架构师”,“架构设计师”改为“软件架构设计师”减少领域差异
baidu.com 采用精确匹配。“架构师”改为“软件架构师”,“架构设计师”改为“软件架构设计师”减少领域差异
http://www.cnki.net/index.htm采用精确匹配。中国期刊全文数据库(2000-2007
结果表明,在软件开发者和软件应用者来说,倾向于使用“软件架构”,在一定程度上接受“软件体系结构”。大家对软件架构的设计人员,“架构师”得到广泛的认同。对于学术界,普遍使用“软件体系结构”,对架构师几乎没有关注。Software Architecture是一个实践性非常强的领域,统计表明理论和实践的鸿沟还是存在的。
其次,我们从词源探讨“体系”“结构”“架构”的解释[字典-2001]
  • 体系:若干事物互相联系而构成的一个整体。思想~ | 工业~
  •  结构:①建筑物承受重量和外力的部分及其制造。按材料分有钢结构、木结构、砖石结构、框架结构、砖混结构等。按形式分有悬索结构、拱结构等。②构成整体的各个部分及其结合方式。经济~│文章~。③文艺作品的内部构造。即作品的各部分(包括内容和形式)之间有机的组织联系。
  •  架构:①建造;构筑。②框架;支架。③比喻事物的组织、结构、格局。市场~│故事~庞大
通过以上分析,我们不难看出学术界为什么用“软件体系结构”。首先,体系结构的中文定义完全符合IEEE等的定义。强调整体与部分,部分与部分的关系;研究系统构成的方法学;提倡多角度研究系统。其次,从学科地位讲,作为一门独立软件子学科,和硬件学科(计算机组织与体系结构)直接对应。
从工程实践需要看,软件架构更能体现系统构成与相关技术。RUP过程或软件生产线关注的软件架构并不注重原理及表示,而是由结构和技术相结合的形成框架。
软件架构在中文中很容易与软件框架(Software Framework)混淆,对于一个应用的软件框架通常称为应用程序框架(Application Framework)。框架是为了构建完整的应用而必须详细阐述的一种程序结构[Johnson-88]。框架在RUP和软件产品线开发过程中是一个非常重要的过程。RUP中框架是细化阶段的一个制品,软件产品生产线中是一组应用共享的程序框架。
目前,没有文献表明软件体系结构与软件架构的差别。如果你强调方法论,应使用软件体系结构。强调软件开发实践,应使用软件架构。
 
[IEEE-2000] IEEE 1471-2000, IEEE Recommended Practice for Architectural Descriptions of Software Intensive Systems
[字典-2001] 新华词典,2001年修订版. 商务印书社 2005 北京
[Johnson-88] Ralph E.Johnson & Brian Foote. Designing reusable classes. Journal of Object-Oriented Programming 1,3(June/July 1988),22-35
 
LoadRunner常用函数(一):【上一篇】
源代码和技术资料站点、编程工具:【下一篇】
【相关文章】
没有相关文章
【随机文章】
  • 用gdb调试子进程
  • 《神话》法师
  • 《魔兽世界》女生对部落的爷们儿说
  • 建立文件交换功能的脚本(一)
  • C#学习笔记(4月2日)
  • stl 容器(2)
  • ADO数据库操作的C++封装
  • 创建自定义 RMI 套接字工厂(ZZ)
  • 彩色验证码
  • 280R坏掉了之历险记
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.