基于ASP的超市经营管理系统_第1页
基于ASP的超市经营管理系统_第2页
基于ASP的超市经营管理系统_第3页
基于ASP的超市经营管理系统_第4页
基于ASP的超市经营管理系统_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

基于ASP.NET的华联超市经营管理系统的设计与实现 学生姓名: 指导教师: 摘 要:随着大数据时代的到来,数据挖掘技术已经逐渐走向成熟,并且深入各个领域。而现在大多数超市企业仍在采用传统的数据分析手段。这样它们就很难应付大量的数据。所以,它们要想在竞争中取胜,获得更大的利益,就必须采用数据挖掘、联机分析处理等新兴的技术。本文研究了如何将数据挖掘、联机分析处理技术与传统的超市管理系统结合,开发出一个新式的、更有企业竞争力的超市经营管理系统。本文使用Visual Studio 2008开发工具对系统界面进行设计与实现,使用SQL Server 2005软件进行后台的数据库的设计与实现。关键词:数据挖掘;经营管理;联机分析处理Design and Implementation of Operation and Management System of Hua Lian Supermarket Based on ASP.NETAuthors Name:YAO Rui Tutor:WANG Chang-houABSTRACT: With the advent of the era of the big data, data mining technology has gradually become mature and has been deep into various fields. But now, most of the supermarket enterprises still use the traditional data to analysis method. It is difficult for them to deal with large amounts of data. So, if they want to win in the competition, and gain greater benefits, they must use some new technologies such as data mining and on-line analytical processing. In this paper, we study how to combine the data mining and the on-line analytical processing technology with traditional supermarket management system and how to develop an operation and management system which is new and has more enterprise competitive power. In this paper, we use the Visual Studio 2008 development tools to design and implement the system interface, and use SQL Server 2005 development tools to design and implement the background database.KEYWORDS:data mining;operation and management;OLAP目 录1 引言11.1 关于数据的研究背景及现状11.2 本文的主要内容12 主要技术介绍22.1 数据挖掘技术22.2 OLAP技术23 可行性研究与需求分析33.1 可行性研究33.2 需求分析44 超市经营管理系统的设计与实现64.1 系统数据库的设计与实现64.2 系统界面的算法与设计105 系统测试分析145.1 登录界面的测试145.2 其他界面的抽样测试146 结束语15致谢17参考文献181 引言本章介绍了数据以及数据挖掘的背景和现状,并对本篇论文的主要内容经行了概括。1.1 关于数据的研究背景及现状进入2013年,大数据一词已经越来越多地被人们提及。它被用来描述和定义这个信息爆炸时代产生的大量数据,并被命名与之相关的技术发展。它已经上过纽约时报和华尔街日报的特别封面,登陆过白宫的官方网站的主页,也现身于我国国内一些互联网的主题讲座中,甚至被那些嗅觉灵敏的证券金融机构如国金证券写进了投资推荐报告之中1。数据正在迅速发展和变化,它决定着企业发展的未来,虽然现在的许多企业可能并没有过多意识到数据地爆炸性增长将要带来的问题隐患,但是随着时代的向前发展,越来越多的人们将意识到数据对企业的重要性。大数据时代向人类对数据驾驭的能力提出了新的挑战,也为人们能拥有更为深刻、全面的洞察能力提供了前所未有的空间。数据挖掘是为了适应信息社会从海量的数据中提取信息的需要而产生的新兴学科。它是数据库理论、统计学、人工智能等学科的交叉。在我国的许多重点院校中都已经开设了数据挖掘这门课程或相关的研究课题。此外,政府机构和大型企业也已经开始重视这个领域。调查结果显示,一个企业要想在复杂的社会环境中获得成功,高层管理者就必须能够控制相对比较复杂的商业结构。如果没有详实的数据作为支持,那是很难办到的2。因此,在数据挖掘技术的不断发展改进和日益成熟的今天,数据挖掘技术必将被更多的用户使用,并且让更多的管理者获得更多的商务智能。现在,许多企业都把数据看成非常宝贵的财富,纷纷利用许多商务智能手段去发现其中隐藏的信息,并借此获得巨额的回报1。国内暂时还没有官方的关于数据挖掘行业本身的市场统计分析报告,但是数据挖掘在国内各个行业都有一定的研究。据国外专家预测,在今后的3至5年内,随着数据量的日益积累,数据挖掘技术必将在中国形成一个产业。1.2 本文的主要内容首先对华联超市业务数据库进行分析,构造出系统的逻辑模型。然后从系统需求分析出发,完成了华联超市系统中销售管理的立方体的构建。通过系统的结构和功能两个角度来对超市管理系统的需求进行详细的分析,同时将本系统分为系统设置信息管理和商品销售信息管理两部分来设计。在对系统需求分析与设计的基础上,利用SQL Server 2005数据库进行后台数据库的建立,使用Visual Studio 2008开发工具对本系统进行设计与实现。2 主要技术介绍本文使用的主要技术有:数据挖掘技术,OLAP。其中聚类分析作为数据挖掘的主要技术在后续章节中着重介绍。2.1 数据挖掘技术数据挖掘的历史仅能追溯到上世纪90年代,但它的发展速极快。由于它在许多学科都被涉及,所以到目前未知仍然还没有一个完整的官方的定义。人们提出了许多数据挖掘的定义:数据挖掘是使用模式识别技术、数学和统计技术,在大量的数据中发现有意义、有价值的新模式、新关系和新趋势的过程和方法3;数据挖掘是在大量相关数据基础之上进行数据探索并建立相关模型的先进方法和过程3;数据挖掘就是在大型数据库中寻找有意义、有价值信息的过程3等等。总的来说,数据挖掘就是从大量的数据中挖掘出可能有潜在价值的信息的技术。1、数据挖掘过程数据挖掘可以看作是一个比较复杂处理过程,它一般分为五个步骤:确定数据对象、数据准备、数据挖掘、结果的分析与评估和知识的嵌入应用。2、数据挖掘的功能数据挖掘综合了各个学科技术,目前的主要功能有:(1)聚类:识别出分析对内在的规则,按照这些规则把对象分成若干类;(2)关联规则和序列模式:关联是某种事件发生时其他事件也会发生的一种横向联系。与关联不同,序列是一种纵向的联系;(3)分类:按照分析对象的属性、特征,建立不同的分类来描述事物;(4)预测:把握分析对象发展的规律,对未来的发展趋势做出合理的预见;(5)偏差的检测:对分析对象的少数的、极端的特例的描述,揭示其内在的原因。2.2 OLAP技术OLAP属于决策支持领域的其中一部分。传统的查询和报表工具是告诉我们数据库中都有什么,OLAP则是更进一步告诉我们下一步会怎么样和如果我们采取这样的措施又会怎么样。用户首先建立一个假设,然后用OLAP检索数据库来验证这个假设是否正确。也就是说,OLAP分析师是建立一系列的假设,然后通过OLAP来证实或推翻这些假设来最终得到自己的结论6。所以说,OLAP分析过程在本质上是一个推理演绎的过程。但是如果要分析的变量达到了几十或上百个,那么再用OLAP手动分析验证这些假设将会是一件非常困难和麻烦的事情。数据挖掘与OLAP不同的地方是,数据挖掘不是用于验证某个假定的模式(模型)的正确性,而是在数据库中自动寻找所需要的模型。3 可行性研究与需求分析3.1 可行性研究本章节从技术,经济,操作三方面以及数据挖掘的适用性进行可行性研究。特别地,由于在上面的章节介绍过主要的技术,所以,本章只是从理论上来分析上述技术的可行性。1、技术可行性:数据库与ASP.NET技术已经走向成熟,一般人可以驾驭,而且它们易学易懂,即便是一个新手也不会花太多的时间就能掌握。而数据挖掘与OLAP虽然是一个新兴的技术,但在本文中主要以函数和实例等形式讨论的,因此也比较容易掌握。总之本文所用的技术略显多一点,但都不是很困难。所以从技术层面来讲本课题是可行的。2、经济可行性:虽然这属于本科毕业论文(设计),不像一个企业需要讨论利润等问题,所以我在此讨论的经济可行性更侧重于一个毕业设计而不是一个软件。我们都知道撰写论文和设计软件的开发成本基本上可以降到最低,所以从经济的角度来讲,是可行的。3、操作可行性:相信一般的超市管理系统大家并不陌生,本课题就是在传统的系统之上做的改良,增加了由数据挖掘分析产生的相关模块,所以可操作性极强。4、数据挖掘在本课题的可行性研究:由于超市每天的交易量都比较多,经过日积月累形成的数据量已经达到了海量这样的级别,而这些数据量已经能为数据挖掘做充分的准备,因此在超市管理系统中进行数据挖掘是可行的。3.2 需求分析怎样从超市收集到的大量数据里分析出哪些商品好卖,哪些商品适应什么用户群,用户在购买某种商品的同时还会购买哪种商品等这些有价值的商业信息,超市经营者只有对数据进行仔细的分析,才能真正掌握自己所需的信息,使超市信息化管理逐步迈向知识化的管理。传统的数据库管理系统不能够很好地利用、分析数据库中积累的大量数据,而数据挖掘技术却能很好地解决这一问题。利用数据挖掘技术,不仅可以有效地控制和防范超市经营风险,还能有利于超市加强对日常的经营管理。经过对于我所在地区的华联超市市场调查,我认为有必要以超级市场的决策支持为切入点,从理论和实践两个方面来探讨华联超市中的销售管理。1、系统应用需求分析从用户的角度分析考虑,超市信息系统主要用来满足两类用户需求,即普通管理员和系统管理员。普通管理员在根据用户名和密码登录之后,只能登录到一般界面,只可以对超市的商进行销售处理,而看不到其他的处理界面;系统管理员的功能信息量却很大,它在根据用户名和密码登录之后,可以对所有信息进行管理和维护。系统管理员可以对所有管理员信息进行添加、修改、删除等功能,还可以对超市已销售的商品进行查询和汇总。通过应用需求分析,系统的主要流程是:用户要登录系统前,先要对用户身份和权限进行验证,如果是未注册用户之类的非法用户,系统拒绝进入;若己注册,则根据用户的身份进入不同的界面(普通管理员进入普通界面进行销售操作,系统管理员进入高级界面对系统进行其他更高级的操作),系统的流程图如Error! Reference source not found.所示。2、系统开始退出系统管理员登录合法用户非法用户执行管理、维护、查询、汇总功能执行商品销售功能身份验证系统管理员YNYN 图 3-1 系统流程图功能模块按照功能横向介绍,每个模块内部的小模块为当前模块的下级模块。(1)登录界面模块可以让不同的用户进行登录,总共有两种用户类型,分别为管理员和员工(收银员)。(2)基本信息模块分别有:供应商信息管理模块、商品信息管理模块、员工信息管理模块等。(3)进退货信息管理模块分别有:进货登记(进行商品进货登记)模块、进货查询(可根据时间段,商品类别,供应商进行查询)模块、退货查询(可根据时间段,商品类别,供应商进行查询)模块等。(4)销售管理模块分别有:商品销售处理(可实现多种商品的销售,有销售日期,小票号以及销售人员的编号)模块、 销售退货处理(可依据小票号进行退货,并要有备注可表明退货原因,以及要有退货日期)模块、销售查询(按商品名称查询,按销售人员查询,按销售日期查询)模块、退货查询(按小票号查询,按商品名称查询,按销售人员查询,按退货日期查询)模块等。(5)库存管理模块分别有:库存查询(可按商品名进行查询,商品类别进行查询)模块、库存盘点(进货金额和销售金额的对比)模块等。此外还有库存上溢,下限预警,以及库存报损等功能。 (6)系统管理设置模块分别有:用户信息管理(限制不同用户的权限)模块、用户密码修改模块等。4 超市经营管理系统的设计与实现4.1 系统数据库的设计与实现数据库是系统的核心,它的设计直接关系系统执行的效率和系统的稳定性。性能良好的数据库是应用系统成功的基础和保证,因此必须对数据库进行合理设计7。所以在软件系统开发中,数据库设计应遵循必要的数据库范式原则,以便能减少冗余、保证数据的完整性与正确性。通过对系统的需求进行分析,本设计中主要的实体有:管理员、员工、厂家、商品。1、上述实体的E-R图如下:图 4-1 管理员的E-R图管理员账号密码姓名管理员的实体图如Error! Reference source not found.所示。图 4-2 员工的E-R图员工账号密码姓名性别生日住址员工的实体图如Error! Reference source not found.所示。图 4-3商品的E-R图商品编号类别名称厂家售价时间条码商品的实体图如Error! Reference source not found.所示。图 4-4厂家的E-R图厂家地址电话编号名称厂家(供应商)的实体图如Error! Reference source not found.所示。2、各实体间的联系图如Error! Reference source not found.所示。图 4-5 各实体间E-R图员工商品厂家销售供应数量时间系统编号单价单据编号总价日期订单编号数量总价进价nmnm根据系统分析在数据库中建立数据库表,表结构如下:1、商品信息表Goods用来记录商品信息。结构如Error! Reference source not found.所示。表 4-1 商品信息表列名字段含义数据类型备注GoodsIDGoodsNameBarcodeClassIDCompanyIDSe1lPriceAddTime商品编号商品名称商品条码商品类别厂家编号商品售价添加时间varchar(20)varchar(40)varchar(40)intintfloatdatetime主码(这是超市内部的商品“条码”)外码,参照GoodsClass表GoodsClassID外码,参照Company表CompanyID2、厂家信息表Company,记录商品供应厂家的编号,厂家名称、地址和联系电话。结构如Error! Reference source not found.所示。表 4-2 厂家信息表列名字段含义数据类型备注CompanyIDCompanyNameAdressTel厂家编号厂家名称厂家地址联系电话varchar(20)varchar(40)varchar(40)varchar(40)主码3、商品订单信息表Order,记录商品订单信息,包括订单编号、商品编号、商品售价、进价等信息,信息表结构如Error! Reference source not found.所示。表 4-3 商品订单信息表列名字段含义数据类型备注OrderIDGoodsIDCompanyNameSellPricePurPriceNumberTotalPriceOrderTime订单编号商品编号厂家名称商品售价商品进价进货数量进货总价进货日期varchar(20)varchar(20)varchar(40)floatfloatintfloatdatetime主码外码,参照Goods表GoodsID外码,参照Company表CompanyNamenull,外码,参照Goods表SellPrice4、管理员信息表Admin,信息表的结构如Error! Reference source not found.所示。表 4-4 管理员信息表列名字段含义数据类型备注AdminIDAdminNameAdminPassWord管理员帐号管理员姓名管理员密码varchar(20)varchar(20)varchar(32)主码5、员工信息表Emp,信息表的结构如Error! Reference source not found.所示。表 4-5 员工信息表列名字段含义数据类型备注EmpIDEmpNameEmpPassWordEmpSexEmpBirthEmpAdress员工账号员工姓名员工密码员工性别员工生日员工住址varchar(20)varchar(20)varchar(32)nchar(1)datetimevarchar(40)主码m表示男,f表示女6、销售信息表Sell,信息表的结构如Error! Reference source not found.所示。表 4-6 销售信息表列名字段含义数据类型备注SellSysSellIDGoodsIDSellPriceNumberTotalPriceSellTimeEmpID系统编号单据编号商品编号销售单价销售数量销售总价销售时间员工账号varchar(20)varchar(30)varchar(20)floatintfloatdatetimevarchar(20)主码not null外码,参照Goods表GoodsID外码,参照Goods表SellPrice外码,参照Emp表EmpID4.2 系统界面的算法与设计本超市管理系统采用ASP.NET开发工具对系统进行设计与算法。由于ASP.NET开发工具已经把常用的以及较为经典的算法都封装到类库或者函数库当中了,所以在设计的过程中不必劳神那些复杂的算法,而是要记住并学会使用那些类库或函数库就行了。在这里只介绍设计过程中想到,用到的算法以及一些算法的优化和改进,达到软件工程中“逐步求精”,“行代码最优”的要求。设计所有的页面的时的一般步骤都是:设计面板,添加控件,设置控件属性,编写事件代码。这里设计是为了使得界面美观,控件集合在一起也比较好控制。在事件过程部分设计时,不需要考虑方法的先后编写顺序。因为事件中的代码是在相应的触发条件下才会执行,比如用户执行鼠标单击,按下回车键等情况。对于一些比较长的字符串,最好定义一个字符串类来保存它(在现在很多的高级语言中都把字符串看作一个类,而C语言则不是,由此也可以说明C语言是高级语言中的低级语言),否则一旦分行而写,会影响程序的美观、可读性和可修改性。下面我只介绍两个比较典型的页面的算法与设计,其余的跟这两个大同小异,就不再专门介绍了。4.2.1 登录界面的算法与设计登录界面图 4-6 系统登录界面如Error! Reference source not found.所示。登录界面设计的主要步骤跟上述大体相同,具体的:先制作一个面板(大小合适即可),居中摆放;添加4个按钮,功能分别为:管理员登录,普通用户登录,用户注册和退出系统;在一个比较醒目的位置添加一个滚动条,以提示新用户要先注册再登录;插入图片,设置背景音乐,即做一些美化操作;按钮的事件代码部分主要用到页面重定向语句“Response.Redirect();”,不同的按钮根据不同的功能重定向到不同的页面,退出按钮则是用到关闭页面的语句(并在关闭页面时带有提示防止误关页面)“Response.Write(window.close();”。4.2.2 进货界面的算法与设计图 4-7 系统销售界面进货界面对应数据库的增加(销售界面对应数据库的减少)如Error! Reference source not found.所示。界面设计跟上述的登录界面相似,在此不再赘述。有区别的是部分控件需要绑定数据。连接数据库步骤是:定义数据库连接类(连接不同类型的数据库需要定义不同的类,这里定义的是SqlConnection类);打开并连接数据库,数据库的名称(数据源Data Source)最好使用localhost(本地数据库),这是为了增强程序的可移植性,并且在命名空间中增加该语句“using System.Data.SqlClient;”这样才能保证数据库连接成功和以后的使用;定义数据库命令语句类(这里定义的是SqlCommand类);定义数据阅读器类或数据适配器类(如果只是读取数据就可以定义数据阅读器类或数据适配器类,如果要涉及到数据的修改,则必须使用数据适配器类10)并且设定一个相应要创建执行SQL语句命令的对象的属性;绑定数据控件(如果使用的是数据适配器类,则在此之前要先定义数据集类并且要填充数据集);关闭数据库的连接。在修改完单击添加按钮则可将数据写入到数据库中,而且对应的商品数+1(如果是销售则对应的商品数-1)。4.2.3 聚类挖掘技术在超市中的应用在本节会重点介绍聚类挖掘技术。聚类分析是数据挖掘的关键技术之一。聚类分析就是根据数据对象集中数据本身的分布特点,经过数据预处理,采用合适的算法进行数据簇的划分,划分的结果是:一个对象与同一个簇的其他对象的相似度较大,与不同簇的对象的相似度较小9。采用不同的聚类方法,对于相同的数据集可能有不同的划分结果。我们这里主要着眼于统计聚类法的研究。系统聚类算法1、系统聚类步骤系统聚类分析(Hierachical Cluster Analysis)是聚类分析中应用最广泛的一种方法,用户可以选择不同的距离和聚类方法获得满意的数值分类效果。其聚类步骤如下:(1)聚类前先对数据进行变换处理,在聚类处理之前,对变量进行筛选,选择那些相关性不很显著的而且贡献大的指标,剔除了相关性很强的变量。(2)聚类分析的开始是各样品自成一类(n个样品共有n个类),计算各样品之间的距离,并将距离最近的两个样品并成一类。(3)选择并计算类与类之间的距离,并将距离最近的两类合并,如果类的个数大于1则继续并类,直至所有样品归为一类为止。(4)最后绘制系统聚类谱系图,按不同的分类标准或不同的分类原则,得出不同的分类结果。2、数据变换处理规格化变换是从数据矩阵的每一个变量中找出其最大值和最小值,然后从每个变量的每个原始数据中减去该变量中的最小值,再除以极差,就得到规格化数据4。即有:经过规格化变换后,数据矩阵中每列即每个变量的最大数值为1,最小数值为0,其余数据取值均在0至1之间。3、系统聚类法距离计算我们在这里采用的是欧式距离计算方法,又称二阶Minkowski度量计算。4、系统聚类法的聚类方法:我们在这里只介绍最短距离法。最短距离法的聚类方法是:把两个类之间的距离定义为一个类的所有个体与另一个类的所有个体之间的距离的最小者。我们选取“商品类别”作为维度,再选取“销售单价”、“销售数量”、“实收金额”作为我们用来聚类的指标,进行聚类分析,从分析中找出畅销和滞销的商品,对该商品今后的订货提供决策依据。5 系统测试分析软件测试的目的就是寻找并纠正软件中存在的错误。软件测试只能证明软件是有错误的而不能证明软件一定是无错误的(除非使用穷举测试,然而绝大多数情况下无法进行穷举测试)。由于本系统许多模块的代码相似程度很高,所以在相似程度很高的模块当中任意抽取两个模块进行测试分析即可,这也体现了测试的抽样性、随机性和有穷性。5.1 登录界面的测试由于管理员跟普通用户的代码和代码结构都类似,所以在此只测试管理员部分作为代表。1、用户名admin为真,密码sk为假时,不能登录成功。2、用户名admin为假,密码admin为真时,不能登录成功。3、用户名sk为假,密码sk为假时,不能登录成功。4、用户名admin为真,密码admin为真时,才能登录成功。5.2 其他界面的抽样测试在这里我们选取进货查询模块和销售模块进行测试。1、对进货查询模块的测试输入正确的订单编号0001,在数据库中能查询到此订单的进货信息:订单编号:0001商品编号:厂家名称:双汇集团商品售价:3元商品进价:2.3元进货数量:72进货总价:165.6元进货日期:2013.4.9如果不能,则表明系统与数据库连接存在问题。输入不正确的订单编号0135,在数据库中就不能查询到进货信息。2、对销售模块进行测试添加商品的编号(内码)0790等信息完毕后,在数据库中能显示出商品的有关信息。商品编号:0790商品名称:双汇王中王商品条码:商品类别:食品厂家编号:商品售价:3元添加时间:2013.4.9如果不能,则表明系统与数据库连接存在问题。特别地,当某商品的库存数量为零时,无法销售该商品,如果能,则下限预警代码部分存在问题,具体问题可能为数据库设计存在不合理之处或者系统未能与数据库进行连接。6 结束语随着计算机普及程度的不断加深,各个企业收集了大量的产品、客户、销售等资料和数据,如何从这些数据中挖掘出有价值的知识,辅助决策,将成为目前经济发展的一个主要问题。利用数据挖掘技术,对数据进行更深层次处理,得到关于数据的总体特征以及发展趋势的预测,对提高企业的竞争力将起到关

温馨提示

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

最新文档

评论

0/150

提交评论