

软件架构为软件系统提供了一个结构、行为和属性的高级抽象,由构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。软件架构不仅指定了系统的组织结构和拓扑结构,并且显示了系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原则。
l 管道/过滤器模式:独立输入输出,简单合成、便于维护、支持并行;需要协调数据流、需要过滤器完成数据解析与合成
l 面向对象模式:高度模块化、封装、继承、灵活;对象间的调用需要知道对象的标识
l 事件驱动模式:支持重用、扩展型好、简化代码;自身对系统的控制能力弱、不能很好解决数据交换问题、逻辑复杂化
l 分层模式:有利分解、逐级抽象、可扩展、支持复用;并非所有系统都层次清楚、层次多导致性能下降
l 知识库模式:知识源、黑板数据结构、控制
l 客户机/服务器模式:客户机与服务器分离。二层C/Sà三(N)层C/SàB/S
l 总体目标:最大化复用、复杂问题简单化、灵活的扩展型
l 模式与架构设计的区别:模式是领域无关的,解决某些抽象问题;系统架构是领域相关的。
l 数据库访问中间件:ODBC\JDBC
l 远程过程调用:RPC
l 面向消息中间件:MOM\MQSeries
l 分布式对象中间件:CORBA \RMI\EJB\DCOM
l 事务中间件:Tuxedo\OTM
| 各省软考办 | ||||||||||