【快递仓库管理系统设计与实现8200字(论文)】_第1页
【快递仓库管理系统设计与实现8200字(论文)】_第2页
【快递仓库管理系统设计与实现8200字(论文)】_第3页
【快递仓库管理系统设计与实现8200字(论文)】_第4页
【快递仓库管理系统设计与实现8200字(论文)】_第5页
已阅读5页,还剩13页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

I快递仓库管理系统设计与实现摘要自20世纪80年代以来改革开放的不断深入,我们国家的经济发展很快,这种生产产品的生产企业要想在激烈的市场竞争中获得一席之位,要想持续发展和生存下去,以及走向更好的发展道路,推进中国制造向中国创造迈进,这些都离不开现代化的管理方式与方法,全面的信息化和自动化的仓库管理在这个发展的进程中起着举足轻重的作用。在这一需求的背景下,快递仓储管理信息化系统的设计与开发工作也随之展开。本文将严格按照软件工程的理念编写,设计并实现了当前这个快递仓库管理系统。本文从需求分析,逻辑设计,总体设计,详细设计,系统测试,实现各阶段的工作,包括系统结构图,业务流程图,物理表实现及其关系,功能模块算法流程,接口设计等等。关键词:快递仓库管理;软件工程;系统开发目录TOC\o"1-3"\h\u第一章绪论 1第二章软件需求分析 2第三章软件总体设计 33.1软件架构设计原则 33.1.1软件的架构体系 33.1.2软件模块设计原则 33.2系统任务概述 33.2.1系统的功能设计 43.2.2系统功能结构 43.3系统架构 53.4系统主要子模块设计 53.4.1用户登录子模块设计 53.4.2商品入库子模块设计 53.4.3商品出库子模块设计 53.4.4用户注册子模块设计 5第四章数据库设计 74.1数据库概念 74.2数据库分析 74.2.1数据库的完整性分析 74.2.2数据库的安全性分析 74.3数据库的设计 84.3.1概念结构设计 84.3.2逻辑结构设计 8第五章软件详细设计 105.1登录模块 105.2入库模块 115.3出库模块 125.4用户注册模块 13第六章总结 16参考文献 17第一章绪论在当下这个时代,随着计算机技术的不断更新迭代,社会经济也在不断取得进步和发展,在日新月异的今天每个行业的每个公司都在面临着不同的难点和痛点,尤其是我国的制造类企业。在这个发展极其迅速的时代为了能够生存并获得突飞猛进的发展,就必须牢固地紧跟上这个时代的前进脚步,积极地拥抱社会变化。在这个以计算机技术为核心的应用类技术急速变化更新的年代里,快递包裹的存储管理技术也变得比之前更加智能化、更加方便和高效。因此拥有一个运转良好的仓库和相配套的快递仓库管理系统是物流企业生存下来下去的关键所在。仓库作为一个存放物品的地点,是相关企业都必须认真对待的,不能发生偏差和损坏。本篇论文和本系统就是基于这样的一个观点引导下,从而进行编码完成了一个在功能使用上基本能满足企业管理需要的系统,也就是本文所要介绍的快递仓库管理系统。

