系统模块分析之UML图

187 阅读13分钟

系统模块需求规格说明

采购计划模块名称

模块功能描述

  1. 进入双碳管理系统主界面 > 点击左侧供应链SCM > 采购管理下的采购计划标签 > 进入采购计划管理页面;

  2. 实现采购计划管理数据列表显示,数据列表分页显示内容应包括:编号、单据号、申请人、申请日期、申请状态、审核人、审核日期、审核状态

功能业务流程

image.png

首先进入 采购计划管理页面 ,页面渲染出 初始数据 。其次,新增改查可以对数据进行操作, 无论执行哪一种操作 页面都会渲染出操作之后的数据列表,流程结束。

用例图

image.png

左侧人形图标代表用户,是使用系统功能的角色。椭圆部分为用例,是系统提供的功能。

  • 采购计划:主用例,概括了采购计划管理的整个功能;

  • 增删改查是采购计划管理功能的分支体现

用户关联着采购计划主功能,采购计划又包含着增删改查几个分支。

类图

image.png

> 各个类所代表的含义:
  1. Domain类:

    • id和name为 属性

    • Getter和Setter为 方法

    主要用于存储数据,在分层结构中映射对应数据库表的字段。

  2. CaiGouJiHuaDao类:

    定义了数据基本操作的方法,包括增删改查。 主要是对数据库进行操作,实现数据的操作

  3. ICaiGouJiHuaService接口

    属于处理数据逻辑层的接口,虽然定义了与CaiGouJiHuaDao类相同的方法,但其 更看重的是定义方法的规范

  4. CaiGouJiHuaServiceImpl 类 (业务逻辑的具体承载者) :

    • 是ICaiGouJiHuaService接口的实现类,实现了接口中声明的方法。

    • 内部会调用 CaiGouJiHuaDao 的方法完成数据操作

    • 可以添加复杂的操作处理逻辑

  5. CaiGouJiHuaController类:

    调用service方法接收前端发送的请求,处理业务逻辑的调用以及返回响应数据的结果。

image.png

image.png

时序图

05-时序图.png

查询流程是通过用户调用findAll(Domain query)发起查询请求,controller接收后调用service同名的方法,之后调用同名方法直接调用数据库,存储最终数据并返回。

之后的新增、修改和删除功能与查询流程类似,分层清晰、便于维护。

E-R图

image.png

  • 采购计划围绕着物料实体制定,一个采购计划会涉及到多种物料的采购安排

  • “属性”、“单据号”以及“状态”是采购计划的实体特征

    • 单据号:采购计划的唯一标识,方便管理查询

    • 状态:反映了采购计划的执行进度

    • 属性:就代表的是一些采购数量、采购时间等,明确采购计划的具体内容

采购合同功能模块名称

模块功能描述

  1. 打开双碳管理系统主界面 > 点击左侧供应链SCM > 采购管理下的采购合同管理页面;

  2. 采购合同管理数据列表显示,数据列表分页显示内容包括:编号、合同编号、申请编号、供应商、联系人、联系方式、合同金额、送货方式、签约日期、申请人、申请状态、审核人、审核时间、审核状态。

功能业务流程(流程图)

image.png

进入采购合同管理页面,页面自动展示已有的合同信息,通过增删改查对系统数据进行操作,页面自动更新操作之后的数据。

用例图

image.png

用户关联着`采购合同主体`,对采购合同进行**增删改查**。

类图

image.png

  1. Domain (对应数据库表的一行记录,例如采购合同的字段与操作) :

    • id和name作为实体属性,利用Getter和Setter暴露读写能力
  2. CaiGouHeTongDao:

    • 直接对数据库进行增删改查的底层逻辑操作

    • findById(按 ID 查询)、findAll(条件查询列表)、add(新增)、update(修改)、delete(删除)方法

与Domain强关联,方法操作的返回值用Domian封装数据。

  1. ICaiGouHeTongService:

    • 属于接口,用于规范服务层的方法
  2. CaiGouHeTongServiceImpl:

    • 作为实现类,通过-dao:Dao依赖注入,调用Dao方法完成数据操作

通过接口与实现分离的方式,符合“依赖导致原则”,便于当需要切换数据库实现时,不影响上层。

  1. CaiGouHeTongController

    • 通过service:Service依赖注入,间接调用DAO操作数据

    • 方法与 Service 对齐

流程分析:

外部请求 > CaiGouHeTongController接受 > 调用ICaiGouHeTongService方法 > CaiGouHeTongServiceImpl调用CaiGouHeTongDao > Dao操作数据库 > 结果通过Domain回传,最终返回给请求方

