架构蓝图--软件架构的“4+1”视图模型
发布网友
发布时间:2024-10-23 01:53
我来回答
共1个回答
热心网友
时间:2024-10-24 19:15
企业架构包括业务架构和IT架构两部分。"4+1"视图模型在IT架构设计中提供指导,至今仍具重要意义。该模型概述软件架构为由元素、关系矩阵和基本原理/约束组成的集合,以满足功能、性能及非功能需求。
逻辑架构关注面向对象的分解,支持功能需求,将系统分解为关键抽象元素,以对象或对象类形式获取,利用抽象、封装和继承原则。逻辑视图采用Ratioon/Booch方法,通过类图和类模板表示。类图显示逻辑关系,如关联、泛化、组合、聚合、继承。类模板强调类操作和关键特征。类功能定义公共机制或服务。设备信息类模板示例性地将电子设备和机床设备抽象为设备信息。
流程架构考虑非功能需求,如性能、可用性、并发性和分布、系统完整性和容错性。它描述逻辑视图的抽象元素如何适合流程架构,通过线程控制执行对象操作。流程视图使用任务流程图绘制,展示战术控制级别,如启动、恢复、重新配置和关闭。任务间通信通过基于消息的服务、远程流程调用、事件广播实现,次要任务通过集合内存或共享内存通信。
开发架构侧重软件开发环境上的模块静态结构,软件打包成应用程序库或子系统,由开发人员创建。子系统在层次结构中组织,每一层提供接口给上层。开发视图采用分层样式,描述“export”和“import”关系。它考虑开发简易性、软件管理、重用或通用性需求,以及工具集或编程语言约束。视图作为需求分配的基础,用于团队或组织工作分配、成本评估、项目进度监控、软件重用、可移植性和安全性推理,是产品线建立的基础。
物理架构考虑系统非功能需求,如可用性、可靠性、性能和可伸缩性。软件在计算机网络或物理设施执行,各种元素如网络、流程、任务和对象映射到节点。节点使用不同物理配置,软件到节点映射高度灵活,对源代码影响最小。
场景视图通过用例图与逻辑、流程、开发和物理视图无缝协同工作,是对最重要需求的抽象。视图有两个主要目的。视图之间的对应关系表示不同视图元素连接,遵循设计规则和启发式方法。
从逻辑视图到流程视图,确定逻辑架构类特征,如活动对象、被动对象和受保护对象。逻辑架构只考虑功能方面,流程架构需定义每个对象的控制线程。并发性需定义“正确”的数量,通过内而外或外而内策略确定所需流程集。
从逻辑视图到开发视图,大型类分解为多个包,密切相关的类集合分组为子系统。子系统定义需考虑团队组织、代码大小、重用程度、通用性、分层原则、发布策略和配置管理约束。
从流程视图到物理视图,流程和流程组映射至物理硬件,考虑服务器容量、安全性和性能需求。流程部署在不同任务的服务器上,需考虑因素包括服务器容量、安全和性能要求。
并非所有软件架构都需要完整“4+1”视图。可根据系统规模和需求省略无用视图。架构设计包括绘制、组织、指定和优化阶段,提倡迭代开发方法。场景驱动架构设计关注系统关键功能,确保重要性、存在性、高频使用或技术风险减轻。
热心网友
时间:2024-10-24 19:19
企业架构包括业务架构和IT架构两部分。"4+1"视图模型在IT架构设计中提供指导,至今仍具重要意义。该模型概述软件架构为由元素、关系矩阵和基本原理/约束组成的集合,以满足功能、性能及非功能需求。
逻辑架构关注面向对象的分解,支持功能需求,将系统分解为关键抽象元素,以对象或对象类形式获取,利用抽象、封装和继承原则。逻辑视图采用Ratioon/Booch方法,通过类图和类模板表示。类图显示逻辑关系,如关联、泛化、组合、聚合、继承。类模板强调类操作和关键特征。类功能定义公共机制或服务。设备信息类模板示例性地将电子设备和机床设备抽象为设备信息。
流程架构考虑非功能需求,如性能、可用性、并发性和分布、系统完整性和容错性。它描述逻辑视图的抽象元素如何适合流程架构,通过线程控制执行对象操作。流程视图使用任务流程图绘制,展示战术控制级别,如启动、恢复、重新配置和关闭。任务间通信通过基于消息的服务、远程流程调用、事件广播实现,次要任务通过集合内存或共享内存通信。
开发架构侧重软件开发环境上的模块静态结构,软件打包成应用程序库或子系统,由开发人员创建。子系统在层次结构中组织,每一层提供接口给上层。开发视图采用分层样式,描述“export”和“import”关系。它考虑开发简易性、软件管理、重用或通用性需求,以及工具集或编程语言约束。视图作为需求分配的基础,用于团队或组织工作分配、成本评估、项目进度监控、软件重用、可移植性和安全性推理,是产品线建立的基础。
物理架构考虑系统非功能需求,如可用性、可靠性、性能和可伸缩性。软件在计算机网络或物理设施执行,各种元素如网络、流程、任务和对象映射到节点。节点使用不同物理配置,软件到节点映射高度灵活,对源代码影响最小。
场景视图通过用例图与逻辑、流程、开发和物理视图无缝协同工作,是对最重要需求的抽象。视图有两个主要目的。视图之间的对应关系表示不同视图元素连接,遵循设计规则和启发式方法。
从逻辑视图到流程视图,确定逻辑架构类特征,如活动对象、被动对象和受保护对象。逻辑架构只考虑功能方面,流程架构需定义每个对象的控制线程。并发性需定义“正确”的数量,通过内而外或外而内策略确定所需流程集。
从逻辑视图到开发视图,大型类分解为多个包,密切相关的类集合分组为子系统。子系统定义需考虑团队组织、代码大小、重用程度、通用性、分层原则、发布策略和配置管理约束。
从流程视图到物理视图,流程和流程组映射至物理硬件,考虑服务器容量、安全性和性能需求。流程部署在不同任务的服务器上,需考虑因素包括服务器容量、安全和性能要求。
并非所有软件架构都需要完整“4+1”视图。可根据系统规模和需求省略无用视图。架构设计包括绘制、组织、指定和优化阶段,提倡迭代开发方法。场景驱动架构设计关注系统关键功能,确保重要性、存在性、高频使用或技术风险减轻。