第二章软件需求分析系统项目开发的首要阶段是对要开发软件的需求进行分析和论证,这个阶段在软件开发生命周期中占据着重要的作用,其地位也是不言而喻的,确定最终使用人对软件的需求是这当前这个阶段的主要任务。软件项目的开发成型是以需求分析为基础的,它确定了软件系统要做哪些不同方面的内容,具有什么样的功能和性能,哪些约束条件需要满足等。在这个阶段经过用户不断分析论证最终确认的结果,能够影响我们在后期的软件开发过程中功能的具体实现。职能要求分析1、登录和确认:在进入系统的过程中,确保仓库管理系统的信息安全。需要首先对当前用户进行验证身份信息的操作,在如果验证没有报错的情况下,如果不能正确地匹配用户名和口令,则可以顺利地访问当前的系统,提示要求重新输入信息进行再次登录。2、管理员功能:该功能是为快递仓库管理系统的管理员角色提供的功能,该功能能够对系统中的所有用户进行增加、修改、删除等等操作,能够增加新用户,也可以对已经添加的用户信息进行修改和删除等操作。3、普通用户查询模块:这是一个提供给客户的用户的功能,用户可以使用该功能通过输入不一样的的条件进行筛选、过滤查询客户信息,也可以修改客户自己的信息。4、查询管理商品库存:系统管理员和客户在登录系统后均可以看到这个功能模块,用户可以查看商品、存放商品、出库等操作,可以查看仓库中的商品。5、管理用户资料:此功能只供管理员使用,管理员可以根据自己的用户资料来处理,可对客户新增或者对已经存了很久的客户信息进行维护,修改登录、名字等等。

