APP下载

基于MVC架构的ERP财务管理模块的设计与实现

2021-03-31徐云松曹媛媛王肖奕

微型电脑应用 2021年3期
关键词:架构界面数据库

徐云松, 曹媛媛, 王肖奕

(山东青岛烟草有限公司, 山东 青岛 266071)

0 引言

随着经济全球化的迅速发展,我国的企业竞争越来越激烈,企业的电子商务需求越来越大。构建一套完整的适应信息化的管理机制对企业来说至关重要,而这一切都要依赖于ERP来实现,企业ERP财务管理系统可以统筹企业中的人、财、物等信息资源[1]。为了高效地处理管理企业财务信息的事务,提高企业的综合竞争力和优化能力,针对企业财务管理系统灵活性差、维护困难的问题,基于MVC(Model-View-Controller)的设计模式可以解决上述的难题,MVC的主要核心思想就是复用,提高复用率。ERP系统在国外是由MRP发展起来的[2],从单一式财务管理逐渐发展成全面涵盖所有经济内容。并且针对ERP软件的复杂性和低成功率,IBM、SAP、BEA和Oracle公司等共同制定和部署MVC架构的产品以克服ERP的缺点。在国内,MVC架构模型逐渐本地化,企业采用Web服务实现C/S或者B/S模式[3]。业务逻辑设计的MVC架构有效地避免了系统软件开发周期比较长的缺点,提升了企业的运转效率。

1 相关技术概述

1.1 MVC设计模式

MVC是目前常见的一种软件设计模式,是Java平台的推荐设计模型,其对Web的开发应用提供合理的分析方法,通常用来连接一个应用的整体流程。MVC的处理流程图,如图1所示。

图1 MVC组件关系图

依照分层原理,依次为模型层、控制层和视图层[4]。视图层则表示为Web应用的交互界面,有可能是HTML、XML或Applet界面。而对于系统业务流程上的数据处理则需要模型层的操作,用户界面的数据输入和数据请求过程传递给控制层与模型层[5]。模型层的内容是业务流程的数据操作以及业务规则的制定,依照业务规则进行业务模型设计是MVC架构中的核心研究内容,对于应用模型的抽象化处理依然按照适当的抽象层次,从而提高模型的重用性[6]。控制层的作用就是接收用户的服务请求并完成视图与模型的对接,不做任何的数据操作动作,因此模型与视图的对应关系存在一对多或多对一的关系。

MVC的3个层次也分别对应软件开发的上、中、下层。上层是显示界面层;中层是控制层;下层是模型层。上层调用下层的数据与服务[7],并且还要保持每个层次的独立性,只暴露出连接接口,封装具体的实现细节,如图2所示。

图2 MVC模块层次图

MVC的处理过程就是三层依次配合,最后返回结果的流程,如图3所示。

图3 MVC处理流程图

由此,也可以总结出,MVC设计模式的优点包含多视图对应单模型、无格式的模型数据和软件工程合理化管理[8]。MVC设计模式增加了应用的灵活性和个性化。

1.2 数据挖掘

随着ERP系统的普及,对于IT的决策分析支持算法也在不断的升级,为了适应更新的决策算法以分析数据中的规律。存储在ERP系统中的历史财务数据作为数据挖掘的数据源。常见的算法包含决策树算法、聚类算法、遗传算法和神经网络等[9]。决策树算法在ERP系统中是比较常见的算法,在二叉树的基础上在每个分支作为数据特征,将二叉树叶作为数据集合参照特定的数据特征依次实现数据分割[10],直至完成所有数据分类,如图4所示。

图4 ERP系统决策树示意图

在此基础上构建C4.5算法,依照信息增益率的概念分析决策树的属性进行剪枝操作[11]。信息增益率,如式(1)。

(1)

计算数值大的信息增益率,完后根节点的选择建立决策树。

2 基于MVC架构的ERP财务管理模块的系统分析与设计

2.1 财务管理系统的总体需求分析与设计

传统的财务管理系统的软件已经无法满足企业的需求,需要对原有的ERP软件进行改造和升级,对现有企业的核心财务管理内容进行模拟仿真,在其中加入MVC设计模式思想,从而提高企业的内部效率,有效地对财务信息进行查询与存储。对于企业财务管理模式逐渐由核算型和管理型向集中式管理过渡[12],具备更好的财务管理模块,主要包括应收账款模块、总账模块、应付账款模块、固定资产模块、工资模块、成本管理模块和现金管理模块等。为了将企业预算、审核和监控进行完全的覆盖,在分析需求时,要考虑企业的总体布局、战略规划、设备管理、财务状况、资金运转、生产力规划和物料筹划等方面,从而指导企业的生产、库存、采购和销售[13]。

2.2 财务管理系统各子模块的功能分析与设计

在对需求进行分析后,本文设计基于MVC架构的ERP软件时,主要划分成两大部分,财务系统功能和系统管理两个子系统。用户根据自己的用户名和密码登录到系统中,进行其他的财务管理操作,包含凭证管理、账务管理、报表管理、工资管理、固定资产管理和财务分析等。一个标准ERP处理的基本流程,如图5所示。

图5 财务系统流程图

2.3 数据库设计

信息系统项目情况、项目使用情况和员工基本信息作为系统的主体。系统体系的架构应符合.Net开发原则[14],业务逻辑上包括对于服务的调用,如图6所示。

图6 Web服务的调用

