首页 > 知识点讲解
       软件架构的模式
知识路径: > 信息技术知识 > 信息系统建设与开发 > 软件架构 > 软件架构的模式 > 
被考次数:8次     被考频率:中频率     总体答错率:54%     知识难度系数:     
相关知识点:5个      
        软件架构的模式是经过实践证明的、可重复使用的软件架构设计策略,为粗粒度的软件重用提供了可能。它描述了某一特定应用领域中系统的组织方式,反映了领域中众多系统所共有的结构和语义特性,描述了将各个模块和子系统有效地组织成一个完整系统的解决方案。常见的软件架构模式如下。
               管道/过滤器模式
               每个组件都有一组输入/输出,组件读取输入的数据流,经过内部处理后,产生输出的数据流,该过程主要完成输入流的变换及增量计算。组件称为过滤器,连接器称为数据流传输的管道。管道/过滤器输出的正确性并不依赖于过滤器进行增量计算过程的顺序。典型应用包括批处理系统。管道/过滤器模式如下图所示。
               
               管道/过滤器模式
               优点:
               .体现了各功能模块的“黑盒”特性及高内聚、低耦合的特点。
               .支持软件功能模块的重用。
               .便于系统维护。新的过滤器可以加到现有系统中,旧的可以由改进的过滤器替换。
               .支持某些特定的分析,如吞吐量计算、死锁检测等。
               .支持并行操作,每个过滤器可以作为一个单独的任务完成。
               缺点:
               .通常导致系统处理过程的成批操作。
               .需要设计者协调两个相对独立但又存在关系的数据流。
               .可能需要每个过滤器自己完成数据解析和合成工作(如加密和解密),从而导致系统性能下降,并增加了过滤器具体实现的复杂性。
               面向对象模式
               面向对象模式建立在数据抽象和面向对象的基础上,将数据的表示方法及其相应操作封装在更高抽象层次的数据类型或对象中。
               面向对象模式的典型应用是基于组件的软件开发(CBD)。面向对象模式如下图所示。
               
               面向对象模式
               优点:
               .高度模块化。
               .封装功能实现了数据隐蔽。
               .继承性提供了一种实现代码共享的手段。
               .提供了系统的灵活性,便于维护及扩充。
               缺点:
               .对象之间的调用需要知道所调用对象的标识。如果对象的标识发生改变,就必须通知所有调用该对象的对象,否则系统可能无法正常运行。
               事件驱动模式
               事件驱动模式的基本原理是组件并不直接调用过程,而是触发一个或多个事件。系统中的其他组件可以注册相关的事件,在触发一个事件时,系统会自动调用注册了该事件的组件过程,即触发事件会导致另一组件中过程的调用。
               使用事件驱动模式的典型系统包括各种图形界面应用。
               优点:
               .支持软件重用,容易实现并发处理。
               .具有良好的可扩展性,通过注册可引入新的组件,而不影响现有组件。
               .可以简化客户代码。
               缺点:
               .组件削弱了自身对系统的控制能力。一个组件触发事件时,并不能确定响应该事件的其他组件及各组件的执行顺序。
               .不能很好地解决数据交换问题。
               .使系统中各组件的逻辑关系变得更加复杂。
               分层模式
               分层模式采用层次化的组织方式,每一层都为上一层提供服务,并使用下一层提供的功能。这种模式允许将一个复杂问题逐步分层实现。层次模式中每一层最多只影响两层,只要给相邻层提供相同的接口,就允许每层用不同的方法实现,以充分支持软件复用。
               分层模式的典型应用是分层通信协议,如ISO/OSI的七层网络模型。此模式也是通用应用架构的基础模式。
               分层模式示意图如下图所示。
               
               分层模式
               客户/服务器模式
               客户/服务器(C/S)模式是基于资源不对等,为实现共享而提出的。C/S模式将应用一分为二,服务器端(后台)负责数据管理和事务处理,客户端(前台)完成与用户的交互任务。
               C/S模式示意图如下图所示。
               
               C/S模式
               C/S模式中客户端和服务器端分离,允许网络分步操作,适用于分布式系统。为了解决客户端的访问问题,发展形成了浏览器/服务器(B/S)模式;为了解决服务器端的问题,发展形成了三层(多层)C/S模式,即多层应用架构。
 
本知识点历年真题:
隶属试卷 题号/题型 题干 难度系数/错误率
   2022年下半年
   系统集成项目管..
   上午试卷 综合知识
第13题
选择题
关于软件架构的描述,正确的是:()。

62%
   2018年上半年
   系统集成项目管..
   上午试卷 综合知识
第16题
选择题
在典型的软件架构模式中,( )模式是基于资源不对等,为实现共享而提出的。

51%
>>  更多  本知识点历年真题
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有