第三章软件总体设计对软件系统的进行设计的操作在实现软件的开发过程当中占据着相当大的比重。这一章将重点阐述仓储管理系统的整体体系结构和组织结构。本节的功能主要用于介绍每一个应用数据模块之间因这个系统的业务交互从而产生关系,这些产生的关系像蜘蛛网一样的错综复杂,数据库的设计目的在于解释所建立的表和数据保持的一致性。基于基础的、可复用的模块,我们设计了软件的架构,通过在前期的分析阶段得到的数据流向图,基于此,本文对系统的软件体系结构进行了设计。在分析的过程中,分析员要从大量的方案中挑选出一些不同的方案,再进行分析、筛选,最终选出一个大家都能接受的、合理的方案。对某些系统来说,系统的复杂性需要将各功能模块进行分解,从而确定软件体系结构,把复杂的功能分解为简单容易处理、可量化、可逐步提交验证的功能点,然后,就是软件体系结构的设计。完成测试方案,编写软件体系结构设计文件,并将其提交审核。在现代科技的快速发展下,利用程序语言来实现仓储管理的智能化,已不是什么难事。在信息化时代,随着计算机技术的日益普及,利用电子标签的仓储是现代科技的一个重要组成部分,它可以为快递行业提供一个更加简单、高效的管理体系。鉴于软件技术还不够成熟,国内很多企业还在采用传统的人工方式进行仓储管理,在使用大量的人力资源的情况下,企业还不能实现对仓库的实时和动态的监控。在信息化、商务的飞速发展中,企业要利用现代信息技术对企业进行有效的管理,以提高企业的经营效益。本文从系统基本信息管理、货物入库、货物出库、库存管理、系统日志等方面进行了详细的分析与设计。该系统可以确保实时、准确地掌握货物的情况,节约时间、人力。同时,也能对仓库内的商品进行高效的管理,降低人为错误所带来的损失。3.1软件架构设计原则软件整体设计的任务是设计和模块化软件。基础信息管理系统应当具备多种信息管理功能,能够实现对库存物品的删除、修改和查询,从而实现对库存管理的方便、高效和准确。3.1.1软件的架构体系软件系统中可以说打地基的是软件的体系架构,绝不为过。必须要做遵循的设计准则如下:架构抽象。在一定时间内维持稳定。普通、高效、稳定。3.1.2软件模块设计原则在软件开发中,最重要的一点是对软件进行模块化设计。减少模组之间的耦合,增强模组内部的凝聚力。控制组件的使用距离。简单设计接口。功能可验证。合理划分,保持独立。3.2系统任务概述在建设网站时,应该清楚的知道自己的网站是怎么建的,它的功能是什么,它的规模有多大,投资多少钱,这些都是需要精心设计的,这样才能避免网站的建造过程中出现的问题。在实施一个特定的流程时,创建者需要从以下方面着手:安全性。在现代社会,用户信息是一切的重中之重,再怎么强调信息的安全性都不为过。软件系统的最需要具备的一点就是在任何情况下都要确保用户信息的绝对可靠安全。先进性。根据当前的最新技术发展出满足用户功能性要求的系统。可扩展性。模块化设计,提高了可扩展性,并可随具体使用,灵活对服务器进行增减。有效性。我们都知道的是,它包含了两个不同的层面:有用和可用。有用性是指一个系统能够满足使用者的基本需要,而可用性则是指使用者在使用该网站时所获得的系统所具有的经验功能。因此,我们在开发系统的功能时,首先要满足用户的需要。3.2.1系统的功能设计快件仓储管理系统主要由两个部分组成,即:系统管理员和使用者:1.管理员管理员可以使用账号和口令登陆,确认登陆信息无误,登陆后的主要功能是管理用户信息和库存信息,其操作功能主要有:入库、查找、修改客户信息等操作。2.普通用户普通用户可以通过注册登录成为系统会员,注册成功后可拥有包括系统首页显示、库存搜索、个人信息、退出系统等不同的功能点。3.2.2系统功能结构在上述讨论的基础上,我们得到了一个系统框架结构,见图3-1。图3-1系统总体结构图3.3系统架构我们都知道这样一个事实,即B/S系统对客户机的改动做的优化和调整是十分巨大的,服务端来执行对数据库的访问和执行应用程序。基于这样一个共识,使用http浏览器技术是B/S架构的主要访问手段。因此,在B/S架构基础上,安装软件、修改软件与对软件进行维修,只需要在服务器端进行就可以了。用户在访问我们这个软件系统时,只需要任何一个能够联网的浏览器就可以了,鼠标点击就可以访问和操作我们这个系统所有的功能模块。我们可以在影响用户操作最小的情况下,将系统进行更新升级。在B/S体系结构中,还有一个统一的、在线的、异构的应用程序服务[10]。3.4系统主要子模块设计在分析了软件系统的功能的设计的基础之上,再根据实际使用按照功能区分将系统小模块分割,这就是系统的模块化。3.4.1用户登录子模块设计用户登录数据的验证在系统的操作上流程相对比较简单,可以这样来解释:当使用者启动登入程序时,使用者名称和口令都都必须输入正确,点击提交后系统传送这些数据至服务端。服务端处理接收到的数据,首先将内容分离,然后再核对数据库中保存的信息是否与之匹配。如果两者完全对应则进入系统的登录首页;若数据对应失败则给出错误信息,提示用户进行修改信息。3.4.2商品入库子模块设计申请人将一份入库申请递交给快件仓库管理员,要求与货品相符,由快件仓库管理员进行比对。如果有出入,就不能接受入库作业;如果发现了该物品的信息,就得考虑到该物品的数量与现有物品的总和是否超出了该物品的最大限度,如果超出了,就需要等待,并暂停存储;如果不是,系统将会继续进行存储。在此清单中缺少的话,就要重新添加,并计算出最大存货量,如果存入的数量超出了,就会暂停存入。完成入库手续之后,保管员要向申请人出具一份精确而严格的进货清单。完成项目的存入流程。3.4.3商品出库子模块设计申请人将货物出库的申请交给快件仓储管理员,以便出库。若申请单经确认后没有效力,则不能完成出库。对真实有效的出库单,快件仓储管理人员又会对这批商品进行查询。如果库存不能满足要求,就取消库存。如果库存达到或超出了要求的库存,可以进行出库作业,并做好记录。然后,由快件仓库经理为申请人出具货物出库文件,完成货物出库过程。3.4.4用户注册子模块设计系统中用户登录验证相对简单容易:用户在登录时,需要输入用户名、密码等一系列的信息,然后由服务器端的程序进行确认。在服务器端进行处理时,服务端会根据所提交的信息,对所提交的数据进行判定。若已登记的使用者名称未被记录在现有资料中,则会将资料登记入表格;如果提交者的资料有空白,则系统会显示对应的错误资讯。特别是在进行邮箱时时的注册,若输入的邮箱格式不符合规范时时,系统将给出相应的信息要求。如果所输入的资料与系统设定的规则和需求相符,那么就可以成功地登记目前的资料。用户也可以选择删除目前完成的资料,并重新登记使用者资料。

