批处理风格的每一步处理都是独立的.并且每一步是顺序执行的.只有当前一步处理完后.后一步处理才能开始.数据传送在步与步之间作为一个整体.(组件为一系列固定顺序的计算单元,组件间只通过数据传递交互。每个处理步骤是一个独立的程序,每一步必须在前一步结束后才能开始,数据必须是完整的,以整体的方式传递)
批处理的典型应用:
l 经典数据处理;
l 程序开发;
l Windows下的BAT程序就是这种应用的典型实例。
批处理风格与管道过滤器风格比较:
l 共同点:把任务分成一系列固定顺序的计算单元(组件).组件间只通过数据传递交互。
l 区别:批处理是全部的、高潜伏性的,输入时可随机存取,无合作性、无交互性.而管道过滤器是递增的,数据结果延迟小,输入时处理局部化,有反馈、可交互。
.
每个构件都有一组输入和输出,构件读输入的数据流,经过内部处理,然后产生输出数据流。这个过程通常通过对输入流的变换及增量计算来完成,包括通过计算和增加信息丰富数据,通过浓缩和删除精炼数据,通过改变记录方式转化数据,递增地转化数据等。在输入被完全消费之前,输出便产生了。这里构件被称为过滤器,连接件就是数据流传输的管道,将一个过滤器的输出传到另一个过滤器的输入
l 优点:
1) 使得软构件具有良好的隐蔽性和高内聚.低耦合的特点
允许设计者将一个系统的整体输入/输出行为理解为各个独立过滤器行为的简单合成
2) 支持软件重用。只要提供适合在两个过滤器之间传送的数据.任何两个过滤器都可被连接起来;
3) 系统维护和性能增强简单:新的过滤器可以添加到现有系统中,或者利用改进的过滤器替换老的过滤器;
4) 支持并行执行:每个过滤器是作为一个单独的任务完成.因此可与其他任务并行
5) 方便系统分析:例如,吞吐量、死锁等
l 缺点:
1) 通过长的管道时会导致延迟的增加
2) 通常导致进程成为批处理的结构。这是因为虽然过滤器可增量式地处理数据.但它们是独立的.所以设计者必须将每个过滤器看成一个完整的从输入到输出的转换。
3) 不适合处理交互的应用。当需要增量地显示改变时.这个问题尤为严重。
4) 因为在数据传输上没有通用的标准,每个过滤器都增加了解析和合成数据的工作.这样就导致了系统性能下降.并增加了编写过滤器的复杂性。
5) 在维护或响应两个分离但相关的数据流时,利用管道/过滤器方式不易。
典型的管道/过滤器风格有:UNIX下的Shell编程。UNIX既提供一种符号以连接各组成部分(进程),又提供某种进程运行时机制以实现管道。另一个例子:传统的编译器。传统的编译器中,一个阶段(包括词法分析、语法分析、语义分析和代码生成)的输出是另一个阶段的输入。
分享到:
相关推荐
本资源"软件架构风格整理及总结"提供了对各种经典架构风格的深入理解和学习材料,旨在帮助专业人士,尤其是架构师,提升他们在设计高效、可扩展和维护性良好的系统方面的技能。 首先,我们要理解什么是软件架构风格...
本文将重点探讨两种常见的软件架构风格:数据流风格和调用/返回风格。 首先,我们来看数据流风格。数据流风格主要分为批处理序列和管道/过滤器两种形式。批处理序列风格适用于处理大量数据,如经典数据处理、程序...
1. **微服务架构**:一种架构风格,将单个应用程序开发为一组小型服务,每项服务独立部署,并通过轻量级通信机制相互配合。 2. **分布式系统**:由多台计算机组成的一个系统,这些计算机之间通过网络互相通信并协作...
软件系统建模包括系统需求、建模的作用和意义、定义问题(目标、功能、性能等)与归结模型(静态结构模型、动态行为模型、物理模型)、结构化系统建模、数据流图、面向对象系统建模、统一建模语言(UML)、数据库...
* 软件架构风格:数据流风格、管道/过滤器风格、调用/返回风格、层次结构风格、独立构件风格等 * 软件架构设计的步骤和方法 * 软件架构设计的优点和缺点 三、系统设计 * 处理流程设计 * 人机界面设计 * 文件涉及 *...
- 数据流风格:典型的批处理系统,构件依次读取数据、处理并输出。 - 管道过滤器风格:构件间通过数据流进行通信,前一构件的输出作为后一构件的输入。 - 调用/返回风格:主程序直接调用子程序,显式调用,如主...
- **数据流风格**: - 批处理序列:按顺序处理一系列数据。 - 管道/过滤器:数据依次通过一系列处理单元。 - **调用/返回风格**: - 主程序/子程序:主程序调用子程序执行特定任务。 - 数据抽象和面向对象:...
"2023年软考系统架构师案例分析知识点整理" 系统规划是系统架构师案例分析的重要组成部分,涉及系统项目的提出预可行性分析、系统...软件架构风格包括数据流风格、调用/返回风格、独立构件风格、事件驱动的系统等。
- **连接件**: 数据流传输的管道。 - **工作流程**: 每个构件接收数据输入,经过内部处理后产生数据输出。 - **应用场景**: 数据处理流水线。 5. **数据仓储风格** - **特点**: 数据驱动,侧重于业务功能。 - ...
软件架构风格是指某一特定应用领域中系统组织方式的惯用模式,以结构组织模式定义了一个系统家族。常见的架构风格有管道和过滤器模式、数据抽象/面向对象模式、基于事件的模式、分层模式、仓库模式、解释器模式、...
这种风格非常适合处理大量的连续数据流。 - **数据抽象和面向对象组织**:数据及其操作被封装在一个抽象数据类型或对象中,对象通过函数和过程调用来进行交互。 - **基于事件的隐式调用**:构件不直接调用过程,而是...
#### 十二、软件架构风格 **12.1 架构风格定义** - **组织方式**:系统组件构成。 - **惯用模式**:通用设计方法。 #### 十三、企业服务总线功能 **13.1 ESB主要功能** - **服务位置透明性**:服务位置无关。 - *...
- 架构风格:如数据流风格、调用/返回风格、独立构件风格等,它们定义了系统的基本构造和交互方式。 3. **设计模式**: - 设计模式概念:解决问题的通用解决方案,可复用和适应多种情况。 - 分类:创建型、结构...
在设计阶段,要根据需求选取合适的软件体系架构风格,并通过迭代反馈过程提取有效构件,构建新的软件架构;文档化则制作用户手册;复审是发现和修正设计中的错误;制作阶段进行系统构件的合成、组装和测试;最后进行...