超市管理系统设计报告.docx
- 文档编号:30275844
- 上传时间:2023-08-13
- 格式:DOCX
- 页数:26
- 大小:1.60MB
超市管理系统设计报告.docx
《超市管理系统设计报告.docx》由会员分享,可在线阅读,更多相关《超市管理系统设计报告.docx(26页珍藏版)》请在冰豆网上搜索。
超市管理系统设计报告
超市管理信息系统分析与设计
摘要
随着小超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。
超市时时刻刻都需要对商品各种信息进行统计分析。
而大型的超市管理系统功能过于强大而造成操作繁琐降低了小超市的工作效率。
超市管理系统是市场上最流行的超市上常用的系统之一,它主要包含以下几个模块:
系统权限的设定、原始数据录入、数据的汇总及查询等。
从而,实现对进货、销售及员工信息等实现全面、动态、及时的管理。
本文系统的分析了软件开发的背景以过程;首先介绍了软件的开发环境,其次介绍了本软件的详细设计过程:
数据库的设计、各个模块的设计和实现,以及具体界面的设计和功能。
关键词:
超市,管理信息系统
1.系统概述
1.1现状分析
随着计算机技术的发展,一个崭新的信息化的世界已经展现在我们眼前。
如今,你可以随处看到很多不同种类的信息管理系统。
超市的发展,其经营管理也变得愈加复杂,早期的售货员站柜台的形式早已不能满足现有销售也的发展,这样就迫切地需要引入新的管理技术。
由于所掌握的物资种类众多,订货、管理、发放的渠道各有差异,各类统计报表繁多,因此仓库的库存管理必须编制一套库存管理信息系统,实现计算机化操作。
所以说,一个成功的现代化超市需要一个现代的管理系统来保证企业产品的精细化管理,保证最大化利用资源。
1.2系统总目标
超市管理的主要目标就是建立一个效率高、无差错、通用性好又节时的超市管理系统。
通过对超市所有出入库活动的管理和控制及对仓库数据有效地统计和分析,以保证超市的物流,使决策人员及早发现问题,采取相应措施,调整库存结构缩短储备周期,加速资金周转,最大限度的降低库存占用,随着计算机技术的不断发展,计算机的使用已经十分普遍,每个企业都拥有计算机。
使用计算机对库存信息进行管理有着很多人工记录所无法比拟的优点,比如查询快捷、信息安全性高、添加删除方便等。
使用的这套库存管理系统是超市经营管理活动中的核心,此系统必须可以用来控制合理的库存费用、适时适量的库存数量,使企业生产活动效率最大化。
本库存管理系统是一套对货品入库、出库、库存进行全面管理的系统。
在管理内容上,它的主要功能包括:
进货管理、出货管理、统计报表、系统管理。
2.系统分析
2.1可行性分析
2.1.1技术可行性
该系统用SQLServer2008和MicrosoftVisualStudio2010做的,所以,只要在windows环境下安装SQLServer2008和MicrosoftVisualStudio2010就可运行该程序。
我们在上一学期已经掌握了SQLServer2008的用法,能够进行数据库的构建,随着深入的学习,我们能够具备开发这款软件系统的知识,综上,我们在技术上是可行的。
2.1.2经济可行性分析
我们的开发人员都是学生,开发这款软件是为了提高自己的能力,我们有充分的时间完成项目开发,我们也不需要额外开销,并不需要担心资金问题,所以,我们在经济上是可行的。
2.2系统需求分析
需求分析是系统开发的首要步骤,也是直接影响系统整体性能和功能的关键步骤。
系统的需求分析主要是对系统的可行性、性能和功能进行具体地分析。
不合理的需求分析,会使系统的开发环节出现许多错误和走许多弯路,导致系统开发时间长,效率低,系统质量受到影响。
2.2.1功能需求分析
功能分析:
系统具有仓库管理系统的基本功能。
系统分为两个部分,一个是用户部分:
用户可以使用用户名和密码登录系统进行操作。
一个是系统部分:
这部分包括对商品的入库、出库操作,在库货物查询等功能。
模块分析:
登录模块:
仓库管理人员进入系统必须经过登录。
添加商品信息模块:
新入库的商品,在进入仓库之前,必须经过仓库管理人员的进行添加。
入库模块:
仓库中已有的商品才能进行的操作,主要是入库数量上的变化。
商品类别管理模块:
商品类别来区分各种商品,将商品分类管理。
系统性能分析:
本系统操作简单,界面美观,使用本系统的超市管理人员不需要掌握太多的专业知识便可熟练使用。
系统能够迅速的将超市管理人员对商品信息的操作(包括商品的入库、出库,商品信息的修改和删除,商品类别的添加和删除等)显示在对应的页面中,达到“即时操作,即时显示”的效果。
系统功能完善,包括了一般超市管理系统的所有功能,完全能够满足用户的需要。
2.2.2业务流程图
图1业务流程图
2.3数据字典
数据流名:
商品信息。
说明:
商品信息的存储并对其进行编码,来区别各类商品。
数据流来源:
人工输入。
数据流去向:
数据库并各种报表打印。
数据流组成:
{货号,品名,拼音编码,规格,单位,产地,类别,进货价,销售价。
}
数据元素:
供货商资料。
组成:
{供货商号,拼音编码,简称,名称,地址,联系人,业务员,备注。
}
数据流名:
客户资料。
说明:
各大客户资料。
数据流来源:
人工输入。
数据流去向:
数据库并报表打印。
数据流组成:
{客户编号,拼音编码,简称,名称,联系人,地址,邮编,}
数据元素:
仓库信息。
组成:
{仓库号,仓库名,类别,管理员编号,备注。
}
数据元素名:
采购订单。
说明:
用于录入企业的采购订单。
组成:
{编号,供货商号,订购日期,有效起日,有效之止日,业务员,制单员,税价合计,扣率,税率,不含税价,税额,备注。
}
数据元素名:
进货单。
说明:
用于录入企业的进货单。
组成:
{编号,供货商号,进货日期,业务员,制单员,验收员,税价合计,不含税价,税额,订单号,备注。
}
数据元素名:
销售明细。
说明:
销售单的从表。
组成:
{编号,销售单号,货号,销售数量,销售价,税价合计,扣率,税率,不含税价,税额,仓库号,备注。
}
数据元素名:
收款单。
说明:
用于录入企业收回货款的凭证和销售应收款。
组成:
{编号,发票号,填票日期,销售单号,货号,客户编号,数量,销售价,金额,收款日期,详细说明,销售日期,状态,减预收,备注。
}
2.4数据流图
图2数据流顶层图
图3数据流一层图
采购数据流图
仓储数据流图
销售数据流图
3.系统设计
3.1总体结构设计
本系统包含了超市管理系统所需要的基本功能,能够满足一般用户对于仓库管理的需要,能有效的提高超市管理人员的工作效率。
根据系统的需求分析,系统大体分为以下几个模块:
系统管理、添加商品信息模块、出库模块、入库模块、信息查询模块。
其中,各个模块又有不同的子模块
图4组织结构图
3.2数据库设计
3.2.1概念结构设计
用于信息世界的建模,是现实世界到信息世界的第一层抽象。
一般采用实体-联系方法,即E-R图。
根据数据库需求分析规划出的实体有:
库存类型实体、商品类型实体、用户信息实体、销售单实体、账单实体等。
各个实体具体的实体属性图如下:
图5总E-R图
图6库存E-R图
图7商品信息E-R图
图8用户E-R图
3.2.2逻辑结构设计
采购管理(商品编号,商品名称,价格,供应商,供应商名称,供应商编号,联系电话)
销售管理(商品编号,商品名称,数量,价格,销售时间)
库存管理(供应商编号,供应商名称,联系电话,供应商,价格,商品编号,商品名称)
商品信息(商品名称,商品编号,价格,成本)
员工信息(员工号,姓名,年龄,性别,职位,联系电话)
根据数据库概念结构设计,将数据库概念结构转化为SQLServer2008所支持的实际数据模型,即数据库的逻辑结构。
其各个数据库表的设计结果如下:
图9管理员信息表
图10货品信息表
图11库存信息查询表
图12仓库人员信息添加管理
图13入库单信息表
4.系统实现
系统的设计是系统开发中的一个重要环节。
本章将主要介绍一个基于B/S架构的超市管理系统的总体结构、系统架构和数据库设计。
总体结构主要介绍了各个模块之间的关系,数据库设计主要说明了表的建立和数据之间的关系。
本系统包含了仓库管理系统所需要的基本功能,能够满足一般用户对于仓库管理的需要,能有效的提高仓库管理人员的工作效率。
4.1主界面模块
当仓库管理人员用正确的用户名和密码登录进系统之后,即可直接进入到主界面。
在主界面上,有各个子功能界面的超链接选项,包括添加超市货品、管理超市货品、查询货品、添加用户。
当管理人员完成工作后,即可选择退出。
图14主界面图
代码:
4.2各模块实现
4.2.1登陆模块
本系统是一个单用户系统。
仓库管理人员使用用户名和密码登入系统之后,可进入主界面对系统进行操作。
界面:
图15登陆模块图
代码:
if(this.TextBox1.Text==""||this.TextBox2.Text=="")
{
Response.Write("");
}
else
{
SqlConnectioncon=newSqlConnection("DataSource=(local);InitialCatalog=chgl;IntegratedSecurity=True");//连接数据库
//SqlConnectioncon=newSqlConnection("server=.;database=mysys;uid=sa;pwd=sa;");//连接数据库
stringstr="select*fromadmincsglwhereusername='"+TextBox1.Text+"'andpassword='"+TextBox2.Text+"'";
con.Open();//打开连接
SqlCommandcmd=newSqlCommand(str,con);//创建Command对象
SqlDataReaderdr=cmd.ExecuteReader();//执行ExecuteReader()方法
if(dr.Read())
{
Session["username"]=TextBox1.Text;
Response.Redirect("main.aspx");
}
else
{
Response.Write("");
}
dr.Close();
con.Close();
}
4.2.2添加模块:
当货物进入超市仓库时,超市管理人员可以使用主界面上的“添加超市货品”操作选项进入商品入库界面。
在这个界面中,仓库管理人员可以看到现有商品的所有信息,并且可以在相应的商品信息后面点击入库操作选项进行商品的入库操作。
界面:
图16添加模块图
代码:
ConnectionString="<%$ConnectionStrings:
chglConnectionString5%>"
DeleteCommand="DELETEFROM[product]WHERE[procode]=@procode"
InsertCommand="INSERTINTO[product]([procode],[proname],[pronum],[proprice])VALUES(@procode,@proname,@pronum,@proprice)"
SelectCommand="SELECT*FROM[product]"
UpdateCommand="UPDATE[product]SET[proname]=@proname,[pronum]=@pronum,[proprice]=@propriceWHERE[procode]=@procode">
4.2.3查询模块:
本模块主要功能为商品信息查询。
超市管理人员进入该页面后,可以在本模块的界面中查询到所有商品的信息,并且还有关于商品出库和修改商品信息操作的超链接选项。
界面:
图17查询模块图
代码:
SqlConnectioncon=newSqlConnection("DataSource=(local);InitialCatalog=chgl;IntegratedSecurity=True");
con.Open();
stringstr="select*fromproductwhereproname='"+TextBox1.Text+"'";
SqlDataAdaptersda=newSqlDataAdapter(str,con);
DataSetds=newDataSet();
sda.Fill(ds);
this.GridView1.DataSource=ds;
this.GridView1.DataBind();
con.Close();
图18查询模块图
代码:
SqlConnectioncon=newSqlConnection("DataSource=(local);InitialCatalog=chgl;IntegratedSecurity=True");
con.Open();
stringstr="select*from超市货品信息查询表where编号='"+TextBox1.Text+"'";
SqlDataAdaptersda=newSqlDataAdapter(str,con);
DataSetds=newDataSet();
sda.Fill(ds);
this.GridView1.DataSource=ds;
this.GridView1.DataBind();
con.Close();
4.2.4管理模块:
当超市管理人员需要对在库商品进行管理时,只需在管理界面的相应的商品信息后进行操作即可。
仓库管理人员可以看到现有商品的所有信息,进行管理。
界面:
图19商品管理模块图
代码:
ConnectionString="<%$ConnectionStrings:
chglConnectionString4%>"
DeleteCommand="DELETEFROM[product]WHERE[procode]=@procode"
InsertCommand="INSERTINTO[product]([procode],[proname],[pronum],[proprice])VALUES(@procode,@proname,@pronum,@proprice)"
SelectCommand="SELECT*FROM[product]"
UpdateCommand="UPDATE[product]SET[proname]=@proname,[pronum]=@pronum,[proprice]=@propriceWHERE[procode]=@procode">
4.2.5用户添加模块:
当有新的用户注册时,仓库管理人员需点击主界面的“添加用户”选项。
在进行信息添加的操作过程中,填写信息,选择注册。
当信息填写完毕之后,点击确定将信息进行注册。
界面:
图20用户添加模块图
代码:
stringusername1=TextBox1.Text;
stringpassword1=TextBox2.Text;
stringage1=TextBox4.Text;
stringemail1=TextBox5.Text;
stringaihao1=DropDownList1.Text;
SqlConnectioncon=newSqlConnection("DataSource=(local);InitialCatalog=chgl;IntegratedSecurity=True");//连接数据库
stringinsertString="insertintoadmincsgl(username,password,age,email,aihao)values('"+username1+"','"+password1+"','"+age1+"','"+email1+"','"+aihao1+"')";
con.Open();//打开连接
SqlCommandcmd=newSqlCommand(insertString,con);//创建Command对象
SqlDataReaderdr=cmd.ExecuteReader();//执行ExecuteReader()方法
Response.Write("");
con.Close();
4.2.6退出模块:
图21退出模块
代码:
Session.Abandon();
Response.Write("");
7.系统实施
7.1系统测试
系统测试是将经过测试的子系统装配成一个完整系统来测试。
它是检验系统是否确实能提供系统方案说明书中指定功能的有效方法为了发现缺陷并度量产品质量,按照系统的功能和性能需求进行的测试一般使用黑盒测试技术一般由独立的测试人员完成对于模块之间交互性比较强的软件,还会有单独的集成测试,用来发现模块接口之间的错误。
系统测试的对象是整个应用软件系统,包括需求分析、系统总体设计、详细设计各阶段的文档以及源程序。
系统测试的目的是精心选取那些易于发生错误的测试数据,以十分挑剔的态度,找出软件中的错误,并改正错误。
7.2测试原则:
1)由于这是个人力量开发的系统,所以测试的主要任务还是在开发人员身上,为避免这种自己开发自己测试的不足,可考虑请别人对系统进行试用。
2)设计测试方案时,不仅要包括确定的输入数据,而且应包括从系统功能出发,预期的测试结果,然后将运行结果与预期测试结果进行对比以发现有无错误。
3)测试用例不仅要包括合理有效的输入数据,还要包括无效的或不合理的输入数据。
4)不仅要检验软件是否做了该做的事,还要检查软件是否同时作了不该做的事。
5)保留测试用例,作为软件文档的组成部分。
7.3测试计划:
第一步:
模块测试。
这一部分工作主要在做项目的过程中完成,以保证每个模块作为一个独立单元能够正确运行。
第二步:
组装测试。
在各个模块完成后,再将各相关模块连接起来,进行组合测试,以保证各单元模块能从整体上协调运行。
第三步:
经过组装测试,软件已装配完毕,接下去进行确认测试,进一步检查软件是否达到预期的全部要求,这一阶段除对整个软件的功能、性能进行测试外,还要对配置进行审查,看构件的全部构成成分是否齐全,质量是否合乎要求。
第四步:
经过确认测试后,软件已经测试完毕,然而软件只是信息系统的一个组成部分,还要与系统中的其分部分配套运行,所以最后要进行系统测试。
就是将信息系统的所有组成部分包括软件、硬件、用户以及环境等综合在一起进行测试,以保证系统的各组成部分协调运行。
系统测试要在系统的实际运行环境现场,在用户的直接参与下进行。
7.4测试概述:
对于系统是否能完成预定的功能,我们对系统进行了如下的总体系统测试:
首先是系统的用户管理。
其中对于设定用户我们选取了三组数据,分别为用户名空、密码空、以及输入密码不统一。
通过三组数据的测试,已经达到我们预期功能。
在出错情况下会出现对话框提示。
用正确用户名及密码重新登陆,系统显示身份验证正确,安全进入。
接着是对三个主要模块库存管理、采购管理、销售管理的测试。
这是整个库存管理系统的关键部分。
具体测试参见设计小组中各人模块中的详细测试。
为使用户使用方便本系统添加了附项分类。
经办人员管理中调用经办人员表,从这张表可以清楚出入库的经办人员名单,对于货品出入库后所产生的问题,能够迅速根据此表明确责任。
供货单位管理中调用了供货单位表,从此表可以看出入库货品中供货单位的情况。
对于入库货品来源明确。
也同时可以保证货品质量。
进货单位管理中调用了进货单位表,从此表可以看出出库货品中进货单位的情况。
对于出库货品去处明确。
也同时可以保证货款及时回收。
仓库信息管理中调用仓库信息表。
从此表可以看到仓库分类,对于货品仓储地点清楚。
财务处理:
为了更好的使用系统,并使财务部能够使用。
本系统添加了打印功能。
在该功能中可以打印报表:
入库单、出库单、经办人以及损益表。
除此之外,为方便使用,还将常用的按钮放置在主窗体上。
为使系统数据安全,我们特意增添了数据备份、数据恢复功能。
由数据备份功能,用户可以将数据备份在存储设备上。
数据恢复功能是在系统出现错乱时,能恢复到之前的数据。
7.5详细测试说明:
以下是对库存管理、采购管理和销售管理三大模块功能测试的具体说明。
库存管理模块下设有货品信息处理、货品库存、超储货品和短线货品等四方面的功能。
进入货品信息管理下的货品信息,调出数据库中的货品信息表,由此可得到库中货品的具体信息情况;而货品维护则是当货品入库和货品出库发生时,货品基本信息库要在第一时间得到双方面的更新,这就是此窗体的功能;货品库存调用的是数据库中的货品库存表,从而我们可以得知库存货品的编码、名称、期初库存、本期出库、本期入库等具体库存货品信息,以便于查询和管理;超储货品调用了数据库中的超储货品表,从而可以得知是哪些货品超储了,货品的编码、名称、存放仓库等详细信息,以便于下次销售;短线货品是在货品销售后,若没有达到安全库存的要求,则要进行采购,从此窗体调出的短线货品表可以得知那些短线货品的具体信息,便于立即采购;以上是对库存管理模块各功能测试的具体说明。
总结
两周的面向对象课程设计,让我学到了很多实际运用的技能!
在实训中的第一步是编写功能较为单一的小程序,虽然是小程序,但所用的知识却都是我们本学期学习的重点知识。
在做题的过程中让我把这些知识复习了一遍,强化了知识。
平时我们学习面向对象几乎都是为了考试或者做一些比较常规的题目,然而,这次给了我们的将所学知识运用于解决实际问题的机会,让人更有激情,这就是编写软件的在雏形,也让我们感受到了编写软件程序的乐趣。
但是不仅仅是如此,更为重要的是在运用所学知识的过程中,记住这些知识,并能够广泛的运用!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 超市 管理 系统 设计 报告