时序图

image.png

核心角色流程:

用户触发增删改查动作 > CaiGouTongController接收用户请求,转发给service处理 > CaiGouHeTongService处理业务逻辑,调用DAO层 > CaiGouHeTongDAO封装数据库操作,与DB交互 > 数据库存储采购合同数据,执行增删改查SQL

用户进行增删改查操作的流程与上述核心角色的流程一致,最终数据库返回查询结果,逐层回传,用户最后拿到数据。

E-R图

image.png

企业物料对应着采购业务合同,合同是记录采购业务的关键。

采购合同实体下的分支均是属性,其中合同编号是验证合同真实性唯一标识

采购退货功能模块名称

模块功能描述

  1. 进入双碳管理系统主界面 > 点击左侧供应链SCM > 采购管理下的采购退货标签 > 进入采购管理页面;

  2. 采购退货管理数据列表显示 > 数据列表显示内容包括:编号、退货单号、到货编号、合同编号、供应商名称、退货日期、创建人、创建时间。

功能业务流程(采购退货)

02-功能业务流程.png

进入采购退货管理页面,用户可以对数据进行增删改查操作,完成之后页面展示操作完成之后的退货信息数据

用例图

03-用例图.png

用户对采购退货页面进行操作,采购退货作为主用例增删改查四个功能做为实体的分支,实现用户对数据的操作。

类图

image.png

  1. Domain:

    • 对应数据库表的字段,是业务数据的载体;

    • 定义了属性和方法。

  2. CaiGouTuiHuoDao:

    • 定义接口的方法,包括增删改查;

    • 参数和返回值与Domain相关联

  3. ICaiGouTuiHuoService (接口)

    • 与Dao相对应,定义相同的方法

    • 聚焦于业务逻辑的定义,而不在意具体怎么操作数据库。

  4. CaiGouTuiHuoServiceImpl:

    • 通过dao: Dao变量,连接CaiGouTuiHuoDao,间接操作数据库;

    • 实现service接口,封装校验、事务控制、调用 DAO 操作数据库等操作.

  5. CaiGouTuiHuoController:

    • 依赖于service: Service

    • 接收请求、调用 Service 处理业务、返回响应

前端发送请求 > 到达 CaiGouTuiHuoController,调用方法 >  ICaiGouTuiHuoService(实际是 CaiGouTuiHuoServiceImpl )处理逻辑 > CaiGouTuiHuoServiceImpl 调用 CaiGouTuiHuoDao方法,操作数据库 > CaiGouTuiHuoDao 操作数据库,返回 Domain 实体 > 结果由Service处理,Controller返回给前端

时序图

image.png

用户发起请求触发动作 > CaiGouTuiHuoController接收用户请求,转发给service处理 > CaiGouHeTuiHuoService处理业务逻辑,调用DAO层 > CaiGouHeTongDAO封装数据库操作,与DB交互 > 数据库存储采购合同数据,执行增删改查SQL > 最后将执行的结果返回给用户

图中增删改查功能均与上述流程执行步骤一致。

E-R图

image.png

企业物料关联着采购退货的问题,采购退货实体的分支属性记录着退货的关键信息

销售计划功能模块名称

模块功能描述

  1. 进入双碳管理系统主界面 > 点击左侧供应链SCM > 点击销售管理下的销售计划标签 > 进入销售计划管理页面

  2. 实现销售计划管理数据列表分页显示 > 数据列表显示内容包括:编号、计划单号、计划标题、起始日期、结束日期以及创建时间。

功能业务流程(销售计划)

02-功能业务流程.png

进入销售计划管理页面,页面渲染初识数据,用户对数据进行增删改查操作,完成之后将数据反映在页面之上。

用例图

image.png

用户对销售计划管理页面进行操作,销售计划作为主用例,其包含四个增删改查分支,便于用户对数据进行处理。

类图

image.png

请求从 Controller 进入,经 Service 处理业务逻辑,由 Dao 操作数据库,最终返回结果。

时序图

image.png

用户发起请求触发动作 > XiaoShouJiHuaController接收用户请求,转发给service处理 > XiaoShouJiHuaService处理业务逻辑,调用DAO层 > XiaoShouJiHuaDAO封装数据库操作,与DB交互 > 数据库存储采购合同数据,执行增删改查SQL > 最后将执行的结果返回给用户

E-R图

image.png

“产品实体”和“销售计划实体” 都是业务逻辑里的核心对象。

