软件体系结构第二章

1. 软件体系结构分类:结构模型、框架模型、动态模型、过程模型、功能模型

(1)结构模型:以体系结构的构件、连接件和其他概念来刻画结构,并力图通过结构来反映系统的重要语义内容,包括系统的配置、约束、隐含的假设条件、风格、性质等。

【最直观、最普遍的建模方法】

(2)框架模型:不太侧重描述结构的细节而更侧重于整体的结构。

【类似于结构模型】

(3)动态模型:研究系统的“大颗粒”的行为性质

【对结构或框架模型的补充】

(4)过程模型:研究构造系统的步骤和过程。

(5)功能模型:认为体系结构是由一组功能构件按层次组成,下层向上层提供服务。

【有点像计网的分层协议那种,可以看作框架模型的一种特殊的形式】

2. 结构:是系统元素本身的集合

    视图:是结构的表示

3. “4+1”的视图模型


软件体系结构第二章_第1张图片

(1)每一个视图只关心系统的一个侧面。

(2)逻辑视图:主要支持系统的功能需求,即系统提供给最终用户的服务。

【逻辑视图中使用的风格为面向对象的风格】

【下面是表示逻辑视图的类图】


软件体系结构第二章_第2张图片

关联关系:横线                 包含关系:带有实心圆的一端表示整体,另一端表示部分                

使用关系:带有空心圆的一端连接在请求服务的类,另一端连接在提供服务的类

继承关系:箭头由子类指向基类

(3)开发视图:着重于软件开发环境中实际软件模块的组织。也称模块视图,主要侧重于软件模块的组织和管理。

【通过系统输入输出关系的模型图和子系统图来描述。】

(4)进程视图:侧重于系统的运行特性,主要关注一些非功能性的需求,如性能和系统的可用性。强调并发性、分布性、系统集成性和容错能力。

【可以看作一系列多层的程序】


软件体系结构第二章_第3张图片

(5)物理视图:主要考虑系统的非功能性需求,如系统可用性、可靠性(容错)、性能(吞吐量)以及规模。

【这主要侧重于硬件方面】


软件体系结构第二章_第4张图片

(6)场景:在开发体系结构时,场景可以帮助设计者找到体系结构的构件和它们之间的作用关系。可以用场景来分析一个特定的视图,或描述不同视图构件间是如何相互作用的。

【在这四个视图中,逻辑视图和开发视图描述系统的静态结构,而进程视图和物理视图描述系统的动态结构。】

2. 软件体系结构的核心模型

(1)元素:构件、连接件、配置、端口和角色

【构件、连接件、配置是最基本的元素】

(2)构件:是具有某种功能的可重用的软件模板单位,表示系统中主要的计算元素和数据存储。

        连接件:表示构件之间的交互。

        配置表示构件和连接件的拓扑逻辑和约束。

      【构件是一个封装的实体,和外界的联系通过接口,连接件也是提供端口来和外部交互】

3. 体系结构的生命周期模型

(1)传统的软件开发过程由问题定义、需求分析、软件设计、软件实现及其软件测试等阶段。

(2)软件体系结构的建立应位于需求分析之后,软件设计之前。

(3)体系结构需求包括需求获取、生成类图、对类分组、将类打包成构件和需求评审等过程。

(4)系统结构设计师从结构角度分析整个系统,选择恰当的构件、构件间的相互作用关系以及对它们的约束,最后形成一个系统框架以满足用户需求,为设计奠定基础。

(5)设计阶段主要对系统进行模块化并决定描述各构件间的详细接口、算法和数据类型的选定。

(6)实现阶段将设计阶段设计的算法和数据类型用语言实现,得到满足需求的目标系统。


软件体系结构第二章_第5张图片

你可能感兴趣的:(软件体系结构第二章)