基于Java的ERP系统的设计与实现文档格式.doc
《基于Java的ERP系统的设计与实现文档格式.doc》由会员分享,可在线阅读,更多相关《基于Java的ERP系统的设计与实现文档格式.doc(8页珍藏版)》请在冰点文库上搜索。
![基于Java的ERP系统的设计与实现文档格式.doc](https://file1.bingdoc.com/fileroot1/2023-4/28/cdb41c7e-28c5-49af-8e64-55093746f1c2/cdb41c7e-28c5-49af-8e64-55093746f1c21.gif)
1009-3044(2012)23-5518-05
TheDesignandImplementationofERPSystemBasedonJava
GEYi,WANGTing-ting,YANShi-jun
(CollegeofElectronicandInformationEngineering,NanjingUniversityofInformationScienceandTechnology,Nanjing,210044,China)Abstract:
Therapiddevelopmentofinformationtechnologyhasspeededuptheprocessofmanufacturingenterprisemodernizationandinformationtechnology.ERPhasgottenmoreandmoreattentionwhichintendstomanagetheproductionreasonablyandsystematically.ThesystemwasdevelopedbasedonOracle10,usingJSP,Struts,Hibernate,SpringFrameworkandPL/SQLtobuildthetableaddedtotheOracledatabase,andalsoB/Sthree-tierstructure.Thesystemhasthefunctionsofusermanagement,rightsmanagement,maindatamanagement,billofmaterialsmanagement.
Keywords:
systemdesign
现代企业管理技术在物料需求计划和制造资源计划发展基础上产生了企业资源计划ERP。
ERP是一个集合企业内部的所有资源[1],进行有效的计划和控制,以达到最大效益的集成化信息管理系统。
ERP也是中国企业顺应历史潮流,走向世界市场的必然趋势。
ERP含着先进的管理思想,是企业提高生产效率,节约运营成本的重要手段之一。
一个好的ERP系统可以能够全面提升公司的工作效率和管理效能。
因此该文介绍一种基于Java的ERP系统。
1国内外研究现状
在国外的发达国家,MRPII/MRP的发展和应用己经比较普遍,很多的公司己经采用ERP解决了企业物料供需信息集成,目前全球化的供应链需求管理和敏捷制造技术,已经在很多中小企业应用MRP/ERP。
国外的ERP软件产品主要有SAP公司的R/3system,oracle公司的OracleApplieationsRlli等。
国外新一代的ERP系统在软件开发中融合了大量最新信息技术,使得一些系统支持传统的客户/服务器模式。
国内ERP系统为了适应中国国情,系统的开发与应用主要集中于传统ERP的核心功能,如物料需求计划、物料采购计划、生产管理等。
软件模块适用性强。
某些系统除了基本业务功能以外还提供某些程度的扩展。
2ERP系统分析
2.1ERP系统可行性分析
可行性分析的目的是使用最小的代价在尽可能短的时间里确定问题是否能够解决,其最根本的任务是对以后的行动方针提出建议。
2.1.1技术可行性
技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,软硬件配置是否满足开发者需要等。
本系统采用的是Java编程语言[2],使用的是Oracle数据库和B/S(Browser/Server)结构[3],这些技术的使用都使得开发工作得以顺利的进行,能够满足系统设计在技术和硬件设备上的条件。
2.1.2经济可行性
经济可行性分析主要分析系统的经济效益能不能超过它的开发成本。
本系统的开发以计算机为基础,使用计算机对资料加以管理,不仅可以减少大量的人力,而且可以更加科学、高效的管理,在经济上是可行的。
2.1.3操作可行性
操作可行性分析主要分析系统的操作方式在用户组织内行不行得通。
本系统借助于网络,不仅简单易用,界面形象,只需点击相应的按钮就可以完成各种操作,方便用户查询,而且将实现办公的网络化和无纸化,有利于减轻工作负担,提高工作效率,在操作上是可行的。
2.2ERP系统需求分析
需求分析是的任务就是解决“做什么”的问题,就是要全面的理解用户的各项要求[4],并准确地表达所接受的用户需求,是介于系统分析和软件设计阶段之间的桥梁。
2.2.1系统功能需求
通过和企业相关人员的交流、沟通以及对该企业原有系统的分析、理解,系统需要用户管理、权限管理、主数据管理、物料清单管理、订单管理、生产计划管理、供应商管理、报价管理、用户账户的管理以及权限和安全性的管理、容错管理等功能。
2.2.2系统性能需求
在本系统中,系统需要达到实用性高、系统的操作简单易行[5]、技术先进、安装使用简便、代码可读性好等性能要求。
2.2.3系统数据流图
数据流图(DFD)是一种图形化技术,它描绘信息流和数据从输入移动到输出的过程中所经受的变换。
,数据流图只需考虑系统必须完成的基本逻辑功能,完全不需要考虑怎么具体地实现这些功能。
本系统的数据流图如图1所示。
3ERP系统设计
3.1ERP系统总体框图
本系统采用J2EE三层架构,分为表现层、业务逻辑层和数据模型层。
MVC三层体系[6]将业务规则、数据访问等操作放置于中间层处理,客户端不直接与数据库交互,而是通过控制器与中间层建立连接,再由中间层与数据库交互。
表现层采用JSF,主要采用JSF的组件。
中间层采用Struts+Hibernate+Spring,数据库采用的是Oracle数据库存放数据,具体的总体框架如图2所示。
图2系统总体框图
3.2ERP系统功能设计
经过前期的需求分析和进一步的研究,总结出该平台需要完成的一些具体功能,分析如下:
(1)管理员
增加用户:
增加普通用户。
用户管理:
负责管理用户的注册,对用户信息更改。
增加供货厂商:
管理员同样可以按目录找到所需的资料,单击资料名可以浏览该资料。
增加供货厂商的详细信息。
提交订单:
根据库存和生产计划提交企业订单。
(2)物料部门人员
列出原料厂商:
列出供货商的ID,供货种类,以及报价等
列出原料:
原料ID,数量,价格等
(3)生产工艺部门人员
列出厂商类型:
生产厂家的类型
增加清单:
产品清单
查询清单:
(4)销售部门人员
列出订单:
产品订单,包括ID,价格,日期等
列出订单详情:
(5)生产部门人员
列出厂商:
列出厂商ID,类型等
列出产品类型:
产品ID,类型等
本系统设计分为两个部分:
前台设计(用户使用)和后台设计(管理员使用)。
3.3数据库设计
在系统的设计中,数据库设计的重要性是不言而喻的。
通过进行正规化的表格设计,可以是代码更具有可读性,更容易扩展,从而也会提升应用的性能。
3.3.1数据分析——数据库中表的建立
本系统数据库设计是在选定的数据库管理系统基础上建立数据库的过程,包括概念结构设计、逻辑结构设计和物理结构设计三个阶段[7]。
数据库的概念设计完成概念模型(E-R模型图)的设计。
数据库逻辑设计将概念设计中所得的E-R图转换成等价的关系模式,然后对其进行规范化、适应DBMS限制条件的修改,满足性能、存储空间的调整等处理,最终得到下述对应的关系数据模型:
(1)USER表(用户id,用户名,密码,邮件);
(2)ROLE表(角色id,角色名,roledesc,旧角色名);
(3)MENU表(菜单id,菜单名,菜单链接);
(4)USER_ROLE表(用户id,角色id);
(5)ROLE_MENU表(菜单id,角色id);
为了便于在数据库中建表,将以上定义的表转换成对应的英文形式,如下所示。
(1)T_USER(USERID,PASSWORD,USERNAME,MAIL,OLDUSERNAME,OLDPASSWORD).
(2)T_ROLE(ROLEID,ROLENAME,LAYER,NAME,VERSION).
(3)T_MENU(MENUID,MENUNAME,MENULINK).(4)T_USER_ROLE(USERID,ROLEID).(5)T_ROLE_MENU(ROLEID,MENUID).
数据数据库物理结构设计的任务是选择合适的存储结构和存取方法,主要目的是提高数据库的性能和有效的利用存储空间。
本系统的数据库主要有T_USER表,T_ROLE表,T_MENU表,T_USER_ROLE表和T_ROLE_MENU表等。
3.3.2数据库的建立
本系统数据库的建立使用的是PL/SQL[8]完成的,Hibernate作为持久层,将JDBC做成了一个非常轻量级的对象封装,这样程序员在与数据库进行交互时可以不用书写大量的SQL语言。
使用JDBC连接ORACLE数据库的Context.xml内容为:
name="
o10g"
type="
javax.sql.DataSource"
password="
sun"
driverClassName="
oracle.jdbc.OracleDriver"
maxIdle="
2"
maxWait="
5000"
username="
scott"
url="
jdbc:
oracle:
thin:
@localhost:
1521:
orcl"
maxActive="
10"
/>
PL/SQL的建表界面如图3所示。
3.4ERP系统详细设计与实现
详细设计阶段的根本目标是确定应该怎样具体地实现所需求的系统,得出对目标系统的精确描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。
详细设计的结构基本上决定了最终程序代码的质量。
系统详细设计主要有以下几个:
(1)系统首页设计:
界面的设计采用的是JSP支持的STRUTS标准组件进行文本的显示,文本输入,下拉列表等操作。
在取信息时,使用JSTL标签库,将相应的Bean里面的内容取出来。
该模块的实现过程是:
把用户名和密码传到后台,查询数据库进行数据校验,如果成功返回到成功页面,否则在request中放入不成功信息,返回到登陆页面。
如图4所示。
图4ERP系统首页
(2)用户操作界面设计:
点击左侧的菜单,可以对对应菜单下的功能进行操作,图5示的是管理员的菜单,可以对用户,用户菜单等进行操作。
该页面分成有JSP分成三个Frame,分别是顶层的Fame,左侧的Frame和主操作区的frame。
其中顶层的frame显示用户名,现在时间和退出系统操作等。
图5用户操作面图
(3)管理员菜单及功能设计:
管理员菜单分成两部分,列出工作和列出用户;
其中列出工作指的是管理员所能看到的登陆角色,分别是:
管理员,生产部门人员,销售部门人员,物料部门人员,生产工艺部门人员。
如图6所示。
该管理员操作权限很高,可以更改和删除工作种类,也就是可以自定义用户角色。
图6管理员操作界面图
此外还包括生产部门人员菜单管理设计、生产工艺部门菜单设计、物料部门人员菜单设计、销售部门人员菜单设计等。
3.5ERP系统测试
系统测试主要是对程序的各种的错误、漏洞,进行了及时地、相应地处理。
调试的工作贯穿了整个设计的过程。
在程序编写中,及时发现并排除在系统分析,总体设计和编码等阶段所产生的各种错误。
一般的测试主要包括单元测试、集成测试、系统测试等。
在本测试中,对ERP系统主要完成了以下几个测试:
(1)对用户权限管理进行了测试,用户名信息错误,密码错误都会进行相应的提示;
(2)对新增供货厂商的操作,供货厂商名称和厂商信息是不能为空的,供货厂商名或备注信息为空则提交不成功,厂商名为空时与备注为空时都有相应提示;
(3)对报价系统进行了测试,当某栏输入为空点击提交时,会报错提示“某栏不能为空”,只有当所有栏都输入有效数值时系统方可以提交报价。
4结论
本ERP系统主要是为实现企业资源管理而开发的,在该系统中,普通用户可以通过检索查询订单,报价,供应商。
管理员在后台不仅可以进行用户的一般操作,还可以管理用户账号,添加、删除用户的角色等。
系统经过测试,各项指标都达到预期效果,能够较好的完成所预设的功能,具有较好的应用价值。
后续的工作可以继续完善邮件功能和出错处理,使系统更加人性化。
参考文献:
[1]陈世军.实施ERP系统全方位改革企业管理[J].印刷杂志,2012
(1):
29-31.
[2][美]BruceEckel.Java编程思想.[M].北京:
机械工业出版社,2003.
[3]陈吉平.构建Oracle高可用环境:
企业级高可用数据库架构、实战与经验总结[M].北京:
电子工业出版社,2008.
[4]张海藩.软件工程导论(第5版)[M].北京:
清华大学出版社,2008.
[5]朱新征.ERP系统应用设计分析[J].硅谷,2012(10):
38-39.
[6]张卫琴.精通Struts:
基于MVC的JavaWeb设计与开发[M].北京:
电子工业出版社,2002.
[7]萨师煊,王珊.数据库系统概论[M].北京:
高等教育出版社,2000.