全文共4974字,建议阅读13分钟
这篇文章表达了我对应用架构的最新理解,并且采用Archimate架构工具进行建模,力图画出最漂亮而专业的应用架构图,为了画图还专门去学习了Archimate,大家进来欣赏一下吧。
下面也列出了我前期写的如何画业务架构、数据架构和技术架构图的文章,方便大家系统学习。
企业架构全景图
TOGAF是一个工具集、术语集和流程集,提供了一个全面的方法来开发企业架构。TOGAF的中心是一个被称为"架构开发方法"(简称ADM)的流程,如下图所示:
我们最关注的是业务架构、数据架构、应用架构及技术架构,这些架构层次的描述体现了从高层策略到低层实施的逐渐细化的逻辑。
四种架构域是层层递进、相互关联的。
业务架构定义了“我们需要做什么”。
数据架构和应用架构描述了“我们将如何做到这一点”。
技术架构则提供了“我们需要哪些工具和技术来实现这一目标”的答案。
当一个组织制定企业架构策略时,这四个域通常需要协同工作,以确保策略的完整性和连续性。
应用架构的核心概念
在TOGAF中,应用架构是整个企业架构的一个子集。它专注于应用软件的设计和构建,以支持企业的业务目标和要求。
应用架构在TOGAF中的主要任务包括:
1、描述主要应用组件和它们的关系:这包括了不仅仅是单一应用程序内的组件,还包括了多个应用程序之间如何交互和协作。
2、界定与业务架构的关联:应用架构需要紧密地与业务架构相连接,确保应用程序能有效地支持业务流程和业务功能。
3、接口和交互:定义应用组件之间,以及应用组件与外部环境(包括其他应用、系统和用户)之间的接口和交互模式。
4、数据交换和数据模型:描述应用如何存储、访问、管理和交换数据。
5、技术和平台:选择合适的技术和平台以支持应用的运行和交互。
6、标准和指导方针:应用架构也涵盖了关于如何构建和维护应用的标准和最佳实践。
7、可持续性和可扩展性:确保应用架构能适应未来业务和技术环境的变化。
8、安全性和合规性:包括对数据访问和信息交流的安全控制,以及满足相关法规和标准。
应用架构目录、矩阵和视图详解
那么,应用架构具体长啥样呢?
TOGAF 提供了一个详细的架构工具模型,如下所示:
在阶段C,TOGAF定义了应用架构的主要交付物,共分目录、矩阵、图三类类型,总计14个制品:
1、图:应用通信图、应用程序和用户位置图、应用程序用例图、软件工程图、软件分发图、流程/应用程序实现图、企业可管理性图、应用迁移图
2、目录:应用程序组合目录、接口目录
3、矩阵:应用交互矩阵、应用程序/功能矩阵、角色/应用程序矩阵、应用程序/组织矩阵
下面以案例的形式逐个说明这14个制品的具体内容,应用架构的最终交付物往往是这14个制品的编排组合:
1、应用通信图
应用程序通信图的目的是描述元模型实体中应用程序之间通信的所有模型和映射。它显示应用程序组件和组件之间的接口。接口可能与数据实体相关联,如果合适的话,应用程序可能与业务服务相关联。
下图示例了一个计费体系的应用通信图:
2、应用程序和用户位置图
应用程序和用户位置图显示应用程序的地理分布,目的是清楚地描述业务用户通常与应用程序交互的业务位置,但也是应用程序基础设施的托管位置。
下图显示了一家制造企业的应用程序和用户位置图:
3、应用程序用例图
应用程序用例图显示应用程序服务的使用者和提供者之间的关系。应用程序服务由参与者或其他应用程序服务使用,应用程序用例图通过展示功能如何以及何时使用,提供了描述应用程序功能的丰富性。
应用程序用例图的目的是帮助描述和验证参与组合及其角色与应用程序之间的交互。随着架构的进展,用例可以从功能信息演变为包括技术实现细节。应用程序用例可以在更详细的系统设计工作中重复使用。
下图显示了银行系统的应用程序用例图:
4、软件工程图
软件工程图将应用程序划分为包、模块、服务和从开发角度看的操作。它使得在规划迁移阶段时能够进行更为详细的影响分析,以及分析机会和解决方案。对于应用程序开发团队和应用程序管理团队在管理复杂的开发环境时,这种图是理想的。
下图显示了支付应用组件的软件工程图示例,可以看到有服务,包和模块,模块其实可以进一步下钻到代码文件等等:
5、软件分发图
软件分布图展示了应用软件如何在整个系统中被结构化和分布。它在系统升级或应用合并项目中非常有用。
该图展示了物理应用是如何分布在物理技术上以及这些技术的位置。这不仅能清晰地看到软件是如何被托管的,还能让运维人员了解一旦应用软件被安装后是如何维护的。
下图是典型的CRM系统的软件分发图示例:
6、流程/应用程序实现图
流程/应用程序实现图主要用于清晰地描述多个应用如何协同完成一个业务流程,并在执行过程中的何时何地发生交互。
该图表不仅展示应用间的通信,还进一步指定了这些通应用交互和执行任务的具体顺序或时间限制。它还明确标出了在哪些关键环节,任务或数据从批量处理方式切换到实时处理方式,或反之。
通过这种方式,流程/应用实现图可以帮助我们识别复杂流程中可以简化或优化的环节,并找出潜在的改进点,以更高效地为业务用户提供所需的信息。这一图表特别适用于那些旨在提高流程效率和减少应用间不必要交互的场景。
下图显示了股票买入业务流程对应的应用程序实现图示例:
7、企业可管理性图
企业可管理性图展示了一个或多个应用程序如何与支持解决方案运营管理的应用和技术组件进行交互。
这张图实际上是应用通信图的一个特定过滤器,专门用于企业级管理软件。通过分析,可以揭示重复和缺口,以及组织的IT服务管理运营中的机会。
下图示例了一个电商系统的企业可管理性图:
8、应用迁移图
应用程序迁移图标识从基线到目标应用程序组件的应用程序迁移。通过准确显示需要在迁移阶段之间映射的应用程序和接口,它可以更准确地估计迁移成本。它将识别临时应用程序、分段区域以及支持迁移所需的基础设施(例如,并行运行环境等)。
下图示例了一个企业在收购了某些系统给出的应用迁移图:
9、应用程序组合目录
这个目录的目的是识别和维护企业中的所有应用程序的列表。这个列表有助于定义可能影响特定类型应用程序的变更计划的水平范围。经过协商的应用程序组合允许定义和管理一组标准的应用程序。应用程序组合目录为其余矩阵和图表提供了基础。通常,它是应用架构阶段的起点。
应用程序组合目录包含以下元模型实体:
信息系统服务
逻辑应用程序组件 物理应用程序组件
10、接口目录
了解应用程序之间的互动程度,识别那些在依赖于其他应用程序方面具有中心性的应用程序 了解应用程序之间的接口数量和类型 了解应用程序之间接口的重复程度 在考虑目标应用程序组合时,识别接口简化的潜力 支持差距分析,并确定是否缺少任何应用程序,因此需要创建
逻辑应用程序组件 物理应用程序组件 应用程序与应用程序关系
11、应用交互矩阵
12、应用程序/功能矩阵
将应用程序的使用分配给由其支持的业务功能 了解由其执行的业务服务和流程的应用程序支持需求 支持差距分析,并确定是否缺少任何应用程序,因此需要创建 定义由特定业务功能使用的应用程序集
13、角色/应用程序矩阵
将应用程序的使用分配给组织中的特定角色 了解支持该功能的业务服务和流程的应用程序安全性要求,并检查这些要求是否符合当前政策 支持差距分析,并确定是否缺少任何应用程序,因此需要创建 定义特定业务角色使用的应用程序集;在采用基于角色的计算方案时至关重要
14、应用程序/组织矩阵
将应用程序的使用分配给执行业务功能的组织单位 了解由组织单位执行的业务服务和流程的应用程序支持需求 支持差距分析,并确定是否缺少任何应用程序,因此需要创建 定义特定组织单位使用的应用程序集
这五种视图体现了我们从哪些视角去理解一个系统:
“4+1视图”描述的是软件架构,跟TOGAF的应用架构有对应之处:
应用架构实战
往期精彩推荐
▼
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...