软甲架构设计软件_几种常用软件架构设计指南

几种常用软件架构设计指南

软件架构(

software

architecture

)是一系列相关的抽象模式,用于指导大型

软件系统各个方面的设计。

软件架构是一个系统的草图。

软件架构描述的对象是

直接构成系统的抽象组件。

各个组件之间的连接则明确和相对细致地描述组件之

间的通讯。

在实现阶段,

这些抽象组件被细化为实际的组件,

比如具体某个类或

者对象。在面向对象领域中,组件之间的连接通常用接口来实现。

软件体系结构的定义

虽然软件体系结构已经在软件工程领域中有着广泛的应用,

但迄今为止还没

有一个被大家所公认的定义。

许多专家学者从不同角度和不同侧面对软件体系结

构进行了刻画,较为典型的定义有:

Dewayne Perry

A1ex Wo1f

曾这样定义:软件体系结构是具有一定形式的

结构化元素,即构件的集合,包括处理构件、数据构件和连接构件。处理构件负

责对数据进行加工,

数据构件是被加工的信息,

连接构件把体系结构的不同部分

组组合连接起来。

这一定义注重区分处理构件、

数据构件和连接构件,

这一方法

在其他的定义和方法中基本上得到保持。

Mary Shaw

David Garlan

认为软件体系结构是软件设计过程中的一个层次,

这一层次超越计算过程中的算法设计和数据结构设计。

体系结构问题包括总体组

织和全局控制、通讯协议、同步、数据存取,给设计元素分配特定功能,设计元

素的组织,

规模和性能,

在各设计方案间进行选择等。

软件体系结构处理算法与

数据结构之上关于整体系统结构设计和描述方面的一些问题,

如全局组织和全局

控制结构、关于通讯、同步与数据存取的协议,设计构件功能定义,物理分布与

合成,设计方案的选择、评估与实现等

Kruchten

指出,

软件体系结构有四个角度,

它们从不同方面对系统进行描述:

概念角度描述系统的主要构件及它们之间的关系;

模块角度包含功能分解与层次

结构;

运行角度描述了一个系统的动态结构;

代码角度描述了各种代码和库函数

在开发环境中的组织。

Hayes Roth

则认为软件体系结构是一个抽象的系统规范,

主要包括用其行为

来描述的功能构件和构件之间的相互连接、接口和关系。

David Garlan

Dewne Perry

1995

年在

IEEE

软件工程学报上又采用如下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值