苏果社区店库存管理系统分析与设计(源码)
摘要: 针对苏果社区店在库存管理上存在的效率低、保密性差等问题,根据其具体的业务流程,设计本库存管理系统。本系统的开发工具是MyEclipse,MySql为数据库管理软件,按照软件工程方法分析,设计结合了面向对象的技术,采用基于J2EE平台的多层架构,经过使用SSH技术,对各个功能模块进行了详细的设计和编码,最后完成了本系统的进货管理、销售管理、库存管理及系统管理等功能。本系统能很大程度提高工作效率,提高超市的信息共享能力、提高工作人员的正确性。关键字:java;MySql;库存管理;MyEclipseThe analysis and design of Suguo Supermarket Stock management SystemStudent majoring in Computer science and Technology Specialty Xiao Yao Tutor Guo XiaoqingAbstract: Aiming at the problems of low efficiency and poor security in stock management on suguo superment,according to the business process,we design the stock management system. By using Myeclipse as a development tool,Mysql as database management software, according to software engineering analysis method,,combined with the design of object-oriented technology,using multi multi tier architecture based on J2EE platform, by using SSH technology,,each module of the function have design detailed design and coding, Finally, the procurement management system, sales management,inve
*好棒文|www.hbsrm.com +Q: ^3^5`1^9`1^6^0`7^2#
ntory management and system management functions,through this system, It greatly improves working efficiency ,improve the information sharing capabilities and accuracy of the staff in the market.1 引言选题背景及意义苏果作为江苏省最大的零售商,在江苏省各个地区都有着其超市的分布。苏果的出售业绩于2011年超过了400亿元。因此,加强对库存的管理,对于稳定超市正常发展的意义十分重要[1]。为了实现超市的明确管理,很有必要对各类产品分类,但是超市产品的数量和种类也会随着超市规模的扩大而增多,这样就会让产品的信息量和产品信息随之增多,因而必须加强库存管理,迅速地反馈与销售有关的各种信息,使超市的运作效益得到保证,并提高苏果社区店的竞争力。通过设计库存管理系统,能大大的减少苏果社区店库存管理人员的工作负担,提高整体工作效率,大大的降低人工管理过程中的误差,本文作者结合江苏南京玄武区苏果社区店库存管理的相关需求,设计开发出了适应超市库存管理人员需求的苏果社区店库存管理系统。系统具备很多特点,能够使各个功能更加模块化、信息系统规范化得到增强,并且更合理地分配了工作,对于提高管理的质量和工作的效率很有帮助,具有高实用价值和高准确度。1.2 国内外研究现状 以比较传统的方式来进行管理,如使用手工记账等方式在国内还是十分常见的,还有使用库存管理系统的,但是其功能比较简单化。这些方式虽然有着一定的效果,但是还是存在着许多问题等待解决,比如效率普遍低下,能够完成的功能比较少等。库存管理系统不仅要对库存的剩余产品进行管理,还需要进行商品的入库上架以及相关的管理,这都是库存管理所能够满足的。关于库存管理的特点,管理化管理的定义,行业到现在为止还没有一个规范且盛行的说法。库存管理系统在超市管理系统中占据着很重要的组成部分,为了使库存管理能够得到最大的效益化,需要将计算机技术和库存管理理论集合起来。库存管理系统总共经历了三个阶段,从Material Require Planning到Manufacture ResourcePlanning,再到Enterprise Resource Planning的发展过程。在20世纪初库存控制理论首次被提出,它保障了库存管理系统的实施。它主要是使用量化方式来对库存管理进行模型建立,从多种方案中选择最佳策略。我国将于上1960年左右在库存管理系统上使用了计算机技术,那时候库存管理系统的最初模型已经初步具备,然而收到当时计算机软件跟硬件环境的限制,库存管理系统的功能也会受到一定的限制,不能够做到功能完善的库存管理系统。到了Manufacture Resource Planning时代的时候,库存管理系统已经相对比较成熟了,而基于B/S架构[3]的超市库存管理系统的优势十分明显,也很符合超市对于库存管理系统的需求。 通过查阅我国学生翻译的国外著作,可以发现我国的超市库存管理模式与发达国家的不同体现在很多方面,国外发展国家的库存管理模式为我们展示了已经成熟的范例。在库存管理方面从严管理,使库存管理人员的管理意识增强,让希望与压力共同存在,这是超市发展的首要条件。 总的来说,有不少学者从理论层面和库存管理体系的构建进行讨论,由于苏果社区店的发展,有关库存管理的新挑战也层数不穷,库存人员对超市库存进行管理也提出了一些新的看法,对于其内涵、本质、模式等也产生了不同认识。如果想进一步促进苏果社区店的发展,就很有必要深入研究关于库存管理的一些问题。1.3 苏果社区店库存管理系统达到的目的及结论本系统从苏果社区店的实际情况出发,专门针对其设计了本库存管理系统,通过本系统,能很大程度提高他们的工作效率,提高超市的信息共享能力、提高工作人员的正确性。在苏果社区店,库存管理人员仍然是仓库的计划员,这些人员的工作十分被重视,这些人和市场部门以及生产部门协同工作,而这是整个企业组织十分重要的组成部分,由于商品货物信息准确性要高,因此需要有使用的管理系统,可以简洁明了的反映出真实情况。综上所述,苏果社区店库存商品管理系统应该由六大模块组成,包括基础资料、系统管理、库存管理、进货管理、统计报表、销售管理。主要功能详细说明如下:基础资料:对供应商、客户、商品进行管理。系统管理:包括数据库管理和用户管理,主要实现数据库的备份和恢复,用户的增删查改等功能。库存管理:能实时的反映当前超市库存商品的信息。统计报表:分别对客户、商品、供应商进行统计,对商品的销售情况进行统计,便于确定经营策略。进货管理:包括进货、退货、退货单据查询、进货单据查询等功能,实现对商品的库存进行管理。销售管理:包括销售出库、销售单查询、客户退货查询、客户退货功能,实现对商品销售的管理。2 系统开发工具及技术2.1 系统开发工具为了提高系统的开发效率,在开发过程中,使用了如MyEclipse10.0集成开发工具、powerdesiner15.1数据库设计工具,MySql等,下面分别对系统中采用到的开发工具做简单的介绍。2.1.1 企业级集成开发环境:MyEclipse10.1 Myeclipse是一种企业级开发工具,是对eclipse工具的扩展,它是一个开源的、基于java的可扩展平台,它自身集成了编码、调试、测试、发布的功能,支持HTML、css、spring、hibernate等,除此之外,还可以按照自己的需求,加入自己的插件,利用myeclipse,可以大大的提高项目开发的效率。2.1.2 数据设计工具:PowerDesiner15.0Powerdesiner是sybase公司的一个用于项目开发过程中数据库设计的一个工具集,能够方便的对系统进行前期的数据库分析,它几乎包含了数据库模型设计当中的全部过程。Powerdesiner能够绘制系统的数据流程图,需求分析中的概念模型图,和物理模型图。通过物理模型,能够直接生成对应的数据库代码。除此之外,还能和目前很多常用的软件开发工具,比如powerbuild、vb等结合使用,减少整个系统的开发周期。目前,powerdesiner是开发人员进行数据库设计过程中广泛使用的工具。本系统使用powerdesiner对系统进行物理模型设计,通过物理模型之间生成了mysql的数据库脚本,大大提高了系统开发效率。2.1.3 服务器:Tomcat6.0Tomcat是目前广受欢迎的一款开源服务器,被广大的程序开发者使用,它不仅能节约系统内存开销,还能支持负载平衡和邮件服务等常用功能;由于是开源服务器,任何人都能对它进行更改,因此,tomcat在不断的改进和完善。Tomcat是主要应用在小型的系统和同时访问量不是很大的场景下,所以是开发和调试jsp程序的首选服务器。2.1.4 数据库:MySql5.6mysql是一个小型的关系数据库管理系统,它不仅速度快,可靠性高,并且支持多线程和多核处理器,除此之外,mysql还是开源的,综合以上原因,本系统采用mysql作为数据库管理系统。2.2 SSH技术 SSH是mvc框架的一个集成框架,是目前被广泛使用的主要用于web应用开发的开源框架。SSH从系统功能上分为三层:表示层、业务层、持久层,通过对系统进行分层,可以帮助开发人员在短时间内搭建结构性强、复用性强、可扩展性好的web应用。SSH是struts、hibernate、spring的缩写。Struts是作为整体的基础架构,对mvc进行分离,主要负责业务的跳转,使得显示层和逻辑层分离。Hibernate主要负责持久层,负责数据库的连接。Spring主要是对各种类进行管理,具体过程是:根据面向对象的分析方法根据实际需求提出若干模型,这些模型是现实生活中的一个个对象,将这些模型转换为基本的java对象,然后对这些基本对象进行操作,具体是编写基本的dao接口,并给出他们的实现类,dao通过hibernate与数据库进行对应,dao与dao的实现类的管理则有spring进行管理。 系统的基本业务流程为:在显示层,用户通过jsp页面与服务器进行交互,接收用户的请求和相应,然后通过struts的配置文件,将接收到的request交给对于的action进行业务逻辑处理。在业务层中,管理具体服务组建的spring ioc负载向相应的action提供业务模型组建和对应组建的业务逻辑类,同时提供事物处理、缓冲池等用来提供系统性能和保证数据完整性。在持久层中,通过hibernate完成类和数据库表之间的一一映射,处理dao层的请求数据,返回处理结果。 通过上面的方法,实现了业务逻辑和持久层之间的分离,降低了各个层之间的偶合,同时实现了试图、控制器和模型的分离,这样,如果前端布局发生变化,模型层只需要稍做改动,即使数据变化,对前端也不会有影响,很大程度的提高了系统的可复用性,同时也利于团队之间的合作,大大提高系统开发的效率。2.3 软件工程及面向对象机制2.3.1 软件工程 软件工程过程指的是让用户的需求转变成软件系统所需要的软件工程活动的集合。这个过程包括投入、需求说明、规格说明、设计、实施、验证、安装和文档化等等。主要包括以下几个阶段:可行性分析与开发集合需求分析软件设计程序编码软件测试运行维护本系统的设计将按照以上的标准来进行具体的实施,对于各个阶段全部采取科学的管理技术以及良好的方法,从技术和管理方面进行审查,如果说这两方面都合格才能进行下一步。2.3.1 面向对象分析方法 面向对象开发方式是基于客观世界的对象模型化的软件开发方法。对象就是指是一个属性集合以及其操作集合的封装体。 面向对象分析在面向对象软件工程方法中占据的首要环节,它包括了概念的原则、过程和步骤、表示的方法、提交文档等规范要求。3 需求分析与及设计原则3.1苏果社区店库存管理系统的总体需求需求分析的任务是了解用户的需求,并对系统提出完整、正确、具体的一些要求它需要双方进行合作与探讨,通过共同定义来实现。经过我的实地考察之后发现,苏果社区店在库存商品的管理上,依然有很多方面的问题,例如,有的商品记录和实际库存并不符合,客户管理不人性化,因而导致客户流失等,因此,我设计的苏果社区店库存商品管理系统由下面几大模块构成:基础资料、系统管理、库存管理、进货管理、统计报表、销售管理。通过使用本系统可以使苏果社区店更好的对库存管理进行增、删、改、查等日常管理操作。此系统有提高管理效率,节省人力,减少时间,增加安全性能等特点,为苏果社区店现代化管理带来实际的利益。3.1.1 系统功能需求1. 功能划分功能描述苏果社区店库存管理系统要求对商品户进行全方位的管理,包括出库、入库、库存以及用户管理。在具体的功能上面,主要包括以下几个部分: 基础资料:对供应商、客户、商品进行管理。系统管理:包括数据库管理和用户管理,主要实现数据库的备份和恢复,用户的增删查改等功能。库存管理:能实时的反映当前超市库存商品的信息。统计报表:分别对客户、商品、供应商进行统计,对商品的销售情况进行统计,便于确定经营策略。进货管理:包括进货、退货、退货单据查询、进货单据查询之类的功能,从而能够完成对商品的库存进行管理。销售管理:包括销售出库、销售单查询、客户退货查询、客户退货功能,实现对商品销售的管理。3.1.2 数据库需求因为苏果社区店库存管理系统所涉及的数据操作比较多,因此建立一个数据库就显得十分有必要了。3.1.3 安全性需求 由于库存管理系统包括的重要信息很多,所以在系统设计时不仅要重视管理系统需求,系统的安全性和一致性的需求也要得到保证。超市库存管理系统其安全性要求主要体现在两个方面,即数据安全性和网络安全性。该系统在系统架构的设计上就考虑到了数据的安全性要求,本系统分为四类不同的用户,引入用户权限的概念,来实现人员的不同权限访问的管理,保证数据的安全。同时通过分权限在网络层实现WEB应用[8],用户与数据库之间无法建立链路关系,保证了网络的安全性。3.2可行性研究3.2.1 经济可行性分析 实际当中做软件开发项目不得不考虑到该项目在开发过程中的所需经济支助的来源问题和该项目在开发成功后预计能给开发商和客户带来的经济效益是否符合要求和预期的目的,还有开发项目所需要的人力物力材力分析对开发商来说是必须的。因而就应该对软件开发的成本来进行缜密的预估[9],因为对于开发商和客户来说软件的成本越低越好而软件带来的经济效益越高越好。由于该软件是我自己独立开发且所用的MyEclipse是免费开源软件且开发硬件也是我自己的个人计算机,因此开发成本非常低廉,出售价位便宜小型客户容易接受而且该款软件实用性强,所以市场状况还是可以的。3.2.2 技术可行性分析3.2.3 运行环境可行性 本系统可以在Windows平台上运行。硬件要求CPU 500MHz以上,内存1G以上,操作系统建议使用Windows xp以上,操作员要求初中以上学历,对计算机操作熟练即可。3.3 设计目标与原则 苏果社区店库存管理系统是为了实现超市管理者对超市的实时监控,让超市管理者、库存管理者能够实时查看超市的库存情况,根据库存的信息对超市做合理的经营决策,通过科学规范的管理,提高超市在市场中的竞争能力。3.3.1 系统分析 系统分析是设计本系统必不可少的部分,是数据库设计与实现的基础。系统分析的主要工作是:需求分析人员与用户进行交流,了解客户对系统建设的要求,对业务的具体流程进行详细的分析,进入确定整个系统的工作流程,最终目的是找出数据、业务和实现功能之间的具体联系。3.3.2 系统总体建设目标 根据苏果社区店在库存管理中出现的问题,得出本库存管理系统的建设目标为:建立成一个信息化、网络化、自动化为一体的苏果社区店库存管理系统,为超市库存管理部门提供一个高效率、高质量的业务管理系统,为其他部门提供准确全面的数据和信息。系统完成时应该具备下面的几个要求:功能实用:根据苏果社区店库存管理的业务流程,提供超市日常库存管理能力。技术先进:采用目前主流的计算机软件和硬件,保证本系统在未来几年内不会落后于其他类似系统。高稳定性:系统的运行速度快、效率高,能够有效的保证系统的容错能力,对错误操作的处理能力能给出友好的提示。易于操作:系统界面简洁大气,易使用,即使对计算机操作不熟悉的人也能非常快速的使用本系统。安全可靠:本系统具有十分严格的身份认证,能够保证信息不会被泄漏。设计原则可行性和可能性系统要求在技术上是可行的,在经济上是可以实施的。实用性和经济性系统建设应以实用为本,尽量能够做到经济、耐用。l 3. 先进性和成熟性系统设计要能够反映出现在市场的先进水平,并且发展潜力足够,使其能够在未来五年内不会落伍。因此既要使用超前的技术、保证结构合理,系统成熟。l 4. 安全性和保密性在该系统中,应该考虑到不同用户的权限不同,不能出现越级操作,并且要保证数据的保密。l 5. 可扩展性和易维护性为了适应时代的变化,一定要考虑用最通俗的操作,最便捷的方法、最少的投入,实现系统的扩展并保证维护容易。系统开发环境(1)JDK 1.7JDK是java最重要的部分,包含了java的运行环境,其中JRE是java的运行环境[11]。(2)服务器 本系统采用tomcat作为服务器,由于Tomcat 技术超前、稳定性好,并且是免费的 [12]。(3)集成开发工具MyEclipse10.0 利用Java EE中的SSH集成框架技术[13],用JSP、JavaScript、Java、MySQL等工具来开发本系统。MyEclipse 是一个非常不错的用来开发Java, J2EE的 Eclipse 插件集合,使用起来十分的便利。 4 苏果社区店库存管理系统的总体设计4.1 系统总体功能图 经过调查苏果社区店的业务流程,本系统的总体功能图如4.1所示: 图4.1 系统功能需求图4.2 子系统功能图及功能简介4.2.1 商品管理图4.2 商品信息管理 如图4.2所示,商品管理模块中,主要包括商品的类别管理、商品入库管理、商品销售管理、商品信息修改、商品库存管理。4.2.2 客户管理图4.3 客户管理 如图4.3所示客户管理功能图。客户管理包括客户信息的增删查改。客户的采购信息管理主要功能是客户下订单后,根据购买商品生成购物订单,并自动计算订单的总价格,在统计功能中,能统计出客户的在指定日期内的订单,并显示订单中购买商品的数量、价格。商品退货管理主要功能是根据用户的订单编号,选择退货商品,实现对客户的退货管理。本模块主要目的是实现超市对客户信息管理,以便于超市对某些特殊客户的需求做出响应以达到扩大经营范围遵循市场经济规律的目的,使超市根据特定客户的要求与订购实现商品的进、销、存一条龙服务,以获得最大利润。4.2.3 供应商管理图4.4 供应商管理 如图4.4所示,供应商管理模块功能图,供应商管理主要包括供应商信息的增加、删除、修改、查询基本功能,供应商相关的进退货管理,供应商供应商品的统计信息。设计这以模块的主要目的是在最短的时间内找到超市经营者所需的货源以便于在市场上某一商品热销是及时抓住商机大量进货以达到供能应求的目的,所以该模块的主要功能是将各类供应商的信息反馈给超市经营者。4.2.4 统计报表图4.5 统计报表统计报表包括商品销售统计、商品采购统计、客户统计、供应商统计。该模块是通过前三个模块关联实现的,通过统计报表功能,能准确的反映一定时期内商品的库存信息、采购信息、销售信息。4.2.5 系统管理图4.6 系统管理 系统管理包括用户管理、用户权限管理、数据库备份、数据库恢复。用户管理主要功能是对登陆系统的用户进行增删查改,对用户所属角色进行分配。数据管理包括数据库备份和数据库恢复,通过定期的对系统数据库进行备份,如果数据不慎丢失或者意外崩溃,能通过数据库恢复顺利的找回数据,增加系统的安全及可维护性[14]。4.2.6 库存管理图4.7 系统管理 库存管理主要包括库存查询、库存报溢损、库存报警、库存报溢损查询。商品库存报警主要作用是当商品的实际库存小于要求的最低库存时,就会出现库存报警。4.3 业务流程图 只有对业务流程做准确的分析,才能完成数据库的设计和整个系统的功能设计,由于文章篇幅有限,本文只对关键的子系统为例做详细说明。用户登录流程图图4.7 用户登录流程图进货管理流程图图 4.8 用户管理流程图基础管理流程图图4.9 基础资料管理流程图商品信息管理流程图图4.10 商品信息管理流程图数据库设计4.4.1 数据库基础数据库的意思是指长期储存在计算机内的、有组织的、能够共享的数据集合[16]。其主要功能为描述数据库、管理数据库、维护数据库、数据通信[17]。 通过上面的系统功能分析之后,考虑苏果社区店的实际及将来可能的发展情况,本系统将数据库的设计分为如下几个步骤:数据库需求分析数据库概念结构设计数据库逻辑结构设计数据库物理模型设计由于上一小节已对系统的功能进行了详细的分析,因此下面直接对数据库的概念结构进行设计。数据库概念结构设计系统ER图如图4.11所示:图4.11系统E-R图图4.12 商品实体图图4.13供应商实体图图4.14客户实体图4.4.3 数据库物理模型设计 通过powerdesiner设计数据库的物理模型,通过物理模型能直接生成对应数据库的sql代码[18]。下面对主要的模块做简单说明。角色模块如图4.15所示为角色模块的物理模型,包括角色表、用户表、菜单表和角色权限联系表,其中角色和菜单为多对多联系,一个角色拥有多个菜单功能,一个菜单功能可被多个角色共享。角色和用户为多对一的关系,一个用户只能属于一个角色[19]。4.15 角色模块物理模型(2)进货模块如图4.16所示进货单模块的物理模型,包括进货单商品信息,进货单信息和供应商信息,进货单信息与进货单商品信息为一对多的联系,进货单信息与供应商信息为一对多的联系[20]。4.16 进货单物理模型出库模块如图4.17所示出库单物理模型,包括出库单商品信息、出库单、客户信息。其中出库单与出库单商品信息为一对多的联系,一个出库单包含多个商品信息,出库单与客户信息为一对多的联系,一张出库单只属于一个客户。4.17 出库单物理模型(3)商品模块如图4.18所示商品信息模块,包括商品的基本信息表和商品类别表,商品信息与商品类别之间是多对一的联系,一件商品只属于一种类别。4.18商品信息供应商退货单信息和客户退货模块如图4.19 所示供应商退货单信息和客户退货单信息模块,包括商品信息、供应商信息、客户信息、退货单、退款单五个基本表,其中退货单与商品信息表是多对多的联系,他们之间有一张联系表,退货单信息表与商品之间也是多对多的联系,他们之间也有一张联系表退款-商品联系表。一张退货单只属于一个供应商,所以退货单与供应商之间是一对多,客户与退货单也是一对多的联系。4.19 供应商退货单信息和客户退货单信息安全、保密设计通过用户所属部门给予不同的权限,其他无关人员不能对他所属权限外的功能进行操作。本系统只有一个超级管理员账号,此用户拥有系统的所有权限,包括系统用户的分配和角色权限的管理。在系统管理中可对数据库进行备份和还原,降低数据丢失风险,提高了系统的安全性[21]。4.6 系统出错处理(1)用户在登陆系统时,如果输入账号或者密码错误,能给出友好的“用户名或密码错误”的信息提示。(2)管理员和用户在提交条件查询时没有查到时,会在查询界面提示:“查询失败!”。5 苏果社区店库存管理系统的功能设计5.1 子系统设计系统分为7个模块主要功能详细说明如下:(1) 商品信息管理:商品管理,包括商品基本信息、商品入库、出库管理、商品信息的查询,反映商品进、销、存情况。(2) 销售管理:根据客户所选的商品价格、数量,计算总价,并生成订单。(3) 客户信息管理:对客户信息的增删改查实现客户定货机制。(4) 供应商信息管理:对供应商信息的增删改查,使采购更加方便。(5) 查询统计:按照日期统计商品的采购和销售情况。(6) 用户管理:对登陆系统的用户进行增删查改,包含增、修、删、改用户并设置用户的权限。(7) 系统管理:可以进行数据库备份和恢复操作。5.2 登陆模块设计1. 实现目标 一切准备就绪之后,进入“登录系统”界面输入并验证用户名和密码。系统登录窗口能够实现以下的具体功能:输入用户名、密码判断正确之后进入库存管理系统主界面。如果用户名或者密码错误,那么页面显示“用户名或密码错误”。不同的用户进入系统拥有不同的权限。2. 登录界面如图5.1所示图 5.1 登录界面5.3 模块设计5.3.1 商品信息管理1.实现目标点击“基础资料”菜单的商品管理后,在右侧显示商品管理页面,主要实现如下的功能:增加商品类别、新增商品类别。增加商品信息、修改商品信息、删除商品信息,在增加商品信息时,需要选择商品所属的类别。(3) 点击商品类别,能显示出所有属于该类别的商品信息。2.界面 商品信息管理界面如下图5.2所示:图5.2 商品信息管理界面5.3.2 销售管理1. 实现目标销售出库在销售管理模块中,对销售商品进行出库操作,出库单号是一个自动生成的八位数,销售管理员输入商品编号,如果说本系统中之前已经有该编号商品的一系列记录,那么系统会自动填补商品名称、分类,选择合适的顾客和出库数量,若无相关顾客信息可以及时添加,然后输入其它信息,就可以点击添加入库操作了。如果库存中没有这个商品信息的话,就不能进行操作。客户退货在销售模块中,点击退货出库,显示退货出库页面,可以通过供应商、是否付款来选择要退货的商品。也可以添加、修改、删除某个订单号上要退货的商品。 客户退货查询可以根据日期、供应商、是否付款来查询退货单。销售单据查询根据销售单号查询销售单信息,根据销售单查询销售单上所有商品的数量、价格、是否付款。2. 部分界面图5.3 销售管理界面5.3.3 客户信息管理1. 实现目标 客户信息管理主要对客户信息进行增删查改。2. 界面图5.4 客户信息管理界面5.3.4 统计报表1. 实现目标 统计报表可以实现对于客户、供应商、商品采购、商品销售的统计。2. 界面图5.5 统计报表界面5.3.5用户管理1. 实现目标 实现对登陆系统用户的管理,包括用户的增加、删除、修改。2. 界面图5.6 用户管理界面5.3.6 系统管理1. 实现目标 系统管理主要实现对数据的管理,包括数据库的备份和恢复操作[21]。2. 界面图5.7 系统管理界面5.3.7 库存管理1. 实现目标 库存管理主要包括库存查询、库存报溢损、库存报警、库存报溢损查询,在实际业务中,报损单是指实际库存比统计库存低[22],报溢单是指实际库存比统计库存高。商品库存报警主要作用是当商品的实际库存小于要求的最低库存时,就会出现库存报警[23]。2. 界面图5.8 库存管理界面6调试过程与调试结果分析6.1 登录功能测试 系统运行后出现登录界面,输入用户名admin,密码:123,会出现提示:用户名或密码错误。当输入正确用户名:admin,正确密码:admin,才能顺利的进入系统。6.2 商品入库功能测试进入商品入库界面之后,在新商品入库管理中添加原有商品的信息,系统会提示操作失败,正确的输入新商品入库信息后系统才提示新商品入库成功。6.3 商品出库功能的测试进入商品出库管理界面之后,随机选择一种商品,填写出库数量,当出库数量大于该商品目前的库存量时系统会提示,目前库存量不够所需出库量,只有该商品在库存量大于等于所需出库量时,该商品的出库才能实现。经过与以上用例相似的数据多次测试,最后得出结论:系统测试成功。7 性能分析超市库存商品管理系统,包含了商品入库、商品出库、库存商品盘点、客户订货、货源查询、动态性销售状态分析这几项功能、是一款统计、销售、经营信息反馈的多功能小型统筹类软件。该系统基本上已按照预期的目标实现了,总的来说,可以满足用户的使用。该系统的结构简单明了,操作简单,界面友好,运行速度较快,实用性较强。以简单实用为设计的发点,没有多余的成分出现。基本上解决了传统人工经营超市时,对商品库存管理所遇到的各种麻烦。对于数据库中的数据,已经严格的限制其数据的类型与长度,减少在对数据库操作时所产生出错,冗余等。系统的可靠性和可操作性十分优秀,各种基本的操作容易掌握,具有界面友好,效率高,易维护,可移植性较好等特点[25]。(1)数据精确度单价金额采用浮点数,保留小数点后两位。(2)时间特性五秒之内能够让该管理系统软件从启动到进入系统登录界面,2秒之内完成录入并更新数据 [26]。(3)适用性Windows 2000/xp以及以上操作系统都能够顺畅运行。8 总结经过几个月的艰苦努力,我终于完成了苏果社区店库存管理系统的核心部分设计与实现,并使该系统达到可实际应用的阶段。本次毕业设计是一个精细漫长的过程。在整个制作与设计的过程中我都深感自己基础的薄弱,知识的匮乏。然而好在我一直坚持了下来,通过运用大学四年所学习到的方法进行学习那些之前并未接触过的知识,圆满完成了此次设计。无数次的请教同学、图书馆查阅资料、熬夜写代码终于有了一个结果,这也算是为我做毕业的这段时间里的最好的补偿吧。通过这次毕业设计,我想我收获了很多很多。不仅仅是技术上的收获,更重要的是让我明白了如果你想做好一件事,必定要付出长久的努力。成功不是一蹴而就的,这需要我们时时刻刻的积累与努力,而这是我以后的人生道路上所需要勉励自己的!致谢参考文献[1] 李之兴,杨瑞龙.Java程序设计之网络编程[M]. 清华大学出版社, 2006:70-125.[2] 王克宏. java技术教程(基础篇)[M]. 清华大学出版社, 2002:50-90.[3] 孙燕. java2入门与实例教程[M]. 中国铁道出版社, 2003:85-265.[4] 叶核亚,陈立.java2程序设计实用教程[M]. 电子工业出版社, 2003:99-183.[5] 柯温钊.java例解教程[M]. 中国铁道出版社, 2001:69-77.[6] 何明.从实践中学习Oracle/ SQL[M]. 清华大学出版社, 2004: 88-165.[7] 李文泽.JAVA程序设计专家门诊[M]. 清华大学出版社, 2006: 90-221.[8] 张俊玲.王秀英.数据库技术 [M] . 人民邮电出版社, 2006:93-163.[9] 向传杰.JAVA编程案例教程[M]. 电子工业出版社, 2004:322-420.[10] Bruce Eckel.Thinking in java 3rd Edition[M]. 清华大学出版社, 2004:122-229.[11] Tony M.Oracle .Database Upgrade Guide 10g Release 1 [M].USA:Oracle Corporation,2003:150-330.[12] Jason Price.Oracle Database 10g SQL:Master SQL and PL/SQL[M].清华大学出版社,2005:246-341.[13] Roger Garside,John Mariani.java教程(英文版,第2版)[M]. 机械工业出版社,2003:339-421.[14] Lvor Horton.Java2 入门经典JDK5[M].机械工业出版社, 2006:211-332.[15] 斯坦迪什.JAVA数据结构[M]. 清华大学出版社, 2004:63-90.[16] 弗拉纳根.JAVA技术手册[M]. 东南大学出版社, 2006:220-336.[17] 陈华. 库存管理系统中数据库的设计与实现[J]. 电脑开发与应用, 2009, 22(1):61-62.[18] 刘燕,吴娴,罗治平.基于数据库的库存管理系统的研究[J]. 制造业自动化, 2009, 31(9):34-37. [19] 周微, 邱桃荣, 姚晓昆. 基于B/S模式的库存管理系统的分析与设计[J]. 计算机与现代化,2006 (10):26-28.[20] 段瑢瑢, 王守城, 岳小鹤. 基于B/S架构的库存管理系统的设计及实现[J]. Cad/cam与制造业信息化, 2006 (1):18-20. [21] 王珊, 萨师煊. 数据库系统概论(第5版)[J]. 中国大学教学, 2014:74-80.[22] Chiba S. Load-Time Structural Reflection in Java. in: Elisa Bertino [C]. Proceedings of Ecoop Springer Lncs, 2000,18-25.[23] 王向兵. JavaEE多层架构Struts2+Spring3+Hibernate3+Ajax的整合[D]. 大连海事大学, 2009:15-35. [24] Li Z,Wei-xi Z. Design and implementation of fixed assets management system based on JavaEE[J]. Computer Engineering & Design,2009(2):3797-3800.[25] 陈艳. 基于JAVAEE的工作流引擎的设计[J]. 计算机与现代化, 2008(8):46-49. [26] GP Y, DT R,WW K, et al. Combining SSH and cDNA microarrays for rapid identification of differentially expressed genes[J]. Nucleic Acids Research,1999(10):27-30.学院?信息科技学院?计算机科学与技术姓名?肖尧论文题目?苏果社区店库存管理系统分析与设计一、对待毕业实习的态度及实习期间遵守纪律情况优良(15—11分)一般(10—6分)较差(5—0)?9二、观察、收集、整理、查阅资料及运用数据的水平优良(30—21分)一般(20—11分)较差(10—0分)?18三、学生的独立工作能力和动手能力优良(20—16分)一般(15—11分)较差(10—0分)?12四、毕业论文写作的规范化程度优良(15—11分)一般(10—6分)较差(5—0分)?12五、毕业论文(设计)总体评价优良(20—16分)一般(15—6分)较差(5—0分)?10审查意见、成绩及能否提交答辩:?总分:61?是否同意进入答辩流程:同意学院?信息科技学院?计算机科学与技术姓名?肖尧论文题目?苏果社区店库存管理系统分析与设计一、论文选题的价值与合理性优秀(15—11分)一般(10—6分)较差(5—0)?9二、论文的难度、工作量大小和创新性优秀(30—21分)一般(20—11分)较差(10—0分)?18三、数据资料分析、归纳、概括及运算的能力优秀(20—16分)一般(15—11分)较差(10—0分)?12四、文字表达水平、文章的逻辑性优秀(15—11分)一般(10—6分)较差(5—0分)?9五、论文写作的规范化程度优秀(20—16分)一般(15—6分)较差(5—0分)?12评阅意见、成绩及能否提交答辩:?总分:60?论文难度一般,无创新性。结构合理,格式基本符合规范。本科生毕业论文(设计)答辩及综合评分表(由答辩小组填写)学院?信息科技学院 ???计算机科学与技术 ??姓名?肖尧 ??论文题目?苏果社区店库存管理系统分析与设计 ??一、内容的科学性、应用性和创新性优秀(30—21分)一般(20—11分)较差(10—0)?18 ??二、论文写作水平及知识面掌握程度优秀(30—21分)一般(20—11分)较差(10—0分)?18 ??三、语言表达能力、逻辑思维能力、回答问题的正确性优秀(40—31分)一般(30—11分)较差(10—0分)?24 ??论文答辩意见及成绩:?总分:60 ??答辩小组负责人(签名): 2015 年 6 月 4 日本科生毕业论文(设计)综合评定成绩(由答辩小组填写)毕业论文(设计)评阅成绩30%毕业论文(设计)答辩成绩40%综合评定成绩100%?18.3?18 ???24 ??60.3[及格]注:综合评定成绩等级:优秀(90-100),良好(80-89),中等(70-79),及格(60-69),不及格(60分以下)。答辩小组负责人(签名): 2015 年 6 月 4 日
目录
摘要 4
关键字: 4
1 引言 5
1.1 选题背景及意义 5
1.2 国内外研究现状 5
1.3 苏果社区店库存管理系统达到的目的及结论 6
2 系统开发工具及技术 6
2.1 系统开发工具 6
2.1.1 企业级集成开发环境:MyEclipse10.1 6
2.1.2 数据设计工具:PowerDesiner15.0 7
2.1.3 服务器:Tomcat6.0 7
2.1.4 数据库:MySql5.6 7
2.2 SSH技术 7
2.3 软件工程及面向对象机制 8
2.3.1 软件工程 8
2.3.1 面向对象分析方法 8
3 需求分析与及设计原则 9
3.1苏果社区店库存管理系统的总体需求 9
3.1.1 系统功能需求 9
3.1.2 数据库需求 9
3.1.3 安全性需求 10
3.2可行性研究 10
3.2.1 经济可行性分析 10
3.2.2 技术可行性分析 10
3.2.3 运行环境可行性 10
3.3 设计目标与原则 11
3.3.1 系统分析 11
3.3.2 系统总体建设目标 11
3.3.3 设计原则 11
3.3.4 系统开发环境 12
4 苏果社区店库存管理系统的总体设计 12
4.1 系统总体功能图 12
4.2 子系统功能图及功能简介 13
4.2.1 商品管理 13
4.2.2 客户管理 14
4.2.3 供应商管理 14
4.2.4 统计报表 15
4.2.5 系统管理 15
4.2.6 库存管理 16
4.3 业务流程图 16
4.4 数据库设计 19
4.4.1 数据库基础 19
4.4.2 数据库概念结构设计 19
4.4.3 数据库物理模型设计 20
4.5 安全、保密设计 23
4.6 系统出错处理 23
5 苏果社区店库存管理系统的功能设计 24
5.1 子系统设计 24
5.2 登陆模块设计 24
5.3 模块设计 25
5.3.1 商品信息管理 25
5.3.2 销售管理 25
5.3.3 客户信息管理 26
5.3.4 统计报表 26
5.3.5用户管理 27
5.3.6 系统管理 27
5.3.7 库存管理 28
6调试过程与调试结果分析 28
6.1 登录功能测试 28
6.2 商品入库功能测试 29
6.3 商品出库功能的测试 29
7 性能分析 29
8 总结 29
致谢 30
参考文献 30
苏果社区店库存管理系统分析与设计
引言
*好棒文|www.hbsrm.com +Q: ^3^5`1^9`1^6^0`7^2#
ntory management and system management functions,through this system, It greatly improves working efficiency ,improve the information sharing capabilities and accuracy of the staff in the market.1 引言选题背景及意义苏果作为江苏省最大的零售商,在江苏省各个地区都有着其超市的分布。苏果的出售业绩于2011年超过了400亿元。因此,加强对库存的管理,对于稳定超市正常发展的意义十分重要[1]。为了实现超市的明确管理,很有必要对各类产品分类,但是超市产品的数量和种类也会随着超市规模的扩大而增多,这样就会让产品的信息量和产品信息随之增多,因而必须加强库存管理,迅速地反馈与销售有关的各种信息,使超市的运作效益得到保证,并提高苏果社区店的竞争力。通过设计库存管理系统,能大大的减少苏果社区店库存管理人员的工作负担,提高整体工作效率,大大的降低人工管理过程中的误差,本文作者结合江苏南京玄武区苏果社区店库存管理的相关需求,设计开发出了适应超市库存管理人员需求的苏果社区店库存管理系统。系统具备很多特点,能够使各个功能更加模块化、信息系统规范化得到增强,并且更合理地分配了工作,对于提高管理的质量和工作的效率很有帮助,具有高实用价值和高准确度。1.2 国内外研究现状 以比较传统的方式来进行管理,如使用手工记账等方式在国内还是十分常见的,还有使用库存管理系统的,但是其功能比较简单化。这些方式虽然有着一定的效果,但是还是存在着许多问题等待解决,比如效率普遍低下,能够完成的功能比较少等。库存管理系统不仅要对库存的剩余产品进行管理,还需要进行商品的入库上架以及相关的管理,这都是库存管理所能够满足的。关于库存管理的特点,管理化管理的定义,行业到现在为止还没有一个规范且盛行的说法。库存管理系统在超市管理系统中占据着很重要的组成部分,为了使库存管理能够得到最大的效益化,需要将计算机技术和库存管理理论集合起来。库存管理系统总共经历了三个阶段,从Material Require Planning到Manufacture ResourcePlanning,再到Enterprise Resource Planning的发展过程。在20世纪初库存控制理论首次被提出,它保障了库存管理系统的实施。它主要是使用量化方式来对库存管理进行模型建立,从多种方案中选择最佳策略。我国将于上1960年左右在库存管理系统上使用了计算机技术,那时候库存管理系统的最初模型已经初步具备,然而收到当时计算机软件跟硬件环境的限制,库存管理系统的功能也会受到一定的限制,不能够做到功能完善的库存管理系统。到了Manufacture Resource Planning时代的时候,库存管理系统已经相对比较成熟了,而基于B/S架构[3]的超市库存管理系统的优势十分明显,也很符合超市对于库存管理系统的需求。 通过查阅我国学生翻译的国外著作,可以发现我国的超市库存管理模式与发达国家的不同体现在很多方面,国外发展国家的库存管理模式为我们展示了已经成熟的范例。在库存管理方面从严管理,使库存管理人员的管理意识增强,让希望与压力共同存在,这是超市发展的首要条件。 总的来说,有不少学者从理论层面和库存管理体系的构建进行讨论,由于苏果社区店的发展,有关库存管理的新挑战也层数不穷,库存人员对超市库存进行管理也提出了一些新的看法,对于其内涵、本质、模式等也产生了不同认识。如果想进一步促进苏果社区店的发展,就很有必要深入研究关于库存管理的一些问题。1.3 苏果社区店库存管理系统达到的目的及结论本系统从苏果社区店的实际情况出发,专门针对其设计了本库存管理系统,通过本系统,能很大程度提高他们的工作效率,提高超市的信息共享能力、提高工作人员的正确性。在苏果社区店,库存管理人员仍然是仓库的计划员,这些人员的工作十分被重视,这些人和市场部门以及生产部门协同工作,而这是整个企业组织十分重要的组成部分,由于商品货物信息准确性要高,因此需要有使用的管理系统,可以简洁明了的反映出真实情况。综上所述,苏果社区店库存商品管理系统应该由六大模块组成,包括基础资料、系统管理、库存管理、进货管理、统计报表、销售管理。主要功能详细说明如下:基础资料:对供应商、客户、商品进行管理。系统管理:包括数据库管理和用户管理,主要实现数据库的备份和恢复,用户的增删查改等功能。库存管理:能实时的反映当前超市库存商品的信息。统计报表:分别对客户、商品、供应商进行统计,对商品的销售情况进行统计,便于确定经营策略。进货管理:包括进货、退货、退货单据查询、进货单据查询等功能,实现对商品的库存进行管理。销售管理:包括销售出库、销售单查询、客户退货查询、客户退货功能,实现对商品销售的管理。2 系统开发工具及技术2.1 系统开发工具为了提高系统的开发效率,在开发过程中,使用了如MyEclipse10.0集成开发工具、powerdesiner15.1数据库设计工具,MySql等,下面分别对系统中采用到的开发工具做简单的介绍。2.1.1 企业级集成开发环境:MyEclipse10.1 Myeclipse是一种企业级开发工具,是对eclipse工具的扩展,它是一个开源的、基于java的可扩展平台,它自身集成了编码、调试、测试、发布的功能,支持HTML、css、spring、hibernate等,除此之外,还可以按照自己的需求,加入自己的插件,利用myeclipse,可以大大的提高项目开发的效率。2.1.2 数据设计工具:PowerDesiner15.0Powerdesiner是sybase公司的一个用于项目开发过程中数据库设计的一个工具集,能够方便的对系统进行前期的数据库分析,它几乎包含了数据库模型设计当中的全部过程。Powerdesiner能够绘制系统的数据流程图,需求分析中的概念模型图,和物理模型图。通过物理模型,能够直接生成对应的数据库代码。除此之外,还能和目前很多常用的软件开发工具,比如powerbuild、vb等结合使用,减少整个系统的开发周期。目前,powerdesiner是开发人员进行数据库设计过程中广泛使用的工具。本系统使用powerdesiner对系统进行物理模型设计,通过物理模型之间生成了mysql的数据库脚本,大大提高了系统开发效率。2.1.3 服务器:Tomcat6.0Tomcat是目前广受欢迎的一款开源服务器,被广大的程序开发者使用,它不仅能节约系统内存开销,还能支持负载平衡和邮件服务等常用功能;由于是开源服务器,任何人都能对它进行更改,因此,tomcat在不断的改进和完善。Tomcat是主要应用在小型的系统和同时访问量不是很大的场景下,所以是开发和调试jsp程序的首选服务器。2.1.4 数据库:MySql5.6mysql是一个小型的关系数据库管理系统,它不仅速度快,可靠性高,并且支持多线程和多核处理器,除此之外,mysql还是开源的,综合以上原因,本系统采用mysql作为数据库管理系统。2.2 SSH技术 SSH是mvc框架的一个集成框架,是目前被广泛使用的主要用于web应用开发的开源框架。SSH从系统功能上分为三层:表示层、业务层、持久层,通过对系统进行分层,可以帮助开发人员在短时间内搭建结构性强、复用性强、可扩展性好的web应用。SSH是struts、hibernate、spring的缩写。Struts是作为整体的基础架构,对mvc进行分离,主要负责业务的跳转,使得显示层和逻辑层分离。Hibernate主要负责持久层,负责数据库的连接。Spring主要是对各种类进行管理,具体过程是:根据面向对象的分析方法根据实际需求提出若干模型,这些模型是现实生活中的一个个对象,将这些模型转换为基本的java对象,然后对这些基本对象进行操作,具体是编写基本的dao接口,并给出他们的实现类,dao通过hibernate与数据库进行对应,dao与dao的实现类的管理则有spring进行管理。 系统的基本业务流程为:在显示层,用户通过jsp页面与服务器进行交互,接收用户的请求和相应,然后通过struts的配置文件,将接收到的request交给对于的action进行业务逻辑处理。在业务层中,管理具体服务组建的spring ioc负载向相应的action提供业务模型组建和对应组建的业务逻辑类,同时提供事物处理、缓冲池等用来提供系统性能和保证数据完整性。在持久层中,通过hibernate完成类和数据库表之间的一一映射,处理dao层的请求数据,返回处理结果。 通过上面的方法,实现了业务逻辑和持久层之间的分离,降低了各个层之间的偶合,同时实现了试图、控制器和模型的分离,这样,如果前端布局发生变化,模型层只需要稍做改动,即使数据变化,对前端也不会有影响,很大程度的提高了系统的可复用性,同时也利于团队之间的合作,大大提高系统开发的效率。2.3 软件工程及面向对象机制2.3.1 软件工程 软件工程过程指的是让用户的需求转变成软件系统所需要的软件工程活动的集合。这个过程包括投入、需求说明、规格说明、设计、实施、验证、安装和文档化等等。主要包括以下几个阶段:可行性分析与开发集合需求分析软件设计程序编码软件测试运行维护本系统的设计将按照以上的标准来进行具体的实施,对于各个阶段全部采取科学的管理技术以及良好的方法,从技术和管理方面进行审查,如果说这两方面都合格才能进行下一步。2.3.1 面向对象分析方法 面向对象开发方式是基于客观世界的对象模型化的软件开发方法。对象就是指是一个属性集合以及其操作集合的封装体。 面向对象分析在面向对象软件工程方法中占据的首要环节,它包括了概念的原则、过程和步骤、表示的方法、提交文档等规范要求。3 需求分析与及设计原则3.1苏果社区店库存管理系统的总体需求需求分析的任务是了解用户的需求,并对系统提出完整、正确、具体的一些要求它需要双方进行合作与探讨,通过共同定义来实现。经过我的实地考察之后发现,苏果社区店在库存商品的管理上,依然有很多方面的问题,例如,有的商品记录和实际库存并不符合,客户管理不人性化,因而导致客户流失等,因此,我设计的苏果社区店库存商品管理系统由下面几大模块构成:基础资料、系统管理、库存管理、进货管理、统计报表、销售管理。通过使用本系统可以使苏果社区店更好的对库存管理进行增、删、改、查等日常管理操作。此系统有提高管理效率,节省人力,减少时间,增加安全性能等特点,为苏果社区店现代化管理带来实际的利益。3.1.1 系统功能需求1. 功能划分功能描述苏果社区店库存管理系统要求对商品户进行全方位的管理,包括出库、入库、库存以及用户管理。在具体的功能上面,主要包括以下几个部分: 基础资料:对供应商、客户、商品进行管理。系统管理:包括数据库管理和用户管理,主要实现数据库的备份和恢复,用户的增删查改等功能。库存管理:能实时的反映当前超市库存商品的信息。统计报表:分别对客户、商品、供应商进行统计,对商品的销售情况进行统计,便于确定经营策略。进货管理:包括进货、退货、退货单据查询、进货单据查询之类的功能,从而能够完成对商品的库存进行管理。销售管理:包括销售出库、销售单查询、客户退货查询、客户退货功能,实现对商品销售的管理。3.1.2 数据库需求因为苏果社区店库存管理系统所涉及的数据操作比较多,因此建立一个数据库就显得十分有必要了。3.1.3 安全性需求 由于库存管理系统包括的重要信息很多,所以在系统设计时不仅要重视管理系统需求,系统的安全性和一致性的需求也要得到保证。超市库存管理系统其安全性要求主要体现在两个方面,即数据安全性和网络安全性。该系统在系统架构的设计上就考虑到了数据的安全性要求,本系统分为四类不同的用户,引入用户权限的概念,来实现人员的不同权限访问的管理,保证数据的安全。同时通过分权限在网络层实现WEB应用[8],用户与数据库之间无法建立链路关系,保证了网络的安全性。3.2可行性研究3.2.1 经济可行性分析 实际当中做软件开发项目不得不考虑到该项目在开发过程中的所需经济支助的来源问题和该项目在开发成功后预计能给开发商和客户带来的经济效益是否符合要求和预期的目的,还有开发项目所需要的人力物力材力分析对开发商来说是必须的。因而就应该对软件开发的成本来进行缜密的预估[9],因为对于开发商和客户来说软件的成本越低越好而软件带来的经济效益越高越好。由于该软件是我自己独立开发且所用的MyEclipse是免费开源软件且开发硬件也是我自己的个人计算机,因此开发成本非常低廉,出售价位便宜小型客户容易接受而且该款软件实用性强,所以市场状况还是可以的。3.2.2 技术可行性分析3.2.3 运行环境可行性 本系统可以在Windows平台上运行。硬件要求CPU 500MHz以上,内存1G以上,操作系统建议使用Windows xp以上,操作员要求初中以上学历,对计算机操作熟练即可。3.3 设计目标与原则 苏果社区店库存管理系统是为了实现超市管理者对超市的实时监控,让超市管理者、库存管理者能够实时查看超市的库存情况,根据库存的信息对超市做合理的经营决策,通过科学规范的管理,提高超市在市场中的竞争能力。3.3.1 系统分析 系统分析是设计本系统必不可少的部分,是数据库设计与实现的基础。系统分析的主要工作是:需求分析人员与用户进行交流,了解客户对系统建设的要求,对业务的具体流程进行详细的分析,进入确定整个系统的工作流程,最终目的是找出数据、业务和实现功能之间的具体联系。3.3.2 系统总体建设目标 根据苏果社区店在库存管理中出现的问题,得出本库存管理系统的建设目标为:建立成一个信息化、网络化、自动化为一体的苏果社区店库存管理系统,为超市库存管理部门提供一个高效率、高质量的业务管理系统,为其他部门提供准确全面的数据和信息。系统完成时应该具备下面的几个要求:功能实用:根据苏果社区店库存管理的业务流程,提供超市日常库存管理能力。技术先进:采用目前主流的计算机软件和硬件,保证本系统在未来几年内不会落后于其他类似系统。高稳定性:系统的运行速度快、效率高,能够有效的保证系统的容错能力,对错误操作的处理能力能给出友好的提示。易于操作:系统界面简洁大气,易使用,即使对计算机操作不熟悉的人也能非常快速的使用本系统。安全可靠:本系统具有十分严格的身份认证,能够保证信息不会被泄漏。设计原则可行性和可能性系统要求在技术上是可行的,在经济上是可以实施的。实用性和经济性系统建设应以实用为本,尽量能够做到经济、耐用。l 3. 先进性和成熟性系统设计要能够反映出现在市场的先进水平,并且发展潜力足够,使其能够在未来五年内不会落伍。因此既要使用超前的技术、保证结构合理,系统成熟。l 4. 安全性和保密性在该系统中,应该考虑到不同用户的权限不同,不能出现越级操作,并且要保证数据的保密。l 5. 可扩展性和易维护性为了适应时代的变化,一定要考虑用最通俗的操作,最便捷的方法、最少的投入,实现系统的扩展并保证维护容易。系统开发环境(1)JDK 1.7JDK是java最重要的部分,包含了java的运行环境,其中JRE是java的运行环境[11]。(2)服务器 本系统采用tomcat作为服务器,由于Tomcat 技术超前、稳定性好,并且是免费的 [12]。(3)集成开发工具MyEclipse10.0 利用Java EE中的SSH集成框架技术[13],用JSP、JavaScript、Java、MySQL等工具来开发本系统。MyEclipse 是一个非常不错的用来开发Java, J2EE的 Eclipse 插件集合,使用起来十分的便利。 4 苏果社区店库存管理系统的总体设计4.1 系统总体功能图 经过调查苏果社区店的业务流程,本系统的总体功能图如4.1所示: 图4.1 系统功能需求图4.2 子系统功能图及功能简介4.2.1 商品管理图4.2 商品信息管理 如图4.2所示,商品管理模块中,主要包括商品的类别管理、商品入库管理、商品销售管理、商品信息修改、商品库存管理。4.2.2 客户管理图4.3 客户管理 如图4.3所示客户管理功能图。客户管理包括客户信息的增删查改。客户的采购信息管理主要功能是客户下订单后,根据购买商品生成购物订单,并自动计算订单的总价格,在统计功能中,能统计出客户的在指定日期内的订单,并显示订单中购买商品的数量、价格。商品退货管理主要功能是根据用户的订单编号,选择退货商品,实现对客户的退货管理。本模块主要目的是实现超市对客户信息管理,以便于超市对某些特殊客户的需求做出响应以达到扩大经营范围遵循市场经济规律的目的,使超市根据特定客户的要求与订购实现商品的进、销、存一条龙服务,以获得最大利润。4.2.3 供应商管理图4.4 供应商管理 如图4.4所示,供应商管理模块功能图,供应商管理主要包括供应商信息的增加、删除、修改、查询基本功能,供应商相关的进退货管理,供应商供应商品的统计信息。设计这以模块的主要目的是在最短的时间内找到超市经营者所需的货源以便于在市场上某一商品热销是及时抓住商机大量进货以达到供能应求的目的,所以该模块的主要功能是将各类供应商的信息反馈给超市经营者。4.2.4 统计报表图4.5 统计报表统计报表包括商品销售统计、商品采购统计、客户统计、供应商统计。该模块是通过前三个模块关联实现的,通过统计报表功能,能准确的反映一定时期内商品的库存信息、采购信息、销售信息。4.2.5 系统管理图4.6 系统管理 系统管理包括用户管理、用户权限管理、数据库备份、数据库恢复。用户管理主要功能是对登陆系统的用户进行增删查改,对用户所属角色进行分配。数据管理包括数据库备份和数据库恢复,通过定期的对系统数据库进行备份,如果数据不慎丢失或者意外崩溃,能通过数据库恢复顺利的找回数据,增加系统的安全及可维护性[14]。4.2.6 库存管理图4.7 系统管理 库存管理主要包括库存查询、库存报溢损、库存报警、库存报溢损查询。商品库存报警主要作用是当商品的实际库存小于要求的最低库存时,就会出现库存报警。4.3 业务流程图 只有对业务流程做准确的分析,才能完成数据库的设计和整个系统的功能设计,由于文章篇幅有限,本文只对关键的子系统为例做详细说明。用户登录流程图图4.7 用户登录流程图进货管理流程图图 4.8 用户管理流程图基础管理流程图图4.9 基础资料管理流程图商品信息管理流程图图4.10 商品信息管理流程图数据库设计4.4.1 数据库基础数据库的意思是指长期储存在计算机内的、有组织的、能够共享的数据集合[16]。其主要功能为描述数据库、管理数据库、维护数据库、数据通信[17]。 通过上面的系统功能分析之后,考虑苏果社区店的实际及将来可能的发展情况,本系统将数据库的设计分为如下几个步骤:数据库需求分析数据库概念结构设计数据库逻辑结构设计数据库物理模型设计由于上一小节已对系统的功能进行了详细的分析,因此下面直接对数据库的概念结构进行设计。数据库概念结构设计系统ER图如图4.11所示:图4.11系统E-R图图4.12 商品实体图图4.13供应商实体图图4.14客户实体图4.4.3 数据库物理模型设计 通过powerdesiner设计数据库的物理模型,通过物理模型能直接生成对应数据库的sql代码[18]。下面对主要的模块做简单说明。角色模块如图4.15所示为角色模块的物理模型,包括角色表、用户表、菜单表和角色权限联系表,其中角色和菜单为多对多联系,一个角色拥有多个菜单功能,一个菜单功能可被多个角色共享。角色和用户为多对一的关系,一个用户只能属于一个角色[19]。4.15 角色模块物理模型(2)进货模块如图4.16所示进货单模块的物理模型,包括进货单商品信息,进货单信息和供应商信息,进货单信息与进货单商品信息为一对多的联系,进货单信息与供应商信息为一对多的联系[20]。4.16 进货单物理模型出库模块如图4.17所示出库单物理模型,包括出库单商品信息、出库单、客户信息。其中出库单与出库单商品信息为一对多的联系,一个出库单包含多个商品信息,出库单与客户信息为一对多的联系,一张出库单只属于一个客户。4.17 出库单物理模型(3)商品模块如图4.18所示商品信息模块,包括商品的基本信息表和商品类别表,商品信息与商品类别之间是多对一的联系,一件商品只属于一种类别。4.18商品信息供应商退货单信息和客户退货模块如图4.19 所示供应商退货单信息和客户退货单信息模块,包括商品信息、供应商信息、客户信息、退货单、退款单五个基本表,其中退货单与商品信息表是多对多的联系,他们之间有一张联系表,退货单信息表与商品之间也是多对多的联系,他们之间也有一张联系表退款-商品联系表。一张退货单只属于一个供应商,所以退货单与供应商之间是一对多,客户与退货单也是一对多的联系。4.19 供应商退货单信息和客户退货单信息安全、保密设计通过用户所属部门给予不同的权限,其他无关人员不能对他所属权限外的功能进行操作。本系统只有一个超级管理员账号,此用户拥有系统的所有权限,包括系统用户的分配和角色权限的管理。在系统管理中可对数据库进行备份和还原,降低数据丢失风险,提高了系统的安全性[21]。4.6 系统出错处理(1)用户在登陆系统时,如果输入账号或者密码错误,能给出友好的“用户名或密码错误”的信息提示。(2)管理员和用户在提交条件查询时没有查到时,会在查询界面提示:“查询失败!”。5 苏果社区店库存管理系统的功能设计5.1 子系统设计系统分为7个模块主要功能详细说明如下:(1) 商品信息管理:商品管理,包括商品基本信息、商品入库、出库管理、商品信息的查询,反映商品进、销、存情况。(2) 销售管理:根据客户所选的商品价格、数量,计算总价,并生成订单。(3) 客户信息管理:对客户信息的增删改查实现客户定货机制。(4) 供应商信息管理:对供应商信息的增删改查,使采购更加方便。(5) 查询统计:按照日期统计商品的采购和销售情况。(6) 用户管理:对登陆系统的用户进行增删查改,包含增、修、删、改用户并设置用户的权限。(7) 系统管理:可以进行数据库备份和恢复操作。5.2 登陆模块设计1. 实现目标 一切准备就绪之后,进入“登录系统”界面输入并验证用户名和密码。系统登录窗口能够实现以下的具体功能:输入用户名、密码判断正确之后进入库存管理系统主界面。如果用户名或者密码错误,那么页面显示“用户名或密码错误”。不同的用户进入系统拥有不同的权限。2. 登录界面如图5.1所示图 5.1 登录界面5.3 模块设计5.3.1 商品信息管理1.实现目标点击“基础资料”菜单的商品管理后,在右侧显示商品管理页面,主要实现如下的功能:增加商品类别、新增商品类别。增加商品信息、修改商品信息、删除商品信息,在增加商品信息时,需要选择商品所属的类别。(3) 点击商品类别,能显示出所有属于该类别的商品信息。2.界面 商品信息管理界面如下图5.2所示:图5.2 商品信息管理界面5.3.2 销售管理1. 实现目标销售出库在销售管理模块中,对销售商品进行出库操作,出库单号是一个自动生成的八位数,销售管理员输入商品编号,如果说本系统中之前已经有该编号商品的一系列记录,那么系统会自动填补商品名称、分类,选择合适的顾客和出库数量,若无相关顾客信息可以及时添加,然后输入其它信息,就可以点击添加入库操作了。如果库存中没有这个商品信息的话,就不能进行操作。客户退货在销售模块中,点击退货出库,显示退货出库页面,可以通过供应商、是否付款来选择要退货的商品。也可以添加、修改、删除某个订单号上要退货的商品。 客户退货查询可以根据日期、供应商、是否付款来查询退货单。销售单据查询根据销售单号查询销售单信息,根据销售单查询销售单上所有商品的数量、价格、是否付款。2. 部分界面图5.3 销售管理界面5.3.3 客户信息管理1. 实现目标 客户信息管理主要对客户信息进行增删查改。2. 界面图5.4 客户信息管理界面5.3.4 统计报表1. 实现目标 统计报表可以实现对于客户、供应商、商品采购、商品销售的统计。2. 界面图5.5 统计报表界面5.3.5用户管理1. 实现目标 实现对登陆系统用户的管理,包括用户的增加、删除、修改。2. 界面图5.6 用户管理界面5.3.6 系统管理1. 实现目标 系统管理主要实现对数据的管理,包括数据库的备份和恢复操作[21]。2. 界面图5.7 系统管理界面5.3.7 库存管理1. 实现目标 库存管理主要包括库存查询、库存报溢损、库存报警、库存报溢损查询,在实际业务中,报损单是指实际库存比统计库存低[22],报溢单是指实际库存比统计库存高。商品库存报警主要作用是当商品的实际库存小于要求的最低库存时,就会出现库存报警[23]。2. 界面图5.8 库存管理界面6调试过程与调试结果分析6.1 登录功能测试 系统运行后出现登录界面,输入用户名admin,密码:123,会出现提示:用户名或密码错误。当输入正确用户名:admin,正确密码:admin,才能顺利的进入系统。6.2 商品入库功能测试进入商品入库界面之后,在新商品入库管理中添加原有商品的信息,系统会提示操作失败,正确的输入新商品入库信息后系统才提示新商品入库成功。6.3 商品出库功能的测试进入商品出库管理界面之后,随机选择一种商品,填写出库数量,当出库数量大于该商品目前的库存量时系统会提示,目前库存量不够所需出库量,只有该商品在库存量大于等于所需出库量时,该商品的出库才能实现。经过与以上用例相似的数据多次测试,最后得出结论:系统测试成功。7 性能分析超市库存商品管理系统,包含了商品入库、商品出库、库存商品盘点、客户订货、货源查询、动态性销售状态分析这几项功能、是一款统计、销售、经营信息反馈的多功能小型统筹类软件。该系统基本上已按照预期的目标实现了,总的来说,可以满足用户的使用。该系统的结构简单明了,操作简单,界面友好,运行速度较快,实用性较强。以简单实用为设计的发点,没有多余的成分出现。基本上解决了传统人工经营超市时,对商品库存管理所遇到的各种麻烦。对于数据库中的数据,已经严格的限制其数据的类型与长度,减少在对数据库操作时所产生出错,冗余等。系统的可靠性和可操作性十分优秀,各种基本的操作容易掌握,具有界面友好,效率高,易维护,可移植性较好等特点[25]。(1)数据精确度单价金额采用浮点数,保留小数点后两位。(2)时间特性五秒之内能够让该管理系统软件从启动到进入系统登录界面,2秒之内完成录入并更新数据 [26]。(3)适用性Windows 2000/xp以及以上操作系统都能够顺畅运行。8 总结经过几个月的艰苦努力,我终于完成了苏果社区店库存管理系统的核心部分设计与实现,并使该系统达到可实际应用的阶段。本次毕业设计是一个精细漫长的过程。在整个制作与设计的过程中我都深感自己基础的薄弱,知识的匮乏。然而好在我一直坚持了下来,通过运用大学四年所学习到的方法进行学习那些之前并未接触过的知识,圆满完成了此次设计。无数次的请教同学、图书馆查阅资料、熬夜写代码终于有了一个结果,这也算是为我做毕业的这段时间里的最好的补偿吧。通过这次毕业设计,我想我收获了很多很多。不仅仅是技术上的收获,更重要的是让我明白了如果你想做好一件事,必定要付出长久的努力。成功不是一蹴而就的,这需要我们时时刻刻的积累与努力,而这是我以后的人生道路上所需要勉励自己的!致谢参考文献[1] 李之兴,杨瑞龙.Java程序设计之网络编程[M]. 清华大学出版社, 2006:70-125.[2] 王克宏. java技术教程(基础篇)[M]. 清华大学出版社, 2002:50-90.[3] 孙燕. java2入门与实例教程[M]. 中国铁道出版社, 2003:85-265.[4] 叶核亚,陈立.java2程序设计实用教程[M]. 电子工业出版社, 2003:99-183.[5] 柯温钊.java例解教程[M]. 中国铁道出版社, 2001:69-77.[6] 何明.从实践中学习Oracle/ SQL[M]. 清华大学出版社, 2004: 88-165.[7] 李文泽.JAVA程序设计专家门诊[M]. 清华大学出版社, 2006: 90-221.[8] 张俊玲.王秀英.数据库技术 [M] . 人民邮电出版社, 2006:93-163.[9] 向传杰.JAVA编程案例教程[M]. 电子工业出版社, 2004:322-420.[10] Bruce Eckel.Thinking in java 3rd Edition[M]. 清华大学出版社, 2004:122-229.[11] Tony M.Oracle .Database Upgrade Guide 10g Release 1 [M].USA:Oracle Corporation,2003:150-330.[12] Jason Price.Oracle Database 10g SQL:Master SQL and PL/SQL[M].清华大学出版社,2005:246-341.[13] Roger Garside,John Mariani.java教程(英文版,第2版)[M]. 机械工业出版社,2003:339-421.[14] Lvor Horton.Java2 入门经典JDK5[M].机械工业出版社, 2006:211-332.[15] 斯坦迪什.JAVA数据结构[M]. 清华大学出版社, 2004:63-90.[16] 弗拉纳根.JAVA技术手册[M]. 东南大学出版社, 2006:220-336.[17] 陈华. 库存管理系统中数据库的设计与实现[J]. 电脑开发与应用, 2009, 22(1):61-62.[18] 刘燕,吴娴,罗治平.基于数据库的库存管理系统的研究[J]. 制造业自动化, 2009, 31(9):34-37. [19] 周微, 邱桃荣, 姚晓昆. 基于B/S模式的库存管理系统的分析与设计[J]. 计算机与现代化,2006 (10):26-28.[20] 段瑢瑢, 王守城, 岳小鹤. 基于B/S架构的库存管理系统的设计及实现[J]. Cad/cam与制造业信息化, 2006 (1):18-20. [21] 王珊, 萨师煊. 数据库系统概论(第5版)[J]. 中国大学教学, 2014:74-80.[22] Chiba S. Load-Time Structural Reflection in Java. in: Elisa Bertino [C]. Proceedings of Ecoop Springer Lncs, 2000,18-25.[23] 王向兵. JavaEE多层架构Struts2+Spring3+Hibernate3+Ajax的整合[D]. 大连海事大学, 2009:15-35. [24] Li Z,Wei-xi Z. Design and implementation of fixed assets management system based on JavaEE[J]. Computer Engineering & Design,2009(2):3797-3800.[25] 陈艳. 基于JAVAEE的工作流引擎的设计[J]. 计算机与现代化, 2008(8):46-49. [26] GP Y, DT R,WW K, et al. Combining SSH and cDNA microarrays for rapid identification of differentially expressed genes[J]. Nucleic Acids Research,1999(10):27-30.学院?信息科技学院?计算机科学与技术姓名?肖尧论文题目?苏果社区店库存管理系统分析与设计一、对待毕业实习的态度及实习期间遵守纪律情况优良(15—11分)一般(10—6分)较差(5—0)?9二、观察、收集、整理、查阅资料及运用数据的水平优良(30—21分)一般(20—11分)较差(10—0分)?18三、学生的独立工作能力和动手能力优良(20—16分)一般(15—11分)较差(10—0分)?12四、毕业论文写作的规范化程度优良(15—11分)一般(10—6分)较差(5—0分)?12五、毕业论文(设计)总体评价优良(20—16分)一般(15—6分)较差(5—0分)?10审查意见、成绩及能否提交答辩:?总分:61?是否同意进入答辩流程:同意学院?信息科技学院?计算机科学与技术姓名?肖尧论文题目?苏果社区店库存管理系统分析与设计一、论文选题的价值与合理性优秀(15—11分)一般(10—6分)较差(5—0)?9二、论文的难度、工作量大小和创新性优秀(30—21分)一般(20—11分)较差(10—0分)?18三、数据资料分析、归纳、概括及运算的能力优秀(20—16分)一般(15—11分)较差(10—0分)?12四、文字表达水平、文章的逻辑性优秀(15—11分)一般(10—6分)较差(5—0分)?9五、论文写作的规范化程度优秀(20—16分)一般(15—6分)较差(5—0分)?12评阅意见、成绩及能否提交答辩:?总分:60?论文难度一般,无创新性。结构合理,格式基本符合规范。本科生毕业论文(设计)答辩及综合评分表(由答辩小组填写)学院?信息科技学院 ???计算机科学与技术 ??姓名?肖尧 ??论文题目?苏果社区店库存管理系统分析与设计 ??一、内容的科学性、应用性和创新性优秀(30—21分)一般(20—11分)较差(10—0)?18 ??二、论文写作水平及知识面掌握程度优秀(30—21分)一般(20—11分)较差(10—0分)?18 ??三、语言表达能力、逻辑思维能力、回答问题的正确性优秀(40—31分)一般(30—11分)较差(10—0分)?24 ??论文答辩意见及成绩:?总分:60 ??答辩小组负责人(签名): 2015 年 6 月 4 日本科生毕业论文(设计)综合评定成绩(由答辩小组填写)毕业论文(设计)评阅成绩30%毕业论文(设计)答辩成绩40%综合评定成绩100%?18.3?18 ???24 ??60.3[及格]注:综合评定成绩等级:优秀(90-100),良好(80-89),中等(70-79),及格(60-69),不及格(60分以下)。答辩小组负责人(签名): 2015 年 6 月 4 日
目录
摘要 4
关键字: 4
1 引言 5
1.1 选题背景及意义 5
1.2 国内外研究现状 5
1.3 苏果社区店库存管理系统达到的目的及结论 6
2 系统开发工具及技术 6
2.1 系统开发工具 6
2.1.1 企业级集成开发环境:MyEclipse10.1 6
2.1.2 数据设计工具:PowerDesiner15.0 7
2.1.3 服务器:Tomcat6.0 7
2.1.4 数据库:MySql5.6 7
2.2 SSH技术 7
2.3 软件工程及面向对象机制 8
2.3.1 软件工程 8
2.3.1 面向对象分析方法 8
3 需求分析与及设计原则 9
3.1苏果社区店库存管理系统的总体需求 9
3.1.1 系统功能需求 9
3.1.2 数据库需求 9
3.1.3 安全性需求 10
3.2可行性研究 10
3.2.1 经济可行性分析 10
3.2.2 技术可行性分析 10
3.2.3 运行环境可行性 10
3.3 设计目标与原则 11
3.3.1 系统分析 11
3.3.2 系统总体建设目标 11
3.3.3 设计原则 11
3.3.4 系统开发环境 12
4 苏果社区店库存管理系统的总体设计 12
4.1 系统总体功能图 12
4.2 子系统功能图及功能简介 13
4.2.1 商品管理 13
4.2.2 客户管理 14
4.2.3 供应商管理 14
4.2.4 统计报表 15
4.2.5 系统管理 15
4.2.6 库存管理 16
4.3 业务流程图 16
4.4 数据库设计 19
4.4.1 数据库基础 19
4.4.2 数据库概念结构设计 19
4.4.3 数据库物理模型设计 20
4.5 安全、保密设计 23
4.6 系统出错处理 23
5 苏果社区店库存管理系统的功能设计 24
5.1 子系统设计 24
5.2 登陆模块设计 24
5.3 模块设计 25
5.3.1 商品信息管理 25
5.3.2 销售管理 25
5.3.3 客户信息管理 26
5.3.4 统计报表 26
5.3.5用户管理 27
5.3.6 系统管理 27
5.3.7 库存管理 28
6调试过程与调试结果分析 28
6.1 登录功能测试 28
6.2 商品入库功能测试 29
6.3 商品出库功能的测试 29
7 性能分析 29
8 总结 29
致谢 30
参考文献 30
苏果社区店库存管理系统分析与设计
引言
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/2256.html