定义:为软件系统提供了一个结构、行为和属性的高级抽象,并由构成系统的元素的描述及元素的相互作用、元素集成的模式以及这些模式的约束组成。软件架构不仅确定了系统的组织结构和拓扑结构,还显示了系统需求和构成系统的各元素之间的对应关系,提供了一些设计决策的基本原则。
典型架构
管道/过滤器模式
面向对象模式
事件驱动模式:事件触发
分层模式
知识库模式
客户机/服务器模式(C/S):
软件架构的设计方法:(目标:最大化复用、复杂问题简单化、灵话的扩展
性)
软件架构分析与评估:关系数据库与对象数据库的选择问题、用户界面选择使
用HTML、灵活性和性能的考虑、技术的选择、聘请经验丰富的架构设计师。
软件中间件(Middleware)
数据库访问中间件:例如 ODBC,JDBC 等;
远程过程调用(Remote Procedure Call,RPC)
面向消息中间件(Message-Oriented Middleware,MOM)例如IBM的MQSeries 等;
分布式中间件:例如 OMG 的 CORBA,SUN 的 RMI/EJB,微软
的DCOM 等。
事务中间件,也称事务处理监控器(Transaction Processing Monitor,
TPM):例如 BEA 的 Tuxedo 等。