当前位置: 首页 > news >正文

详解制造业业务数据模型

业务数据在企业数字化转型或单体应用的开发中都是至关重要的。站在跨业务跨部门的企业数字化转型角度,离不开业务架构的设计,详细的业务领域和业务数据模型是后续应用架构和数据架构的必要输入。站在单部门单场景的信息化角度,应用程序的需求分析阶段输出的业务流程和业务数据模型也是后续概要设计和详细设计的必要输入。

1. 制造业模型标准

谈业务数据模型,绕不开ISA 95标准。ISA95标准详细介绍了制造企业业务系统及其制造控制系统之间接口的标准模型和术语,基本涵盖了销售、计划、制造等整个production过程,尤其是聚焦了生产管理调度和生产控制两个层次的模型。
如今工业互联网、数字化转型炒作的热火朝天,很多新入行的数字技术供应商浮于表面,张口闭口人工智能、大数据,反倒是对行业传统业务和信息化基础视而不见。但是30年前的东西仍然还是基础。ISA-95标准 9部分介绍(https://blog.csdn.net/lzwdlut/article/details/84668753)对标准做了一个大概介绍,感兴趣的读者可以自己下载该标准或者中文版的GB/T 20720标准。

02. 业务数据模型构成

制造型企业业务架构分析一般遵循波特价值流方法,分为核心业务活动和支撑性活动。核心业务活动包括研发、采购、生产、物流、销售等主要环节,每个环节都存在大量的物理实体和信息实体。支撑性活动包括人力资源、财务管理、办公管理、党建管理、IT管理等活动,也是业务模型的重要来源。对价值流核心业务活动的一些模型整理如下:
1) 研发设计: 主要是产品模型(主要是离散制造)和工艺模型,进一步细化包括如CAD(二维三维零件模型、组件模型和装配模型)、DBOM、CAE(结构分析、热分析、动力学分析模型)、PBOM、工艺路线、NC程序、质量控制计划、作业指导书等;
2)采购: 物料、供应商等主数据模型,采购计划、采购订单、询价单、退货单等业务流程模型;
3)生产: 工厂、设备、班组、MBOM等生产资源模型和生产计划、生产订单、质检单、作业记录单、设备保养计划、设备维保记录等业务流程模型;
4)物流仓储: 库房主数据,物流计划、入库单、出库单、盘点单、物料批次等业务模型;
5)质检: 质检标准、质检计划、质检单等;
6)销售: 客户、销售机会、销售订单、报价单、销售退货单等;
利用U/C矩阵来描述一些主要模型在每个业务领域的关系,如下图所示。
在这里插入图片描述

3. 模型构建

数据模型的设计分为概念模型、逻辑模型和物理模型,一步步从概念落到数据库层面,是数据应用的核心。本文还是以production为主线,对模型及其构建过程进行梳理。

3.1 概念模型

概念模型主要是描述了在业务流程中有哪些实体,实体和实体之间的关系。
在这里插入图片描述
制造工厂的业务信息模型分为:物理模型、制程模型和执行模型(Camstar)。物理模型代表工厂的物理部件,如上述描述的工厂、组织,资源;制程模型代表工厂制造流程,包括产品、BOM、工艺和工序等;执行模型是工厂业务流动过程中产生的各类活动和记录,包括销售订单、生产订单、过程记录等。物理模型和制程模型是企业的核心数据,一般保持稳定,变化缓慢,划分为主数据。执行模型在各个业务系统里随生产过程动态实时更新。
1)执行模型: 主生产计划通过销售预测和销售订单(sales Order)进行供需平衡后计算得到(具体的MRP逻辑单独再写)。生产计划(production Order)是主生产计划经过MRP或高级计划(AP)之后产生的,和主计划是关联关系。工单(work Order)是由生产计划排程(AS)后拆分到工序和具体设备上,即生产计划和工单是组合关系。工单记录(WO Segment Record)上汇聚了所有的生产指令和生产资源,进行作业管理和过程记录。工单工序记录(WO Segement Record)中物料投入、使用的设备、工装夹具、工人、班组和要求要满足支撑模型中工序资源的约束等构成。
2)制程模型: 反映了产品(Product)和工艺路线(Routing)、工艺路线(Routing)与工序(Segment),工序与工序资源之间的关系。产品关联工艺路线,工艺路线是由1个或n个工序组成的。每个工序关联原材料、设备、工具和质检标准等。
3)物理模型: 包含工厂、设备、仓库、工装夹具等物理资产的定义。

3.2逻辑模型

逻辑模型描述了实体模型的主要业务属性,以及实体和实体之间更精确的关系,如包含、关联、引用、依赖等。以产品工艺为例,详细展开。
1)关系: 产品工艺和物料/产品是一一对应关系;对于一个产品多个工艺的情况使用工艺版本来处理。一个产品工艺是由1个或多个产品工序构成。产品工序包含了投入物料、生产设备等资源。
2)属性: 物料在生产过程中的基本属性是物料编号、物料名称、类型、分组、单位等。在目前平台化的趋势下,迫切需要统一的数据模型/主数据支撑ERP\MES等众多系统的统一使用和管理。所以,在真实设计中,物料也包含采购、销售、生产、库存、质检等方面的业务属性,进行统一管理。
在这里插入图片描述
物料模型

