基于BS结构商品进销存管理系统毕业论文_第1页
基于BS结构商品进销存管理系统毕业论文_第2页
基于BS结构商品进销存管理系统毕业论文_第3页
基于BS结构商品进销存管理系统毕业论文_第4页
基于BS结构商品进销存管理系统毕业论文_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

PAGEPAGE16哈尔滨工业大学毕业设计(论文)摘要随着计算机技术的飞速发展,计算机在企业管理中普及的应用,利用计算机实现企业管理势在必行。本次所设计的商品进销存管理系统是一个基于B/S结构的应用系统,它是一个面对当前的进销存管理工作基本还处于手工和半信息自动化处理状态而应运而生的一个完全的信息自动化的系统,整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成进货、销售、库存管理的全过程,而且还可以利用计算机对有关进货管理、销售管理、退货管理的各种信息进行统计,同时计算机具有查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等优点。这些优点能够极大地提高人员管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。本系统采用面向对象的程序设计思想进行编制,整个系统数据存在表格文件中,由数据库文件进行管理。在设计数据库时使表格文件发生关联,组成关系型数据库,以便于对数据进行处理。这样就可以在数据的操作上分别针对属于不同表的数据,不必为了某条记录的一个字段来对全部记录进行修改,加快了数据的处理速度,增加了数据的可管理性。关键词销售;进销存管理系统;数据库AbstractConstantlyprogressivealongwiththescienceandtechnology,thecompetencebecomemoreandmoreintensivebetweentheenterprises.ThisEntersSellsSavestheManagementSystemisbasedontheB/Sinstructionofapplicationsystem,itisfacingcurrententerssellsbasicallysavesthesupervisoryworkalsotobeinwhichmanualandhalfinformationautomationprocessingconditionarisesatthehistoricmomentbasedonthecompleteinformationautomationsystem,theoverallsystemfromconformstotheoperationeasily,thecontactsurfacefriendly,isnimble,practical,thesaferequestembarks,completesstockswithgoods,sales,thestockmanagemententireprocess.Andcanalsomakeuseofacalculatortorelevantentergoodsmanagement,salemanagement,rejectgoodsmanagementofvariousinformationcarryoncovariance,thecalculatorhastochecktoseekinthemeantimeconvenientandhightdependable,savinghavegreatcapacity,confidentialitygood,lifespanlong,thecostlowadvantageandsoon.Theseadvantagescanraisetheefficiencythatthepersonnelmanage,isalsoabusinessenterpriseofscientificandregularturntheimportantconditionthatthemanagementisinlinewiththeworld.Theinformationsystemusesmethodsofsoftwareengineeringandobjectorientationtechnologytodesign.Wholedataofsystemisstoredingridfiles,controlledbyfilesofdatabases.Attheprocedureofdesigningdatabase,letfilesofgridbecomerelated,madeupofrelateddatabase,inordertodealwithdata.Notnecessarytoeditwholerecordsinafieldatthedifferenttables,acceleratethespeedofdealingwithdata,increasetheabilityofmanagementtodatavided.KeywordsSalesEntersSellsSavesthemanagementsystemDataBase目录TOC\o"1-3"\u摘要 IAbstract II第1章绪论 11.1课题背景 11.2目的和意义 11.3系统设计思想 21.4课题开发的要求 31.5开发工具简介 31.6配置与管理工具 41.6.1ASP.NETMCC管理单元 41.6.2Web网站管理工具 5第2章可行性分析 62.1系统流程分析 62.2经济可行性 72.3技术可行性 92.3.1硬件方面 92.3.2软件方面 92.4社会可行性 92.5本章小结 10第3章需求分析 113.1系统需求分析 113.2商品进销存管理系统的需求分析 113.2.1数据流图 123.2.2数据字典 123.3本章小结 15第4章总体设计 164.1系统模块总体设计 164.2系统编程体系 174.3数据库设计概述 184.3.1数据分析 194.3.2数据库的详细设计 194.4本章小结 26第5章系统主要功能使用说明 275.1系统登录设计 275.2系统主界面设计 285.3采购入库 295.4库存调拨 325.5进货查询 335.6报表及打印 345.7销售退货单查询 375.8人员权限管理 385.9数据备份 405.10本章小节 41第6章系统测试与性能分析 426.1系统测试 426.2软件测试 426.3测试的基本概念 436.3.1测试的目的 436.3.2测试用例 436.3.3白盒测试和黑盒测试 446.4测试步骤 456.5本系统测试 466.6本章小结 47结论 48致谢 49参考文献 50附录1 51附录2 53附录3 56绪论1.1课题背景随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机技术实现商品的进销存管理势在必行。对于企业来说,利用计算机支持企业高效率完成进销存管理产品的日常事务,是适应现代企业制度要求、推动企业劳动人事管理走向科学化、规范化的必要条件,而在现实中,企业管理并不可能面面俱到,有所不为才能有所为,把尽量少的麻烦带给用户。如果实行手工操作,会耗费工作人员大量的时间和精力,计算机进行商品管理工作时,不仅能够保证工作的准确无误,而且还可以利用计算机对有关进、销、存货物的各种信息进行统计,同时计算机具有手工管理所无法比拟的优点。例如:查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高人员管理的效率,也是企业的科学化、正规化管理与世界接轨的重要条件。不同的企业具有不同的进销存管理制度,这就决定了不同的企业需要不同的进销存管理系统。兰奇科技公司在很久以前还是使用票据或是一些办公软件来进行管理的,面对目前的实际状况,迫切需要开发一个新的系统来适应这些工作。1.2目的和意义毕业设计不仅是对大学学习期间的总结,同时也是自己综合运用所学知识解决实际问题的一次锻炼。在市场经济中,销售是企业运作的重要环节。在传统方式上,公司之间通常采用电报、电话等方式进货、发货、退货等一些信息,总公司的商务部门在接到分公司或代理商传来的订单和银行汇款单据传真件后,开出产品出库通知,然后再把相关的进、销、存信息手工存档,再对这些信息进行统计分析,才能了解到整个公司的进货、销售和库存情况。这种信息传递、管理方式不仅效率低,可靠性、安全性和保密性都无法满足要求。通过进销存管理系统,及时通过网络把决策信息传递给相关的决策人,从而可以及时发现问题、解决问题,更好地把握机会。更重要的是利用计算机的技术可以使商品的管理规范化、制度化、数字化、提高管理水平、降低管理成本、减轻工作强度、提高工作效率,使企业、公司以高效率运转。1.3系统设计思想兰奇科技公司商品进销存管理系统,必须有一个正确的设计指导思想,通过合理选择数据结构、网络结构、操作系统以及开发环境,构成一个完善的网络体系结构,才能充分发挥计算机信息管理的优势。与此同时,一个方便用户使用的软件应该具备软件体积小,操作界面友好,基本功能稳定,运行速度较快,通过计算机技术及网络技术结合开发出浏览器端与服务器端,以便方便、快捷、清晰的进行数据传输和简易通讯功能。根据兰奇科技公司商品进销存管理的实际需求,本系统的设计按照下述原则进行:1.实用性:系统以用户需求为目标,同时融入先进的管理经验。根据用户实际的需求情况,度身订造一套先进的进销存管理系统,在ASP.NET2.0的图形界面下提供各种实用功能。充分满足兰奇科技公司的各种需求,真正为兰奇科技公司的进销存管理及决策方面提供强有力的支持。2.先进性:本设计将充分应用现有成熟的计算机技术、软件开发技术,为用户提供高性能的系统。系统将运用先进的B/S结构,采用ASP.NET2.0和SQLServer2005数据库,可以方便的满足公司对进、销、存管理上的需要。3.高可靠性:一个实用的系统同时必须是可靠的,本设计通过合理而先进的软、硬件,可保证系统的可靠性与容错性。4.高安全性:在设计中,将充分利用这种软件提供的各种安全措施,既可以保证各种信息,同时也可保证关键数据的安全性。5.采用标准技术:本系统的所有设计遵循国际上现行的标准进行,以提高系统的开放性。6.可维护性:系统的设计要求维护方便,包括硬件的维护、软件的维护,可以及时联系开发人员进行相关的操作来进行软件的维护。7.可扩展性及灵活性:系统的设计以方便未来业务的扩展和系统扩充为目标。商品流程的设计要尽可能的灵活,提供用户多种对信息保密的方法,方便管理。8.智能性:系统在设计时,充分考虑系统运行的智能性,尽量的使程序智能化,在使用系统一段时间后,系统可以和所处部门的业务相融合。1.4课题开发的要求开发基于B/S结构的项目,目前主要采用的服务器端语言有:ASP、ASP.NET和JSP等,这几种语言可构成多种基本应用开发体系,对于后台的要求可以多样化,例如,SQLServer、Oracle、Access等。基于本系统的开发要求,兰奇科技公司商品进销存管理系统将采用ASP.NET2.0+SQLServer2005。开发本课题时要求学习并熟悉掌握ASP.NET2.0程序设计技术和SQLServer2005的数据库的使用,并要求熟练撑握数据库软件开发知识。1.5开发工具简介1.ASP.NET是微软公司开发的新型体系结构.NET的一部分。它用来创建服务器端的Web应用程序。ASP.NET是建立在公共语言运行库上的编程框架,可用于在服务器上生成功能强大的Web应用程序,是由上世纪90年代微软公司推出的ASP技术与.NET技术相结合的产物。2005年微软发布.NETFramework2.0正式版本,也就是ASP.NET2.0。ASP.NET2.0技术增加了大量方便、实用的新特性。目前支持3种语言:C#、VisualBasicScript和Jscript。而本系统采用C#语言来编写。(1)控件:在ASP.NET2.0中,新增加数十个服务器控件。根据控件功能特征,可分为:数据控件(包括数据源控件和数据绑定控件)、登录系列控件、Web部件、站点导航控件和其他控件等。这些服务器控件对于提高工作效率,降低开发成本有着重要作用。(2)页面:主要体现在以下4项技术特性:母版页、主题和皮肤、编译机制和本地化。母版页可以迅速建立具有统一布局和外观的页面,并且有效降低维护人中的工作强度。主题和皮肤可以一次性设置一种类型的服务器控件外观样式,方便地应用于单个页面、整个Web应用程序,甚至整个服务器。2.2005年11月7日,微软在旧金山正式发布了MicrosoftSQLServer2005。SQLServer2005是一个全面的、集成的、端到端的数据解决方案,它为企业用户提供了一个安全、可靠和高效的平台,用于企业数据管理和商业智能应用。而通过SQLServer2005SQLServer2005的操作是运用SQL语言来实现的。SQL全称是结构化查询语言,它的突出优点是非过程化,而且还是所有关系数据库的公共语言。SQL语言一次处理一个记录,对数据提供自动导航,它允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。同时,它不要求用户指定对数据的存放方法,这种特性使用户更易集中精力于要得到的结果。作为统一的语言,SQL可用于所有用户的数据库活动模型,包括系统管理员、数据库管理员、应用程序员、决策支持系统人员及许多其它类型的终端用户。1.6配置与管理工具对于ASP.NET应用程序而言,几乎所有的配置和管理都包含在Web.config文件中。通常情况下,开发人员习惯使用手工编码的方式编辑Web.config文件。这种做法的缺点是效率低,而且时常出现编码方面的错误。为了解决这个问题,ASP.NET2.0提供了两个可视化配置管理工具——ASP.NETMCC管理单元和Web网站管理。通过将常用配置内容集成到这两个工具中,可以大大提高工作效率,降低出现错误的机率。1.6.1ASP.NETMCC管理单元MMC是MicrosoftManagementConsole(Microsoft管理控制台)的缩写,它是系统自带的超级集成管理集成工具。虽然MMC不执行任何管理功能,但是集成了用于管理网络、计算机、服务及其他系统组件的管理工具。每个添加到控制台的工具类型称为MMC单元。例如,常见的Internet信息服务(IIS)、计算机管理、设备管理器等都是MMC的管理单元。ASP.NETMMC管理单元集成于IISMMC管理单元之中,主要用于实现对ASP.NET应用程序的可视化配置与管理。在启动ASP.NETMMC之前,要确认计算机中已安装了IIS和.NETFramework2.0,同时,还必须具有系统管理员权限。在IIS用户界面中包括了多个在服务器中运行的Web虚拟目录,在虚拟目录的“属性”窗口中进入“编辑配置”对话框,弹出的是“ASP.NET配置设置”窗口,可以对里面的6个选项卡进行设置。1.6.2Web网站管理工具Web网站管理工具(WebSiteAdministrationTool,缩写为WAT)与ASP.NETMMC管理单元的共同之处在于都可以利用浏览器实施配置和管理,这为开发和管理人员提供了便利。实际上,WAT与ASP.NETMMC管理单元都可对Web.config文件的常用配置项进行可视化管理。而且WAT的配置结果都保存在应用程序根目录下的Web.config文件中。启动WAT的方法是:使用VisualStudio2005打开Web应用程序,然后,单击“网站”菜单上的“ASP.NET配置”。这时,将会打开一个包含WAT用户界面的Web浏览器。该界面包含4个选项卡,每个选项卡都包含了各自的配置,这样就可以对WAT进行相关设置。可行性分析现在商品种类繁多,市场竞争激烈,经营方向朝规模化、电子化、自动化方向发展。利用计算机支持企业高效率完成进销存管理产品的日常事务,是适应现代企业制度要求、推动企业商品管理走向科学化、规范化的必要条件,同时计算机具有手工管理所无法比拟的优点:方便用户查找、可靠性高、存储量大、保密性好、寿命长、成本低等。此系统能够及时反映商品销售情况和库存情况,使企业能够及时调整好内部商品销售和库存的比例,改善商品的管理方式能够提高企业的经营效率,提高营业利润,结合兰奇科技公司的实际情况,兰奇科技公司商品进销存管理系统实施后,应能够达到以下目标:1.业务管理信息化,可随时掌握商品进、销、存的情况。2.提供快速、准确的处理商品进、销、调、存、退等多种业务模式。3.界面友好美观,操作简单易行,查询灵活方便。4.通过系统实施,可逐步提高企业管理水平,提高员工的素质。5.系统维护方便可靠,有较高的安全性,满足实用性、先进性的要求。2.1系统流程分析在进行可行性研究时需要了解和分析现有的系统,并以概括的形式表达对现有系统的认识。进入设计阶段以后应该把设想的新系统的逻辑模型转变成物理模型,因此需要描绘未来的物理系统的概貌。系统流程图的作用:1.制作系统流程图的过程是系统分析员全面了解系统业务处理概况的过程,它是系统分析员做进一步分析的依据。2.系统流程图是系统分析员、管理人员、业务操作人员相互交流的工具。3.系统分析员可直接在系统流程图上拟出可以实现计算机处理的部分。4.可利用系统流程图来分析业务流程的合理性。系统流程图如图2-1所示:图2-1系统流程图新系统的目标确定后,可以从经济可行性、技术可行性和社会可行性等三个方面对能否实现新系统目标进行可行性分析。2.2经济可行性估算新系统的开发费用和今后的运行、维护费用,估计新系统可以提高企业对商品的管理,并将费用与效益进行比较。系统的效益可以从企业利益和社会效益两方面考虑。对于商品进销存管理系统则应着重分析其社会效益。例如,系统运行后可以提供哪些以前无法及时提供的信息,商品查询和使用信息的方便程度提高多少、速度增加了多少,对于管理人员进行决策提供了多少帮助等等。下面从以下几个方面对系统的经济可行性进行具体的分析:系统初期投资系统初期投资如表2-1所示:表2-1兰奇科技公司商品进销存管理系统初期投资序号项目人工(人·日)单价(元)合计(元)1需求分析10100010,0002总体设计20100020,0003系统维护管理子系统详细设计20100020,0004基本信息数据库设计20100020,0005商品进货管理子系统详细设计15100015,0006商品销售管理子系统详细设计15100015,0007库存管理子系统详细设计15100015,0008退货统计管理子系统详细设计15100015,0009编码实现20100020,00010系统测试20100020,00011说明手册编制10100010,00012合计180,000货币的时间价值在工程设计中用本进销存管理系统来取代大部分人力工作,每年可节省9万元。若软件生存期为5年,则5年可节省45万元。而开发此管理系统共投资18万元。具体的货币的时间价值如表2-2所示:表2-2兰奇科技公司商品进销存管理系统货币时间价值年份将来值(万)(1+I)N现在值(万)累计的现在值(万)191.058.57148.5714291.10258.163216.7346391.15767.774724.5093491.21557.404331.9136591.27637.051638.9652投资回收期在本系统中系统投入使用两年后,可以节省16.7346万元,比最初投资还少1.2654万元,但在第三年可以节省7.7747万元。即:1.27/7.77=0.162+0.16=2.16收益估计(纯收入) 38.9652-18=20.9652(万元)当然,如果想要在五年后得到预计的纯收入,那么首先就应拿出初期投资的18万。而且考虑到开发本系统将为以后带来的利益,拿出18万来进行商品进销存管理系统的开发,是绝对必要!经过以上分析,哈尔滨兰奇科技公司商品进销存管理系统的开发是可行的!2.3技术可行性 根据该系统目标来衡量所需的技术是否具备,一般可从硬、软件的性能要求、环境条件、操作人员水平和数量等方面去考虑和分析。 考虑到系统实施的可行性,在软件方面选择了如今较流行的ASP.NET2.0来进行开发管理平台的设计,使用SQLServer2005数据库存储数据。2.3.1硬件方面在硬件方面的选择空间较大,只要是PentiumII系列及以上的计算机,内存在256M以上,硬盘在30MB,都可以满足系统的开发需要。当然,硬件的配置越高,系统的开发与运行会更流畅。考虑到如今的家用或商用电脑硬件的整体配置水平,系统在硬件方面是可行的。2.3.2软件方面ASP.NET2.0技术增加了大量方便、实用的新特性。ASP.NET是微软公司开发的新型体系结构.NET的一部分,用来创建服务器端的Web应用程序。SQLServer2005是一个全面的、集成的、端到端的数据解决方案,它为企业用户提供了一个安全、可靠和高效的平台,用于企业数据管理和商业智能应用。ASP.NET2.0和SQLServer2005是两个非常成熟的开发工具,无论在安全性、可用性、可靠性方面都毫无置疑,因此软件方面是可行的。2.4社会可行性在现今社会,顺着信息化和计算机技术的高度发展,越来越多的企业意识到信息化是提升管理效率不可缺少的重要步骤。对于公司的最高领导阶层乃至中层、基层的管理人员、生产人员,对该系统的开发统一认识,并有很强的愿望。每个企业和公司都有良好的管理基础,基本健全的规章制度,整个系统由于是自行开发,自行使用,所以系统本身不存在法律上的版权争议。同时也要注意,使用本软件人员要求有一定计算机基础的人员,系统管理员要求有计算机的专业知识,并且可以解决系统故障。操作人员也需要经过一段时间的培训,经过培训的人员必须能够熟练的使用本软件。因此,经过以上分析在建立新系统在技术上、经济上和管理上都是可行的,所以,可以立即开发。2.5本章小结综上所述,本工程的技术成熟、完备,测试手段可靠,能够适应商品管理的工作,具有良好的市场拓展,它追求的是简单、易学、易懂、易用,技术较为成熟、完备、可靠,因此本系统具有一定的开发前景。需求分析3.1系统需求分析需求分析是软件定义时期的一个阶段,它的基本任务是准确地回答“系统必须做什么”这个问题,是对目标系统提出完整、准确、清晰、具体的要求。需求分析的结果是系统开发的基础,关系到工程的成败和软件产品的质量。因此,必须用行之有效的方法对软件需求进行严格的审查验证。软件需求分析过程是整个系统开发的重要阶段,分析的成功与否,决定着整个系统功能的完善性以及稳定性。在该阶段分析人员需要确定整个产品的功能要求,并将提供一种可转化为数据设计、结构设计和过程设计的数据与功能表示。在软件完成后,需求分析阶段研究的对象是软件项目的用户要求。3.2商品进销存管理系统的需求分析需求分析一般是按图3-1所示的过程进行:图3-1需求分析的一般过程需求分析过程是整个系统开发的重要阶段,分析的成功与否,决定着整个系统功能的完善性以及稳定性。在该阶段需求分析人员需要确定整个产品的功能要求,并且将现实事务抽象成对象并建模。3.2.1数据流图系统数据流图如图3-2所示:图3-2系统数据流图3.2.2数据字典数据字典的作用是在软件分析和设计的过程中给人提供关于数据的描述信息。它主要是对数据流图中的数据流、处理逻辑、外部实体、数据存储和数据项等方面进行具体的定义。数据流程图配以数据字典,就可以从图形和文字两个方面对系统的逻辑模型进行完整的描述。数据存储:系统数据存储的定义如下:表3-1系统数据存储定义编号名称数据内容存储方式存储位置F1-01商品仓库仓库名称、仓库编号文件数据库F1-02商品销售的报表商品名称、数量、单价、仓库编号、供应商名称、生产日期文件数据库F1-03商品退货仓库商品名称、单价、仓库编号、供应商名称、经办人等文件数据库(1)数据存储文件名:F1-01商品仓库组成:仓库名称+仓库编号备注:存储所有仓库的信息(2)数据存储文件名:F1-02商品销售的报表组成:商品名称+数量+单价+仓库编号+供应商名称+生产日期等备注:可保存、打印月销售或是年销售的报表(3)数据存储文件名:F1-03商品退货仓库组成:商品名称+单价+仓库编号+供应商名称+经办人等备注:将销售退货与采购退货的商品存入到指定的仓库中2.数据流定义:系统数据流的定义如下:表3-2系统数据项定义编号名称类型字段长度I01-01采购单号int4I01-02商品编号varchar50I01-03数量int4I01-04单价float8I01-05供应商名称varchar50I01-06商品名称int4I01-07仓库名称varchar50I01-08折扣float8I01-09金额float8I01-10经办人varchar50I01-11出库日期varchar20I01-12出库数量varchar50I01-13退货单号varchar50I01-14原购数量int4I01-15退货数量int4I01-16退货时间varchar20(1)数据流编号:D1-01数据流名称:采购信息数据流来源:采购科数据流去向:P1-01(进货商品录入管理)数据流组成:I01-01+I01-02+I01-03+I01-04+I01-05(2)数据流编号:D1-03数据流名称:库存商品数据流来源:F1-01(商品仓库)数据流去向:P1-02(库存管理)数据流组成:I01-02+I01-06+I01-03+I01-07(3)数据流编号:D1-06数据流名称:销售信息数据流来源:销售科数据流去向:P1-03(销售管理)数据流组成:I01-02+I01-06+I01-03+I01-08+I01-09+I01-10(4)数据流编号:D1-07数据流名称:销售出库信息数据流来源:P1-03(销售管理)数据流去向:F1-01(商品仓库)数据流组成:I01-06+I01-09+I01-11+I01-12+I01-10(5)数据流编号:D1-12数据流名称:销售退货信息数据流来源:P1-04(退货管理)数据流去向:财务数据流组成:I01-13+I01-06+I01-14+I01-15+I01-163.数据处理逻辑:系统数据处理逻辑的定义如下:(1)处理逻辑编号:P1-01处理逻辑名称:进货商品录入管理处理逻辑描述:根据采购科的采购信息,将进货来的商品进行录入并放至到指定的仓库里。(2)处理逻辑编号:P1-02处理逻辑名称:库存管理处理逻辑描述:对于仓库里的商品进行统一的管理,像是库存调价、库存调拨等。(3)处理逻辑编号:P1-03处理逻辑名称:销售管理处理逻辑描述:对于销售的商品进行录入、销售出库进行汇总,并可以以月报表或是年报表的形式打印或保存。(4)处理逻辑编号:P1-04处理逻辑称:退货管理处理逻辑描述:对于已经出售的商品进行退货管理,并将已经由客户退回的商品进行采购退还给供应商。3.3本章小结软件需求分析过程是整个系统开发的重要阶段,分析的成功与否,决定着整个系统功能的完善性以及稳定性。本章主要介绍数据的流程,根据数据字典来说明数据流图的主要部分,并做了相关的介绍。总体设计4.1系统模块总体设计利用层次图来表示系统中各模块之间的关系。层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个数据的子集,最底层的各个矩形框代表组成这个数据的实际数据元素。随着结构的精细化,层次方框图对数据结构也描绘得越来越详细,这种模式非常适合于需求分析阶段的需要。从对顶层信息的分类开始,沿着图中每条路径反复细化,直到确定了数据结构的全部细节为止。系统功能结构图如图4-1所示:图4-1系统功能结构图本系统一共分为七大模块,每个模块之间虽然在表面上是相互独立的,但是在对数据库的访问上是紧密相连的,各个模块访问的是同一个数据库,只是所访问的表不同而已。每个模块的功能都是按照在调研中搜集的资料进行编排制作的。依据上述功能的分析,系统在七大模块的基础上每一大模块又分为几个小模块:1.基本资料管理下面包括六个模块:客户信息,商品信息,供应商信息,员工信息,部门管理,仓库管理。基本信息:是对公司的内部人员、公司商品和与公司有业务往来的客户的相关信息的记录。2.库存管理下面包括三个模块:采购入库验收单,库存调拨,存货调价管理。库存管理:是对公司所进商品的库存管理,商品在库存里数量的记录与调动管理。3.进货管理下面包括三个模块:进货录入,进货查询,报表及打印。进货管理:将商品购入到公司后,公司内部人员对商品的一些管理。4.销售管理下面包括四个模块:销售录入,销售出库单,报表及打印,销售价格。销售管理:公司将商品销售后的记录与销售单的录入与统计。5.退货管理下面包括三个模块:销售退货,销售退货单查询,采购退货。退货管理:商品由公司出售后,客户要求退货时,公司要做相关的记录,或者公司向厂家要求退货的记录。6.系统管理下面包括四个模块:修改密码,人员权限管理,数据备份,计算器。系统管理:公司人员对内部信息的保密,可以对进、销、存的数据进行相关的操作的权限。7.帮助:关于本软件。帮助信息:是更好的帮助使用人员对本软件操作,及软件本身的性能介绍。4.2系统编程体系本系统的开发采用的是Browser/Server体系结构,利用了大型关系型数据库的优越性能,真正保证了数据的安全性、完整性、一致性。更合理分配应用程序运行和数据处理,极大的提高了系统的工作效率。系统采用B/S(Browser/Server)体系结构作为用户操作的应用端,它能对商品的一些信息进行管理、以及各种商品的统计、打印等操作;还可以负责员工登陆,显示、修改、添加、删除工作量信息等。系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于参与开发的技术维护人员补充,维护。系统应具备远程访问数据库的功能,管理员可以在计算机上进行各种对数据的查看、添加、删除、修改等操作。系统体系结构图如图4-2所示:数据库数据库决策人员浏览基本信息系统的管理浏览商品报表执行人员商品信息的录入数据信息的编辑单据的打印报表的打印与保存图4-2系统体系结构图4.3数据库设计概述数据库技术是数据管理的技术,是计算机应用从科学计算进入数据处理的一个跨时代的转折。近年来数据库技术发展迅速,各种应用领域对数据管理的需求越来越多,各种信息系统都离不开数据库的支持。因此,数据库已成为信息社会的重要基础设施。数据库设计研究的问题就是如何科学地组织和存储数据,如何高效地获取和处理数据,是当代计算机科学的重要组成部分。数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,具体的说,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响,在数据库系统开始设计的时候应该尽量考虑全面,尤其应该仔细考虑用户的各种需求。4.3.1数据分析数据分析过程同数据库的逻辑结构和物理结构密切相关,需要确定、编制、组织、筛选应用程序所使用的信息。它以一种能够分析和分类的方式来捕获用户的所有信息,这使得某一模型可以直接转化成数据库结构。我们使用一种信息建模技术,这种技术是通过实体、关系、属性三种基本对象来定义信息。实体是需要维护和使用的相关特性的集合体;属性是实体的特性或特征;关系是实体之间的联系,关系为实体记录(实例)之间的联系和交互作用方式建立了模型。要确定实体和关系的性质,用户必须确定单个实体和他们相关的属性。为每个对象定义一个完整的与商业相关的描述以及他单独使用的要求,这也包括确定此实体是否使用应用程序的永久需求,每种关系的基本定义使用了商业定义和与关系相连接的需求。在为实体确定相关的属性过程中,也需要确定此实体的主键和索引,并且要确定在每个实体中怎样组织这些属性,确定属性的数据类型和它是否为空值。在高层次的描述过程中,还可以确定所有扩展属性信息,包括长度、格式、编辑风格、校验规则和初始值。单独实体的属性被组织起来,用户就能够开始以某一种组织方式来给实体分类。用户必须通过关系,来为实体分组的方式确定分类模式,这是抽象化的初始层,或者说是通过隐藏模糊的信息来提高对分析的理解,通过将数据分类成组,就产生了相关分组的不同类型,这样更加易于观察和分析。4.3.2数据库的详细设计数据库设计主要是进行数据库的逻辑设计,即将数据按一定的分类、分组系统和逻辑层次组织起来,是面向用户的。数据库设计时需要综合企业各个部门的存档数据和数据需求,分析各个数据之间的关系,按照DBMS提供的功能和描述工具,设计出规模适当、正确反映数据关系、数据冗余少、存取效率高、能满足多种查询要求的数据模型。在设计本系统的数据库时,应考虑以下事项:1.数据库的用途及该用途将如何影响设计,应创建符合用途的数据库计划。2.数据库规范化规则,防止数据库设计中出现错误。3.对数据完整性的保护。4.数据库和用户权限的安全要求。5.应用程序的性能需求,设计数据库时必须利用SQLServer2005中能够提高性能的功能。对于性能而言,在数据库大小和硬件配置之间权衡也是很重要的。6.数据库的维护。数据库E-R如图4-3所示:图4-2数据库E-R图根据兰奇科技公司对于商品进、销、存要求的实际情况,本系统的数据库命名为:Lucky_Company数据库。存储的信息分为两大部分,第一种是员工与商品及其他的基本信息,另一部分为有关商品进、销、存所要处理的信息。Lucky_Company数据库中共分15张信息表,这15张表是通过查询分分析器建立的,具体情况如表4-1至4-15所示:表4-1用户信息表字段名字段类型字段长度允许空主键姓名varchar50NP密码varchar50N权限varchar2N注:管理员对员工的姓名、密码与权限的设置。表4-2员工信息表字段名字段类型字段长度允许空主键员工编号varchar50NP员工姓名varchar50N性别varchar4Y所属部门varchar50Y出生年月datetime8Y家庭住址varchar50Y联系电话varchar50Y邮政编码varchar50Y注:存储公司中员工的基本信息,方便公司的人员管理。表4-3商品信息表字段名字段类型字段长度允许空主键商品编号varchar50NP商品名称varchar50N规格型号varchar50Y生产厂商varchar50Y单位varchar50Y金额float8Y累计采购量int4Y累计销售量int4Y当前库存量int4Y续表4-3建议销售价float8Y说明varchar250Y注:商品信息表中当前库存量的值是(累计采购量-累计销售量),可以浏览商品的基本信息。表4-4供应商信息表字段名字段类型字段长度允许空主键供应商编号varchar50NP供应商名称varchar50Y联系人varchar50Y联系电话varchar50Y联系地址varchar50Y邮政编码varchar10Y说明varchar250Y注:掌握供应商的信息,公司可随时和供应商之间进行联系。表4-5客户信息表字段名字段类型字段长度允许空主键客户编号varchar50NP客户姓名varchar50N联系电话varchar50Y联系地址varchar50Y邮政编码varchar50Y付款方式varchar50Y说明varchar50Y注:客户的总体记载,方便公司对客户进行商品的调查。表4-6仓库管理表字段名字段类型字段长度允许空主键仓库编号varchar50NP仓库名称varchar50Y注:公司对商品所要存放仓库必须进行定义。表4-7部门管理表字段名字段类型字段长度允许空主键部门编号varchar50NP部门名称varchar50Y部门人数int4Y负责人varchar20Y办公室电话varchar20Y注:对人员的管理,员工属于哪个部门都需要记载。表4-8采购信息表字段名字段类型字段长度允许空主键采购单号int4N(标识种子)商品编号varchar50NP商品名称varchar50Y规格型号varchar50Y员工姓名varchar50Y仓库编号varchar50Y供应商名称varchar50Y入库时间Datetime8Y金额float8Y说明varchar250Y注:公司对采购的商品进行录入,并显示出商品进入仓库的编号和经办人等信息。表4-9采购退货表字段名字段类型字段长度允许空主键退货单号int4NP商品编号varchar50Y供应商名称varchar50Y采购时间varchar10Y采购数量int4Y退货数量int4Y退货原因varchar50Y续表4-9退货时间varchar10Y备注varchar250Y注:商品如有质量上的问题,公司可向供应商提出退货。表4-10出库信息表字段名字段类型字段长度允许空主键商品编号varchar50NP入库时间datetime8Y库存价格float8Y库存数量int4Y经办人varchar50Y备注varchar250Y注:商品销售后,要对商品进行出库,此表记录商品库存的信息。表4-11进货录入表字段名字段类型字段长度允许空主键商品编号varchar50NP商品名称varchar50Y数量int4Y单价float8Y金额float8Y生产日期varchar50Y仓库编号varchar50Y供应商名称varchar50Y经办人varchar50Y录入时间datetime8Y备注varchar250Y注:进货录入表金额字段的值为(数量*单价)。表4-12库存调拨信息表字段名字段类型字段长度允许空主键商品编号varchar50NP调入仓库varchar50Y原仓库varchar50Y调拨入方负责人varchar50Y原负责人varchar50Y调拨日期datetime8Y备注varchar250Y注:对商品仓库的调拨进行记载。表4-13销售出库表字段名字段类型字段长度允许空主键出库单号int4NP商品编号varchar50Y商品名称varchar50Y仓库编号varchar50Y出库数量int4Y折扣float8Y单价float8Y金额float8Y出库日期varchar20Y经办人varchar50Y备注varchar250Y注:销售出库表中金额字段的值为(出库数量*折扣*单价)表4-14销售退货表字段名字段类型字段长度允许空主键退货单号int4NP商品编号varchar50Y原购数量int4Y供应商名称varchar50Y退货数量int4Y续表4-14退货原因varchar50Y退货时间varchar50Y经办人varchar50Y备注varchar250Y注:对于销售出去的商品如有质量问题,则客户可以对商品进行退货,此表记载这些退货的信息。表4-15销售信息表字段名字段类型字段长度允许空主键序号varchar50NP商品编号varchar50N商品名称varchar50Y折扣float8Y单价float8Y数量int4Y金额float8Y客户姓名varchar50Y供应商名称varchar50Y仓库编号varchar50Y经办人varchar50Y录入时间datetime8Y备注varchar250Y注:销售信息表中金额字段的值为(折扣*单价*数量),对销售出去的商品进行记载。4.4本章小结总体设计阶段,在需求分析的基础之上规划出了系统的功能模块,以及在此分析基础上设计出的具体的、可以满足本系统全部需求的数据库。由于数据库在设计中有非常重要的作用,所以在开发过程中,在考虑数据库上的时间较多。系统主要功能使用说明5.1系统登录设计系统启动后,会出现员工登录界面,系统的登录界面设计如图5-1所示:图5-1系统登录界面实现目标:进入到如图5-1的界面后,公司员工可输入用户名和密码,当输入正确后,方可进入到本系统的主界面,如果输入的用户名或密码错误,则系统会提示“用户名或密码错误”的信息。实现过程:单元名:用户登录窗体名:Login.aspx表5-1登录界面设置主要控件信息列表名称主要属性设置作用TextBox1/输入员工编号TextBox2/输入员工姓名Label1Text=用户名显示提示信息Label2Text=密码显示提示信息续表5-1Button1/完成用户登录Button2/重新输入Image/显示图片设计方法:在VisualStudio2005中创建名为Login的Web窗体,此窗体作为用户的登录界面。在“源”中输入<bodybackground="image/bg4.jpg">来定义窗体的背景。在工具箱中选中“TextBox”、“Label”和“Button”控件,并将其依次拖放到窗体中。设置控件属性,在“Button”控件中输入代码来完成登录操作。5.2系统主界面设计本系统的主界面整体结构为居中结构,左面部分显示登录系统的人员姓名与登录时间、日历用来显示假日与节日的,上面为系统的名称,右面部分采用了控件形式来介绍公司的信息,菜单下面为提示信息,显示当前操作的使用窗口。系统主界面如图5-2所示:图5-2系统主界面实现目标本系统的主界面主要完成:当用户登录到系统后,在主界面中会对用户的姓名与登录时间进行显示,对于公司的信息介绍,假日与节日的提示等会在此界面中显示出来。通过主界面的菜单可以进入到系统各个模块,对数据库的基本添加、删除、修改操作,全部都提交给其它页面来处理,方面用户操作。实现过程单元名:系统主界面窗体名:Main_Page.aspx表5-2系统主界面设置主要控件信息列表名称主要属性设置作用MenuOrientation="Horizontal"显示系统的各个模块Label1Text=用户名显示提示信息Label2Text=日期时间显示提示信息Calendar/用来显示日期Button2/重新输入Image/显示图片HyperLink/链接到用户登录界面设计方法在设计本窗体时,采用了“<marquee></marquee>”来实现窗体的提示信息从右到左的滚动。在显示公司信息时,利用“<iframe></iframe>”页面嵌套的方式来实现的。在日历控件中的DayRender事件下写入代码完成假日或是节日的功能。显示用户名和时间的操作比较简单,在窗体中放入四个Label控件,在Page_Load中写入代码来完成显示功能。5.3采购入库采购入库操作的主要目的是为了方便记载商品的一些信息,并将商品分门别类到指定的仓库中,通过点击“采购入库单”来查看录入的信息。采购入库操作如图5-3所示:图5-3采购入库操作采购入库单如图5-4所示:图5-4采购入库单实现目标:根据WareHouseIn.aspx窗体中的控件来输入相关信息,点击“添加”完成输入操作,点击“取消”完成放弃操作。当查看单据时,可点击“进入采购单>>>”查看采购信息单。在查看时如有错误可进行更改或删除,点击“打印本页”可将信息以单据的形式输出,同时也会显示出打印的时间。实现过程单元名:采购入库操作采购入库单窗体名:WareHouseIn.aspxWareHouseIn_List.aspx表5-3采购入库操作主要控件信息列表名称主要属性设置作用TextBox1/输入商品编号TextBox2/输入商品名称TextBox3/输入规格型号TextBox4/输入金额TextBox5/输入员工姓名TextBox6/输入供应商名称TextBox7/输入仓库编号TextBox8/输入入库时间TextBox9TextMode=Multiline输入说明Button1/完成添加记录Button2/取消添加记录HyperLink1/链接到WareHouseIn_List.aspx表5-4采购入库单操作主要控件信息列表名称主要属性设置作用HyperLink1/链接到WareHouseIn.aspxGridview1/显示数据表中的信息Label1/时间的提示信息Label2/显示当前时间设计方法将控件由工具箱中拖放到窗体中,设置控件属性,并在Button控件中输入完成操作的代码,之后点击“HyperLink”控件,它是用来链接进入到采购单中的,在采购单窗体里放置一个“GridView”控件然后“配置数据源”。在“SqlDataSource”的属性中找到“UpdateQuery”和“DeleteQuery”属性,通过SQL语名来完成更新和删除的操作。打印操作是通过JavaScript来完成的,代码在“源”中写入:<ahref="JavaScript:window.print();"><fontclass=red>[打印本页]</font></a>此时在窗体的左上角会出现“打印本页”,如要对其位置进行设定可通过“源”来改写。5.4库存调拨主要完成仓库之间的商品调拨,库存调拨操作如图5-5所示:图5-5库存调拨实现目标在控件中输入要调拨的商品编号,点击“查询”按钮,此时信息会在其它的文本框中显示出来,在“调入仓库”这个下拉列表框中,选中要调入到的仓库编号,而此时的其它文本则不可以改动。在点击“修改”按钮后信息已修改完成,此时的信息可在表中进行浏览。实现过程单元名:库存调拨窗体名:StoreDispatch.aspx表5-5库存调价管理主要控件信息列表名称主要属性设置作用DropDownList1/用来选择仓库编号DropDownList2/用来选择调入仓库的员工姓名TextBox1/用来输入商品编号TextBox2Enabled=False显示原仓库编号TextBox3Enabled=False显示原负责人TextBox4/显示调拨日期TextBox5/显示备注Button1/完成查询工作续表5-5Button2/完成修改记录Button3/取消修改记录Gridview1/显示数据表中的信息设计方法将控件放入到窗体中,对控件进行相关的属性设置。当输入商品编号后,可以点击“搜索”按钮,此时有关商品的信息会在其它的“TextBox”控件中显示出来。在“调入仓库”的“DropDownList”下拉列表控件中找出要调入的仓库编号,当完成调拨操作后点击已写入代码的“Button”按钮完成此次操作。与此同时,其它的“TextBox”控件的Enabled属性设置为False。5.5进货查询查询的方式有很多种,本次主要选用的是模糊查询来实现商品信息的查询。模糊查询是SQL语句进行条件判断的一种用法。进货查询如图5-6所示:图5-6进货查询实现目标在一组单选按钮中选择要实现查询的依据,然后,在控件中选中或是输入要查询的关键字,单击“查询”来搜索符合条件的记录,并在表中显示出来。如果表中没有符合查询的记录,那么将不会显示表。实现过程单元名:进货查询窗体名:WriteStorageIn_Search.aspx表5-6进货查询主要控件信息列表名称主要属性设置作用RadioButton1/选择商品编号RadioButton2/选择仓库编号RadioButton3/选择日期时间Label/显示提示信息Button1/完成查询功能TextBox1/用来输入商品编号TextBox2/输入日期时间TextBox3/输入日期时间DropDownList1/用来选择仓库编号Gridview1/显示数据表中的信息设计方法在窗体中放入三个“RadioButton”单选按钮,在属性的“GroupName”中输入名字,此名字可随意。设置“GroupName”的用意是为了可以在三个按钮中选中单个按钮,否则将会使三个按钮都处于选中状态。在使用SQL语句时用到了模糊查询(like'%"+TextBox.Text+"%'),模糊查询就是把控件中的内容进行查询,此内容只要包含了关键字的一部分也可以进行查询。5.6报表及打印对于报表的使用可以方便用户对商品的汇总,同时也方便公司领导进行浏览。报表的浏览如图5-7所示:图5-7报表的浏览报表的打印如图5-8所示:图5-8报表的打印

