软件=程序(运行时能提供所希望的功能和性能的指令集)+数据结构(使程序能够正确运行的数据结构)+文档(描述程序研制过程、方法及使用的文档)
"软件” ≠ 编程,它有自己的生命周期(life cycle)
1、软件体系结构建模——4+1视图模型
2、软件体系结构风格
2.1管道和过滤器
2.2数据抽象和面向对象组织
2.3基于事件的隐式调用
2.4分层系统
2.5仓库系统及知识库
2.6客户/服务器风格
C/S构架有三个主要组成部分:数据库服务器、客户应用程序和网络。
2.7三层客户/服务器风格
2.8浏览器/服务器风格(B/S)
B/S构架主要是利用不断成熟的WWW浏览器技术,结合浏览器的多种脚本语言,用通用浏览器就实现了原来需要复杂的专用软件才能实现的强大功能,并节约了开发成本。其具体结构为:浏览器/Web服务器/数据库服务器。
2.9基于层次消息总线(HMB)的构架
消息总线是系统的连接件,负责消息的分派、传递和过滤及处理结果的返回。
①消息登记:构件向消息总线登记当前该响应的消息集合,只对消息类型感兴趣,并不关心谁发出的消息
②消息分派和传递:消息总线负责消息在构件之间的传递,根据构件-消息响应登记表把消息分派到对此感兴趣的构件,并负责处理返回结果
③消息过滤:消息过滤通过阻塞构件对