超市仓库管理信息系统 41页

  • 585.50 KB
  • 2022-05-16 18:34:24 发布

超市仓库管理信息系统

  • 41页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
超市仓库管理信息系统指导老师:xx摘要超市仓库管理系统是典型的计算机信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。经过分析,我们使用MICROSOFT公司的VISUALBASIC开发工具,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一功能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成用户满意的可行系统。数据库采用ACCESS2003,由于我们的系统要求,采用它完全可以适合我们的工作需求,并且它所支持的数据类型十分丰富,维护简便,费用比较低。超市仓库管理信息系统用计算机管理超市仓库进出管理的一种计算机应用技术的创新,在计算机还未普及之前仓库管理都是由工作人员手工书写的方式来操作的.现在一般的超市都采用计算机智能化管理,采用计算机作为工具的实用的计算机超市仓库管理程序来帮助管理员进行更有效的超市仓库管理工作。关键字:超市管理、VB、数据库、ACCESS2003 ABSTRACTThesupermarketwarehousemanagementsystemisthetypicalcomputerinformationmanagementsystem(MIS),itsdevelopmentmainlyincludesthebackstagedatabasetheestablishmentandthemaintenanceanddevelopmentoffrontapplicationprogramoftwoaspects.Regardingtheneedtoestablishthedataconsistencyandintegrality,datasecuritygoodstorehouse.Forthelatterrequirestheapplicationprogramfunctioncomplete,easytouse,etc.Throughanalysis,weusetheMICROSOFTcompanyVISUALBASICdevelopmenttools,usetheofferallkindsofobject-orienteddevelopmenttools,especiallyadatawindowfunctionisconvenientandsimpledatabaseofintelligentcontroltarget,thepaperinashorttime,andthenaprototypesystemapplication,onthebasisoftheprototypesystemneedsrevisingandimprovingiteration,untilcustomersatisfaction,formedthefeasiblesystem.ThedatabaseACCESS2003,becauseofoursystemrequirements,usingitcancompletelysuitableforourwork,anditneedsthesupportofthedatatypeisveryrich,convenientmaintenance,lowcost.Thesupermarketwarehousemanagementinformationsysteminthecomputermanagementofthewarehouseinandoutthesupermarketmanagementacomputerapplicationtechnologyinnovation,computerhasnotbeenpopularwarehousemanagementarebeforetheworkingpersonnelmanualwritingwaystotheoperation.Nowthegeneralsupermarketsintelligentmanagement,byusingthecomputerbyusingthecomputerasthetoolofpracticalcomputersupermarketwarehousemanagementprogramtohelpadministratorsmoreeffectivelysupermarketwarehousemanagementwork.Keyword:supermarketmanagement、VB、database、ACCESS2003 目录第一章绪论11.1课题背景11.2国内外发展情况2第二章系统分析32.1需求分析32.2系统开发的目标及实现32.3系统可行性分析42.3.1.经济方面的可行性42.3.2.法律方面的可行性42.3.3.技术方面的可行性52.4现有工作方式分析52.4.1处理流程52.4.2系统开发流程52.4.3业务流程和数据流程分析72.5系统整体方案的分析82.5.1系统功能分析82.5.2系统功能结构分析9第三章系统设计103.1系统总体设计103.1.1设计原理及思想103.1.2设计原则103.1.3系统功能模块设计113.1.4数据库的概念设计123.1.5数据库逻辑结构设计133.1.6数据字典163.2代码设计17第四章系统实施18 4.1软件开发工具的选择184.1.1系统开发模式184.1.2系统开发工具184.2系统的调试及代码184.2.1系统的调试194.2.2系统的部分界面及代码194.3软件测试314.3.1软件测试的目的和意义314.3.2软件测试的步骤314.3.3软件测试的具体实现314.4模块测试324.5整体测试32第五章系统维护与评价335.1系统维护335.1.1系统维护综述335.1.2系统维护的内容335.1.3系统维护的类型345.2系统评价34第六章开发总结与未来展望35致谢36参考文献37 第一章绪论1.1课题背景随着改革开放的逐步深入,经济的日益发展带来的商品流通的速度剧增,使得超市仓库的管理量增大,只是单纯的依靠人工进行管理已经远远的不能满足需求,且效率低下,出错率高。因此,超市仓库管理系统也就应运而生。大超市商品的存储和调配是不可忽视的大问题,良好的后备调配为前台的产品销售有很大的帮助,也可以很大程度上提高产品的销售效率,满足消费者的消费需求。如果可以能够实时掌握销售流程及销售情况,则可以有效地加速商品的周转率并提高服务质量,而且可以减少产品售价不符等所产生的问题。顾客的消费要求的是希望在超市购物中能基本上都能购得所需的商品,并且还要既保证商品质量还要享受优质,方便的服务。但在超市日常管理中,商品的进、销、存等决策以经验为主,缺乏实时分析功能,管理人员对及时传递资料的要求始终得不到满足。超市仓库管理不仅能准确管理,并且通过数据库的调用能使系统管理员对用户基本信息进行维护,设置和修改用户权限,修改管理标准,汇总统计管理情况,仓库管理员对进货操作、出货操作、库存操作、应付账款、应收账款、报表输出等进行管理,并且能通过终端打印机打印输出各种库存报表等。这样使管理工作变得精确而有序,并且节省了大量人力物力,充分体现了网络的优越性。因此,设计一个超市仓库管理信息系统,使超市管理系统化、规范化和智能化就显的很重要了。所以在本次毕业设计中我选择了“超市管理系统”这个题目进行设计。在计算机飞速发展的今天,计算机的应用已普及到人们日常生活中的各个领域,越来越多的人借助计算机为工作和生活提供便利。超市仓库管理系统就是这样一种借助计算机来实现简化工作强度,使工作人员可以摆脱烦琐的手工作业,方便的管理超市商品的软件。建立一个完善的超市库存管理系统,实现超市管理的智能化,提高工作效率,减少管理人员的工作量和统计失误。通过本系统软件,能帮助管理人员利用计算机,快速方便的对库存管理进行管理、输入、输出、查找、统计、报表打印的所需操作,使散乱的仓库人工管理能够更为快捷、方便的操作,易学、易懂、易会。简化超市中商品管理流程,减轻工作人员的工作负担,使操作人员只要简单输入几个数据就可以对整个超市的商品进行管理。另外,超市管理系统的软件也必将不断的更新;同时软件产品本身就要经过一个不断自我完善的过程。37 1.2国内外发展情况超市仓库管理信息系统在欧美等国已实行了多年,也是超市进行货物管理的基础,它最主要的特点是能够实时和准确的控制店内的销售情况,如果可以实时掌握销售流程及销售情况,则可以有效的加速商品的周转率并提高服务质量。在中国,自从国外超市在中国大地开始出现的时候,人们飞快的接受了这种购物便捷愉快地购物方式,超市的经营也逐渐走向成熟,并且竞争与愈加激烈,超市的形势也开始逐渐明确起来,大型的国内外综合性超市,中型的农贸型超市,小型的便民超市,便利店,开始出现的人们的周围。党的“十五大”后我国企业经济类型发生了很大变化,外资大型超市发展现状。目前进入国内市场的外资大型超市都拥有雄厚的资本实力,它们已经完成了资本的原始积累,因此进入中国后选址布点迅速,凭借的是资本优势。它们高度重视客户的满意度,研究顾客的需求变化,更加注重售后服务。同时它们拥有完善的物流配送体系,几乎所有的外资大型超市都有自己的物流配送中心并采用先进的物流和信息技术。它们都具有批量采购的成本优势,能实现无须预付的采购。本土大型超市发展现状。现阶段,本土大型超市的市场定位逐步鲜明。各大本土大型超市已经在同外资超市的竞争中学会了重新定位,扬长避短。在本土化经营方面,本土大型超市更能了解顾客的需求,特别是在传统商品方面的需求,能够为本土大型超市赢得先机。但在物流配送体系方面有待改进,目前大都处于萌芽状态,少数建有自己的物流配送中心,大部分仍包给第三方物流企业,在调度和应急处理方面的反应差距较大。本土大型超市在经营中的盲目性比较大,片面强调规模扩张,没有做好充分调研,易导致经营失败。经营处于借鉴摸索时期,很多经验都来自外资超市。但是由于我国的国情和民族特色,造成很多在国外成功经验在国内都无法实现,因此只有靠本土大型超市的自身探索。伴随着物流行业的发展壮大,对物流进行信息化管理并建设功能强大的物流信息系统,正为从业者、物流设备生产商、信息系统解决方案提供商所日益重视。物流的信息化管理随着物流行业的发展壮大日益为从业者和管理信息系统提供商所重视,中国要成为东亚乃至环亚太地区的物流中心,构筑现代物流信息管理系统也是重中之重,对于超市来说,构建自己的超市管理信息系统也是重中之重。37 第二章系统分析系统分析的主要任务是将在系统详细调查中所得到的文档资料集中到一起,对组织内部整体管理状况和信息处理过程进行分析。它侧重于从业务全过程的角度进行分析。分析的主要内容是:业务和数据的流程是否通畅,是否合理;数据、业务过程和实现管理功能之间的关系;老系统管理模式改革和新系统管理方法的实现是否具有可行性等等。系统分析的目的是将用户的需求及其解决方法确定下来,这些需要确定的结果包括:开发者关于现有组织管理状况的了解;用户对信息系统功能的需求;数据和业务流程;管理功能和管理数据指标体系;新系统拟改动和新增的管理模型等等。系统分析所确定的内容是今后系统设计、系统实现的基础。2.1需求分析我们引入超市管理系统,用计算机管理超市库存进出管理的一种计算机应用技术的创新,在计算机还未普及之前库存管理都是由工作人员手工书写的方式来操作的现在一般的超市都采用计算机智能化管理,采用计算机作为工具的实用的计算机超市库存管理程序来帮助管理员进行更有效的超市库存管理工作,解决了人工处理系统的繁琐与复杂,为进行数字化管理的中小型企业仓库开发仓库管理系统,减轻仓库管理人员的负担,使货物的存入记录与取出记录相对完善,便于货物的增加与减少,降低出错率,使管理更加合理、科学,也为经营者节省开支。目前市面上流行的超市管理系统不少。但是,对于小型的超市管理系统来说,不需要大型的数据库系统。只需要一个操作方便,功能实用,能满足本中心对数据的管理及需求的系统。我们的目标就是在于开发一个功能实用、操作方便,简单明了的超市管理系统。能够录入商品的基本资料,在操作上能够完成诸如添加、修改、删除、按各种条件进行查询、新用户的设置及密码修改等方面的工作,基本满足日常销售的需要。2.2系统开发的目标及实现本系统全面37 考虑了仓库在管理中要解决的所有需求,最终向用户提供一套方便可行的系统,该系统具备以下特征:配置必要的数据库和应用服务程序,提供查询、统计货物的种类、数量及所属公司等所有信息的功能,操作人员使用的界面要清晰、美观,布局合理,内容尽量简单明了,提供的信息详细全面。客户端程序要求安全性高,可靠性高。本系统旨在完成如下目标:(1)建立超市仓库系统(2)规范超市仓库的管理工作模式:用计算机管理取代以往的手工作业和定性管理模式,使超市仓库的管理工作模式规范化、机读数据格式标准化、管理决策科学化。(3)建立标准货物数据库:依照货物的不同性质对货物进行合理的调配.(4)提高超市仓库管理的运营质量:便于工作人员准确地掌握仓库结构,全面了解消费者的需求,及时调整采购计划,突出库存特点。超市仓库管理系统目标:建立一个能灵敏、高效、全面提高公司运营、仓储管理信息系统,促进物流、资金流、信息流,三流的管理上的集成;辅助管理决策者及时、准确地做出决策。(1)实现仓储业务全面计算机处理,提高公司的工作效率和工作质量。(2)及时提供仓储业务的统计信息,提高管理水平。(3)与供应商共享信息,实现VMI,满足供应链中对各项信息处理的准确性、一致性、时效性和灵敏性的要求。(4)为决策者提供更加有效的信息,辅助其做出正确的决策,从而提高公司的运营状况,提升利润空间。2.3系统可行性分析2.3.1.经济方面的可行性超市网络设施健全,各部门电脑配置齐全,硬件投入不需要很大,只需要在技术上投资。大型连锁超市的资金雄厚,总部积极支持系统开发,因此经济上是可行的。建立这样一个信息管理系统,一方面企业也就是超市有能力承担系统开发费用,另一方面新系统将为企业带来经济效益。2.3.2.法律方面的可行性在需要使用正版操作系统软件及应用软件平台,避免为此发生法律纠纷;超市仓库管理系统的开发完全为自主设计,不存在任何侵权问题,因此可以放心使用。37 2.3.3.技术方面的可行性技术可行性分析是根据新系统的目标来衡量是否具备所需要的技术,包括系统开发人员数量和水平,硬件方面,软件方面及其它应用技术。为本系统的开发我特地进行了深入的调查研究。对超市现状及需求方向有了进一步的认识。只需要一台数据库服务器和前台的销售机。并且开发人员对用户所提出的要求也都能够满足。综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的2.4现有工作方式分析2.4.1处理流程A.入库:生产包装完成后,经检验确认合格,贴上物料标签,仓库人员点收数量确认,填写单据并输入计算机系统,比较容易出错误。B.出库:根据生产或销售的出货单进行点数备货,并放入指定区域待出库。C.盘点货物:打印出盘点单,仓库人员根据盘点单在仓库区域找到对应的物料进行点数并将数填入报表中,出错率较高。D.工作负荷:仓管人员的工作较繁琐且劳累,更易疲倦,因此出错的可能性较大。E.费用开支:因为仓库实行全部人工管理,所以要为此支付多个仓管的工资费用及日用品票据纸张等的消耗费用。2.4.2系统开发流程仓库管理总体上分为货物的存入与取出,统计货物总量,查询各种货物的信息3种主要功能,系统流程图如图所示:仓库管理系统详细流程:1)管理员登录功能要求必须具备合法身份且知道密码的人才能有资格登录到该系统,保证系统的安全。2)货物的存入与取出功能是将入库/出库货物的详细资料(包括:种类,数量,入库时间/出库时间,所属公司,经手人,备注等信息)存入数据库中,如图所示。3)37 查询功能可以实现按所属公司名称、货物种类、入库/出库时间等详细资料进行查询,向客户端输出货物的详细信息。统计功能可以按照用户的要求按某些信息进行统计汇总,如图所示。:管理员登录数据库查询货物信息统计货物信息输出货物信息输出货物取出信息输入货物的入库信息`图2-1管理员登录要出库的货物信息入库的货物信息货物不存在数据库输出取货清单输入用户名、密码货物是否存在图2-237 2.4.3业务流程和数据流程分析本系统根据订单的不同可以分为两部分,分别为采购单处理部分和销售单处理部分。采购单处理的业务流程:从订单到达时开始,当库存管理人员接收到采购单时,首先先查询商品在库的情况,如果商品缺货,就将商品添加到商品库存表相对应的位置上。销售单处理的业务流程:从订单到达时开始,但库存管理人员就收到销售订单时,首先先检查商品的库存情况,如果有货的话,则将商品从商品库存表中相应的位置上修改该商品的信息。最终的数据都将存入到数据库中。采购人员采购单的到达商品库存情况查询查询结果采购单的确认确认需要及时购入和出售的商品销售人员出库单的到达库存状况的查询库存管理人员查询结果出库单的确认库存管理人员库存管理人员库存管理人员图2-3数据流程图如下:37 订货报表商品流通表库存量出库单入库单出库单入库单订货报表商品计划商品数量控制值商品计划录入商品采购计划商品信息表超市仓库管理人员生成订货报表采购人员1.录入入库单销售人员1.录入出库单商品流通表生成商品汇总报表类汇总报表打印订货报表图2-42.5系统整体方案的分析2.5.1系统功能分析(1)由于操作人员的计算机知识有限,因此要求系统具有良好的人机界面。(2)能够对业务员信息进行管理,凭借密码进入系统。(3)详细进出库单记录,方便的数据查询,支持多条件查询。(4)详细销售订货、发货、收货单,方便用户对数据的查询,支持多条件查询。(5)系统支持良好的数据备份和还原操作,有效保护数据,减少意外损失。(6)对用户输入的数据,进行严格的数据检验,尽可能避免人为错误。37 (7)报表基本信息查询时,可根据查询条件动态显示查询结果。(8)强大的报表打印功能。(9)系统预警表功能,及时提醒用户超储以及短储的商品。(10)积压货物分析,分析货物积压的具体原因,或储存时间过长或季节性滞销。(11)用户帮助手册,方便用户的具体操作。2.5.2系统功能结构分析(1)系统维护模块系统维护模块用于实现系统用户设置、操作人员管理、密码修改、数据备份、数据恢复、月末清算。(2)基本档案管理模块基本档案管理模块主要用于实现系统基本数据的录入,相关基础数据为:员工信息、仓库信息、货物信息、供应商基本信息、其他库存变动。(3)采购管理模块该模块主要用于实现采购数据录入,退货数据录入和采购订单查询、采购退货单查询。(4)库存管理模块库存管理模块主要用于实现商品出库、入库的添加修改,商品出库、入库单的查询,其他类型出库(比如,仓库货物借出、调拨)。(5)销售管理模块该模块主要用于实现销售数据记录,客户退货数据记录和销售、退货信息查询。(6)库存报表模块库存报表模块主要用于实现库存汇总表、明细表查询,商品信息,超储、短缺货物预警报,和积压货物分析。(7)帮助模块帮助模块主要为了帮助用户更好地使用该系统和了解软件信息37 第三章系统设计系统设计是新系统的物理设计阶段。根据系统分析阶段所确定的新系统的逻辑模型、功能要求,在用户提供的环境条件下,设计出一个能在计算机网络环境上实施的方案,即建立新系统的物理模型。3.1系统总体设计3.1.1设计原理及思想面向对象设计不再是单纯的从代码的第一行一直编到最后一行,而是考虑如何创建类和对象,利用类和对象来简化程序设计,并提供代码的封装和可重用性,便于程序的维护与扩展。设计的超市管理系统也是建立在一系列类基础之上的,其编程的思想是:先根据一定的需要创建一系列的子类或直接调用VB提供的基类,编制程序时,由这些类派生出相应的对象,所派生出的对象继承了其父类所有的功能,而且具有很好的封装性,这样就可利用派生出的对象像搭积木一样来设计自己的程序。每个表单都是由一定数量的对象按某一种方式组合在一起的,程序编制的核心是类的设计。其思想如下:(1)系统分成几个相对独立的模块,但这些模块都进行集中式管理。(2)分层的模块化程序设计思想,整个系统采用模块化结构设计。作为应用程序有较强的可操作性和扩展性。(3)合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。3.1.2设计原则为了使本系统功能齐全完备,操作简便,最大限度的提高该系统的质量,从而满足用户的实际需要,在设计开发过程中遵循了如下原则:(1)合法性原则:依据产品核算系统的工作规定以及要求,参照核算实际的工作情况,进行诸如商品采购、销售等工作。(2)实用性原则:适合产品信息管理工作的实际需求,并能够处理一些特殊情况的要求,此外,尽可能预留空间,以便扩充功能。37 (3)准确性原则:对输入的相关资料建立检错机制,及时报错,使用户能够及时准确的输入合法资料(如:类型匹配,长度不超限等)。(3)易操作原则:要求设计的系统功能齐全,界面友好,操作方便,必要的地方进行提示。(5)源程序可读性原则:为了便于其他设计,维护人员读懂代码或以后的代码修改,软件升级维护,即可能做好代码注释工作。(6)优化原则:为了达到优化的目的,合理的运用窗口,菜单,对象等的继承,减少不必要的重复性代码,使程序简介明了,也方便了将来的维护。(7)安全性原则:为该系统的用户设置用户登陆权限。3.1.3系统功能模块设计在系统功能分析的基础上,考虑到VisualBasic.net程序编制的特点,得到如图3-1所示的系统功能模块图。进货入库仓库管理系统进货管理库存管理统计报表日常管理退货出库员工管理供应商管理图3-1系统功能模块图。37 3.1.4数据库的概念设计实体-联系图用来建立数据模型,在数据库系统概论中属于概念设计阶段,形成一个独立于机器,独立于DBMS的ER图模型。。ER图提供了表示实体(即数据对象)、属性和联系的方法,用来描述现实世界的概念模型。E-R图如下:联系人地址邮编公司邮编银行账户地址Email传真电话号码客户企业名称企业编号供应商Email电话号码供货助记码商品描述商品名称商品商品编号进货价格库存销售价格仓库管理员编号名称电话号码说明图3-2为数据库的概念设计E-R图37 3.1.5数据库逻辑结构设计现在需要将在上面的数据库概念结构转化为ACCESS2003数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。仓库管理信息系统数据库中各个表格的设计结果如下面表格所示。每个表格所示在数据库中的一个表。表3-1为货物基本信息表。表3-1货物基本信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物名称文本64不可货物类别文本50可货物规格文本50可计量单位文本50可最高限量数字长整型不可最低限量数字长整型不可备注备注可表3-2为仓库信息表表3-2仓库信息表字段名称数据类型字段大小可否为空编号数字长整型不可仓库名称文本50不可仓库地点文本255可保管理员编号数字长整型可备注备注可表3-3为库存状况信息表表3-3库存状况信息表字段名称数据类型字段大小可否为空37 编号数字长整型不可货物编号数字长整型不可库存数量数字长整型不可仓库编号数字长整型不可表3-4为入库单信息表表3-4入库单信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可经办人编号数字长整型不可入库时间日期/时间不可入库单价货币不可入库数量数字长整型不可供应商编号数字长整型可仓库编号数字长整型不可订单状况文本50不可其它金额货币可备注备注可表3-5为出库单信息表表3-5出库单信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可经办人编号数字长整型不可出库时间日期/时间不可出库单价货币不可出库数量数字长整型不可客户编号数字长整型可仓库编号数字长整型不可订单状况文本50不可37 其它金额货币可备注备注可表3-6为借入单信息表表3-6借入单信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可经办人编号数字长整型不可借入时间日期/时间不可借入数量数字长整型不可供应商编号数字长整型可仓库编号数字长整型不可订单状况文本50不可其它金额货币可备注备注可表3-7为调拨单信息表表3-7调拨单信息表字段名称数据类型字段大小可否为空编号数字长整型不可货物编号数字长整型不可经办人编号数字长整型不可调拨时间日期/时间不可调拨数量数字长整型不可原仓库编号数字长整型不可目标仓库编号数字长整型不可其它金额货币可备注备注可37 3.1.6数据字典数据字典是对描述数据流程图中的数据项、数据流、数据存储、加工处理逻辑等组成部分的严格定义,下面是本系统的部分数据字典项:数据项系统名:超市仓库管理信息系统编号:条目名:商品编号别名:商品号属于数据流:F1.F8存储处:D1.D3.D4数据项值:代码类型:取值范围:意义:商品号字符数字+英文字母无简要说明:每一个字符串代表一个基本信息,代表某种商品的编号数据流系统名:超市仓库管理信息系统编号:F1条目名:入库单别名:来源:采购人员去处:登记库存台账数据流结构:入库单=日期+入库单编号+商品编号+购入数量简要说明:采购人员填写的商品入库凭单数据存储系统名:超市仓库管理信息系统编号:D1条目名:库存台账别名:存储组织:每个商品对应记录数:100主关键字:商品编号一个库存台账数据量:20K辅关键字:记录组成:商品编号+购入单价+库存数量简要说明:记录商品的编号、名称、单价与库存数量等信息处理逻辑系统名:超市仓库管理信息系统编号:P3条目名:出入库检查别名:输入:数据流F1输出:数据流F3加工逻辑:当验货处理后,库管员将货物入库,并发取货单到订货单位。简要说明:37 3.2代码设计代码是计算机和人都容易理解的符号(或语言),能够实现人和计算机的沟通。代码的重要性表现在以下几个方面:1.可以惟一地标识一个分类对象(实体)。2.加快输入,减少出错,便于存储和检索,节省存储空间。3.使数据的表达标准化。简化处理程序,提高处理互效率。4.代码也叫信息编码,是作为事物(实体)惟一标识的、一组有序字符组合。它必须便于计算机和人识别、处理。代码设计的原则:1.惟一性:是区别系统中每个实体或属性的惟一标识。2.简单性:尽量压缩代码长度,可降低出错机会。3.易识别性:为便于记忆、减少出错,代码应当逻辑性强,表意明确。4.可扩充性:不需要变动原代码体系,可直接追加新代码,以适应系统发展。5.合理性:必须在逻辑上满足应用需要,在结构上与处理方法相一致。6.规范性:尽可能采用现有的国标、部标编码,结构统一。37 第四章系统实施系统实施是管理信息系统在开发过程中的最后一个阶段。所谓系统实施指的是将系统设计阶段的结果在计算机上实现,将原来文档或上的设计转化为可执行的应用软件系统。系统实施的主要内容包括:物理系统的实施、程序的设计与测试、项目管理、人员培训、数据准备与录入、系统转换和评价等。4.1软件开发工具的选择4.1.1系统开发模式本应用系统是建立在windows操作系统平台,系统所承担的工作可以减少管理员的工作量,管理员可以使用友好的操作界面添加数据,删除数据,根据需要进行查询、统计,还可以通过网络和其他与之相关的系统相关联,为系统的扩充也提供接口。数据库系统为SQLServer2005。之所以选择这种模式,主要是因为仓库管理完成的任务相对单一,在最近的几年里不会有本质的改变,没有必要为其添加复杂多样的功能,为其提供了接口便于将来扩充,这样既可以节省开发投资,也方便人员学习。对系统的要求为:Pentium133以上、内存至少128MB、硬盘至少10GHD、操作系统为Win2000、WinXP、WinNT、Win98之一及以上、要有数据库软件(SQL)的安装、打印机4.1.2系统开发工具开发这个系统使用VisualBasic2005工具来开发。VB是当前最流行的一款程序开发工具,利用它可以开发功能强大的、运行在windows平台上的,能够操作数据库的应用系统,因此能够适应我们开发本系统的要求,并且简单易用,实现功能的代码量比其他语言缩少许多这样就缩短了软件开发周期,大大节约了软件开发成本。4.2系统的调试及代码37 4.2.1系统的调试目前的程序设计方法主要有结构法、原型法、面向法。本系统用的主要编程语言是VB,需要构建大量的表,所以基本以结构化方法为主。程序设施调试是在计算机上以种种可能的数据和操作条件对程序进行测试,找出丰在的问题并加以改正,使之完全符合设计标准。采用的主要步骤和方法如下:1.先在子模块完成后,对照设计流程用白盒法检查,先逻辑编程错误;2.然后录入一些有特征的数据从不同角度难结果,即黑盒法;3.模块都检查无误后在子系统内实行联调;4.子系统内联调成功后进行系统联调。4.2.2系统的部分界面及代码用户登录窗口37 主界面窗口进货入库管理窗口37 仓库管理窗口往来账务管理界面37 库存管理界面日常管理界面1.登录界面代码ImportsSystem.Data.OleDb37 PublicClassloginPrivateSublogin_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.LoadTextBox1.Text=""TextBox2.Text=""EndSubPrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickDimnameAsStringDimmimaAsStringStaticjAsIntegername=TextBox1.Textmima=TextBox2.TextDimcnnAsNewOleDbConnectionDimcmdAsNewOleDbCommandcnn.ConnectionString="provider=microsoft.jet.oledb.4.0;datasource=csck.mdb"cnn.Open()cmd.Connection=cnncmd.CommandText="select*from登录where用户名=""&name&""and密码=""&mima&"""DimrdAsOleDbDataReader=cmd.ExecuteReaderIfrd.Read()Thenrd.Close()cmd.CommandText="update登录set登录时间=""&Now()&""where用户名=""&name&"""Ifcmd.ExecuteNonQuery()>0Thenmain.Show()37 Me.Hide()EndIfElsej=j+1Ifj=3ThenMsgBox("你输入的用户名或密码错误"&j&"次",,"错误提示")EndEndIfMsgBox("用户名或密码不正确",,"错误提示")TextBox2.Text=""EndIfEndSubPrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.ClickEndEndSubEndClass2.进货入库管理界面代码ImportsSystem.Data.oledbPublicClassjhrkPrivateSubjhrk_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.LoadDimssAsNewSystem.Data.OleDb.OleDbConnection("provider=microsoft.jet.oledb.4.0;datasource="&Application.StartupPath&"csck.mdb")ss.Open()DimdAsNewSystem.Data.OleDb.OleDbCommand37 d.Connection=ssd.CommandText="select*from进出货管理"d.CommandType=CommandType.TextDimddAsNewSystem.Data.OleDb.OleDbDataAdapterdd.SelectCommand=dDimdsAsNewDataSetdd.Fill(ds,"t1")Me.DataGridView1.DataSource=ds.Tables("t1")ss.Close()cb1.Text=Now.Datemc1.Hide()EndSubPrivateSubcb1_MouseDown(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.MouseEventArgs)Handlescb1.MouseDownmc1.Show()EndSubPrivateSubcb1_MouseUp(ByValsenderAsObject,ByValeAsSystem.Windows.Forms.MouseEventArgs)Handlescb1.MouseUpmc1.Hide()EndSubPrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickIfTextBox1.Text=""ThenMsgBox("当前没有货品名称!",MsgBoxStyle.Exclamation+MsgBoxStyle.OkOnly,"警告信息")ElseIfTextBox2.Text=""ThenMsgBox("当前没有单位!",MsgBoxStyle.Exclamation+MsgBoxStyle.OkOnly,"警告信息")Else37 IfTextBox3.Text=""ThenMsgBox("当前没有规格型号!",MsgBoxStyle.Exclamation+MsgBoxStyle.OkOnly,"警告信息")ElseDimobjconnAsNewOleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&Application.StartupPath&"csck.mdb")objconn.Open()DimsqlstrAsString="insertinto进出货管理(货品名称,单位,规格型号,单价,数量,总金额)values(""&TextBox1.Text&"",""&TextBox2.Text&"",""&TextBox3.Text&"",""&TextBox4.Text&"",""&TextBox5.Text&"",""&TextBox6.Text&"")"DimobjComAsNewOleDbCommand(sqlstr,objconn)objCom.ExecuteNonQuery()objconn.Close()IfTextBox1.Text<>""ThenMsgBox("添加人员信息成功")TextBox1.Text="":TextBox2.Text="":TextBox3.Text="":TextBox4.Text=""TextBox5.Text="":TextBox6.Text=""EndIfEndIfEndIfEndIfDimssAsNewSystem.Data.OleDb.OleDbConnection("provider=microsoft.jet.oledb.4.0;data37 source="&Application.StartupPath&"csck.mdb")ss.Open()DimdAsNewSystem.Data.OleDb.OleDbCommandd.Connection=ssd.CommandText="select*from进出货管理"d.CommandType=CommandType.TextDimddAsNewSystem.Data.OleDb.OleDbDataAdapterdd.SelectCommand=dDimdsAsNewDataSetdd.Fill(ds,"t1")Me.DataGridView1.DataSource=ds.Tables("t1")ss.Close()EndSubPrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.ClickMe.Hide()main.Show()EndSubPrivateSubButton3_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton3.ClickDimconstrAsString="provider=microsoft.jet.oledb.4.0;datasource="&Application.StartupPath&"csck.mdb"Dimsqlstr,sqlstr1AsStringDimobjAsOleDb.OleDbConnectionobj=NewOleDb.OleDbConnection(constr)obj.Open()MessageBox.Show("确实要全部删除信息吗")sqlstr="deletefrom进出货管理where1=1"DimobjdataadapterAsNewOleDb.OleDbDataAdapter37 DimobjcomAsOleDb.OleDbCommand=NewOleDb.OleDbCommand(sqlstr,obj)objcom.CommandType=CommandType.Textobjcom.ExecuteNonQuery()sqlstr1="select*from进出货管理"Dimobjcom1AsNewOleDb.OleDbCommandobjcom1.Connection=objobjcom1.CommandType=CommandType.Textobjcom1.CommandText=sqlstr1objdataadapter.SelectCommand=objcom1DimdatastAsNewDataSetobjdataadapter.Fill(datast,"进出货管理")Me.DataGridView1.DataSource=datast.Tables("进出货管理")DataGridView1.AllowUserToOrderColumns.GetTypeCode()Me.TextBox1.Text=""Me.TextBox2.Text=""Me.TextBox3.Text=""Me.TextBox4.Text=""Me.TextBox5.Text=""Me.TextBox6.Text=""EndSubEndClass3.修改密码界面代码PrivateSubButton1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton1.ClickDimnameAsStringDimmimaAsString37 DimxmmAsStringDimqrmmAsStringname=TextBox1.Textmima=TextBox2.Textxmm=TextBox3.Textqrmm=TextBox4.TextDimcnnAsNewOleDbConnectionDimcmdAsNewOleDbCommandcnn.ConnectionString="provider=microsoft.jet.oledb.4.0;datasource=csck.mdb"cnn.Open()cmd.CommandType=CommandType.Textcmd.Connection=cnncmd.CommandText="select*from登录where用户名=""&name&""and密码=""&mima&"""DimrdAsOleDbDataReader=cmd.ExecuteReaderIfrd.Read()Thenrd.Close()ElseMsgBox("你输入的用户名或密码错误,请重新输入",,"提示")TextBox2.Text=""TextBox3.Text=""TextBox4.Text=""ExitSubEndIfcmd.CommandText="update登录set密码=""&qrmm&""where用户名=""&name&"""IfTextBox1.Text=""ThenMsgBox("用户名不能为空,请输入用户名",,"提示")ElseIfTextBox2.Text=""Then37 MsgBox("密码不能为空,请输入密码",,"提示")ElseIfTextBox3.Text<>TextBox4.TextThenMsgBox("你输入的两次新密码不一致,请重新输入",,"提示")TextBox2.Text=""TextBox3.Text=""TextBox4.Text=""ElseIfTextBox2.Text=TextBox3.TextThenMsgBox("新密码不能和原密码相同",,"提示")TextBox2.Text=""TextBox3.Text=""TextBox4.Text=""ElseIfcmd.ExecuteNonQuery()>0ThenMsgBox("修改成功",,"提示")TextBox1.Text=""TextBox2.Text=""TextBox3.Text=""TextBox4.Text=""EndIfEndSubPrivateSubButton2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButton2.ClickMe.Dispose()EndSubEndSubEndClass37 4.3软件测试4.3.1软件测试的目的和意义在系统的详细设计以及编码过程进行完成之后,就要对办公自动化管理系统的程序进行测试。软件测试是软件开发过程中的一个重要环节。软件测试是为了发现程序中的错误而执行程序的过程;好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;成功的测试是发现了至今为止尚未发现的错误的测试。软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计出一批测试用例,并利用测试用例来运行程序,以发现程序错误的过程。测试阶段的主要任务是尽量发现程序错误,改正错误,直至程序的功能、性能满足用户需求。4.3.2软件测试的步骤1.单元测试:又称模块测试,是针对软件设计的最小单元程序模块进行测试的工作。其目的是发现模块内部的错误,修改这些错误使其代码能够正确运行。其中,多个功能独立的程序模块可并行进行测试。2.集成测试:又称组装测试,它的任务是按照一定的策略对单元测试的模块进行组装,并在组装过程中进行模块接口与系统功能测试。集成测试的策略主要有两种:一次性组装方式和增值式组装方式。3.有效性测试:又称确认测试,目的是验证软件的有效性,即验证软件的功能和性能及其他特性是否符合用户要求。软件的功能和性能要求参照软件需求说明书。4.系统测试:系统测试的目的是为了测试软件安装到实际应用的系统中后,能否与系统的其余部分协调工作,以及对系统运行可能出现的各种情况的处理能力。4.3.3软件测试的具体实现1.运行程序,进入系统登陆界面,,输入用户名、密码和验证码,若输入有误系统会给出相应的提示信息,以此检测软件的安全可靠性2.用管理员身份进入该系统,测试用户管理功能模块,进行信息添加、删改信息、修改个人信息,操作成功后在阅读所有信息子系统或按条件搜索信息子系统下进行信息查询,查询结果正确,说明以实现该项功能。37 4.4模块测试在模块测试时我们主要从以下几个方面考虑:1.模块接口;2.局部数据结构;3.重要执行通道;4.出错处理通道;5.影响上述方面的边界条件。测试时进行代码审查,从数据类型,变量声明,数据结构进行审查,然后进行功能测试,从输入一些简单的数据开始执行一遍,观测运行期间变量的变化,运行中值的变化范围。改变测试方案来变换另一个角度进行测试,发现错误并记录,修改代码,测试条件使程序通过多层分支,判别运行结果从而完成模块测试。4.5整体测试总体测试是组装软件的系统技术,本系统测试采用渐增集成测试,即测试单一模块,将测试完的模块加入系统中,进行一次系统测试,依次类推将所有模块加入系统中,在具体测试时,采用自顶向下的结合方式,从主控模块开始,沿各控制层向下移动,逐渐把所有模块结合了。评估运行的可靠性问题:1.结果正确;2.运行速度;3.空间利用率;4.算法的可行性。37 第五章系统维护与评价5.1系统维护5.1.1系统维护综述管理信息系统在完成系统实施、投入正常运行之后,就进入了系统运行与维护阶段。一般信息系统的使用寿命短则4-5年,长则可达10年以上,在信息系统的整个使用寿命中,都将伴随着系统维护工作的进行。系统维护的目的是要保证管理信息系统正常而可靠地运行,并能使系统不断得到改善和提高,以充分发挥作用。因此,系统维护的任务就是要有计划、有组织地对系统进行必要的改动,以保证系统中的各个要素随着环境的变化始终处于最新的、正确的工作状态。系统维护工作在整个系统生命周期中常常被忽视。人们往往热衷于系统开发,当开发工作完成以后,多数情况下开发队伍被解散或撤走,而在系统开始运行后并没有配置适当的系统维护人员。这样,一旦系统发生问题或环境发生变化,最终用户将无从下手,这就是为什么有些信息系统在运行环境中长期与旧系统并行运行不能转换,甚至最后被废弃的原因。随着信息系统应用的深入,以及使用寿命的延长,系统维护的工作量将越来越大。系统维护的费用往往占整个系统生命周期总费用的60%以上,因此有人曾以浮在海面的冰山来比喻系统开发与维护的关系,系统开发工作如同冰山露出水面的部分,容易被人看到而得到重视,而系统维护工作如同冰山浸在水下部分,体积远比露出水面的部分大得多,但由于不易被人看到而常被忽视:从另一方面来看,相对具有“开创性”的系统开发来讲,系统维护工作属于“继承性”工作,挑战性不强,成绩不显著,使很多技术人员不安心于系统维护工作,这也是造成人们重视开发而轻视维护的原因。但系统维护是信息系统可靠运行的重要技术保障,必须给予足够的重视。5.1.2系统维护的内容系统维护是面向系统中各个构成因素的,按照维护对象不同,系统维护的内容可分为以下几类:(1)程序的维护:指的是修改部分或全部程序,以保证系统的业务处理过程,这种维护往往是在条件发生变化或原系统的效率低的情况下进行的。37 (2)数据文件的维护:主要是按照用户的要求对定期、不定期的数据进行更新或调整及对数据的备份与恢复。(3)代码维护:主要是指随着系统的发展和变化对代码一定程度的增加、修改、删除及设置新的代码的维护。(4)硬件设备维护:主要是指对主机及外设的日常维护与管理。5.1.3系统维护的类型(1)纠错性维护:由于系统测试不可能揭露系统存在的所有错误,因此在系统调入使用后频繁的实际应用过程中,就有可能暴露出系统维护内隐藏的错误,诊断和修正系统中遗留的错误,就是纠错性维护。纠错性维护是在系统运行中发生异常或故障时进行的。(2)适应性维护:适应性维护是为了使系统适应环境的变化而进行的维护工作。例如:操作系统版本升级、计算机更新引起软件转换,“数据变动”都是适应性维护。(3)完善性维护:为扩充功能和完善性能而进行的修改。这是对已有的软件系统增加一些在软件需求规范书中没有规定的功能与性能特征,还包括对处理效益和编写程序的修改。(4)预防性维护:为减少或避免以后可能需要的前三类维护而对软件配置进行的工作。预防性维护是为了减少以后的维护工作量。维护时期和费用,化被动为主动。5.2系统评价系统评价是对新开发的或改建的系统。根据预定的系统目标,用系统分析的方法,从技术、经济、社会、生态等方面对系统设计的各种方案进行评审和选择,以确定最优或次优或满意的系统方案。由于各个国家社会制度、资源条件、经济发展状况、教育水平和民族传统等各不相同,所以没有统一的系统评价模式。评价项目、评价标准和评价方法也不尽相同系统评价一般包括:①明确系统方案的目标体系和约束条件。②确定评价项目和指标体系。③制定评价方法并收集有关资料。④可行性研究。⑤技术经济评价。⑥综合评价。37 第六章开发总结与未来展望经过一个多月的毕业设计,一个完整的超市仓库管理系统终于设计完成了,但是关于这方面的接触才刚刚开始,有很多不足之处。这次的毕业设计开发,主要有以下几点收获:1.对原型化的系统开发方法有了一定的了解。渐增式的原型化开发方法与面向对象的程序设计的结合不但能在系统开发初期让用户了解系统的概貌,而且能使系统开发模块化,提高开发效率,减少出错。对于后期的系统维护也提供了很大的帮助。2.通过实践,提高了系统分析的能力,对数据流图、数据字典、系统流程图等系统设计工具的使用有了更深刻的认识。为以后的工作、学习的进一步提高打下了坚实的基础。虽然对仓库管理进行了系统的创建,但我们不可忽略的是这个系统并不完美。我们要在以后的实践中去检验它的可用性,特别要考虑它的实时性和安全性,这才是我们最值得考虑的问题。一个系统好不好,要经过反复的使用才能知道,不光光是理论中分析和设计得出来的。由此我就想到了在做这个系统时,有的同学用了ACCESS,有的同学用了SQL等来建不同的数据库,这样就导致有的是系统自带的代码,而有的则是我们写进去的纯代码,当然也就出现了各种各样的问题。特别是关于系统的可移植性,有许多不足之处,这样我们就应该多查阅相关资料,反复地熟练应用,才能把系统设计的巧,设计的好。经过这次毕业设计,引发了我的很多思考和兴趣,首先是做程序要勤,手勤,眼勤,心勤;其次要有韧性,不怕麻烦,不怕失败,反复调试,反复练习,这样才能找到最佳的程序设计。37 致谢本论文是在xx老师的悉心指导之下完成的,xx老师作为一名优秀的、经验丰富的教师,具有丰富的教学知识和指导经验,在整个论文实验和论文写作过程中,对我进行了耐心的指导和帮助,提出严格要求,引导我不断开阔思路,为我答疑解惑,鼓励我大胆创新,使我在这一段宝贵的时光中,既增长了知识、开阔了视野、锻炼了心态,又培养了良好的实验习惯和科研精神。在此,我向我的指导老师表示最诚挚的谢意!在论文完成之际,我要感谢我的各位老师。在自考这条不寻常的求学路上所给我的帮助和教导,千言万语难以表达我的感受。请允许我在此表示真诚地感谢和深深的敬意。在论文的写作过程中,也得到了许多同学的宝贵建议,感谢所有关心、支持、帮助过我的良师益友。你们的严格把关,促使我们以最快的速度融入到软件开发理论的应用中去,通过这次煅炼,使我们的系统开发水平各方面都有了较大的进步。由此积累的经验将对我们以后的学习和生活产生帮助。最后,向在百忙中抽出时间对本文进行评审并提出宝贵意见的各位老师表示衷心地感谢!37 参考文献[1]陈明.软件工程学教程.科技出版社,2008.[2]萨师煊.王珊.数据库系统概论(第三版).高等教育出版社,2007.[3]张海藩.软件工程.人民邮电出版社,2005.[4]赛奎春、高春艳.VisualBasic精彩编程200例.机械工业出版社,2005.[5]刘志铭、高春艳.VisualBasic数据库开发实例解析.机械工业出版社,2003.[6]高春艳、李俊民.VisualBasic工程应用与项目实践.机械工业出版社,2005.[7]李俊民、高春燕.Access数据库开发实例解析.机械工业出版社,2006.[8]李艳.Visualbasic数据库开发关键技术与实例应用.人民邮电出版社,2004.[9]陈禹、方美琪.软件开发工具.经济科学出版社,2007.[10]丁宝康.数据库系统原理.经济科学出版社,2007.[11]吴文虎.VB.NET程序设计实用教程.清华大学出版社,2008.37