详解制造业业务数据模型
业务数据在企业数字化转型或单体应用的开发中都是至关重要的。站在跨业务跨部门的企业数字化转型角度,离不开业务架构的设计,详细的业务领域和业务数据模型是后续应用架构和数据架构的必要输入。站在单部门单场景的信息化角度,应用程序的需求分析阶段输出的业务流程和业务数据模型也是后续概要设计和详细设计的必要输入。
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 次幂的背后
前言: 说实话,真的不爱写算法题相关的文章了,觉得没啥意义,但是对这种比较好玩并且简单,学会了就能很好提高算法效率的文章,还是要写一写,不哭不哭,你不会不是你的错,只是…...
java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别
UnsatisfiedLinkError 在对接硬件设备中,我们会遇到使用 java 调用 dll文件 的情况,此时大概率出现UnsatisfiedLinkError链接错误,原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用,结果 dll 未实现 JNI 协…...
Objective-C常用命名规范总结
【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名(Class Name)2.协议名(Protocol Name)3.方法名(Method Name)4.属性名(Property Name)5.局部变量/实例变量(Local / Instance Variables&…...
1688商品列表API与其他数据源的对接思路
将1688商品列表API与其他数据源对接时,需结合业务场景设计数据流转链路,重点关注数据格式兼容性、接口调用频率控制及数据一致性维护。以下是具体对接思路及关键技术点: 一、核心对接场景与目标 商品数据同步 场景:将1688商品信息…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词
Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵,其中每行,每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid,其中有多少个 3 3 的 “幻方” 子矩阵&am…...
【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看
文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...
Web后端基础(基础知识)
BS架构:Browser/Server,浏览器/服务器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存储在服务端。 优点:维护方便缺点:体验一般 CS架构:Client/Server,客户端/服务器架构模式。需要单独…...
AxureRP-Pro-Beta-Setup_114413.exe (6.0.0.2887)
Name:3ddown Serial:FiCGEezgdGoYILo8U/2MFyCWj0jZoJc/sziRRj2/ENvtEq7w1RH97k5MWctqVHA 注册用户名:Axure 序列号:8t3Yk/zu4cX601/seX6wBZgYRVj/lkC2PICCdO4sFKCCLx8mcCnccoylVb40lP...
ArcGIS Pro+ArcGIS给你的地图加上北回归线!
今天来看ArcGIS Pro和ArcGIS中如何给制作的中国地图或者其他大范围地图加上北回归线。 我们将在ArcGIS Pro和ArcGIS中一同介绍。 1 ArcGIS Pro中设置北回归线 1、在ArcGIS Pro中初步设置好经纬格网等,设置经线、纬线都以10间隔显示。 2、需要插入背会归线…...