报表的存储如图5-9所示:图5-9报表的存储1.实现目标对于报表,可按照公司的规定来打印报表,也可按年报表打印。打印时可设置分页打,还是全部打印,也可对报表进行多种方式的存储。2.实现过程单元名:报表及打印窗体名:Form_1.aspx表5-7报表及打印主要控件信息列表名称主要属性设置作用CrystalReprotViewer1/水晶报表显示控件CrystalReprotSource1/水晶报表数据源控件Button1/完成返回上一页的功能设计方法在创建报表时,首先要进行数据源的连接。由于机器的不同在创建报表时会出现不同的错误,利用数据集来进行数据源的连接会导致数据无法连接到报表,所以经过多次操作后,最终决定采用OLEDB来进行的数据源的连接。此方法主要是通过本机选取数据源,打开“创建新连接”并在其窗口内选中所要显示的数据表或在窗口中输入SQL语名来完成数据源的选择。在水晶报表建立完成后,在事先创建好的窗体中放入“CrystalReprotViewer”控件,通过“任务”进行选择数据源,此时会出现“CrystalReprotSource”控件,主要是完成数据源的连接。5.7销售退货单查询在退货管理中可以设置销售退货的查询,主要是通过查询操作来实现数据记录的浏览,可以将信息在表中显示出来。销售退货单查询如图5-10所示:图5-10销售退货单查询搜索结果如图5-11所示:图5-11搜索结果实现目标在商品编号或是供应商名称的文本框中输入要查询的关键字,点击ImageButton按钮,可以进入搜索结果的页面。在搜索的结果中,如有信息需要修改,则可点击表中的“操作”来进行更新数据或是“删除”表中的信息。2.实现过程单元名:退货单查询窗体名:SaleReturnSearch.aspxsearch_shangpinbianhao.aspx表5-8销售退货管理主要控件信息列表名称主要属性设置作用ImageButton1/完成查询ImageButton2/完成查询TextBox1/输入商品编号TextBox2/输入供应商名称Gridview1/显示数据表中的信息3.设计方法本模块的查询是使用Session来完成的。使用Session对象存储特定的用户会话所需要的信息,当用户在应用程序的页之间跳转时,存储在Session对象中的变量不会清除。在查询窗口的Page_Load页面中写入定义session的代码,然后在搜索结果窗口中找到“SqlDataSource”控件的属性“SeleteQuery”并在其中设置与查询窗口中相对应的session对象,再利用“ImageButton”来实现查询并跳转到搜索结果界面,对于搜索到的结果可以进行编辑修改。5.8人员权限管理为了系统的保密性,系统存在权限管理是必然的。管理员根据公司的需要进行分配密码与权限。人员权限管理如图5-12所示:图5-12人员权限管理实现目标在文本框中输入要添加的用户名、密码及管理权,点击“确定”按钮,可将信息提交到数据表中。在管理员对密码和管理权进行修改时,可点击表中的“操作”来进行编辑,还可对记录进行“删除”。人员权限管理是系统管理的一个界面,由于权限的设置,只有最高管理人员可以对员工的密码和管理权进行设置。2.实现过程单元名:人员权限管理窗体名:Staffmanage.aspx表5-9人员权限管理主要控件信息列表名称主要属性设置作用Button1/完成添加功能Button2/取消操作TextBox1/输入用户名TextBox2/输入密码TextBox3/输入管理权限Gridview1/显示数据表中的信息3.设计方法将控件放到窗体上,并对文本控件进行属性设置。在放置“Button”按钮后,将添加信息的代码写入“确定”按钮中。由于要进行密码和管理权的修改所以在“GridView”中“配置数据源”,然后在出现的控件“SqlDataSource”属性中找到“InsertQuery”、“UpdateQuery”和“DeleteQuery”属性,并在其中输入SQL语句来进行修改或是删除信息。5.9数据备份数据备份是避免由于各种故障造成的损坏而丢失数据。通过备份为有效地应对灾难做好准备,而在本次毕业设计当中选择的是完全备份。数据备份如图5-13所示:图5-13数据备份实现目标通过点击“备份数据”按钮完成数据库的备份,当成功备份了数据库时,则通过文本显示“成功备份”。实现过程单元名:数据备份窗体名:Copy_Data.aspx表5-10数据备份主要控件信息列表名称主要属性设置作用Button1/完成数据备份功能Button2/返回上一页操作Label1/显示提示信息Label2/显示提示信息设计方法通过存储过程来完的数据备份,使用起来非常的方便,代码的书写也很简单。主要是能过在数据库中定义存储过程,然后在窗体的Page_Load中写入调用存储过程的代码以及“Button”控件的代码。当数据备份完成后,在指定的目录中可以看到备份的数据库。5.10本章小节本章节主要是介绍系统的主要界面,以贴图的形式说明主要功能,通过实现目标、实现过程和设计方法来介绍。至于控件代码的编写主要的部分会在附录3中写入。系统测试与性能分析6.1系统测试

