超市收银管理系统....软件工程课程设计实验报告.doc_第1页
超市收银管理系统....软件工程课程设计实验报告.doc_第2页
超市收银管理系统....软件工程课程设计实验报告.doc_第3页
超市收银管理系统....软件工程课程设计实验报告.doc_第4页
超市收银管理系统....软件工程课程设计实验报告.doc_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

沈阳理工大学课程设计专用纸目录1 问题定义12 可行性研究22.1 项目概述22.2 可行性分析的前提22.2.1 项目的目标22.2.2 项目的环境22.3 可选的方案22.3.1 方案一22.3.2 方案二32.4 所建议的系统32.4.1 系统说明32.4.2 高层数据流图42.5 经济可行性52.6 技术可行性52.7 操作可行性53 需求分析63.1 需求概述63.2 需求模型73.2.1 数据模型73.2.2 功能模型83.2.3 行为模型83.2.4 数据字典94 总体设计114.1 系统体系结构114.2 模块详细说明124.3 数据库设计124.3.1数据库选择方案论证134.3.2 数据库表设计135 详细设计155.1 人机界面设计155.2 过程设计156 测试186.1 白盒测试186.2 黑盒测试197 结论208 参考文献21沈阳理工大学沈阳理工大学课程设计专用纸No.201 问题定义21世纪是已经是一个信息化时代,超市经营管理机制正在发生着根本性的变化,商场要想在激烈的市场竞争环境下求得生存,就必须有效地利用人才、时间、信息结合的优势,进行有效的超市内部改革和加强收银管理。借助现代信息技术和管理理论,超市收银管理信息系统已经普及到了大多数超市中。 本系统针对商品销售管理的业务范围及工作特点,设计了基于智能客户端架构的超市收银系统,可以全面实现对商品销售、付款、收款和库存等业务的计算机管理,大大减轻了超市收银工作人员的工作量,全面提高了超市收银管理的管理效率以及服务质量,使管理水平和业务水平跃上了一个新的台阶。本文论述了基于智能客户端的超市收银系统的设计和实现过程,并对其数据安全进行了深入研究。 2 可行性研究2.1 项目概述本系统针对商品销售管理的业务范围及工作特点,设计了基于智能客户端架构的超市收银系统,可以全面实现对商品销售、付款、收款和库存等业务的计算机管理,大大减轻了超市收银工作人员的工作量,全面提高了超市收银管理的管理效率以及服务质量,使管理水平和业务水平跃上了一个新的台阶。本文论述了基于智能客户端的超市收银系统的设计和实现过程,并对其数据安全进行了深入研究。2.2 可行性分析的前提2.2.1 项目的目标综合运用以前所学的专业知识,设计开发一个超市收费系统软件,本设计要求实现超市收费的主要流程。 具体包括以下内容:1 在设计与开发中,重点放在简单地进行货品销售和会员积分优惠上。2 在设计与开发中,既要实现前台的收银员的销售,又要实现后台的管理员的功能,如商品信息管理、职员(收银员)信息管理以及销售情况查询。2.2.2 项目的环境本系统是在下列环境下完成的:1 硬件环境:(1) 操作系统: Microsoft Windows 8 (2) 中央处理器(CPU): Inter(R) Pentium(R) 4 CPU 2.40GHz Prescott Processor (3) 主板: P4i65PE-M (4) 显卡: NVIDIA GeForce FX 5200 (显存128M)(5) 硬盘: SAMSUNG SP0812C 80G 7200转/分(6) 内存: DDR 400(PC3200) 512MB2 开发环境:(1) 应用程序开发环境: Visual studio 2010,MyEclipse (2) 后台数据库开发工具:Microsoft SQL Server 2000(3) 文档开发环境:Microsoft Office Word 20102.3 可选的方案2.3.1 方案一本系统采取C/S模式,这是由于本系统用于一般的超市,而非用于网上购物,C/S模式利于移植,避免了B/S模式应用程序所要求的服务器相关软件环境配置的复杂性,而且无需借助网络,能够以更快的速度进行操作和响应,相对也显得安全一些。 编程语言采用Java,图形界面用Java Swing,尽管Java的程序效率不是最高的,而且Swing的界面跟Windows风格不太符合,但Java有一点是不可比拟的,即用其开发的程序具有跨平台性,由于是C/S模式的桌面应用程序,跨平台性就显得特别重要。 数据库采用MySQL,其体积小、速度快、总体拥有成本低,而且开放源码,其可靠性也丝毫不逊色。这种轻量而强大的数据库是开发这种中小型桌面软件系统的绝佳选择。开发环境用的是MyEclipse,它对Java Swing的支持尤其好,实现了所见即所得的开发方式。2.3.2 方案二本课题采用visual c的技术实现,VC是面向对象的语言,同时,微软在其中提供了大量的可用控件,使得我们在搭建页面时能够方便使用,而省去了大量代码的使用。此编程工具与数据库的连接也很完善。数据库采用MySQL,其体积小、速度快、总体拥有成本低,而且开放源码,其可靠性也丝毫不逊色。这种轻量而强大的数据库是开发这种中小型桌面软件系统的绝佳选择。开发环境用的是Visual studio 2010。2.4 所建议的系统2.4.1 系统说明采用与Microsoft SQL Server 2000的连接,经过对于超市收银管理系统的分析后,系统所涉及到的数据包括:货物名称、货物货号、货物数量、供应商名称、入库单、系统管理、销售业绩管理等。具体如下:1 进货功能的数据需求主要包括:进货货号,进货名称,收货人,供货商,进货日期,进货单位,进货数量等。2 库存信息的数据需求主要包括:货物库存数量,货物名称,货物货号等。3 出货功能的数据需求主要包括:销售日期,商品货号,商品名称,销售单价,销售数量,收银员编号等。4 销售业绩的数据需求主要包括:销售起止时间,销售员编号,货物名称,货物货号和总销售额等。2.4.2 高层数据流图图2.1 高层数据流图2.5 经济可行性成本包括:开发项目的费用支出和时间消耗,服务器的配置,硬件设备的更新和升级,系统管理维护费用。其中服务器的配置、硬件设备的更新和升级都是一次性投资。项目取得的收益:通过提升工作效率带来的销售收益以及减少工作人员带来的成本收益。从长远看来,这是一项可观的收益,相对于项目支出的一次性较大费用来说,一个成功的收费管理系统获得的收益将是长期的、持续性的,因此,构建收费管理系统在经济上可行。2.6 技术可行性随着软件编程技术的不断增加,功能的不断加强,和网络技术的不断成熟,信息安全的不断完善以及开发工具的日益进步,采用计算机系统来管理超市要求数据的采集、更新能够完整、准确和及时,所以开发通用的超市收银系统已经完全可以做到。2.7 操作可行性当今社会,计算机对人们来说已并不陌生,它已经走进千家万户,即使是并没有太高文化水平的人也能够熟练操作计算机。对于此套超市管理系统,它拥有简洁的界面,能让人熟练操作,因此面对超市的普通员工,它的操作是完全可行的。对于超市的管理员,熟悉这套系统就更加容易,利用这套系统,使得超市管理的工作将变得简单快捷。3 需求分析3.1 需求概述本系统主要分成四个功能模块,每个模块都独立的完成了自己的功能,以下是对各功能模块的说明:(1) 用户信息管理功能。该功能模块可以实现系统用户对自己基本信息的修改,不过只限于对登录密码的修改,因为用户帐号都是超市为了方便管理而事先分配好了的,是不能改变的。出于对用户信息的安全性考虑,只能修改当前登录的用户的密码。(2) 商品入库信息管理功能。该功能模块是实现对即将入库的商品的统计,由于商品信息的庞大、复杂,在入库前需要对其进行详细地记录管理,为商品的库存管理打下良好的基础。需要记录的内容有:入库商品的商品号、名称、类型、价格、同类商品的数量、采购员、验收员、生产厂商、产地、入库时间等。同时能够实现对商品入库信息的添加、修改、删除和查询功能。(3) 商品库存信息管理功能。该功能模块是当入库的商品放入超市后,对库存商品进行统计管理,主要入库信息来源于(2)中的商品入库信息记录。需要记录的内容有:库存商品的名称、类型、入库价格、销售价格、库存量、入库时间、有效期等,同时能够实现对商品库存信息的添加、修改、删除和查询功能。在商品批量销售后,在表中能够同时删除相应的商品的数量。(4) 商品销售信息管理功能。该功能模块是把要销售的商品从超市中取出来,并对库存商品进行相应的记录管理,并且把顾客的购买信息打印下来给顾客做凭证。需要记录的内容有:出售商品的名称、类型、销售价格、数量、销售时间等,同时能够实现对商品销售信息的添加、修改、删除和查询功能。3.2 需求模型3.2.1 数据模型为了把系统的数据要求清楚、准确地描述出来,系统分析员通常建立一个概念性的数据模型(E-R图)。它描述了从用户角度看到的数据,它反映了用户的显示环境,而且与在软件中的实现方法无关。 本系统的E-R图,如图3.1顾客编号姓名性别注册时间是否过期消费金额商品编号名称单价库存收银员编号姓名性别登录名密码交易时间数量收银上班时间金额下班时间111111M11N11图3.1超市收银管理管理系统E-R图3.2.2 功能模型超市收银管理系统功能模型图,如图3.2超市收银系统登录管理收银员信息管理顾客信息管理商品信息管理交易信息管理收银信息管理帮助注销、退出系统添加、删除、修改、查询添加、查询、交易添加、删除、修改、查询添加、删除、修改、查询添加、查询图3.2 超市收银管理系统功能模型图3.2.3 行为模型 (a)(b)图3.3超市收银管理系统行为模型图3.2.4 数据字典在对数据库需求分析后,得到一个数据字典。数据字典则是系统中各类数据描述的集合,是进行详细的数据手机和数据分析获得的主要成果。数据字典通常包括数据项、数据结构、数据流、数据存储。其中数据项是数据最小组成单位,若干个数据项可以组成一个数据结构,数据字典通过对数据项和数据结构的定义来描述数据流、数据存储和逻辑内容,本系统的数据字典包括以下内容。1 数据元素(1) 数据元素名称:cno 别 名:货物号简 述:货物的编号数据类型:字符串型长 度:10取值范围:“000000001”-“999999999”(2) 数据名称:用户名别 名:用户名简 述:某用户的名称数据类型:文本型长 度:50取值范围:“000.001”-“999.999”2 数据流(1) 数据流名称:货物号简 述:货物的编号(2) 数据流名称:销售日期简 述:货物卖出的日期(3) 数据流名称:数量简 述:货物卖出的数量(4) 数据流名称:进货信息简 述:货物信息、库存数量信息、进货时间信息数据流组成:进货信息=货物信息+库存数量信息+进货时间信息(5) 数据流名称:出货信息 简 述:货物信息、卖出数量信息、卖出时间信息数据流组成:货物信息+卖出数量信息+卖出时间信息3 处理逻辑条目(1) 处理逻辑名称:登陆简 述:根据用户名称、密码和权限登陆到系统主菜单输入的数据流:用户名、密码处 理:根据用户权限来实现对货物管理输出的数据流:货物信息(2) 处理逻辑名称:进货管理简 述:入库货物的货物号来实现入库管理输入的数据流:货物号处 理:根据所入库货物的货物号,增加此商品的库存输出的数据流:库存信息(3) 处理逻辑名称:出货管理简 述:出库货物的货物号来实现出库管理输入的数据流:货物号处 理:根据所出库货物的货物号,减少此商品的库存输出的数据流:更新完的库存信息4 数据存储数据存储名称:商品信息表简 述:记录商品的信息数据存储结构:货物号,货物名称,库存数量,进出货时间,关 键 字 :库存数量4 总体设计4.1 系统体系结构系统整体功能层次图,如图4.1图4.1 整体功能层次图前台功能层次图,如图4.2图4.2 前台功能层次图后台功能层次图,如图4.3图4.3 后台功能层次图4.2 模块详细说明IPO表系统:超市收银管理系统模块:商品销售模块编号:2作者:李林日期:3月6号被调用:调用:数据库输入: 商品条形码输出: 商品信息处理:计算商品总额局部数据元素:GNumGNameSellPriceUserAccount 注释:商品条形码商品名称售价操作员4.3 数据库设计商品信息表记载的是商品的详细信息,含商品编号、名称、售价、库存量。具体的各字段属性说明和类型如下表2。表4.1 商品信息表(Goods)序号属性名字段名类型长度NULL1商品编号GoodsIDInt42商品名称GNamevarchar503商品条形码GNumvarchar304进价BuyPricemoney5售价SellPricemoney6库存量StockNumint47厂家Producernvarchar100订单细节表记载的是商品的销售信息,含订单号、流水线编号、商品条形码、商品销售数量。具体的各字段属性说明和类型如下表4.2表4.2订单细节表(Sale Detail)序号属性名字段名类型长度NULL1订单编号Didint42流水线编号SaleAccountvarchar203商品条形码JoinTimevarchar304商品销售数量SaleNumInt44.3.1数据库选择方案论证建立一个数据库我们有多种选择,现在市场上有各种各样的数据库,而且每一种数据库都有其自身的特点,不能说哪一种更好,只是在其中寻找一种能更好地适应系统需求、更好地满足用户的要求以及适应开发人员的习惯。在本系统中,作为小型超市的收费系统是一个比较小的应用系统,它所产生和处理的数据量也比较小。因此,没有必要使用像SQLServer和Oracle这样的大型数据库。首先考虑的数据库是开源的Mysql数据库,因为它在计算机上的应用比较普及,是开发小型数据库系统的比较理想的选择,所以,在本系统中我选择了Mysql数据库。Mysql作为一个数据库管理系统,采取关系型数据库模式。与其他的数据库系统相比,Mysql简单易学,并且功能强大,利用它可以方便地实现对信息保存、维护、查询、统计、交流、发布,这些功能对一个一般用户而言已经足够了。4.3.2 数据库表设计用户的需求具体体现在对商品信息,销售信息,折扣信息,客户信息的更新和查询,以及由此涉及到的财务数据的更新、查询和保存。这就要求数据库结构充分满足各种信息的输出和输入。搜集基本数据、数据结构和数据处理的流程,组成一个详尽的数据字典,为后面的具体设计打下基础。通过上述系统功能分析,总结出如下的需求信息:1. 用户分为管理员、和收银员。管理员具有管理和查询表项的功能,收银员结账并维护vip客户表信息;2. 涉及到的数据有商品信息表、供应商表、销售情况表、雇员表、值班表、vip客户表,折扣表;3. 管理员和收银员具有不同的操作权限;4. 管理员具有新建用户和分配权限的权力。经过上述系统功能分析和需求总结,考虑到将来功能上的扩展,设计如下面所示的数据项和数据结构。1、商品信息表,是实体表,包括:商品编号、商品名、供应商编号、单价、数量。商品编号是主键。2、供应商表,是实体表,包括:供应商编号、地址、联系电话。供应商编号是主键。3、销售情况表,是关系表,包括:商品编号、销售日期、销售数量。商品编号是主键。4、雇员表,是实体表,包括:员工编号、密码、员工姓名。员工编号是主键。5、值班表,是关系表,包括:员工编号、值班日期。这两个一起作为主键。6、vip客户表,是实体表,包括:会员编号、姓名、积分、联系电话。会员编号是主键。7、折扣表,是关系表,包括:商品编号、折扣、打折日期。商品编号是主键。5 详细设计5.1 人机界面设计商品销售模块商品销售界面如图5.1图5.1 商品销售界面5.2 过程设计商品销售模块其中按商品条形码查询商品信息用数据库查询完成。代码如下: private void AddGoods_Click(object sender, EventArgs e) string goodsNum = this.txtGoodsNum.Text.Trim(); GoodsBll goodsBll=new GoodsBll(); if (goodsNum = ) MessageBox.Show(请输入商品条形码!); return; else int goodsCount=1; Goods goods = goodsBll.GetGoodsByNum(goodsNum); if (goods != null) if (lvGoods.Items.Count 0) bool exist = false; foreach (ListViewItem goodsItem in lvGoods.Items) if (goodsItem.SubItems1.Text = goodsNum) exist = true; goodsItem.SubItems0.Text = (int.Parse(goodsItem.SubItems0.Text) + 1).ToString(); goodsItem.SubItems4.Text = string.Format(0:F2, (int.Parse(goodsItem.SubItems0.Text) * goods.SalePrice); sumGoods += 1; if (!exist) ListViewItem lvItem = lvGoods.Items.Add(goodsCount.ToString(); lvItem.SubItems.Add(goods.GNum); lvItem.SubItems.Add(goods.GName); lvItem.SubItems.Add(string.Format(0:F2, goods.SalePrice); lvItem.SubItems.Add(string.Format(0:F2, goods.SalePrice * goodsCount); lvItem.SubItems.Add(CashierLogin.m_cashier.UserAccount); lvItem.SubItems.Add(goods.ID.ToString(); sumGoods += 1; else ListViewItem lvItem = lvGoods.Items.Add(goodsCount.ToString(); lvItem.SubItems.Add(goods.GNum); lvItem.SubItems.Add(goods.GName); lvItem.SubItems.Add(string.Format(0:F2, goods.SalePrice); lvItem.SubItems.Add(string.Format(0:F2, goods.SalePrice * goodsCount); lvItem.SubItems.Add(CashierLogin.m_cashier.UserAccount); lvItem.SubItems.Add(goods.ID.ToString(); sumGoods += 1; this.txtGoodsNum.Text = ; else MessageBox.Show(该商品不存在!); this.txtGoodsNum.Text = ; return;

温馨提示

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

评论

0/150

提交评论