3.3物理模型

物理模型是逻辑模型在数据库的存储形式。比如生产计划模型,业务属性包括订单编号、产品编号、图号、单位、数量、起止时间、工艺路线、优先级、类型、进度、实际完成数量等,也包括了创建时间、更新时间、状态变化时间、程序控制参数等技术参数属性;比如,其中的优先级属性是string类型、默认值为中,是否必填为n,是否展示为y。每个属性从属性所属模块、字符类型、长度、默认值、主键、外键引用、校验规则、是否展示、必填、可编辑等。
生产订单详细属性
数据模型之间的关系是构建数据库非常重要的方面,好的设计能大幅提高CRUD性能,同时也能支持更多行业的扩展性。
在这里插入图片描述

相关文章:

详解制造业业务数据模型

业务数据在企业数字化转型或单体应用的开发中都是至关重要的。站在跨业务跨部门的企业数字化转型角度,离不开业务架构的设计,详细的业务领域和业务数据模型是后续应用架构和数据架构的必要输入。站在单部门单场景的信息化角度,应用程序的需求…...

BigDecimal使用注意避坑

目录一. BigDecimal的初始化精度丢失问题二. BigDecimal在进行除法运算时需设置精度,否则对于除不尽的情况会抛出异常三. 不要使用BigDecimal的equals方法比较大小, 否则可能会因为精度问题导致比较结果和预期的不一致在java.math包中提供了对大数字的操作类,用于进…...

windows环境下,vue启动项目后打开chrome浏览器

