专注在线职业教育23年
下载APP
小程序
希赛网小程序
导航

预约成功后,不错过重要时期

点击预约

系统架构设计师考试培训软件架构的定义

责编:bjmylgd 2013-12-26

第5章软件架构设计

Shaw和Garlan在他们划时代的着作中以如下方式讨论了软件的体系结构:从第一 个程序被划分成模块开始,软件系统就有了体系结构。现在,有效的软件体系结构及其 明确的描述和设计,已经成为软件工程领域中重要的主题。

由于历史原因,研究者和工程人员对Software Architecture简称SA的翻译不一样, 本书中软件"体系结构"和"架构"具有相同的含义。

5.1软件架构概念

5.1.1软件架构的定义

Bass、Clements和Kazman对于这个难懂的概念给出了如下的定义:

一个程序和计算系统软件体系结构是指系统的一个或者多个结构。结构中包括软件 的构件,构件的外部可见属性以及它们之间的相互关系。

体系结构并非可运行软件。确切地说,它是一种表达,使软件工程师能够:

(1)分析设计在满足规定需求方面的有效性。

2)在设计变更相对容易的阶段,考虑体系结构可能的选择方案。

(3)降低与软件构造相关联的风险。

上面的定义强调在任意体系结构表述中"软件构件"的角色。在体系结构设计的环 境中,软件构件可以简单到程序模块或者面向对象的类,也可以扩充到包含数据库和能 够完成客户与服务器网络配置的"中间件".

软件体系结构的设计通常考虑了设计金字塔中的两个层次--数据设计和体系结 构设计。数据设计使我们表示出传统系统中体系结构的数据构件和面向对象系统中类的 定义(封装了属性和操作),体系结构设计则主要关注软件构件的结构、属性和交互作用。

建立体系结构层的"内聚的、良好设计的表示"所需的方法,其目标是提供一种导 出体系结构设计的系统化方法,而体系结构设计是构建软件的初始蓝图。


更多资料
更多课程
更多真题
温馨提示:因考试政策、内容不断变化与调整,本网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准!
相关阅读
查看更多

加群交流

公众号

客服咨询

考试资料

每日一练