在所有对于软件体系结构的定义中,我认为最有代表性的就是Hayes Roth所提出的:“认为软件体系结构是一个抽象的系统规范,主要包括用其行为来描述的功能构件和构件之间的相互连接、接口和关系。”那么,什么是软件体系结构风格呢?所谓软件体系结构风格是指:“描述某一特定应用领域中系统组织方式的惯用模式。”它反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。按这种方式理解,软件体系结构风格是指:“定义了用于描述系统的术语表和一组指导构件系统的规则。”
软件体系结构风格有很多种:
(1)数据流风格,包括批处理序列,管道/过滤器形式等;
(2)调用/返回风格,包括主程序/子程序,面向对象风格,分层结构等;
(3)独立组件风格,包括进程通讯,事件系统等;
(4)虚拟机风格,包括解释器,基于规则的系统等;
(5)仓库风格,包括中心数据库系统,黑板系统等;
在这里,我只着重分析一下仓库系统:
在仓库风格中,有两种不同的构件:中央数据结构说明当前状态,独立构件在中央数据存贮上执行,仓库与外构件间的相互作用在系统中会有大的变化。
按控制策略的选取分类,可以产生两个主要的子类。若输人流中某类时间触发进程执行的选择,则仓库是传统型数据库;另一方面,若中央数据结构的当前状态触发进程执行的选择,则仓库是黑板系统。
这种风格的优点:(1)善于管理数据信息,适合大量数据的应用场
合;(2)适用于复杂的逻辑系统;(3)黑板系统模型能更容易地处理任务间的协作,系统更加灵活。数据库系统一直得到广泛应用,如企业中使用的管理信息系统、ERP软件等;黑板系统主要应用在需要复杂翻译解释的系统中,如信号处理领域中的语音和模式识别。
时间: 2024-11-06 03:45:42