软年架构复用-架构师之路(十一)

  • 软件架构复用

软件产品线是 一组产业密集型系统,规定用公用的 核心资产集成 开发而来。

机会复用 和 系统复用。

机会复用:临时发现有可服用资产立马复用。

系统复用:开发之前进行规划好哪些需要复用。

复用的三个阶段:

获取到复用的资产、管理这些资产、针对需求从资产中选择复用部分,开发出满足需求的系统。

  • 特定领域软件架构

DSSA(Domain specific Software Architectrue)

专门用于一类特定类型的任务 (领域)的、在整个领域中能有效的使用,构成标准软件集合

就是一个 特定的问题领域 中支持一组应用的 参考模型、参考需求参考架构等开发基础,器目标 支持在一个特定领域中多个应用生成。

垂直域:在一特定领域通用的完整架构。

水平域:在不同多个领域之间相同部分的小工具。(比如教育和购物都要有的收付系统)

DSSA有三个基本的活动

  1. 领域分析

获取领域模型(需求)。建立领域模型。

  1. 领域设计

目的获取DSSA(特定领域软件架构),在领域模型中表示需要解决的方案,他不是单个系统表示,而是能够适应领域中多个系统需求的高层次设计。

  1. 领域实现

阶段主要目标依据领域DSSA 开发和组织可重用信息。这些可重用是可能在现系统中提取的,也可以是新发现。

参与DSSA有四种角色人员 领域专家、领域分析人员、领域设计和领域实现。

领域专家:系统有经验的用户,从事该系统中系统需求分析、设计和实现以及项目管理有经验的工程师。

领域分析人员:知识背景的有经验的系统分析师来担任。

领域设计人员:设计人员。

领域实现人员:程序员。

建立DSSA的过程:

定义领域范围:领域中的应用要满足用户一系列需求。

定义领域特定元素:领域字典等。

定义领域特定的设计和实现需求的约束。

定义领域模型和架构。

产生、搜集可复用的产品单元。

以上过程是 并发的、递归的、反复的、螺旋型的。

三层次模型:

领域开发环境:领域架构师决定核心架构,产出参考结构、参考需求、架构、领域模型、开发工具。

领域特定应用开发环境:工程师根据具体环境将核心架构实例化。

(前面开发环境就是领域里通用架构,后面在应用开发环境里则根据实际环境特殊处理)

应用执行环境:操作员直接操作实例化后的架构。

  • 基于架构的软件开发

ABSD(Architectrue base Software Design):业务、质量和功能需求(重点)

方法是 架构驱动,强调由业务、质量和功能需求 的组合驱动架构设计。它强调采用 视角和视图来描述软件架构 ,采用用例场景 来描述需求。

用例是功能需求,更抽象化,场景是实例化场景。

使用ABSD方法,设计活动可以从项目总体功能框架确定就开始。(意味着需求获取和分析还没完成,就开始软件设计)

使用ABSD方法有三个基础:

  1. 功能的分解,使用已有的基于模块内聚耦合技术。
  2. 通过选择架构风格实现质量和业务需求。
  3. 软件模板的使用。

ABSD方法是递归的,不是一次性操作。

Architecture(体系结构、架构)

基于架构的软件开发过程,六个过程。

体系结构需求、体系结构设计、体系结构文档化、体系结构复审、体系结构实现、体系结构的演化

复审的时候如果yes正常走,no的话则重新设计。

每次架构的重新演化,都需要重新走整个流程。

  1. 体系结构需求

获取到需求后,三步 生层类图、对类进行分组、把类打包成构件。(这三步属于标识构件)

  1. 架构设计

将上面的标识构件 映射成 构件。设计出 领域架构。

  1. 架构文档化

产出两种文档 架构规格说明 ,和测试架构需求的质量设计说明

  1. 架构复审

由 外部人员(独立于开发组织之外的人,如用户代表和领域专家)参加复审。

通过则正常实行,不通过则重新设计,回到2。

  1. 架构实现

实体来显示架构。实现构件,构件组装成系统。

  1. 架构演化

对架构进行改变,按需求增删构件,使架构可复用。(一般提出新需求,这时候则需要演化,是否新增构件,删除构件)

相关推荐
千里码aicood3 小时前
计算机大数据、人工智能与智能系统开发定制开发
大数据·人工智能·深度学习·决策树·机器学习·森林树
刘一说4 小时前
Nacos 权限控制详解:从开源版 v2.2+ 到企业级安全实践
spring boot·安全·spring cloud·微服务·nacos·架构·开源
非著名架构师4 小时前
城市通风廊道的科学依据:气候大数据如何指导未来城市规划设计
大数据·风光功率预测·高精度气象数据
IIIIIILLLLLLLLLLLLL4 小时前
Hadoop集群时间同步方法
大数据·hadoop·分布式
搞科研的小刘选手5 小时前
【经管专题会议】第五届大数据经济与数字化管理国际学术会议(BDEDM 2026)
大数据·区块链·学术会议·数据化管理·经济理论
蓝耘智算5 小时前
GPU算力租赁与算力云平台选型指南:从需求匹配到成本优化的实战思路
大数据·人工智能·ai·gpu算力·蓝耘
liliangcsdn5 小时前
如何用bootstrap模拟估计pass@k
大数据·人工智能·bootstrap
DMD1685 小时前
AI赋能旅游与酒店业:技术逻辑与开发实践解析
大数据·人工智能·信息可视化·重构·旅游·产业升级
TG:@yunlaoda360 云老大6 小时前
谷歌云AI 时代的算力革命:CPU、GPU 到 TPU 的架构与定位解析
人工智能·架构·googlecloud
Elastic 中国社区官方博客6 小时前
Elasticsearch 中使用 NVIDIA cuVS 实现最高快 12 倍的向量索引速度:GPU 加速第 2 章
大数据·人工智能·elasticsearch·搜索引擎·ai·全文检索·数据库架构