第四章数据库设计在软件系统的开发过程中,数据库表的设计、数据如何存放的设计有着不可替代的作用,没有数据,系统也将不存在了。设计并反映出某个系统对数据应用和存储的要求作为数据库设计的主要目标。以前期做好的需求分析内容为基础,我们能非常方便的设计出数据库抽象概念模式。在普遍的应用场景下,E-R图是我们通常用来表示数据相关性的数据库表设计模型。在目前这个阶段,系统的终端用户可以参与进我们的设计中来,集中所有人的奇妙想法为数据库系统的设计出谋划策,从而确保了基于用户需求的数据库系统的设计。4.1数据库概念在用户指定的独特环境之下创建软件系统与数据之间的相关性,这是数据库设计的目的,在此基础上,设计软件的目的是提高操作人员的管理效率。一个网站中最不能缺少的就是数据库,原因是,用户在访问站点时会生成各种数据,而站点会将其存储到一个文档中。但是在真正的网站上,这些文件所能存储的数据并不多,根本就不可能满足所有的数据[5]。正是由于这样,网站的建设才会有相应的资料库,算是一个完美的网站。本文所选取的数据库为ORACLE。它能够用表结构的方式将之前用文件保存的数据进行储存,并且保证同一权限下的不同用户也能访问到这些数据,减少了海量数据的拖沓和冗余,在数据存储、读取上的速度也与之前相比有很大层次的飞跃和提升。4.2数据库分析我们经常把数据以数据模型的形式储存在数据库中,这就是数据库的基本结构。数据模型的发展历程主要有一下3种:1、层次模型:这是使用最早的模型,它的数据的结构是被称为有方向的树。2、网状模型:通过一种类似渔网的构造来表示不同实体类的关系。3、关系型:二维表是组成的基本的数据构造。4.2.1数据库的完整性分析数据库的完整性,指数据能够包容般和准确的存在。在本系统中我们定义了表之间的相干性能够帮助我们实现系统的完整性,具体要怎么做,做哪些内容则要在具体的编码程序中完成。完整性限制可以在一定范围内存储非标准数据,从而确保所有存储的数据都是合法的。4.2.2数据库的安全性分析我们都知道,数据库安全性的指标是够在任何情况下都能保证数据的完整、合法还有安全有效。我们这个系统安全的重要性能指标是数据库和服务器在任何情况下的都要保证安全。在服务器端的数据库中通过校验管理员信息的方法实现安全。在登录数据库过程中,系统让管理员户选择当前身份,管理员角色不同权限也不同。同时,还可以通过判定用户在登陆时所输入的信息与数据库中的信息相符来确认服务器的安全性[3]。4.3数据库的设计4.3.1概念结构设计总所周知,我们一般都会采用E-R这一方法来在次级结构中使用。下面的一些方法在二次结构的设计中是比较常见的:从下往上、从上到下、逐步扩展、相互结合,这样就可以作为一个模型,并分别得到更多细节的数据模型。在物理阶段的物理阶段,我们分为两个步骤:为数据库确定实体结构,表明怎么保存数据。选择最合适当下系统的数据存储方式。以系统的需求作为出发点,并且把象用数据流的方式表现出一割完整的抽象类。E-R图表是以下4-1中的主要工具。图4-1系统E-R图4.3.2逻辑结构设计(1)系统操作者资讯关联方式,内部的主要按键为操作者号码。系统操作员(操作员编号,用户名,email,密码,联系方式,姓名,联系方式,性别)(2)顾客资讯关联方式,其中关联的主键为顾客号码。客户(客户编号,用户名,email,密码,联系方式,姓名,联系地址,性别)(3)一种商品的资讯关联方式,其中关联的主键为产品的编号。商品(商品编号、价格、名称、类别、产地、数量)表4-1管理员信息表列名数据类型可否为空说明idnumberNOTNULL管理员编号accountvarcharNOTNULL帐号PasswordvarcharNOTNULL密码namevarcharNOTNULL姓名sexvarcharNOTNULL性别agevarcharNOTNULL年龄phonevarcharNOTNULL联系方式emailvarcharNOTNULLE-mailaddressvarcharNOTNULL地址表4-2客户信息表列名数据类型可否为空说明idnumberNOTNULL客户编号accountvarcharNOTNULL帐号passwordvarcharNOTNULL密码namevarcharNOTNULL姓名sexvarcharNOTNULL性别agevarcharNOTNULL年龄phonevarcharNOTNULL联系方式emailvarcharNOTNULLE-mailaddressvarcharNOTNULL地址表4-3商品信息表列名数据类型可否为空说明idnumberNOTNULL库存编号nameVarcharNOTNULL商品名称goodsidvarcharNOTNULL商品编号pricevarcharNOTNULL商品价格sortvarcharNOTNULL商品分类numvarcharNOTNULL商品数量addressvarcharNOTNULL生产厂商

