- 14
- 0
- 约1.48万字
- 约 95页
- 2021-09-27 发布于河北
- 举报
本资料来源第9章 软件体系结构与设计模式软件体系结构的基本概念典型的软件体系结构风格特定领域的软件体系结构分布式系统结构体系结构框架设计模式9.1 软件体系结构的基本概念什么是体系结构目前还没有一个公认的关于软件体系结构的定义,许多专家学者从不同角度对软件体系结构进行了描述。Bass、Clements和Kazman给出了如下定义:“一个程序或计算机系统的软件体系结构是指系统的一个或者多个结构。结构中包括软件的构件、构件的外部可见属性以及它们之间的相互关系。外部可见属性则是指软件构件提供的服务、性能、使用特性、错误处理、共享资源使用等。”这一定义强调在任一体系结构表述中“软件构件”的角色。9.1 软件体系结构的基本概念 Dewayne Perry和A1exander Wo1f曾这样定义:“软件体系结构是具有一定形式的结构化元素,即构件的集合,包括处理构件、数据构件和连接构件。处理构件负责对数据进行加工,数据构件是被加工的信息,连接构件把体系结构的不同部分组合连接起来。” 这一定义注重区分处理构件、数据构件和连接构件。 虽然软件体系结构的定义在变化,但其意图是清晰的。体系结构设计是一系列决策和基本原理的集合,这些决策的目标在于开发高效的软件体系结构。在体系结构设计中所强调的基本原理是系统的可理解性、可维护性和可扩展性。 9.1 软件体系结构的基本概念体系结构模式、风格和框架的概念 1.模式 软件设计模式是从软件设计过程中总结出来的,是针对特定问题的解决方案。建筑师C.Alexander对模式给出的经典定义是:每个模式都描述了一个在我们的环境中不断出现的问题及该问题解决方案的核心。在软件系统中,可以将模式划分为以下3类。(1)体系结构模式(architectural pattern):表达了软件系统的基本结构组织形式或者结构方案,包含了一组预定义的子系统,规定了这些子系统的责任,同时还提供了用于组织和管理这些子系统的规则和向导。典型的体系结构模式如OSI参考模型。9.1 软件体系结构的基本概念(2)设计模式(design pattern):为软件系统的子系统、构件或者构件之间的关系提供一个精炼之后的解决方案,描述了在特定环境下,用于解决通用软件设计问题的构件以及这些构件相互通信时的各种结构。有代表性的设计模式是Erich Gamma及其同事提出的23种设计模式。(3)惯用法(idiom):是与编程语言相关的低级模式,描述如何实现构件的某些功能,或者利用编程语言的特性来实现构件内部要素之间的通信功能。9.1 软件体系结构的基本概念2.风格 风格是带有一种倾向性的模式。同一个问题可以有不同的解决问题的方案或模式,但我们根据经验,通常会强烈倾向于采用特定的模式,这就是风格。 每种风格描述一种系统范畴,该范畴包括:(1)一组构件(如数据库、计算模块)完成系统需要的某 种功能;(2)一组连接件,它们能使构件间实现“通信”、“合作”和 “协调”;(3)约束,定义构件如何集成为一个系统;(4)语义模型,它能使设计者通过分析系统的构成成分的 性质来理解系统的整体性质。 9.1 软件体系结构的基本概念 体系结构风格定义了一个系统家族,即一个体系结构定义一个词汇表和一组约束。词汇表中包含一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的。体系结构风格反映了领域中众多系统所共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。 对体系结构风格的研究和实践为大粒度的软件复用提供了可能。9.1 软件体系结构的基本概念3.框架 随着应用的发展和完善,某些带有整体性的应用模式被逐渐固定下来,形成特定的框架,包括基本构成元素和关系。框架是特定应用领域问题的体系结构模式,框架定义了基本构成单元和关系后,开发者就可以集中精力解决业务逻辑问题。 在组织形式上,框架是一个待实例化的完整系统,定义了软件系统的元素和关系,创建了基本的模块,定义了涉及功能更改和扩充的插件位置。典型的框架例子有MFC框架和Struts框架。9.1 软件体系结构的基本概念体系结构的重要作用 体系结构的重要作用体现在以下三个方面 :(1)体系结构的表示有助于风险承担者(项目干系 人)进行交流。 (2)体系结构突出了早期设计决策。 (3)软件体系结构是可传递和可复用的模型。 9.2 典型的体系结构风格数据流风格 当输入数据经过一系列的计算和操作构件的变换形成输出数据时,可以应用这种体系结构。管道/过滤器、批处理序列都属于数据流风格。 管道/过滤器结构如下图所示。管道/过滤器结构 9.2 典型的体系结构风格 从上图可看出,管道/过滤器结构拥有一组被称为过滤器(filter)的构件,这些构件通过管道(pipe)连接,管道将数据从一个构件传送到下一个构件。
您可能关注的文档
最近下载
- 智慧物流与供应链管理-刘伟华-第7章.pptx VIP
- 2026中国贸促会直属单位招聘工作人员10人备考题库附答案详解(实用).docx VIP
- 公路路基路面养护培训ppt课件.pdf VIP
- 办公文秘面试常见问题.pdf VIP
- 第三章第二节分子晶体与共价晶体第二课时.pptx VIP
- AI Edge需求、愿景与潜在关键技术白皮书-2026.pdf VIP
- 中职学校资产管理存在的问题及对策建议思考.docx VIP
- 智慧物流与供应链管理-刘伟华-第12章.pptx VIP
- 一种超亲水不锈钢填料改性方法.pdf VIP
- 2025年高考政治课本知识背诵默写清单:逻辑与思维(背诵版).pdf VIP
原创力文档

文档评论(0)