超市管理系统项目设计说明书.docx
- 文档编号:6153056
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:35
- 大小:1.46MB
超市管理系统项目设计说明书.docx
《超市管理系统项目设计说明书.docx》由会员分享,可在线阅读,更多相关《超市管理系统项目设计说明书.docx(35页珍藏版)》请在冰豆网上搜索。
超市管理系统项目设计说明书
技
能
实
训
实
验
报
告
第一章前言
随着现代科学技术的迅猛发展,计算机技术已经渗透到各个领域,成为各行业必不可少的工具,特别是Internet技术的推广和信息高速公路的建立,使IT产业在市场竞争中越发显示出其独特的优势,步入信息化时代,有巨大的数据信息等待加工处理和传输,这使得对书数据库的进一步开发和利用显得尤为迫切。
作为国内市场的一些中小型超市,它们在信息化过程中的步伐要落后于大中型超市,而对于这些企业的资源管理,信息的存储和处理也显得迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方法,因此加快超市的信息化进程是必可少的。
超市需要处理大量的库存信息,还要时刻更新产品的销售信息,不断添加商品信息。
面对不同种类的信息,需要合理的数据库结构来保存数据信息,需要有效的程序结构支持各种数据操作的执行。
商店自动化的产品管理在欧美等国家早已经实现,也是零售业管理的基础。
它最主要的特点是能够实时的和准确的控制店内的销售情况。
如果可以能够实时掌握销售流程及销售情况,则可以有效地加速商品的周转率并提高服务质量,而且可以减少产品售价不符等所产生的问题。
顾客的消费要求的是希望在超市购物中能基本上都能购得所需的商品,并且还要既保证商品质量还要享受优质,方便的服务。
在我国超市形成在20世纪90年代初期,现在已经成为我国零售业的一种重要形态,为国民经济的发展发挥了重要的作用。
随着超市高速的发展,其经营管理也变得愈加复杂,早期的售货员站柜台的形式早已不能满足现有销售也的发展,这样就迫切地需要引入新的管理技术。
超市形态具有种种优点,但在目前状况下,它仍存在零售业企业所共有的落后的一面,收款结算速度慢,容易出现营业差错,不宜进行商品调价,盘点效率低等,而且在超市日常管理中,商品的进、销、存等决策以经验为主,缺乏实时分析功能,管理人员对及时传递资料的要求始终得不到满足。
超市形态的高速发展,其经营管理也变得愈加复杂,日常所需要处理的数据量也逐渐增大,商业运转的中间环节也越来越多,原始的人工管理已无法应对这复杂的市场。
为此,在选题过程中,我们选择了超市管理系统设计题目,依靠现代化的计算机信息处理技术来管理超市,从而节省了大量的人力、物力,改善了员工的工作条件,减轻了劳动强度,并且能够快速反映出商品的进、销、存等状况和各种反馈信息分析,使管理人员快速对市场的变化做出相应的决策,加快超市经营管理效率。
第二章 可行性分析
2.1 技术可行性
在IT行业中从业的工作人员一般都要求掌握计算机技术,具有一定的软硬件基础,会使用各种管理软件,熟悉IT产品。
因为,有的超市对员工的素质要求比较高,从管理层到下面的销售人员,都要求具有一定的计算机基础,所以在新系统投入使用时,只要对员工进行少量的培训,系统的功能和使用方法就基本上能够是系统顺利运行。
再,又与本小组成员所学知识相对口。
包括数据库的建立,代码编写,界面设计,运行测试,差错纠错等。
一直到本项目的实现。
小组成员分工合作,各自运用所学知识,在指导老师刘杰老师的辅导下完善了本项目。
所以,该项目在技术上意思可行的。
小组成员分工:
蔡贤波:
主要负责代码的编写
陈康:
主要负责数据库的建立与连接
丁峰:
主要负责界面设计与布局
陈佳:
主要负责运行测试,反馈本项目的优缺点
王仪虹:
主要负责资料的搜集和整理
2.2 经济可行性
因为通过网络传递销售信息可以不受距离的限制,因此可以借阅许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高超市的销售效率,即提高了超市的经济效益,所以从经济上完全是可行的。
(1)超市有能力承担系统开发费用
开发新系统的工作是一项间距复杂的工作,它的投资主要是人力和物力的投资。
对于本系统的开发者来说,其主要投资还是在人力和物力两个方面。
如果是企业自己安排人手开发系统的话,其主要的投资还是在人力资源上,从系统的业务需求调查到系统的分析编码制作都是需要巨大的人力投入的。
软件企业作为一个简短的高科技产业,其员工要求都比一般企业的要求要高,而且对系统开发及软件产业了解比较多,所以在自我开发管理系统的过程中,企业自己比较容易安排人手,这样就可以为企业借阅大部分的额外开支。
同时软件就其它产品来说,属于高端行业,无论是产品的价格还是质量都比较高,而经营产品的经销商或者是商家都要求有雄厚的资金支持。
所以,在系统的开发过程中,企业完全有能力承担开发费用。
(2)新系统将为企业带来经济效益
该项目成本:
开发者
工作分配
工作量
报酬
蔡贤波
代码编写
较大
3000(元)
陈康
数据库建立
一般
2000(元)
丁峰
界面设计
较大
2500(元)
陈佳
运行测试
一般
2000(元)
王仪虹
资料搜集
一般
1000(元)
折合时间成本,该项目成本估价一万两千元。
在以前的超市运行状态下,进货,入库,销售都得靠人工完成,并且不好统计库存数,员工工资也是很大的一笔成本,所以导致很多小型,中型超市难以生存。
在使用该系统后,能极大限度的节约人工成本。
以前的很多人工工作,该系统能一并完成。
减少了超市人员的工作量,超市运营有条不紊,也能得到很多消费者的青睐。
预计在三个月内可将该系统的成本找回。
并在接下来的超市运营中将看到该系统的使用价值。
2.3法律可行性
本软件由实训小组自主编写,与相关法律和国家规定不相冲突,在法律上是可行的。
第三章需求分析
3.1非功能需求分析
超市的发展必需要解决以下问题:
物流管理方式落后,很难根据销售、库存情况,及时进行配货、补货、退货、调拨。
经过调查发现,超市在物流管理方面,仍使用传统的人工管理模式,浪费人力资源,效率低,准确率低。
有些商品紧缺,顾客要排队购买或商品供不应求,使顾客大为不满,还有一些商品,长期积压,损坏严重,造成重大经济损失,引起销售人员的极大不满,以多次向超市管理人员反映,但此类问题仍屡屡发生,得不到根本性的解决,已引起高度重视。
连锁超市是以零售为前导,以商品进销,存配,流转管理为基础。
一个大型超市,它的物流管理势必非常复杂,如果没有一个强大的信息系统来支持,那么就会造成一部分商品大量积压,而另一些商品供不应求的局面,这种局面必然会给超市带来巨大的经济损失。
有些超市为了避免这样的情况发生,就会对物流管理投入大量的人力。
虽然这样解决了物流方面的问题,但是这又有悖于管理学的原则,效率低,浪费了人力资源,解决不了根本性的问题。
3.2功能需求分析
通过管理系统加强超市与供货商之间的信息连接,帮助超市完成物流管理。
经过以上分析,本系统必须具有以下功能:
软件可以供不同用户身份设计不同的软件访问权限;
管理员可以对员工工资进行管理(工资录入)、员工可以对自己的当月工资进行查询;
销售人员可以通过系统将销售量,库存量报告给管理人员;
管理员通过系统可以查询到销售,库存,需求的信息;
系统可以作信息分析;
管理员工信息(添加、修改、删除、打印);
普通员工可以进行当日的考勤操作、当月考勤次数的查询;
管理人员查询数据分析,并作出决策。
3.3数据流图
数据流图主要反映的是超市管理系统中各项功能模块之间的数据流程和简单的数据处理、加工过程和方法,为系统的设计打下基础。
超市管理系统的数据流程:
首先由系统管理员根据不同用户的需求将信息保存到数据库中,然后在进行发布。
用户可以对这些信息进行查询、添加、修改和删除处理。
通过对被系统的需求分析,系统的基本功能已经确定。
整个数据流图:
图3.1数据流图
3.4业务流程分析
超市管理系统工作流程为:
登录系统后,超市管理员可对系统相关信息进行操作,包括商品基本信息、供应商信息、销售信息、库存信息、进货信息等过程进行管理。
业务流程图:
图3.2业务流程图
第四章总体设计
4.1进销存模块
图4.1进销存模块图
4.2功能模块
图4.2功能模块图
第5章详细设计
5.1超市员工管理系统
图5.1软件模块层次图
超市员工管理系统的开发可大大提高超市运作效率;通过全面的信息采集和处理,辅助提高超市的决策水平;可以迅速提升超市的管理水平,为降低经营成本,提高效益,增强超市扩张力,提供有效的技术保障。
本软件控件均以中文形式表示,对员工的查询和使用提供简单方便的快捷操作。
图5.1用户登录界面
该界面用于实现用户的登录,点击登录身份选择身份,登录身份分为管理员和普通用户,管理员是高一级用户,权限大于普通用户,登录之后可以实现系统的管理和维护。
普通用户登录之后进入员工个人界面,员工可以自行查看个人的个人信息和进入工作面。
用户名是员工的工号,每个员工都有独立的工号,登录时输入自己的工号即可。
密码是员工自行设置的。
设计难点在于:
勾选框“记住密码”
解决方法:
//创建文件流对象,并且对其进行初始化
FileStreamfs=newFileStream(Application.StartupPath+"\\user.txt",FileMode.Open,FileAccess.Read,FileShare.None);
//创建流读对象,并且对其进行初始化
5.2注册用户
图5.2注册界面
点击登录界面的注册按钮进入注册用户界面,用户名是员工的工号,密码是员工自行设置的。
当注册的是普通用户,则提示当前注册的用户在同级用户的序列号(恭喜,你已成为第x个普通用户);当注册的是管理员,若系统管理员个数已经达到系统预设,则提示注册失败,(管理员个数已达上限)。
收银员的注册同样的设计思路。
用户身份分为普通用户、收银员和管理员。
设计难点:
点击注册按钮注册用户,统计管理员、收银员、普通用户的个数。
解决方法:
intt2=YuanGongSysBLL.RegUserB.RegUserPd(strname);
if(t2>0)
{
MessageBox.Show("该用户已经存在,请重新输入用户名");
UserNameTxT.Text="";
UserPwdTxt.Text="";
return;
}
else
{
YuanGongSysBLL.RegUserB.RegUser(strname,strpass,strstatus);//执行注册操作
MessageBox.Show("恭喜你,你已注册成功!
");
this.Close();
5.3员工管理系统
图5.3员工管理系统
登录完成后进入员工管理系统。
单击菜单栏里的菜单以及菜单项,系统就会执行相应的命令,显示相应的内容。
此模块没有技术上的难点。
5.4用户管理
当管理员进入系统后,可以单击用户管理菜单下的管理用户,对用户的权限、用户名、密码等进行修改、删除等操作。
图5.4用户管理界面
其他类型用户没有进行此操作的权限。
保障了系统信息的保密性
在更改权限功能的设计思路上是一个设计难点,通过用户身份下拉框的索引改变事件可以解决此难点。
(方法不唯一)
5.5员工系统
图5.4员工信息系统界面
点击员工系统可以查询员工信息,员工工号,部门,姓名,性别,籍贯,出生日期,政治面貌还有身份证号码。
员工系统仅限管理员使用。
可以对员工的详细信息进行添加、删除、修改、打印等操作。
更好的满足超市管理的多元化管理需求。
设计难点:
点击修改弹出修改窗口,修改数据。
解决方法:
定义一个公共类。
classmon
{
publicstaticstringUserName="";//登录用户名,用于主界面用户名显示
publicstaticstringDatetime="";
publicstaticstringstrGh="";
publicstaticstringstrbm="";
publicstaticstringstrxm="";
publicstaticstringstrxb="";
publicstaticstringstrjg="";
publicstaticstringstrcsrq="";
publicstaticstringstrzzmm="";
publicstaticstringstrsfzh="";
publicstaticstringstrdh="";
publicstaticstringstrcyyx="";
publicstaticstringstrqq="";
5.6考勤系统
点击考勤员工可以在线考勤。
在线考勤,管理员可以查看已考勤和未考勤的人。
图5.5考勤系统界面
设计难点:
点击考勤系统为员工考勤。
解决方法:
//1.获取考勤人员姓名
//获取选择表下拉框中的下拉项,得到姓名。
DataTablet1=YuanGongSysBLL.AttendenceB.GetName();
for(inti=0;i { CoUserName.Items.Add(t1.Rows[i][0].ToString()); } //3.获取考勤状态(初始化考勤状态) CoAttendenceState.Items.Add("已考勤"); CoAttendenceState.Text=CoAttendenceState.Items[0].ToString(); //4.获取当前考勤时间 5.7请假系统 点击请假系统可以查看请假和销假,如图所示: 请假类别,开始时间和结束时间,准假人,请假人都可以一一查看。 设计难点: 1.在界面左侧不选择请假类别点确定会提示: 抱歉! 您还没选择请假类别,请选择请假类别。 不选择准家人会提示: 抱歉! 您还没选择准假人,请选择请假类别。 2.当选择完后点击确定右面自动弹出请假人的信息,开始时间到结束时间, 以及请假类别和准假人、开始时间和技术时间符合实际方可请假成功。 图5.6请假信息界面 解决方法: 1.if(CoHName.Text=="") { MessageBox.Show("抱歉,你还没有选择请假人姓名! "+Environment.NewLine+"请选择请假人姓名","提示"); return; } if(CoHType.Text=="") { MessageBox.Show("抱歉,你还没选择请假类别"+Environment.NewLine+"请选择请假类别","提示"); return; 2.系统自动从数据库中提取请假人的信息。 SDtPic.Format=DateTimePickerFormat.Custom; SDtPic.CustomFormat="yyyy-MM-dd"; stringstrStime=SDtPic.Text.Trim(); EDtPic.Format=DateTimePickerFormat.Custom; EDtPic.CustomFormat="yyyy-MM-dd"; 5.8工资系统 管理员可以对员工工资进行管理(查询、录入) 图5.7工资系统界面 普通用户只能进行当月工资的查询 管理员单击工资管理按钮就可以弹出工资管理界面,界面如下 图5.8工资添加界面 管理员进入此界面首先要选择录入工资的年份、月份。 当选择年月超过当前实际的年月,则提示选择错误的信息并提供更正措施,同时也不能继续在操作下去(关闭以下控件的可用性)。 输入所有信息完成后。 单击确定按钮确定录入操作,单击重置则清空所有输入的信息。 5.9收银管理 进入此系统、,收银员可以进行商品的销售操作。 选择消费者需要的商品、系统自动显示商品的各种信息、输入购买数量以及实收实收金额、则会自动显示找零金额,操作后的数据与数据库是绑定了的、数据库里的数据会随操作改变而改变。 即保证了数据的紧密性。 图5.8收银系统界面 单击收银系统菜单项进入收银系统如上图, 选择了商品名称后网格里显示选择商品名称所对应的所有商品以及商品信息。 当鼠标单击网格里的单元格时,商品编码下拉框单行显示当前商品名称所对应的商品编码,单价文本框显示当前商品编码所对应的商品单价,库存文本框显示当前商品编码所对应的商品库存量,折扣价文本框显示当前商品编码所对应的商品折扣价。 收银员输入顾客购买的商品数量,实收金额文本框自动显示当前商品编码,商品购买数量所对应的金额。 输入实收金额后找零文本框立刻显示当前应找零的数额。 方便收银员与消费者的交易,减少了运算的过程。 第六章软件测试 6.1测试背景 在设计系统的过程中,存在一些错误是必然的。 对于语句的语法错误,在程序运行时自动提示,并请求立即纠正,因此,这类错误比较容易发现和纠正。 但另一类错误是在程序执行时由于不正确的操作或对某些数据的计算公式的逻辑错误导致的错误结果。 这类错误隐蔽性强,有时会出现,有时又不出现,因此,对这一类动态发生的错误的排查是耗时费力的。 6.2测试目标 如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。 如果测试目的是为了给最终用户提供具有一定可信度的质量评价,那么测试就应该直接针对在实际应用中会经常用到的商业假设。 在谈到软件测试时,许多人都引用GrenfordJ.Myers在《TheArtofSoftwareTesting》一书中的观点: ①软件测试是为了发现错误而执行程序的过程; ②测试是为了证明程序有错,而不是证明程序无错误; ③一个好的测试用例是在于它能发现至今未发现的错误; ④一个成功的测试是发现了至今未发现的错误的测试。 这种观点可以提醒人们测试要以查找错误为中心,而不是为了演示软件的正确功能。 但是仅凭字面意思理解这一观点可能会产生误导,认为发现错误是软件测试的唯一目,查找不出错误的测试就是没有价值的,事实并非如此。 首先,测试并不仅仅是为了要找出错误。 通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。 同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。 其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。 6.3测试计划 通过测试去发现和总结软件开发过程中的技术要和技术难点,以及软件在实际应用中的实用强度,在满足需求规格说明书的同时可以根据自己的创新思维创作出功能更加丰富和实用的软件 6.4测试过程 6.4.1模块式测试 注册模块->登录模块—>用户管理模块—>员工管理模块->考勤模块—>工资管理模块—>收银管理模块—>库存模块—>查询模块—>统计模块—> 图6.1软件模块结构图 6.4.2登录模块 由于登录时输入的情况存在差异,用户有可能输入了错误的用户名与密码,或者错误的用户名和正确的密码等,所以在设计测试用例的时候,主要采用等价类划分与边界值测试的方法 对登陆模块设计的测试用例,包括用例的编号、操作、输入数据、预期结果、实际结果和测试状态。 如表6.1所 表6.1登录模块测试用例 用例编号 操作 输入数据 预期结果 实际结果 测试状态 1-1 用户名、密码、用户身份输入正确,点击登录按钮 用户名: admin; 密码: pass; 用户身份: 管理员 登录成功 登录成功进入主界面 P 1-2 用户名输入正确,密码不正确 用户身份对应,登录按钮 用户名: admin; 密码: 123; 用户身份管理员 登录失败 登录失败 密码错误 无法跳转到主界面 F 1-3 用户名输入错误,密码正确,用户身份正确,登录按钮 用户名: user; 密码: pass; 用户身份管理员 登录失败 登录失败,用户名不存在 F 1-4 用户名、密码、用户身份输入错误,点击登录按钮 用户名: admin; 密码: pass; 用户身份: 普通用户 登录失败 登录失败,用户名不存在 P 1-5 用户名、密码、用户身份输入正确,点击登录按钮 用户名: user; 密码: 123; 用户身份: 收银员 登录成功 登录成功,进入主界面,除了收银系统,其他系统均无操作权限 P 1-6 用户名、密码、用户身份输入正确,点击登录按钮 用户名: abc; 密码: 123; 用户身份: 普通用户 登录成功 登录成功,进入主界面,各个系统均只有浏览权限 P 6.4.3注册模块 注册时存在很多注册操作的潜在需求因素,超市员工管理系统在管理员、收银员、普通用户上都有一定的限制。 这里我为本系统中各个登录身份设置了相应的个数以及操作权限: 管理员3个(拥有最高操作权限),收银员5个(拥有超市收银系统的操作权限),普通用户1000个(只有考勤操作权限、系统功能的查看权限)。 所以在设计测试用例的时候,主要采用等价类划分与边界值测试的方法。 详细如下表6.2 表6.2注册模块测试用例表 用例编号 操作 输入数据 预期结果 实际结果 测试状态 2-1 用户名、密码,用户身份输入为空,点击注册按钮 全部为空 注册失败 用户名或密码不能为空 P 2-2 用户名为空、密码不为空,用户身份不为空点击注册按钮 用户名为: 空, 密码: 123, 用户身份: 管理员 注册失败 用户名不能为空 P 2-3 用户名和密码输入不为空,用户身份输入不为空 用户名为: admin, 密码: pass, 用户身份: 管理员 注册失败 注册成功,关闭注册窗体 P 2-4 输入已经存在的用户名和密码,用户身份 用户名为: admin, 密码: pass, 用户身份: 管理员 注册失败 该用户已经存在 F 2-5 输入用户名和密码、用户身份选择收银员 用户名为: admin, 密码: pass, 用户身份: 收银员 注册成功 注册成功,关闭注册窗体 P 2-6 输入用户名和密码,用户身份选择普通用户 用户名为: chenjia, 密码: 123456, 用户身份: 收银员 注册成功 恭喜,你已成为x个普通用户.关闭注册窗体 P 6.4.4员工管理模块 本模块相当于一个小小的人事管理系统,具有员工信息的查看、添加、修改、删除、打印的功能。 此模块利用软件测试中的等价类划分测试技术进行测试。 如图6.3 图6.3员工信息管理界面 测试用例如表6.3 表6.3员工管理测试用例 用例编号 操作 输入数据 预期结果 实际结果 3-1 点击添加按钮,在添加信息窗体里输入完整信息,点击确定按钮 输入完整信息 添加成功 恭喜,添加成功,关闭添加窗体 3-2 点击添加按钮,在添加信息窗体里输入不完整信息,点击确定按钮 输入不完整信息 添加失败 抱歉,xx不能为空 3-3 当网格里有数据时 点击删除按钮 - 删除成功 删除成功 立即显示操作后的结果 3-4 当网格里没有数据时 点击删除按钮, - 删除失败 删除失败,没有数据,无法删除 3-5 点击修改按钮,在添加信息窗体里输入完整信息,点击确定按钮 输入完整信息 修改成功 修改成功,关闭修
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 超市 管理 系统 项目 设计 说明书
![提示](https://static.bdocx.com/images/bang_tan.gif)