Posted on 2012-06-17 18:39
魔のkyo 阅读(657)
评论(0) 编辑 收藏 引用
软件体系结构通常被称为架构,指可以预制和可重构的软件框架结构。
软件构架是一个容易理解的概念,多数工程师(尤其是经验不多的工程师)会从直觉上来认识它,但要给出精确的定义很困难。特别是,很难明确地区分设计和构架:构架属于设计的一方面,它集中于某些具体的特征。
在“软件构架简介”中,David Garlan 和 Mary Shaw 认为软件构架是有关如下层次问题的设计:“软件体系结构是软件设计过程中,超越计算中的算法设计和数据结构设计的一个层次。体系结构问题包括各个方面的组织和全局控制结构,通信协议、同步,数据存储,给设计元素分配特定功能,设计元素的组织,规模和性能,在各设计方案之间进行选择”。Garlan & Shaw模型[1]的基本思想是:软件体系结构={构件(component),连接件(connector),约束(constrain)}.其中构件可以是一组代码,如程序的模块;也可以是一个独立的程序,如数据库服务器。连接件可以是过程调用、管道、远程过程调用(RPC)等,用于表示构件之间的相互作用。约束一般为对象连接时的规则,或指明构件连接的形式和条件,例如,上层构件可要求下层构件的服务,反之不行;两对象不得递规地发送消息;代码复制迁移的一致性约束;什么条件下此种连接无效等。
一般而言,软件系统的架构(Architecture)有两个要素:
·它是一个软件系统从整体到部分的最高层次的划分。
·它是建造一个系统所作出的最高层次的、以后难以更改的,商业的和技术的决定。
参考资料:
[1]http://www.cnblogs.com/LOCKE/articles/217179.html
[2]http://baike.baidu.com/view/190551.htm#3