架构师篇-5、架构语言-ArchiMate

内容摘要:

  • TOGAF内容元模型
  • TOGAF架构语言ArchiMate3
  • ArchiMate实践案例分享

TOGAF内容框架【核心内容元模型】

作为一个通用且开放式的标准,TOGAF需要采用一种非常灵活的方式来对其内容元模型进行定义,从而使得不同的企业可以根据自身需要对其进行裁剪和改造。为了达到这一目标,TOGAF中的内容元模型将所需构建块类型的最小集合定义为核心内容元模型,并在此基础上使得整个元模型体系能够支持后续扩展内容的插入。

TOGAF内容框架【内容元模型各实体及其关系】

下图展示了内容元模型中所包含的各个实体以及他们之间的关系,并通过图例标明了每个实体所隶属的扩展部分。

TOGAF内容框架【企业架构开发方法各阶段中的内容元模型实体】

在企业架构开发方法的进行过程中,各个阶段都会涉及到一些相关的构建块,而下图展示了他们之间的关系。

TOGAF企业连续体和工具之架构资源库及架构工具

问题:

企业架构设计用过哪些工具?

Visual Paradigm

Archi

drawio(推荐) 直接有Archimate的支持

Enterprise Architect

beeart(ddd推荐)

Archimate3.0映射TOGAF的ADM

ADM的各个阶段对应的ArchiMate建模视图如下:

  • 预备阶段和架构前景阶段使用ArchiMate的战略&动机层进行建模
  • 业务架构阶段使用ArchiMate的业务层进行建模
  • 信息系统架构阶段使用ArchiMate的应用层进行建模
  • 机会和解决方案阶段、迁移计划、实现治理阶段使用ArchiMate的实现&迁移层进行建模
  • 需求管理作为一个贯穿始终的工作,各个层次建模都涉及
  • 架构变更管理阶段基本上也是各个层次的建模都涉及

什么是ArchiMate

  • 是面向企业架构的建模语言
  • 可以建模架构的6个层次,每个层次都有4个方面

    ArchiMate建模企业架构的6个层次:
  1. 战略层:指定企业架构的战略目标、成长路线图。
  2. 业务层:企业架构的驱动力来源。
  3. 应用层:支撑业务的信息系统的组织与集成。
  4. 技术层:构架应用的网络、软件和硬件技术。
  5. 物理层:支持应用的物理设备和网络。
  6. 实现与迁移:实施企业架构的项目过程管控。

ArchiMate建模企业架构的4个方面:

  1. 动机:企业架构涉及、改进的目标和原因
  2. 主动结构:发起各种行为的主体。
  3. 行为:提供各种能力的活动及其组成的流程和实现的服务
  4. 被动结构:被处理的各种课题。

战略地图是战略实现路径分析的架构

IT顶层设计方案

ArchiMate语言-主要设计元素

  • 业务层元素
  • 动机元素
  • 结构和行为元素
  • 战略元素
  • 核心通用关系

TOGAF-架构语言【ArchiMate3.0】

类似UML的一个东西

ArchiMate语言构建企业架构简图

ArchiMate语言-业务层元素

ArchiMate语言-构建业务行为元素

ArchiMate语言-构建业务主动结构元素

ArchiMate语言-战略元素

ArchiMate语言-构建能力、资源和行动方案

ArchiMate语言-构建具有能力交叉映射的价值流

ArchiMate语言-动机元素

ArchiMate语言-构建动机元素-利益相关者-驱动因素和评估

ArchiMate语言-构建目标-结果-原则-需求和约束

ArchiMate语言-动机元素-意义和价值

ArchiMate语言-结构和行为元素概述

ArchiMate语言-核心通用关系

ArchiMate语言案例分享

动机与战略-建模

业务架构-组织建模

业务架构-流程建模

应用架构-组件建模

应用架构-服务建模

技术架构-部署建模

技术架构-过程建模

实现和迁移

架构跨层视图-业务-应用-技术

动机与战略-建模

这个图比较重要,当取一个公司是总监级别的岗位的话,使用这个图去捋清楚业务和相关方非常好。

用途:描述企业架构设计、改进的目的和原因

元素:驱动器、评估、目标、利益相关者、价值、成果、原理、约束、需求、含义、资源、能力、价值流、行动方针、位置

关系:风险承担者<关联>驱动器,驱动器<引发>目标,输出成果<实现>目标

业务架构-组织建模

业务架构-流程建模

业务架构-组件建模

应用架构-服务建模

技术架构-部署建模

技术架构-过程建模

实现和迁移

架构跨层视图-业务-应用-技术

企业架构开发的各个阶段对应的建模视图如下

TOGAF-架构成熟度模型

问题思考-软件设计和架构开发过程中其实存在很多断沟

  • 业务架构到技术架构的不一致
  • 业务架构到业务需求的不一致
  • 业务架构和实现的不一致

思考:

  • 业务架构需要做到什么粒度?
    • 架构是产品的上层框架(在产品前面),只需要到具体功能模块以及主要业务功能就行,具体的业务规则和异常处理都不需要考虑,那是需求分析的事情
  • 业务架构是否需要做原型?
    • 需要,只是会很粗,并且不在意具体的UE,但是需求阶段的原型应该可以从业务架构阶段的原型中细化下来
  • 有没有统一的规则表模版?
    • 不同业务的规则是不一样,不同小组的设计能力也是不一样,不同平台支持的规则DSL也是不一样的,这个需要根据自己的情况来定义自己的格式,但必须能够把规则描述清楚,做到自己、开发人员和测试人员一看就明白
  • 需求阶段需要出以前的详细需求规格说明书吗?
    • 对于那部来说不需要。但是必须要有原型,还有上面说的几个文档,一定要保证同步。

案例架构刻意练习

目标:电商小程序

背景:中、大型酒楼每天的食材原材料采购管理系统。

酒楼每天需要从不同的供应商采购饭桌所需的原材料【比如:烟、酒、饮料、纸、鸡、鸭、鱼、猪肉、牛肉、青菜、特色菜、配菜等等】

每天提前一天或几天分类下单:品类、数量

每月周期性结算、对账【支付系统外】

要求:采用ArchiMate语言构建完整的企业战略图

相关推荐
虹科数字化与AR2 小时前
外科医生必备:安宝特M400手术模式高级设置指南
经验分享
weixin_537217064 小时前
太极拳资源合集
经验分享
shawxlee5 小时前
vue3+axios挑战最简洁实用的配置封装+接口调用:请求拦截器、响应拦截器、通用请求方法(单个请求/并发请求/下载文件)、统一接口管理
前端·经验分享·vue·接口·axios·api
维克兜率天19 小时前
【维克】大数定律与中心极限定理:为什么长期均值终将回归?
经验分享·学习·金融·概率论
个 人 练 习 生1 天前
strcmp与strstr函数的模拟实现
c语言·开发语言·经验分享·学习·程序人生
ez在线工具网1 天前
从零部署开源流媒体下载工具 FlowPick:Nuxt 4 项目本地跑起来 + 二次开发实战
经验分享·开源软件
一个人旅程~1 天前
房子重新被定义为大宗耐用消费品
经验分享·其他·新浪微博
天竺鼠不该去劝架1 天前
openclaw安全预警之后:金融级智能体该怎么上
经验分享
2501_943205051 天前
【260期】游戏性能优化,大小核CPU调度工具
经验分享
杨连江1 天前
自我观察:认知觉醒的内在路径
经验分享