Skip to content

Commit

Permalink
feat 添加六个场景的步骤
Browse files Browse the repository at this point in the history
  • Loading branch information
gaozhiyi committed Dec 10, 2023
1 parent 2344f1e commit f8e51e7
Show file tree
Hide file tree
Showing 38 changed files with 291 additions and 4 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1 +1,103 @@
# 快速入门
# 领域建模

本文描述系统架构师创建反映业务领域的概念模型,与领域专家合作以确保模型准确反映业务实体和关系,如何构建领域模型,对具体的业务场景进行架构设计



## 操作步骤

- 需求资料分析与记录
- 产品愿景
- 统一语言
- 领域模型
- 查询模型
- 数据模型
- 对象结构映射



## 需求资料分析与记录

> 描述:收集、整理、记录用户需求和系统功能需求的文档,它对于软件开发过程起着指导、衡量和验证作用,以及软件设计的思路,解决方案等信息
详情请参见:[需求资料](../../操作指南/业务建模平台/业务域建模/需求文档.md)

具体信息的记录,按实际情况而定, 如请假系统中,记录了请假的用户故事的用例分析

![1702199265314](images/1702199265314.png)



## 产品愿景

> 描述:产品愿景是对于产品发展方向和目标的总体概述,它阐述了产品应该是什么、为什么存在、为谁服务、带来什么价值。


![1702199299683](images/1702199299683.png)

## 统一语言

> 描述:为了协调团队成员(包括开发人员、客户、领域专家等)对于业务领域的理解而共同制定的该领域内的术语和表达方式;
![1702199320462](images/1702199320462.png)

## 领域模型

> 描述:为了协调团队成员(包括开发人员、测试、领域专家等)对于业务领域的理解而共同制定的该领域内的模型; 它描述了当前业务领域提供哪些业务原子能力;
详细步骤如:

- 分析场景过程的全生命周期流程, 列出关键节点,作为命令的方式显示(抽象能力接口)
- 对每一个关键节点进行分析,分析规则以及约束点
- 基于以上的规则和约束, 推断出 需要输入的参数,作为命令的参数
- 推断需要实现以上的规则和约束,需要什么样的数据结构和服务
- 设计承载以上数据结构的聚合根
- 拆分实体和值对象,枚举



### 分析场景过程的全生命周期流程, 列出关键节点,作为命令的方式显示(抽象能力接口)

![1702199955797](images/1702199955797.png)

### 对每一个关键节点进行分析,分析规则以及约束点

![1702199968098](images/1702199968098.png)

### 基于以上的规则和约束, 推断出 需要输入的参数,作为命令的参数

![1702199989242](images/1702199989242.png)

### 推断需要实现以上的规则和约束,需要什么样的数据结构和服务

### 设计承载以上数据结构的聚合根

### 拆分实体和值对象,枚举

![1702200100855](images/1702200100855.png)



## 查询模型

> 描述:描述当前业务领域下包含的查询原子能力,对应一个查询器;
查询器,可应用于,对外接口的展示,UI 的显示等

![1702199778632](images/1702199778632.png)

## 数据模型

> 描述:数据模型即数据存储模型,是数据的最终存储结构;提高系统的数据质量、性能和可维护性;
![1702199811877](images/1702199811877.png)

## 对象结构映射

> 描述:描述当前业务领域下实体对象之间的字段映射关系;对应代码中的Convert转换器;



![1702199819784](images/1702199819784.png)
Original file line number Diff line number Diff line change
@@ -1 +1,72 @@
# 快速入门
# 模型即代码

本文描述如何通过模型转换成为代码,直接生成即可运行,可以直接与前端进行联调,只要直接部署到开发环境即可。

## 操作步骤

- 使用idea插件生成代码
- 代码的结构
- swagger 测试

### 使用idea插件生成代码

- 具体请参见 [IDIA插件集成](../../操作指南/应用开发平台/IDEA插件集成.md)

### 代码的架构

- cola 架构

- adapter

- 按业务域进行分包

- 按业务场景进行分包
- 存在的`api`接口



**按业务域进行分包**

- 请假
- 审批规则

![1702202102986](images/1702202102986.png)

**按业务场景进行分包**

- 请假场景
- 审批场景

![1702202136736](images/1702202136736.png)

**标注化代码生成**

![1702202185998](images/1702202185998.png)



- app

- 业务场景的应用服务

![1702202251348](images/1702202251348.png)

- 业务与的应用服务

![1702202353571](images/1702202353571.png)

- client

![1702202372380](images/1702202372380.png)

- domain

![1702202511502](images/1702202511502.png)

- infrastructure

![1702202540222](images/1702202540222.png)

### swagger 测试

运行即显示swagger 地址进行测试。可直接链接数据库
Original file line number Diff line number Diff line change
@@ -1 +1,57 @@
# 快速入门
# AI辅助编码

本文介绍,在使用 `模型即代码` 生成结构性代码之后,在基于此通过AI辅助编码, 让开发人员具有更高的效率和质量

## 操作步骤

- 下载chatbot 插件
- 生成单元测试
- AI 读代码
- AI 代码审核
- chatbot 的应用

### 下载chatbot 插件

- 在插件市场寻找到插件

![1702203283390](images/1702203283390.png)

### 生成单元测试

- 方式一: 选择要生成的单元测试的类,右键:

![1702203369383](images/1702203369383.png)
- ·生成结果:

![1702203558984](images/1702203558984.png)

- 选中代码-右键单元测试,则生成指定代码的单元测试

![1702203421595](images/1702203421595.png)

- 生成的结果

![1702203465353](images/1702203465353.png)

### AI 读代码

> 经常应用与对源代码的阅读,对复杂代码阅读
- 启动,右键选择要读的代码

![1702203692092](images/1702203692092.png)

- 输出结果

![1702203675764](images/1702203675764.png)

### AI 代码审核

![1702203775583](images/1702203775583.png)

### chatbot 的应用

- 算法,以及规则性代码

![1702203808499](images/1702203808499.png)

Original file line number Diff line number Diff line change
@@ -1 +1,59 @@
# 快速入门
# 设计评审与校验

本文描述 在领域模型设计完成之后,在项目的概关键角色人员对,设计的进行回顾评审与校验,以便于确认大家都对需求,设计都达成一致

## 操作步骤

- 业务场景的文档评审
- 领域模型文档的评审

- 业务域设计文档的评审
- 应用的文档评审



### 业务场景的文档评审

> 在业务场景层面达成一致, 关联人员: 业务,产品, 架构师, 开发人员, 测试
- 概览图
- 表示与内部系统,与外部系统的链接
- 流程图
- 表示内部业务节点与角色之间的协同关系

![1702200573002](images/1702200573002.png)

### 领域模型文档的评审

> 包含了,查询模型, 数据模型, 聚合 之间的关系的检查与补充-
- 识别有多少个领域对象, 以及领域对象之间的关系

![1702200839889](images/1702200839889.png)



### 业务域设计文档的评审

> 包含了,对这个业务模块的整体的设计思路,目标愿景, 模型图,接口 等的评审
- 打开文档

![1702200927644](images/1702200927644.png)

* 文档明细


![1702201007093](images/1702201007093.png)



### 应用的文档评审

> 应用文档是针对于多个业务文档和业务场景文档的集合,一个应用一般等于一个限界上下文
![1702201220196](images/1702201220196.png)

文档明细

![1702201237305](images/1702201237305.png)

0 comments on commit f8e51e7

Please sign in to comment.