第五章软件详细设计在软件的详细设计阶段,创建者必须要明确实现系统的方式是什么,这是当前最重要的,经由这个阶段的编码,我们就能够实现系统要我们实现的所有功能。在当下这个阶段中,一定要注意编写质量,程序的“读者”是人和计算机。在创建的清单软件的生命周期内,所有的问题,包括诊断和修正,都需要我们仔细审查这些程序。我们大家都知道的是,衡量一个项目的品质,并不只是其商业逻辑过程是否精确,以及是否符合程序的合理需求,更为重要的还是看它是否是能够读易理解。进行仓库管理的管理人员或者是客户在登录后可以进入系统进行相应的操作是我们这样一个快递仓库管理系统中要必须完成的基本功能。5.1登录模块我们提供了两个不同的入口。管理人员必须要用用户名和密码成功登录系统,用户的登录所需的信息必须是存在系统内的,普通个人用户的信息可以自己注册或者提前交由管理员存入。有两个入口提供登录。如下面这张图,先进行验证用户信息是不是正确。管理员登录图片如下:图5-1管理员登录操作管理员登录功能的代码主要编写如下所示:AloginServlet.java文件主要代码如下:Stringaccount=request.getParameter("in_be");Stringpassword=request.getParameter("pass");HttpSessionsession=request.getSession();session.setAttribute("account",account);AdminServiceadminService=newAdminService();SqlSessionsqlSession=MybatisSessionFactory.getSession();AdminDaoImpaDaoImp=newAdminDaoImp();try{List<Admin>fadmin=aDaoImp.findAdminByName(account);sqlSession.clearCache();sqlSmit();//session.close();System.out.println("当前用户还未注册,注册ing"+fadmin);for(AdminfAdmin2:fadmin) {if(password.equals(fAdmin2.getPassword())){response.sendRedirect("AFirstLog.jsp");session.setAttribute("Admin",fAdmin2);//System.out.println("帐号密码正确!");find=true;}}if(fadmin.size()==0){System.out.println("当前用户还未注册,注册ing"+fadmin);response.sendRedirect("AloginFail.html");thrownewAdminServiceException("用户名不存在!");}else{if(find==false){response.sendRedirect("AloginFail.html");thrownewAdminServiceException("密码错误!");}}}catch(Exceptione){e.printStackTrace();}5.2入库模块我们有两种不同的输入模式,一是输入已有的产品,二是输入不存在的产品,二是增加最新的产品。输入商品时,可以根据实际需求自由选择输入哪个产品。输入的物品信息将会出现。这种方法方便了管理人员了解货物的状况。我们可以根据物品的名字进行搜索,在完成产品名称后,可以查询到产品的进出和入库情况。在图5-2中显示了增加现有的上产品模块:图5-2添加已有商品图片当有新的商品要存入仓库中的时候,仓库管理人员通过鼠标点“添加新商品”这一选项。当把新入库的商品的信息填写完毕之后,点击按钮提交,这样在“goods”中就能自动保存下一条记录。当管理员发现录入的信息与实际不相匹配时,可点击“清除”按钮,一键清除之前填写的信息并重新录入。在图5-3中显示了增加新的产品模块:图5-3添加新商品模块5.3出库模块我们这个系统提供的出库方式的前提是库存表中已经有了。如果是在库存数量小于出库的量,系统会告知数量不足,不能出库。如果当前已经没产品了的情况,系统会显示出货错误。现在还不能出货。在正常出库后,为了精确地显示存货信息,存货中的货物数量也发生了变化。图5-4出库管理模块图片在商品进行出库的操作的管理模块中的逻辑代码主要如下:GoodsDaoImpgoodsDaoImp=newGoodsDaoImp();OutGoodsDaoImpoutGoodsDaoImp=newOutGoodsDaoImp();for(Goodsgoods2:goods){StringGoodsNum=goods2.getNum();System.out.println("goods2值为:"+goods2);IntegerIntGoodsNum=Integer.valueOf(GoodsNum);Goodsgoods3=goods2;System.out.println("IntGoodsNum:"+IntGoodsNum);if(IntOutNum>IntGoodsNum){System.out.println("出库数量不足!");response.sendRedirect("OutStockFail.jsp");}else{goods2.setNum(String.valueOf(IntGoodsNum-IntOutNum));try{//goods3.setNum(String.valueOf(IntOutNum));goodsDaoImp.updateGoods(goods2);sqlSmit();goods3.setNum(String.valueOf(IntOutNum));outGoodsDaoImp.saveOutGoods(goods3);sqlSmit();}catch(Exceptione){e.printStackTrace();}response.sendRedirect("Goods.jsp");System.out.println("出库成功!");}}5.4用户注册模块登录时,用户需要填写登录名和密码等信息,提交后,后台服务器中会将她们与数据库中保存的数据进行比较分析。那么我们注册的功能就来了,使用者必须先登记使用者的资料才能进入该系统。在进行登记时,必须输入用户名,密码,姓名,性别,年龄,联系方式,email地址,联系方式等,在用户点击“注册”按钮后,服务端先接收信息,服务器端在对数据处理过程中,服务器会首先拿到提交的内容。如果是输入的用户名存在,那么系统会终止注册这一流程,与此同时系统会提示当前用信息被用掉了,请重新注册的提示。用户如果在注册的过程中漏填了一些信息,系统会做出此没有填写请重新填写的动作提示。如在登记时未填妥资料,请按“清除”键清空资料,然后重新登记。图5-5用户注册系统用户注册的代码主要如下逻辑:Stringaccount=request.getParameter("in_be");Stringpassword=request.getParameter("pass");HttpSessionsession=request.getSession();session.setAttribute("account",account);//System.out.println("账户为:"+account);//System.out.println("密码为:"+password);AdminServiceadminService=newAdminService();SqlSessionsqlSession=MybatisSessionFactory.getSession();AdminDaoImpaDaoImp=newAdminDaoImp();try{List<Admin>fadmin=aDaoImp.findAdminByName(account);sqlSession.clearCache();sqlSmit();for(AdminfAdmin2:fadmin) {if(password.equals(fAdmin2.getPassword())){response.sendRedirect("AFirstLog.jsp");session.setAttribute("Admin",fAdmin2);find=true;}}if(fadmin.size()==0){System.out.println("当前用户不存在,注册ing"+fadmin);response.sendRedirect("AloginFail.html");thrownewAdminServiceException("用户名不存在!");}else{if(find==false){response.sendRedirect("AloginFail.html")

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论