免费智能真题库 > 历年试卷 > 系统集成项目管理工程师 > 2018年上半年 系统集成项目管理工程师 上午试卷 综合知识
  第16题      
  知识点:   软件架构的模式   软件架构
  关键词:   架构模式   软件架构        章/节:   信息系统建设与开发       

 
在典型的软件架构模式中,( )模式是基于资源不对等,为实现共享而提出的。
 
 
  A.  管道/过滤器
 
  B.  事件驱动
 
  C.  分层
 
  D.  客户/服务器
 
 
 

 
  第7题    2011年下半年  
   72%
软件构架模式描述了如何将各个模块和子系统有效地组织成一个完整的系统。 诸如Word和Excel这类图形界面应用软件所采用的架构模式..
  第17题    2010年上半年  
   44%
为了解决 C/S 模式中客户机负荷过重的问题,软件架构发展形成了(17)模式。
  第23题    2011年上半年  
   75%
某公司有一台Linux文件服务器,多台Windows客户端和Linux客户端。要求任意一个客户端都可以共享服务器上的文件,并且能够直接存取..
   知识点讲解    
   · 软件架构的模式    · 软件架构
 
       软件架构的模式
        软件架构的模式是经过实践证明的、可重复使用的软件架构设计策略,为粗粒度的软件重用提供了可能。它描述了某一特定应用领域中系统的组织方式,反映了领域中众多系统所共有的结构和语义特性,描述了将各个模块和子系统有效地组织成一个完整系统的解决方案。常见的软件架构模式如下。
               管道/过滤器模式
               每个组件都有一组输入/输出,组件读取输入的数据流,经过内部处理后,产生输出的数据流,该过程主要完成输入流的变换及增量计算。组件称为过滤器,连接器称为数据流传输的管道。管道/过滤器输出的正确性并不依赖于过滤器进行增量计算过程的顺序。典型应用包括批处理系统。管道/过滤器模式如下图所示。
               
               管道/过滤器模式
               优点:
               .体现了各功能模块的“黑盒”特性及高内聚、低耦合的特点。
               .支持软件功能模块的重用。
               .便于系统维护。新的过滤器可以加到现有系统中,旧的可以由改进的过滤器替换。
               .支持某些特定的分析,如吞吐量计算、死锁检测等。
               .支持并行操作,每个过滤器可以作为一个单独的任务完成。
               缺点:
               .通常导致系统处理过程的成批操作。
               .需要设计者协调两个相对独立但又存在关系的数据流。
               .可能需要每个过滤器自己完成数据解析和合成工作(如加密和解密),从而导致系统性能下降,并增加了过滤器具体实现的复杂性。
               面向对象模式
               面向对象模式建立在数据抽象和面向对象的基础上,将数据的表示方法及其相应操作封装在更高抽象层次的数据类型或对象中。
               面向对象模式的典型应用是基于组件的软件开发(CBD)。面向对象模式如下图所示。
               
               面向对象模式
               优点:
               .高度模块化。
               .封装功能实现了数据隐蔽。
               .继承性提供了一种实现代码共享的手段。
               .提供了系统的灵活性,便于维护及扩充。
               缺点:
               .对象之间的调用需要知道所调用对象的标识。如果对象的标识发生改变,就必须通知所有调用该对象的对象,否则系统可能无法正常运行。
               事件驱动模式
               事件驱动模式的基本原理是组件并不直接调用过程,而是触发一个或多个事件。系统中的其他组件可以注册相关的事件,在触发一个事件时,系统会自动调用注册了该事件的组件过程,即触发事件会导致另一组件中过程的调用。
               使用事件驱动模式的典型系统包括各种图形界面应用。
               优点:
               .支持软件重用,容易实现并发处理。
               .具有良好的可扩展性,通过注册可引入新的组件,而不影响现有组件。
               .可以简化客户代码。
               缺点:
               .组件削弱了自身对系统的控制能力。一个组件触发事件时,并不能确定响应该事件的其他组件及各组件的执行顺序。
               .不能很好地解决数据交换问题。
               .使系统中各组件的逻辑关系变得更加复杂。
               分层模式
               分层模式采用层次化的组织方式,每一层都为上一层提供服务,并使用下一层提供的功能。这种模式允许将一个复杂问题逐步分层实现。层次模式中每一层最多只影响两层,只要给相邻层提供相同的接口,就允许每层用不同的方法实现,以充分支持软件复用。
               分层模式的典型应用是分层通信协议,如ISO/OSI的七层网络模型。此模式也是通用应用架构的基础模式。
               分层模式示意图如下图所示。
               
               分层模式
               客户/服务器模式
               客户/服务器(C/S)模式是基于资源不对等,为实现共享而提出的。C/S模式将应用一分为二,服务器端(后台)负责数据管理和事务处理,客户端(前台)完成与用户的交互任务。
               C/S模式示意图如下图所示。
               
               C/S模式
               C/S模式中客户端和服务器端分离,允许网络分步操作,适用于分布式系统。为了解决客户端的访问问题,发展形成了浏览器/服务器(B/S)模式;为了解决服务器端的问题,发展形成了三层(多层)C/S模式,即多层应用架构。
 
       软件架构
        随着嵌入式技术的发展,特别是在后PC时代,嵌入式软件系统得到了极大的丰富和发展,形成了一个完整的软件体系,如下图所示。这个体系自底向上由3部分组成,分别是嵌入式操作系统、支撑软件和应用软件。
        
        嵌入式系统的软件架构
        嵌入式操作系统(Embedded Operating System,EOS)由操作系统内核、应用程序接口、设备驱动程序接口等几部分组成。嵌入式操作一般采用微内核结构。操作系统只负责进程的调度、进程间的通信、内存分配及异常与中断管理最基本的任务,其他大部分的功能则由支撑软件完成。
        嵌入式系统中的支撑软件由窗口系统、网络系统、数据库管理系统及Java虚拟机等几部分组成。对于嵌入式系统来讲,软件的开发环境大部分在通用台式计算机和工作站上运行,但从逻辑上讲,它仍然被认为是嵌入式系统支撑软件的一部分。支撑软件一般用于一些浅度嵌入的系统中,如智能手机、个人数字助理等。
        嵌入式系统中的应用软件是系统整体功能的集中体现。系统的能力总是通过应用软件表现出来的。
   题号导航      2018年上半年 系统集成项目管理工程师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第16题    在手机中做本题