如今信息技术的飞速发展,使软件产品应用到社会的各个领域,软件产品的质量自然成为人们共同关注的焦点。不论软件的生产者还是软件的使用者,生存在竞争的环境中,软件开发商为了占有市场,必须把产品质量作为企业的重要目标之一,以免在激烈的竞争中被淘汰出局。用户为了保证自己业务的顺利完成,当然希望选用优质的软件。软件测试是软件质量保证的关键活动,是对软件规格说明、软件设计和编码的最后复审,目的是在软件产品交付前,尽可能发现软件中潜伏的问题。广义上讲,测试是指软件产品生存周期内所有的检查、评审和确认活动,如设计评审、系统测试。狭义上讲,测试是对软件产品质量的检验和评价,它一方面检查软件产品质量中存在的质量问题,同时对产品质量进行客观的评价。6.2软件测试经过需求分析、设计和编码等阶段的开发后,得到了源程序,开始进入到软件测试阶段。然而,在测试之前的各阶段中都可能在软件产品中遗留下许多错误和缺陷,如果不及时找出这些错误和缺陷,并将其改正,这个软件产品就不能正常使用,甚至会导致巨大的损失。目前,程序的正确性证明尚未得到根本的解决,因此软件测试仍是发现软件中错误和缺陷的主要手段。软件测试的意义:1.减少软件的缺陷数目或者降低软件的缺陷密度。通过测试可以发现软件中存在的缺陷,通过完全的修改这些缺陷,可以减少软件中缺陷的总数目或者降低其缺陷密度。2.提高软件的可靠性。软件的缺陷数目是影响软件可靠性的主要因素,通过测试减少软件的缺陷数目可以达到提高软件可靠性的目的。3.评估软件的性能指标。通过软件测试,根据所发现的缺陷数目和发现缺陷的时间,可以评估软件的可靠性等指标。即使软件测试没有发现缺陷,也同样可以达到这个目的。4.增加用户对软件的信心。软件通过了何种测试对用户来说是非常重要的,严格的软件测试可以大大提高用户对该软件的信心。6.3测试的基本概念由于软件及软件错误的复杂性,长期以来,人们对软件测试的认识一直是模糊的。许多科学家从不同的角度给出了软件测试的不同定义,但总体来看,都是不全面的。软件测试就是为了发现软件中的错误,这一概念目前被人们所公认。但测试定义认为软件测试仅仅是程序编码的测试,这显然是不全面的,在某种意义上说是有害的,因为许多软件错误并不是编码上的错误,而人们往往会忽略这一点。6.3.1测试的目的软件测试的目的是尽可能多地发现软件产品中的错误和缺陷。明确测试的目的是一件非常重要的事,因为在现实世界中对测试工作存在着许多模糊或者错误的看法,这些看法严重影响着测试工作的顺利进行。有人认为测试是为了证明程序是正确的,也就是说程序不再有错误,事实证明这是不现实的。因为要通过测试来发现程序中的所有错误就要举出所有可能的输入数据,检查它们是否产生正确的结果。目前,影响软件测试技术发展的一个重要因素就是人们对软件测试在认识上存在的误区。误区之一是设计者、程序员对自己所做的工作特别有信心,不愿意让别人来挑自己的毛病。误区之二是既然软件测试不能证明软件是正确的,何必又需要测试。误区之三是由于软件测试是一种辅助性的工作,既费力又难以出成绩,很多人不愿意做这个工作。因此,解决人们认识上的问题是非常有必要的。6.3.2测试用例测试用例(TestCase)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。要进行测试,除了要有测试数据外,还应同时给出该组测试数据应该得到怎样的输出结果,我们称它为预期结果。在测试时将实际的输出结果与预期结果比较,若不同则表示发现了错误。因此测试用例是由测试数据和预期结果构成的。在实施测试时测试用例作为测试的标准,测试人员一定要按照测试用例严格按用例项目和测试步骤逐一实施测试,并对测试情况记录在测试用例管理软件中,以便自动生成测试结果文档。为了发现程序中的错误,应竭力设计能暴露错误的测试。一个好的测试用例是极有可能发现迄今为止尚未发现的错误的测试用例。6.3.3白盒测试和黑盒测试测试的关键是测试用例的设计,其方法可分成两类:白盒测试和黑盒测试。1.白盒测试白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查。软件的白盒测试是对软件的过程性细节做细致的检查。这种方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。白盒测试主要是对程序模块进行如下检查:(1)对程序模块的所有独立的执行路径至少测试一遍。(2)对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍。(3)在循环的边界和运行的界限内执行循环体。(4)测试内部数据结构的有效性。2.黑盒测试黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。软件的黑盒测试意味着测试要在软件的接口处进行。这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。黑盒测试主要是为了发现以下几类错误:(1)是否有不正确或遗漏的功能。(2)在接口上,输入是否能正确的接受,能否输出正确的结果。(3)是否有数据结构错误或外部信息(例如数据文件)访问错误。(4)性能上是否能够满足要求。(5)是否有初始化或终止性错误。6.4测试步骤软件测试的主要步骤有单元测试、集成测试和确认测试。1.单元测试(UnitTesting)单元测试:单元测试也称模块测试,是对软件中的基本组成单位进行测试,如一个模块、一个过程、一个函数或一个类等等。单元测试是软件测试最基本的组成部分,也是最重要的部分之一。通常单元测试可放在编码阶段,程序员在编写好一个模块后,总会对自己编写的模块进行测试,检查它是否实现了详细设计说明书中规定的模块功能和算法。一个软件单元的正确性是相对该单元的规约而言的,因此,单元测试是以被测单位的规约为基准。单元测试主要发现编码和详细设计中产生的错误,通常采用白盒测试。2.集成测试(IntegrationTesting)集成测试:集成测试也称组装测试,是在软件系统集成过程中所进行的测试,其主要目的是检查软件单位之间接口的正确性。它根据集成测试计划,一边将模块或其它软件单位组合成越来越大的系统,一边运行该系统,以分析所组成的系统是否正确,各组成部分是否合拍。它是对由各模块组装而成的程序进行测试,主要检查模块间的接口和通信。集成测试主要发现设计阶段产生的错误,通常采用黑盒测试。集成测试的策略主要有自顶向下和自底向上两种。3.确认测试(ValidationTesting)确认测试的任务是检查软件的功能、性能及其它特征与用户的需求一致,它是以需求规格说明书作为依据的测试。确认测试通常采用黑盒测试。确认测试产生测试程序是否满足需求规格说明书所列的各项要求,然后要进行软件配置复查,特别是文档是否齐全,各方面的质量是否符合要求等。如果一个软件是为某个客户定制的,那么最后由客户来实施验收测试,以便客户确认该软件是他所需要的。如果一个软件是作为产品被许多客户使用的话,那不可能为每个客户进行验收测试。大多数软件生产者使用一种Alpha测试和Beta测试的过程,来揭露仅由最终用户才能发现的错误。6.5本系统测试在测试之前按照测试计划拟定好的测试用例以及应运行出的预期结果,输入正确和错误的用例与测试计划中的正确的运行结果相比较,如果一致,则测试通过,否则证明系统存在漏洞需要改正。为了发现程序中的错误,应竭力设计能暴露错误的测试。一个好的测试用例是极有可能发现迄今为止尚未发现的错误的测试用例。本系统测试的测试用例如表6-1所示:表6-1系统测试用例序号过程描述输入数据预计输出实际输出1输入错误的用户名和密码(当不分管理权限时)总经理,1234停留在登录界面并显示“用户名或密码错误”等待输入正确的信息停留在登陆界面并显示“用户名或密码错误”等待输入正确的信息2计算商品收入和商品利润进货价格:x销售价格:y享受折扣:z收入为:y*z-x利润为:(y*z-x)/x收入为:y*z-x利润为:(y*z-x)/x3可以根据输入的商品的关键字得出商品的信息商品编号:P001仓库编号:C001商品信息会在本页或是其它窗体页中显示出搜索结果商品信息会在本页或是其它窗体页中显示出搜索结果4当用户不具有管理权却登录基本信息或是系统管理王红,123会提示出非管理员不能登录的窗体,并要求重新登录会提示出非管理员不能登录的窗体,并要求重新登录续表6-15输入类型错误的数据信息商品编号,商口名称,经办人,录入时间等等无法添加到数据表中,要求重新录入信息无法添加到数据表中,要求重新录入信息6将商品从另一个库调入库一个库商品编号商品的信息在文本框中列出,可以输入要调入的仓库编号商品的信息在文本框中列出,可以输入要调入的仓库编号6.6本章小结软件测试是软件开发中的重中之重,没有一点可以马虎的,在项目管理过程中,强调的是每个过程的每一个环节都要进行测试,保证系统在每个阶段可以控制。因为软件测试中考虑的问题基本上是项目管理中需要考虑的问题。具体说,软件测试是事务性的,而项目管理是策略性,一些策略性的东西必须在一些事务性的事务上来实现。软件测试的事务性操作很多,这些操作需要一个良好的心态去对待,这样才能找到符合自己的方式方法,才能在工作中事半功倍。结论本系统是一个针对兰奇科技公司,具有一定实用性的商品进销存管理系统。主要完成对兰奇科技公司商品进销存的综合管理,包括基本信息管理、库存管理、进货管理、销售管理、退货管理以及系统管理。系统的实用性较强,并具有较高的安全性和可靠性,且易于操作和维护。系统采用当前流行的面向对象的开发工具——ASP.NET2.0和拥有较高的安全性和稳定性的数据库管理系统——SQLServer2005来完成整个系统的设计与开发。本系统是经过三周的实地调研和考察论证,采用了面向对象的开发方法。开发过程中,充分考虑用户的需求,才使得本系统具有强大的功能,并且程序精简,最终这个应用软件完成了需求分析所要求达到的目标。从开发的角度上看,该系统具有如下优点:1.操作方面能够快速、高效的完成商品进销存的管理,界面极其人性化,并采用了网页式的浏览方式。2.安全性能好,系统提供用户名和密码的

温馨提示

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

评论

0/150

提交评论