狂风暴雨——风云突变:基于数据流层Namsara的ERP系统架构描述

摘要:
简略介绍汇金百货ERP系统架构。

我目前正在参与开发汇金百货ERP系统,主要负责数据库开发维护、系统整体框架、库存模块。报表模块、系统模块。此项目从需求开始经历了1年都,目标在今年3月左右正式取代原版老系统。
能够参与这个项目的需求讨论、数据库分析、模块开发、测试等,是领导和战友给我的机会。

首先要说的就是,因为存在保密之类无聊的协议,我不能公开ERP系统,不能涉及业务流程,所以我把我设计的一种一部分非业务部分拿出来,希望得到大家的建议,让自己不断学习。

我设计的库存模块的特点:使用其他模块生成的数据进行计算、合并、重组。例如A合同B供应商的商品进货,修改库存,生成到货单之类的。

从这个片断可以看出,库存模块大部分是对数据库数据操作(当前的大部分ERP系统一样,例如南北软件)。因为整个模块的架构如下图:

持久层(Persistence Layer):
概念:专注于实现数据持久化应用领域的某个特定系统的一个逻辑层面,将数据使用者和数据实体相关联。
我自己重新设计了一个持久层,其功能包括:写数据库schema的配置文件自动生成对应的CRUD操作;特殊SQL配置;临时自定义SQL;缓存操作;主键自动生成;分布式同步操作;事务操作等,具体可以看Nemuria架构的介绍。

数据流层(Dataflow Layer):
 就是本文即将介绍的Namsara层,通过xml的配置文件,可以实现任意需求的数据操作,不需要写一句代码!有了我目前正在开发的IDE开发环境,开发ERP可以向MDA方向靠拢。具体下文介绍。

业务流层(Workflow layer):
用一个例子说明:一个商品的订货要经过下定单、单据审核确认、单据发出、商品接受、异常商品处理、过时单据处理、异常单据处理等流程。如何组织这些流程就是业务流的任务。他通过合理调用数据流实现任意的业务流搭配。

界面层(专业一点的说法是表示层,我土。。。):
就是些漂亮方便+带提示+回车自动对焦+XP风格+SAP基调+。。。。。的界面满足客户极其变态无聊无礼白痴的需求。我们项目组也自己开发了很多控键。具体不说了。

尾声:
目前,我们ERP项目中的持久层+数据流层已经完全使用XML代替了代码,剩下的业务流层框架正在开发中,估计不会用在这个项目里面,至于界面,我认为是最难的,那些无聊白痴没脑无礼的顾客的需求实在太变态,今后还要多参考一些开源的框架才行。不过一套ERP系统采用MDA方法开发我的感觉并不遥远。

下次预告:
ERP数据流层核心思想。有了思想,就可以在此基础上添加自己的创意想法,使开发ERP变得更加好玩!正如新概念4里面说的: Idea is important!

转载于:https://www.cnblogs.com/zc22/articles/647625.html

狂风暴雨——风云突变篇:基于数据流层Namsara的ERP系统架构描述相关推荐

  1. 狂风暴雨——雨过天晴篇:数据流层Namsara发布

    狂风暴雨--雨过天晴篇:数据流层Namsara发布 下面将发布Namsara的源代码,文档. Namsara文档 /Files/zc22/Namsara_User_Manual_Script.pdf ...

  2. 狂风暴雨——电闪雷鸣篇:数据流层核心思想揭秘

    狂风暴雨--电闪雷鸣篇:数据流层核心思想揭秘 概述: ERP的大部分处理针对数据库的数据,因此我设计了一套规范去约束这些处理,采用了数据流的思想,得到了数据流层框架Namsara. 核心模块: Nam ...

  3. 狂风暴雨——雨过天晴篇:数据流层发布

    狂风暴雨--雨过天晴篇:数据流层发布 下面将发布Namsara的源代码,文档. Namsara文档 /Files/zc22/Namsara_User_Manual_Script.pdf Namsara ...

  4. 今天给大家介绍一篇基于javaWeb的汽车订票系统的设计与实现

    项目描述 临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等.这里根据疫情当下,你 ...

  5. 基于BPMN2.0的工单系统架构设计(下)

    版权声明: 本文为博主原创文章,未经博主允许不得转载.关注公众号技术汇(ID: jishuhui_2015) 可联系到作者. 在上两篇文章中,介绍了BPMN2.0和工作流定义语言(以下简称WDL),以 ...

  6. 基于微服务的电商系统架构

    分层 微服务设计 微服务微内核 基于微服务的电商系统架构 转载于:https://www.cnblogs.com/davidwang456/articles/9221369.html

  7. 基于java前后端分离Erp系统计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署

    基于java前后端分离Erp系统计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 基于java前后端分离Erp系统计算机毕业设计源码+系统+lw文档+mysql数据库+调试部署 本源码技 ...

  8. 数据查询和业务流分开_基于大数据的舆情分析系统架构 - 架构篇

    前言 互联网的飞速发展促进了很多新媒体的发展,不论是知名的大V,明星还是围观群众都可以通过手机在微博,朋友圈或者点评网站上发表状态,分享自己的所见所想,使得"人人都有了麦克风".不 ...

  9. 基于大数据的舆情分析系统架构

    前言 互联网的飞速发展促进了很多新媒体的发展,不论是知名的大V,明星还是围观群众都可以通过手机在微博,朋友圈或者点评网站上发表状态,分享自己的所见所想,使得"人人都有了麦克风".不 ...

最新文章

  1. python词汇-基本 Python 词汇
  2. Oracle数据库实用脚本
  3. 特征值 与特征向量(机器学习算法原理与实践)
  4. matlab 折线图_MATLAB作图实例:13:折线图和条形图的双轴图
  5. fiddler抓包工具简介
  6. 12.MYSQL高级(二)
  7. Linux下调tcp最大参数
  8. 数据推送选择GB28181、RTSP还是RTMP?
  9. 第十一届中国开源黑客松+中国程序员节重磅来袭,这里将有你不能错过的精彩。...
  10. Python基础——timeit模块
  11. Expert 诊断优化系列------------------你的CPU高么?
  12. sqlyog中导出sql语句
  13. 《机器学习算法竞赛实战》整理 | 六、模型融合
  14. Ti芯片 bq76940锂电池管理系统BMS资料,源程序+PDF原理图,主控stm32f030。
  15. JAVA常用加密解密算法Encryption and decryption
  16. leach协议c++代码_leach和leach-c协议仿真
  17. 伦敦交通局设置较低的速度限制
  18. DM数据库中数据字典表分类及常用查询。
  19. 修改战网服务器,战网该怎样改地区?
  20. Microsoft visio 2010之简单使用

热门文章

  1. docker-compose部署MinIO分布式集群
  2. css3 text-overflow制作固定区域的博客列表
  3. 今天是个好日子,本站第248个社区 派森特给站 开张了
  4. Synaptics 蠕虫病毒解决方法
  5. CentOS 7代理设置(Yum/cURL/Wget/Docker)
  6. Dubbo重启一年,尚能饭否?
  7. 计算机类论文摘要,★计算机应用类论文摘要范文计算机应用类论文摘要写
  8. 记网站部署中一个奇葩BUG
  9. 富士康代工变弱?苹果倒戈和硕
  10. TI OMAP4XXX 协议处理器(4460应用于三星、华为等手机)