销售计划实体的分支均是其属性,其中“单号”是唯一标识。

销售订单功能模块名称

模块功能描述(销售订单)

  1. 进入双碳管理系统主界面 > 点击左侧供应链SCM > 点击销售订单标签 > 进入销售订单管理页面

  2. 实现销售订单管理数据列表分页显示 > 数据列表显示内容包括:编号、订单编号、客户名称、联系人、联系方式、金额合计、交货日期、申请人、申请时间、申请状态、审核人、审核时间、审核状态

功能业务流程(销售订单)

02-功能业务流程.png

用户进入销售订单管理页面,页面渲染初始数据,用户数据进行 增删改查 操作,结束之后修改后的数据就被展示在页面之上。

用例图

image.png

用户操作销售订单页面,销售订单作为主用例,增删改查作为其四个分支可以让用户对数据进行增删改查的操作。

类图

image.png

image.png

时序图

image.png

用户发起请求触发动作 > XiaoShouDingDanController接收用户请求,转发给service处理 > XiaoShouDingDanService处理业务逻辑,调用DAO层 > XiaoShouDingDanDAO封装数据库操作,与DB交互 > 数据库存储采购合同数据,执行增删改查SQL > 最后将执行的结果返回给用户

E-R图

image.png

订单编号作为销售订单的唯一标识,便于检索并且区分不同的订单。

销售发货功能模块名称

模块功能描述

  1. 进入双碳管理系统界面 > 点击左侧SCM下的销售管理下的销售发货标签 > 进入销售发货管理页面;

  2. 实现销售发货管理数据列表分页显示 > 数据列表显示内容包括:编号、发货日期、合同编号、客户名称、送货方式、交货日期、收货地址、联系人、联系电话、出库状态、创建时间。

功能业务流程(销售发货)

02-功能业务流程.png

主要是用户对销售发货管理页面的操作,对初始数据可以进行增删改查

用例图

image.png

用户通过销售发货管理页面,对页面数据进行改删查操作。

类图

image.png

前端向后端发起请求 > 后端调用service接口 > service调用实现类Impl > Impl把方法传给Dao > Dao封装数据库的实体类 > 封装完成之后返回给controller > 最后又返回给前端。

时序图

image.png

用户发起请求 > controller接收用户请求,交给service处理 > service处理业务逻辑 > Dao封装数据库操作 > 数据库存储采购合同数据,执行增删改查SQL > 最后将处理的结果返回给用户

E-R图

image.png

“发货编号”、“合同编号”...是销售发货的属性, 记录着销售发货的业务

采购入库退货报表功能模块名称

模块功能描述

  1. 进入双碳管理系统主界面 > 点击左侧供应链SCM > 统计分析内的采购入库退货报表标签 > 进入采购入库退货报表页面;

  2. 实现采购入库退货报表数据列表显示 > 数据列表显示内容应包括:季度/月季、物料名称、采购金额、退款金额、采购数量、到货数量、入库数量、退货数量。

功能业务流程

image.png

用户进入采购入库退货报表页面,页面初识数据渲染,用户可以对数据进行查询和导出报表的操作,之后更新页面。

用例图

image.png

查询和导出 是采购入库退货报表页面的主要操作功能,采购入库退货报表是图中的主用例

类图

image.png

  • controller主要接收前端发过来的请求

  • service作为接口主要处理方法

  • Impl将方法传给Dao

  • Dao主要是对接数据库的接口,对数据进行增删改查

  • Domain反映数据库内容

时序图

image.png

用户发起请求 > controller接收用户请求,交给service处理 > service处理业务逻辑 > Dao封装数据库操作 > 数据库存储采购合同数据,执行查询或者导出的操作 > 最后将处理的结果返回给用户。

E-R图

image.png

呈现出“采购入库退货报表实体”所包含了哪些基础信息,理清退货逻辑的数据结构。

信息公告功能模块名称

模块功能描述

展示当前信息公告数据。

功能业务流程(信息公告功能)

image.png

进入信息公告管理页面之后,展示符合查询条件的信息公告信息数据。

用例图

image.png

用户可以使用系统的信息公告功能,且信息公告里包含查询操作。

类图

image.png

图中显示全流程主要的操作是查询

时序图

用户发起请求 > controller接收用户请求,交给service处理 > service处理业务逻辑 > Dao封装数据库操作 > 数据库存储采购合同数据,执行查询的操作 > 最后将处理的结果返回给用户。

image.png

E-R图

image.png

展现了信息公告中包含着基础信息

以上便是《需求规格说明书》中的所有UML图。