前言:关于vue启动后打开chrome浏览器,我查了很多资料,方案如下: 1、增加环境变量BROWSER为chrome(试了没效果) 2、设置系统的默认浏览器为chrome(应该可以,但没试;因为…...

SpringBoot2.X整合ClickHouse项目实战-从零搭建整合(三)

一、ClickHouseSpringBoot2.XMybatisPlus整合搭建 二、需求描述和数据库准备 三、ClickHouse统计SQL编写实战和函数使用 四、ClickHouseSpringBoot2.X案例-基础模块搭建 controller/request层 mapper层 model层 service层 五、ClickHouseSpringBoot2.X案例-数据统计接口 …...

学海记录项目测试报告

⭐️前言⭐️ 本篇文章是博主基于学海记录的个人项目所做的测试报告,用于总结运用自动化测试技术,应用于自己的项目。 🍉欢迎点赞 👍 收藏 ⭐留言评论 📝私信必回哟😁 🍉博主将持续更新学习记录…...

【1792. 最大平均通过率】

来源:力扣(LeetCode) 描述: 一所学校里有一些班级,每个班级里有一些学生,现在每个班都会进行一场期末考试。给你一个二维数组 classes ,其中 classes[i] [passi, totali] ,表示你…...

言简意赅+图解 函数传参问题(传值、传地址 500字解决战斗)

1、传值 2、传地址 不论是传值,还是传地址,形参都是对于实参的一份拷贝 下图为按值传递进行交换: 形参left拷贝一块新空间,形参right拷贝一块新空间 下图为按指针传递进行交换 形参left拷贝一块新的空间,形参right…...

UML-时序图以及PlantUML绘制

介绍 时序图(Sequence Diagram),又名序列图、循序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。它可以表示用例的行为顺序,当执行一个用例行为时,其中的每条消息…...

【Redis】Redis 有序集合 Zset 操作 ( 简介 | 查询操作 | 增加操作 | 删除操作 | 修改操作 )

文章目录一、有序集合 Zset二、查询操作1、查询 Zset 所有数据2、查询 Zset 所有数据和评分3、查询指定评分范围的 Zset 数据4、查询指定评分范围的 Zset 数据并从大到小排序5、统计指定评分范围的 Zset 数据个数6、查询指定元素在 Zset 有序集合中的排名三、增加操作1、向 Red…...

Java特性之设计模式【策略模式】

一、策略模式 概述 在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式 在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略…...

IR-CUT 保证摄像机成像效果的滤镜

IR-CUT双滤镜是指在摄像头镜头组里内置了一组滤镜,当镜头外的红外感应点侦测到光线的强弱变化后,内置的IR-CUT自动切换滤镜能够根据外部光线的强弱随之自动切换,使图像达到最 佳效果。也就是说,在白天或黑夜下,双滤光片…...

openpnp - 普通航空插头和PCB的连接要使用线对板连接器

文章目录openpnp - 普通航空插头和PCB的连接要使用线对板连接器概述改进实际效果总结ENDopenpnp - 普通航空插头和PCB的连接要使用线对板连接器 概述 和同学讨论问题, 准备将航空插头连接到PCB上. 航空插头选用GX12-4公头, 拧到开孔的铁板上. 然后航空插头公头再与PCB连接. 铁…...

Python3 错误和异常实例及演示

作为 Python 初学者,在刚学习 Python 编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍。 Python 有2种错误很容易辨认:语法错误和异常。 Python assert(断言)用于判断…...

Android 9.0第三方app根据包名设置为横屏显示

1.概述 在android9.0的系统rom定制化开发中,在某些横屏的设备比如平板电脑,tv智能电视,广告机等等设备中,通常系统是默认横批显示的,但是在安装一些竖屏app的时候, 就会旋转为竖屏,这个时候操作app也不方便,所以产品需求要求竖屏也需要根据包名横屏显示出来,这就需要在…...

MySQL会导致索引失效的情况与解决索引失效的方法

什么情况会导致索引失效 索引失效也是慢查询的主要原因之一,常见的导致索引失效的情况有下面这些: 1.使用 SELECT * 进行查询;2.创建了组合索引,但查询条件未准守最左匹配原则;3.在索引列上进行计算、函数、类型转换等操作;4.以 % 开头的 L…...

使用nginx单独部署Vben应用

前言 本文主要介绍Vben使用nginx单独部署的方式,其实前端发展到现在已经不是当年的jsp,asp必须要和后端一起部署了。单独部署调试的工具也很多,比如vue-cli-service 和 Vben中用到的vite ,当然这些我们一般用在开发的工程中。正式…...

ES6新特性详解

文章目录1. let和const1.1 let声明变量1.2 const声明常量2. 模板字符串3. 解构赋值3.1 数组的解构赋值3.2 对象的解构赋值4. 函数扩展4.1 参数默认值4.2 剩余参数4.3 箭头函数5. 对象扩展5.1 对象简写5.2 属性名表达式5.3 扩展运算符6. Symbol7. Iterator和Generator7.1 Iterat…...

Ubuntu下安装 ntfs-3g

目录1.FAT32、NTFS和exFAT2.ubuntu 安装 ntfs-3g2.1 直接安装2.2 源码安装1.FAT32、NTFS和exFAT U盘在格式化的时候都会有三种格式分别是FAT32、NTFS和exFAT。 FAT32格式   FAT32格式硬盘分区的最大容量为2TB,虽然U盘做不到,但是现在1xTB硬盘都有了&…...

【专业认知】抖音就业 / 保研北大教育学 / 留学南加州EE / 微软就业

2023.2.18 一. 周金辉学长分享——本科经验分享 0 简介 计算机农大本硕 硕士毕业后在抖音公司工作 1 行业前景:计算机专业能做什么? 1.1 计算机行业发展路线 远古时代: 二战开始,计算机技术发展,出现互联网 包…...

【算法题】2 的 n 次幂的背后

前言: 说实话,真的不爱写算法题相关的文章了,觉得没啥意义,但是对这种比较好玩并且简单,学会了就能很好提高算法效率的文章,还是要写一写,不哭不哭,你不会不是你的错,只是…...

Android Wi-Fi 连接失败日志分析

1. Android wifi 关键日志总结 (1) Wi-Fi 断开 (CTRL-EVENT-DISCONNECTED reason3) 日志相关部分: 06-05 10:48:40.987 943 943 I wpa_supplicant: wlan0: CTRL-EVENT-DISCONNECTED bssid44:9b:c1:57:a8:90 reason3 locally_generated1解析: CTR…...

调用支付宝接口响应40004 SYSTEM_ERROR问题排查

在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统

医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...

电脑插入多块移动硬盘后经常出现卡顿和蓝屏

当电脑在插入多块移动硬盘后频繁出现卡顿和蓝屏问题时,可能涉及硬件资源冲突、驱动兼容性、供电不足或系统设置等多方面原因。以下是逐步排查和解决方案: 1. 检查电源供电问题 问题原因:多块移动硬盘同时运行可能导致USB接口供电不足&#x…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”(简单设计)是软件开发中的一个重要理念,倡导以最简单的方式实现软件功能,以确保代码清晰易懂、易维护,并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计,遵循“让事情保…...

为什么要创建 Vue 实例

核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...

【Linux系统】Linux环境变量:系统配置的隐形指挥官

。# Linux系列 文章目录 前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变量的生命周期 四、环境变量的组织方式五、C语言对环境变量的操作5.1 设置环境变量:setenv5.2 删除环境变量:unsetenv5.3 遍历所有环境…...

数据结构:递归的种类(Types of Recursion)

目录 尾递归(Tail Recursion) 什么是 Loop(循环)? 复杂度分析 头递归(Head Recursion) 树形递归(Tree Recursion) 线性递归(Linear Recursion)…...

云安全与网络安全:核心区别与协同作用解析

在数字化转型的浪潮中,云安全与网络安全作为信息安全的两大支柱,常被混淆但本质不同。本文将从概念、责任分工、技术手段、威胁类型等维度深入解析两者的差异,并探讨它们的协同作用。 一、核心区别 定义与范围 网络安全:聚焦于保…...

在golang中如何将已安装的依赖降级处理,比如:将 go-ansible/v2@v2.2.0 更换为 go-ansible/@v1.1.7

在 Go 项目中降级 go-ansible 从 v2.2.0 到 v1.1.7 具体步骤: 第一步: 修改 go.mod 文件 // 原 v2 版本声明 require github.com/apenella/go-ansible/v2 v2.2.0 替换为: // 改为 v…...