第一章 引言
1.1 研究背景
传统的仓库管理采用人工记账的方式,随着计算机技术和自动化技术的日益更新,越来越多的企业使用计算机和自动化技术来管理仓库,建立了各种各样的仓库管理系统和自动化分拣仓库。由于不同企业的仓库管理的物资材料各不相同,各种业务流程也有差异。由于管理体制的不同,仓库需要提交的统计报表也各不相同。而且很多自动化仓库系统的开发商各不相同,这就造成了仓库管理与自动仓库的接口各不相同。因此,大多数企业的仓库管理系统都采用了定制开发的模式,以适应本企业的具体管理办法和方案。[7]四川省电力公司眉山公司仁寿供电局已经建立了自己的自动立体仓库,但只是实现了仓库的分拣监控自动化,还没有真正的综合仓库管理系统,账面等管理信息仍然是传统的电子表格的方式,更没有将仓库业务集成到整个的企业管理信息系统之中,缺乏统一管理的模式,这就需要建立一个统一的仓库管理系统,以提高劳动生产率和改进管理流程。本文就是基于该系统项目的实施进行设计研究。
1.2 研究意义
供电局内有多个生产性班组,每个班组都有大大小小工器具、备品备件若干件。各个班组每次需要外出修理或安装时,都需要领取相应的工器具和备品备件,而每次回到局里的时候都要将工器具等归回仓库集中存放。按现有的管理模式对班组内的物品管理有较高要求,传统的管理方式方法不能满足现有要求。今天的仓库管理作业已十分多样化,复杂化,靠人工去记忆去处理已十分困难,且出现错误的可能性很大。如果不能保证正确的进出,就会导致浪费时间,影响正常的生产作业,以致造成严重后果。
而且供电局仓库现在已经更新为自动立体仓库,虽然立体仓库有自己的监控控制系统,但仅仅局限于物资的分拣和立体设备的管理监控,对于仓库业务的整体流程和账目管理,以及与整个供电局的业务系统的集成,还缺乏统一的管理机
...................................
第二章 系统主要技术简介
2.1 J2EE 技术
Java[1][2]是由 Sun Microsystems 公司于 1995 年 5 月推出的 Java 程序设计语言和 Java 平台的总称。Java 平台由 Java 虚拟机(Java Virtual Machine,简称 JVM)和 Java 应用编程接口(Application Programming Interface,简称 API)构成。API独立于操作系统,可分为基本和扩展部分。安装 Java 平台之后,Java 应用程序就可调用这些标准接口来调用操作系统的API,以实现计算机程序的运行。
J2EE(Java 2 Platform, Enterprise Edition)是一套应用开发的技术架构,制定了将 Java 程序运行到网络上的各种细节和规定。它的组件架构的设计,使得应用程序的开发和部署都更加的简便而且具有良好的可移植性和安全性。只要符合此框架规范的程序,均可在网络上高效运行,也给第三方开发应用程序或程序运用框架指明了开发目标和遵循的规范。
2.2 SSH 架构
SSH 是三种框架的名称简写,即 Struts 、Spring 和 Hibernate。 Struts 是 MVC设计模式的完美体现。Spring 则是具有轻量级的控制反转(IoC)和面向切面(AOP)特点的容器框架。ibernate 是对象关系映射框架,用于数据持久化。[6]2.2.1 struts2
Apache Struts 2 即是之前大家所熟知的 WebWork 2,与 Struts 1 相比,有很大的改进,它是以 WebWork 为基础发展起来的。具有 Struts 1 和 WebWork 的优点,但在稳定性和性能方面都有了很大提升。是一个设计完善的,可扩展的 JAVA EEweb 框架。[8]如图 2-1 所示,当浏览器传来的 HttpServletRequest 进入 Struts2 的 web 容器后,请求经过 ctionContextCleanUp 等过滤器,而后 FilterDispatcher 核心控制器将调用 ActionMapper 以得到一个包含 Action 详细信息的 ActionMapping 对象。然后ActionProxy 会调用 ConfigurationManager 从 struts2 的配置文件 struts.xml 中读取
.................................
第三章 系统需求分析.............................................................................................................10
3.1 需求概述 ....................................................................................................... 10
3.2 系统功能性需求分析 ................................................................................... 10
3.2.1 仓库日常业务需求分析 ..................................................................... 13
3.2.2 备品备件管理需求分析 ..................................................................... 15
3.2.3 工具器具管理需求分析 ..................................................................... 16
3.2.4 统计分析功能需求分析 ..................................................................... 16
3.2.5 库存计划管理需求分析 ..................................................................... 19
3.2.6 仓库情况可视化需求分析 ................................................................. 20
3.2.7 安全性需求分析 ................................................................................. 21
3.2.8 性能需求 ............................................................................................. 22
3.2.9 系统软硬件支持需求 ......................................................................... 22
3.4 本章小结 ....................................................................................................... 22
第四章 系统总体设计.............................................................................................................23
4.1 研究工具及开发环境 ................................................................................... 23
4.2 系统设计原则 ............................................................................................... 23
4.3 系统总体构架设计 ....................................................................................... 24
4.4 系统拓扑结构设计 ....................................................................................... 24
4.5 系统数据库设计 ........................................................................................... 25
4.5.1 系统概念模型结构设计 ..................................................................... 26
4.5.2 系统数据库表设计 ............................................................................. 28
4.6 本章小结 ....................................................................................................... 32
第五章 系统设计与具体实现...............................................................................................33
5.1 系统设计与实现概述 ................................................................................... 33
5.1.1 系统体系结构 ............................................................................................ 33
5.1.2 系统功能模块划分 .................................................................................... 33
5.2 入库模块的设计与实现 ............................................................................... 34
5.2.1 模块功能结构设计 .............................................................................. 34
5.2.2 模块功能介绍 ..................................................................................... 36
5.3 出库模块的设计与实现 ............................................................................... 37
5.3.1 模块功能结构设计 .................................................................................... 37
5.3.2 模块功能介绍 ............................................................................................ 38
5.4 库存计算模块的设计与实现 ....................................................................... 40
5.4.1 模块功能结构设计 ............................................................................. 40
5.4.2 模块功能介绍 ..................................................................................... 41
5.5 关键技术及难点的解决方案 ....................................................................... 43
5.5.1 分页组件的实现 ................................................................................. 43
5.5.2 组态软件的 web 实现 ........................................................................ 43
5.5.3 用户权限管理 ..................................................................................... 44
5.5.4 统计图的实现 ..................................................................................... 45
5.5.5 Struts2 集成 Spring 之后上传问题 ..................................................... 47
5.6 本章小结 ....................................................................................................... 48
...........................
第六章 系统测试
6.1 测试目的
为了找出软件开发过程中存在的不足,提高软件的开发质量,进行软件测试是开发一个软件势不可缺少的部分。通过进行软件测试不仅可以找出软件开发过程中存在的不足,还可以提高软件的开发质量,
6.2 术语、定义和缩略语
黑盒测试:又叫做功能性测试。就是以用户的角度,对系统的所有功能进行测试,通过以用户的身份体验使用系统中的功能,找出系统存在的缺陷和不足的过程[40]。白盒测试:又叫做结构性测试。就是专门的测试人员针对程序的内部结构进行测试,通过对内部结构的检测来对比是否满足计划规格说明书的规定,检验程序的每个模块是否达到预期的目的而正常的工作[43]。
第七章 总结
随着供电局业务的蓬勃发展和立体仓库的上马,传统的分散粗放型的管理仓库已经不适应现有形势的需要,怎么样更科学、方便、智能化的管理仓库一直在讨论和研究的重要课题。无论怎样,有一个好的仓库管理信息系统就是供电局物资供应的根本保障。本系统的设计与实现,就是在这样一个大的环境下产生的。通过本系统可以尽量使得仓储业务实现自动化的方式。在减少枯燥繁杂的仓库手工劳动的同时也保证了数据的准确性,提高了仓库的绩效。
系统主要采用 B/S 构架模式,采用 B/S 的原因在于它的方便性,只要你拥有浏览器就可以随时随地的使用本系统,避免了安装客户端软件的局限性和单一性。系统采用的技术路线是 jsp 作为前台开发,使用 SSH 框架作为开发标准,使用 jsp结合 JQuery 是因为其拥有着较好的兼容性,而且它会给用户提供丰富多彩的交互方式和交互效果。服务器端主要是采用 J2EE 实现,分别实现业务逻辑层和数据模型层,通过 J2EE 技术实现的服务器端具有“低耦合”的特点,易于以后的维护和扩展。
在此系统的设计开发过程中,本人主要负责系统的总体架构、需求分析和概要设计,以及部分详细设计和部分的重点功能模块的编码工作。虽然系统功能并不算复杂,但还是需要针对实际情况进行设计,并按照软件工程的思想和方法进行对现实的抽象。通过对供电局的实际调研,并对仓储业务流程进行了详细的考察和分析,对仓库管理信息系统的良好应用前景和实际应用价值进行了探讨。并完全按照软件设计开发的流程,进行需求分析、概要设计、详细设计、具体功能模块的实现,以及最后的测试。从而保证系统在以后的实际运行中具有较强的稳定性和健壮性。当然,由于各种客观情况,本系统在设计与实现中还存在着一些问题有待于进一步解决:由于系统是首次使用,很多仓储的原始数据还在收集阶段,所以在预测库存方面,采用了简单的指定安全库存时间的方法,而随着时间的推移,原始数据的积累,这种简单方式必然还有误差,才今后的工作中,应该研究更多参数,更多维的算法,让库存计划变得更加智能化。在系统中,还有一个缺乏的方面就是还没有对库位进行优化。造成这个问题的原因同样是由于数据的缺少。争取今后在高版本的开发中,使用收集的真实数据,使用遗传算法等,对库位做更加进
参考文献(略)