对于数据库的设计,首先从概念模型入手,分别从用户管理概念数据、财务薪资概念数据、用户和项目信息管理概念数据来展开。用户和部门的管理信息实体分别是用户、角色、部门和部门类别。财务薪资管理对应财务的报销审核、薪资发放和奖金发放等。一个企业可以包含多个数据表信息。财务管理模块的数据表,如表1所示。

表1 财务管理数据表

而对于财务信息管理,其数据表应包含凭证表、分录历史表、凭证历史表、明细账簿、分类账簿、本年明细账簿、固定资产清单、员工清单、工资清单和工资发放表等。表单与信息应保持一对一的关系,部门的财务信息表的用途,如表2所示。

表2 财务信息表

接下来是进行系统部署设计,系统的部署包含Web Service服务器、Web服务器、文件服务器和数据库服务器,所有数据的操作对于数据访问层都是通过ADO.NET数据来完成的。

3 基于MVC架构的ERP财务管理系统的实现

3.1 系统开发环境

从上述的分析中系统采用基于J2EE的Web结构进行开发,操作系统为Windows Server 2012,数据库采用Microsoft SQL Server 2015,采用Tomcat 9.0的Web服务器,对于客户端则采用IE 9.0进行访问服务器,利用数据库连接字符串分配数据库的地址。Eclipse作为集成的开发环境,STRUTS的版本为1.2。使用的编程语言是Java语言,采用代码分离的设计模式,其特征是便于维护、调试,以及后续逻辑代码开发的复用。选择主流的开发框架SSH,其中包含采用Hibermate对象关系映射框架,利用JSON作为数据交换语言,AJAX+DOMAPI创建站点,满足系统设计的灵活性。根据前述的设计方法,解决方案的结构图,如图7所示。

图7 解决方案的结构图

以分层的方法实现业务逻辑代码,在编译后由Web服务进行封装,通过实现一个JSON Web服务器对业务处理层适配,经数据传递至持久化层,并将各个层次的数据存储到数据库中。

在客户端的表示层实现功能,需要启动host进行添加服务应用完成服务的调用。每个账户都有特定的角色,用户登录系统后,对于采购模块进行管理,对订单的内容进行维护。其界面的设计,如图8所示。

图8 订单采购管理界面

数据库的设计中包含企业员工的信息,一个产品具有编号、所属仓库、经办人、创建日期和创建人等。当查询员工的信息时,通过代理调用而成。其查询界面设计,如图9所示。

图9 商品库存浏览界面

当第一次进行界面加载时,可以通过“查询”按钮查询项目类别,用户完全掌握业务逻辑层的操作,数据库的数据集将界面操作联系在一起,组成整体的商品库存信息查询功能。

当企业财会人员使用财务信息管理时,主要按照项目的账目对报表进行编制,并且可以按照与其他企业的来往资金信息对项目财务管理信息进行编辑和复核,如图10所示。

图10 财务管理界面

3.2 基于MVC架构的财务管理系统功能实现

为了验证该ERP系统的性能与稳定性,主要考量Web服务器的应力测试和分析Web组件[15],采用黑盒测试的方法进行财务系统测试,保证数据在测试条件下,能够与真实应用的数据匹配在一起,而不是处于抽象的层次。为了掌握ERP财务管理系统的响应时间和并行处理能力,以每秒发送的平均请求数RPS作为客观评价的指标。该数值越大就表明系统的响应时间较快,当连接服务数目过大的时候,RPS的数值就比较低。当开始测试时候,利用LoadRunner编写脚本创建新的测试向导,并且导入测试内容,触发多路访问条件,获取测试结果。依据上述步骤建立的测试项,如表3所示。

表3 ERP系统响应时间测试场景结果表

在测试环境中,对基于MVC架构的ERP财务管理系统的时间响应能力的测试结果,如图11所示。

图11 系统平均事务响应时间的显示图

并发用户数目为100名时,此时的系统响应时间在0.995秒左右,CPU的利用率为51.58%;当用户请求服务数为50时,响应时间在0.556秒左右。通常来说,随着请求服务数目的增加,响应时间也会增加。当用户请求数目在100以内的响应时间保持在视为延迟可忽略的范围内,及时响应请求。

4 总结

ERP软件已经成为世界通用的企业财务管理系统,是企业必要的技术支撑。为了提高ERP财务软件的灵活性与松耦合性,采用MVC技术架构,从而使得企业财务模块的设计更加灵活,也为企业查询信息功能带来极大的便利,采用MVC技术模式对系统进行设计。本文通过设计财务、商品等数据的数据库,通过持久层适配,解决ERP的痛点,设计财务管理界面。通过构建整体的体系架构,分析后对服务实现、业务逻辑层和数据库等进行详细设计。基于MVC体系构建四层体系架构,对业务流程适当地建立模型,在界面实现后,利用黑盒测试软件对请求数目测试响应时间。经过测试,在100个请求服务数内,系统的响应时间在1秒内,CPU的利用率为51.58%左右,可以满足系统的性能,保证系统的功能与性能的全面性。在后续的研究中,可以进一步对ERP系统进行功能扩展,以支持更多的财务管理活动,完善更好的安全策略。

猜你喜欢

架构界面数据库
基于FPGA的RNN硬件加速架构
功能架构在电子电气架构开发中的应用和实践
国企党委前置研究的“四个界面”
基于云服务的图书馆IT架构
基于FANUC PICTURE的虚拟轴坐标显示界面开发方法研究
WebGIS架构下的地理信息系统构建研究
数据库
电子显微打开材料界面世界之门
数据库
数据库