小型超市管理系统的设计与实现+蒋丹丹+1106655090+计算机科学与技术信息安全 2.docx
《小型超市管理系统的设计与实现+蒋丹丹+1106655090+计算机科学与技术信息安全 2.docx》由会员分享,可在线阅读,更多相关《小型超市管理系统的设计与实现+蒋丹丹+1106655090+计算机科学与技术信息安全 2.docx(20页珍藏版)》请在冰豆网上搜索。
小型超市管理系统的设计与实现+蒋丹丹+1106655090+计算机科学与技术信息安全2
南阳理工学院本科毕业设计(论文)
小型超市管理系统的设计与实现
DesignandImplementationofSmallSupermarketManagementSystem
学院(系):
计算机与信息工程学院
专业:
计算机科学与技术
学生姓名:
蒋丹丹
学号:
1106655090
指导教师(职称):
张芳(讲师)
评阅教师:
完成日期:
2015年6月
小型超市管理系统的设计与实现
计算机科学与技术专业(信息安全方向)蒋丹丹
[摘要]超市管理系统是一套复杂的综合性信息管理系统。
本文针对目前超市管理系统的有关权限授权和认证问题分析,采用面向对象的开发方法和PHP语言,实现了小型超市管理系统的进销存管理,使得在同一个系统中,不同的使用者操纵不同的功能,做到高效、安全、灵活、合理的办公。
[关键词]进销存;权限;管理
DesignandImplementofSmallSupermaketManagementSystem
ComputerScienceandTechnologyMajorJiangDanDan
Abstract:
Measurethelevelofamodernsupermarket,theinvolvementofthecomputersystemisanimportantsymbol.Supermarketmanagementsystemisacomplexandcomprehensiveinformationmanagementcenter,thispaperiscurrentlyaboutpermissionssupermarketmanagementsystemauthorizationandauthenticationissuesanalysis,usingobject-orienteddevelopmentmethodology,analysisanddesignofthesupermarketmanagementsystemusingPHPlanguagetoachieveasmallsupermarketmanagementinventorymanagementsystem,sothatinthesamesystem,differentusersmanipulatedifferentfunctions,soefficient,secure,flexible,reasonableoffice.
Keywords:
Invoicing;Competence;Management
目录
1前言1
1.1研究背景及发展现状1
1.2研究的目的和意义1
1.3可行性分析1
2系统分析2
2.1功能需求分析2
2.2功能描述2
2.3系统性能分析3
3系统设计3
3.1体系结构3
3.1.1系统软件架构设计3
3.1.2系统功能体系结构4
3.2数据库设计4
3.1.1系统数据流分析4
3.1.2数据字典6
4系统关键技术描述及实现7
4.1开发工具和相关技术简介7
4.2系统主要功能模块的实现7
(1)用户登录模块7
(2)进货管理模块 8
(3)商品管理模块8
(4)出货管理模块9
(5)统计管理模块10
(6)账号管理模块10
(7)会员管理模块11
5系统测试和运行11
5.1概述11
5.2测试方法12
5.3测试内容12
5.4测试技术13
5.5测试用例设计14
结论及尚存在的问题15
参考文献16
致谢17
1前言
1.1研究背景及发展现状
随着时代发展,计算机技术越来越深入各行各业,更多的为广大用户提供了更加方便和周到的服务。
目前,各行各业普遍使用专用系统,其内容范围跨越了教育、科研、文化事业、金融、商业、新闻出版、体育、娱乐等领域,他的用户群很庞大,因此设计并且开发一个专用系统对一个机构(或部门)的发展来说就显的十分重要。
近些年来,随着用户的需求的不断提高及计算机科学的高速发展,尤其是数据库技术的广泛应用,向用户提供的服务将越来越丰富,越来越方便。
对超市而言,管理是必不可缺的管理部分,而采用计算机来管理超市的信息,则大大提高了工作效率,并且节省了大量的时间,节约了人力、物力和财力。
今天,计算机价格已经十分低廉,性能却有了长足的进步。
随着小超市规模的不断发展壮大,商品数量急剧攀升,各种有关商品的信息也如雨后春笋般成倍增长。
超市每时每刻都需要对商品的各种信息进行统计分析。
然而大型的超市管理系统因过于强大的功能而造成操作繁琐从而降低了小超市的工作效率。
1.2研究的目的和意义
随着网络设施和Internet技术的迅猛发展,网络已经渗入到了社会生活各个方面,与此同时,超市管理方式也面临着变革,然而通过网络实现的超市管理方式正展现着自己的魅力与优势,Internet技术的发展与网络设施的普及给超市管理方式的发展提供了一个新颖、舒适的空间。
Internet具有分布性,开放性的特点,现今,基于Internet的超市管理系统已经成为人们的研究热点之一,通过Internet的超市管理方式具有无可比拟的优越性。
它可以将各个环节自动化,简单化,可以有效的屏蔽人工操作活动的可能性,不但能够节省大量的人力,物力和财力以及时间,而且可以提高系统的公平性和安全性。
1.3可行性分析
(1)技术可行性。
在IT行业中从业的工作人员一般都要求懂计算机,具有一定软硬件基础,会使用各种管理软件,熟悉IT商品,所以在新系统投入使用时,只要对员工进行少量的培训,系统的功能和使用方法就基本上能够使系统顺利运行了。
(2)经济可行性。
因为通过网络传递销售信息,可以不受距离的限制,因此可以节约许多的人力和物力,由此可以减少不必要的开支,同时该系统可以提高企业的销售效率,即提高了企业的经济效益,所以从经济上市可行的
(3)操作可行性。
该系统采用Windouws图形界面,是大家所熟知的操作系统,对于用户只需要有基础的计算机知识就可以很轻松上手,而且整个销售系统采用最友好的交互界面,简洁明了,不需要对数据库的知识非常明了。
2系统分析
2.1功能需求分析
该系统主要为中小型超市设计,因此不像大型的超市管理系统功能繁琐,复杂,但也具有一般管理系统所需要的基础功能,首先就是一个简洁的登录界面,方便用户进行系统管理,其实超市管理系统的主要是减轻使用者对商品的分类和处理所做的大量工作,简化操作,节省时间,这就需要对商品有详细的管理,无论是在进货,出库,或者在统计商品销售过程,甚至是后台管理员和会员的管理中,都需要有详细的属性定义。
比如不同的管理员身份有不同的操作权限,登陆进入系统后,在权限范围内可以对各种商品的进库,销售,库存状况进行编辑和管理。
1.从超市需求角度来看
超市通过使用该系统首先达到业务的正常运转,应当具有如下几大功能模块的实现:
进货管理系统,销售管理系统,库存管理系统,系统控制等。
2.从系统的用户角度看
每一个该系统的使用者具有登陆该系统的权限和认证,操作相关业务的权限。
2.2功能描述
用户在进入登录界面,呈现给用户的是账户和密码输入框。
在输入框上会有提示用户输入帐号和密码字样,用户在用键盘输入字符后,输入框的提示信息消失。
用户在登录的时候,后台进行验证,验证成功后会导向到主页。
1.分类管理功能
用户登录以后,在点击分类管理页面中会进入商品的分类管理页面。
用户在输入商品所属类别后点击编辑,商品便会添加到系统中。
2.商品管理功能
用户在登录后,点开商品管理页面后,用户可以在搜索框内输入商品关键字查询商品信息,也可以通过编辑按钮添加商品信息,如分类,条形码,名称,售价,市价,会员优惠等详细信息。
用户输入完信息后后点击编辑按钮,提交操作会在后台执行,当请求完成后,系统会自动刷新商品列表,最新添加的内容就会出现在列表中。
3.进货管理功能
用户在登录到系统后,点击进货管理,就会进入进货管理界面。
此界面可以查看库存状态,也可以查询,添加或删除商品,添加完商品详细信息后点击入库按钮,即可完成商品的进货管理,同时在后台刷新商品列表。
4.出货管理功能
用户在登录到系统后,点击出货管理,就会进入出货管理界面,同时可以查看商品的商品列表和销售状态,以及商品的退货查询。
如有商品需要出库,输入商品条形码及出库数量即可。
6.统计管理功能
用户在统计管理界面,通过商品销售的时间段来查询商品销售状态和进货情况。
除了以上基本功能外,此系统还有以下功能:
(1)超级管理员有添加,删除管理员帐户以及修改密码的功能。
(2)管理员具有编辑会员信息的功能
(3)后台可以管理商品,如商品编辑、添加、删除。
(4)后台有评论的管理,可以进行显示与隐藏、删除等操作
(5)后台附件管理功能,如附件统计、批量删除、删除数据库中没有记录而实际存在的附件、清理冗余附件等。
2.3系统性能分析
对数据的安全性、完整性要求是用户信息保密,只有超级管理员可见(可查),可以任意修改,并且确保数据的安全一致。
信息必须保证其完整性,以防止恶意的删除和修改。
对系统的性能需求主要有可靠性和准确性,系统便于升级和维护,数据库的访问效率高。
3系统设计
3.1体系结构
3.11系统软件架构设计
系统采用非常主流的B/S架构。
采用Windows作为服务器端平台,服务器软件采用Apache、PHP、MySQL、Redis的架构设计。
前台框架采用了Bootstarp框架。
Bootstrap默认的栅格系统为12列,形成一个940px宽的容器,默认没有启用响应式布局特性。
如果加入响应式布局CSS文件,栅格系统会自动根据可视窗口的宽度从724px到1170px进行动态调整。
在可视窗口低于767px宽的情况下,列将不再固定并且会在垂直方向堆叠。
这样的设计保证了Bootstarp能够适应不同的屏幕尺寸。
后台采用了Yaf框架。
Yaf框架使用量非常多,比如新浪微博的音乐电影产品就是使用了这个框架。
这个框架轻量级,功能强大,拥有够定制插件来拦截请求,匹配权限等功能。
存储采用了MySQL数据库和Redis缓存服务器。
将两者在一起能够减少数据库服务器的压力,并且读取速度非常快,因为Redis是基于内存缓存的,外部请求一个Key的时候,Redis自动检测内存中是否有这个Key,如果有,直接返回给用户,无需像数据库一样重新加载到内存中,大大减少了响应的速度。
如果遇到高并发的访问量时,只要不超过服务器的连接数,都能提供毫秒级的服务。
3.1.2系统功能体系结构
该管理系统软件可以对库存商品相关资料进行管理和统计,对商品的销售单和商品的进货单进行录入管理和统计操作;
该管理系统软件可以根据用户的需求对进货、库存、销售情况进行添加,删除,统计,修改,查询等功能,并能打印出详细信息;
该管理系统软件可以为用户提供帐号管理工具,以便于用户对帐号进行管理,具体为添加用户、修改用户密码、删除用户;
该管理系统软件为企业提供人员管理,能够对企业的员工权限进行分类管理,新用户的添加以及删除,修改基本信息等功能。
3.2数据库设计
3.1.1系统数据流分析
图3-1顶层数据流图
采用“自顶而下”的方法绘制出的业务流程图是对现行系统再认识的过程,其目的一方面便于系统分析员快速了解现行系统的业务并与广大的业务人员取得一致意见,另一方面可以在此基础上进行数据流程的分析。
计算机信息系统完成的是数据处理和信息处理的工作,这项工作包含在大量的业务处理过程之中,但并不是所有的业务处理都可以由计算机完成。
所以就有一个从现行业务中抽取能够由计算机系统自动或半自动完成的那一部分业务流程活动的过程,这个抽取过程也是对业务流程图的分析过程。
系统使用者通过此系统的商品的进销存情况进行各种编辑管理,同时打印统计表,以实现对商品的高效,便捷的管理。
详细数据流图如图3-1所示。
管理员对商品库存进行管理和查询请求,可以查询商品的进货情况和销售情况以及对商品情况的统计表,库存管理的细化图如图3-2所示。
图3-20层数据流图
在对商品的库存情况进行管理管理的时候,根据要求的类型进行处理,可以查看商品的进货单和销售单从而了解商品的进货和销售情况,通过对比得出不同商品的销售情况,比如哪种商品销量比较好,哪种商品成本比较高,通过对商品数据的分析,可以分析出应该采取什么样的采购和销售策略。
细化图如图3-3所示。
图3-31层数据流图
在对查询要求的处理过程中那个,通过调用数据库文件可以对商品的进货,销售和统计情况进行详细的查询,同时可以根据查询出的商品统计表对商品的采购和销售做出正确的决策,根据统计出来的数据对不同商品的销售情况进行,分析,以求以最少的进货成本实现最大的收益,细化图如图3-4所示。
图3-41层数据流图
3.1.2数据字典
为了对数据流图中的各个元素做出详细说明,建立了数据字典。
用数据字典描述数据库的设计,便于维护和修改。
数据字典的内容主要是对数据流程图中的数据项、数据结构、数据流、数据存储和处理逻辑等五个方面进行具体的定义。
主要数据流条目说明
(1)库存管理要求=[商品的入库单|商品的出库单]
商品的入库单=商品编号+单据编号+单价+计量单位+金额+数量+进货日期
商品的销售单=计量单位+单据编号+商品编号+数量+单价+金额+销售日期
查询要求=[商品的入库情况|商品的销售情况库存统计情况]
商品的入库情况=商品编号+单据编号+数量+计量单位+金额+单价+进货日期
商品销售情况=商品型号+单据编号+数量+计量单位+金额+单价+销售日期
库存统计表=商品编号+库存编号+库存金额+库存数量
(2)文件条目
文件名:
入库文件
组成:
{单据编号+单位+商品编号+单价+金额+数量+进货日期}
组织:
按商品的单据编号递增顺序排列
文件名:
销售文件
组成:
{单据编号+单位+商品编号+金额+单价+数量+进货日期}
组织:
按商品的单据编号递增顺序排列
文件名:
库存文件
组成:
{商品+数量}
组织:
按商品的单据编号递增顺序排列
4系统关键技术描述及实现
4.1开发工具
本系统采用ZendTechnologies公司开发的PHP语言集成开发环境(IDE)ZendStudio作为开发工具。
除了有强大的PHP开发支持外还支持HTML、CSS、js,但是它只是对PHP语言提供调试支持。
4.2系统主要功能模块的实现
(1)用户登录模块
在进行系统登录过程中,登录模块将调用数据库里的用户数据表,并对用户名和密码,验证码进行验证,如果验证码看不清楚,可以点击验证码进行刷新处理,只有输入了正确的用户名,密码和验证码的系统合法用户后才能成功登陆。
登录界面如图4-1所示。
图4-1用户登录页面图
如果用户名,密码或者验证码输入有误,系统会给出提示,如果看不清楚验证码,点击验证码可以刷新验证码,重新输入即可,对于错误输入系统会给出如图4-2所示提示。
图4-2错误提示图
输入项是用户名,密码和验证码并且都是字符串,最大长度是16个字符,密码以“.”号显示(英文和数字算一个字符,汉字算两个字符)。
⑵进货管理模块
该模块主要是实现进行入库查询、入库管理、进货报表三个功能。
操作员通过入库单输入入库商品信息,可以对信息进行删除,修改操作。
该模块为企业提供整个企业的进货商品的情况查询,也可以进行进货的明细查询。
该报表是将企业的整个进货工作和进货情况以报表的形式显示出来,然后打印出来,给使用者或者是公司里其他与系统无直接关系的负责人看。
该模块的输入项是企业的进货单,其中包括商品型号,单据编号,金额,数量,单价,进货单和进货日期等输入条目。
输入表单如4-3图所示。
图4-3后台数据资料图
(3)商品管理模块
对商品进行编码管理。
在用户按下保存按钮时,将读取存储入库数据表,从而添加该登记入数据库,如果点击取消,该表单的输入操作将被撤消,同时不会将数据存储到数据库。
测试要点是对对商品编码的入库程序进行测试,将测试用例填入表单,并对其进行数据库的数据存储测试,看看所填的数据能否存入数据表中。
入库查询可以对数据库中的数据进行查询操作。
进货报表是对前面所做的测试的数据,以报表形式输出来,看看输出的报表跟测试用例是否相符,相符则功能能够实现,测试成功。
输出页面如图4-4所示。
图4-4商品管理页面图
对于编辑后的入库表和出库单同时可以在数据库中更新修改后的商品入库和进货资料,后台数据库资料如图4-5所示。
图4-5后台数据资料图
(4)出货管理模块
该模块的主要功能是将销售信息写进销售清单,同时对库存数据进行更新,以备用户将来对库存信息和销售信息进行查询或打印。
商品销售的主要功能是对所销售商品的情况进行登记,记录该商品的型号、销售数量、金额、单价、销售时间等和商品有关的信息。
将销售信息录入数据库销售表中,进行销售统计和查询。
销售查询是根据商品的销售情况,按需要对销售情况进行查询。
在该查询模块中,可以按照商品的销售日期、型号等多种方式进行商品销售情况查询。
销售报表是对销售情况进行统计,形成报表,并打印出来。
本模块的数据输入项主要为商品的销售清单,其中包括数量、商品型号、单价、单据编号、计量单位、金额、销售日期退货情况、等相关信息。
前台页面输出如图4-6所示。
图4-6销售管理页面图
(5)统计管理模块
通过对查询销售时间和进货时间对商品进行统计管理。
点击统计管理按钮可以选择对商品销售情况和进货情况进行统计,通过进货时间对进货数据进行统计,如图4-7所示页面。
图4-7统计管理页面图
(6)账号管理模块
在系统实行多用户管理时,本模块将为系统开辟多个系统用户,并能对其进行简单的信息维护,用户名变更和修改,添加一个新的账号,或者对用户账号的密码进行修改操作等,账号管理页面图如图4-8所示。
图4-8账号管理页面图
点击退出按钮则选择退出系统,将关闭整个系统,结束本次使用。
(7)会员管理模块
会员管理模块为客户忠诚度计划的一部分,根据客户的消费情况实行会员制管理,不同的会员等级享受不同的会员折扣,管理员对会员账号有管理权限,可以添加,修改或删除会员信息。
页面图如图4-9所示。
图4-9会员管理页面图
对超市的会员资料比如会员编号,消费金额或者应该享受的折扣金额等信息进行编辑修改后可以同时在更新后的后台数据看到修改后的信息,详细的数据库资料如图4-10所示。
图4-10后台数据资料图
5系统测试和运行
5.1概述
网站测试是网站建设的最后一个环节,也是最重要的一个环节,网站测试是对网站设计功能的一个检测,网站是否能正常运行,所设计的功能是否都已经正常实现,页面之间的链接是否有错误。
总而言之,网站测试是产品展示的最后一个环节,就像是产品最后的质检员一样,检查网站作品是否已经完美的完成是否合格符合要求,所以网站测试变得尤为重要。
现今的发展,网站测试有好多种方法,网站的测试也变得越来越正规。
5.2测试方法
UI测试,UI是对一个系统来是非常重要的,一个好的UI可以让人产生愉悦感,会让用户更加喜欢用这个系统,对于一个工程来说是不可缺少的部分。
所以界面测试就显得尤为重要。
在方法上可以依据设计文档,然后再根据这个页面测试人员可以生成静态的HTML,CSS等甚至还可以生成几套不同的方案来进行。
主要包括以下几个方面的内容:
导航条位置和站点地图是否可以导航、是否合理等,内容布局是否正确,是否合理,背景/色调是否正确、是否美观,以及是否与用户需求相符;页面在窗口中的显示是否美观、正确(在调整浏览器窗口大小时,屏幕刷新是否正确)表单格式,样式大小,是否对提交的数据进行验证等,连接的位置、形式是否容易理解等。
5.3测试内容
可能有些人会误认为网站测试其实是很简单的事情,无非就是随便点击看看网页能否正常打开,然后看看网页上是不是有错别字就可以。
其实这是针对于一些小的企业网站来说的,这是因为小功能简单内容也不多。
但是对于常规的企业网站而言,这样简单而粗陋的网站测试方法就不可行了。
网站测试大致需要历经以下四个测试环节:
第一是功能测试,就是测试一下网站功能是否已经实现;第二是兼容性测试,测试的目的是网站在不同浏览器、不同操作系统、不同浏览平台下网站的前端表现是否一致;第三是压力测试,100个同时访问网站和1000个人同时访问网站,系统的承压能力肯定不一样;第四是安全测试,即模拟攻击环境下,网站是不是依旧可以正常访问。
5.4测试技术
测试技术分为两类,黑盒和白盒。
1、黑盒测试,顾名思义,就是不需要看网站的代码,而直接进行功能性的测试,这类测试时网站测试的最基本的一种方式。
通过测试能看到网站哪些功能和设计的要求不符,从而要求技术去修改完善相关功能。
“黑盒”法是穷举输入测试,只有把所有可能的输入都作为测试情况使用,才能以这种方法查出程序中所有的错误。
2、白盒测试,你清楚程序的流程时,用不同的数据测试你程序的代码,验证程序的正确性,有:
条件测试,路径测试,条件组合,极限测试等。
这类测试会针对于程序的不同模块来进行的。
完善的白盒测试会把代码一定条件下会出现的bug测出来,避免了软件交付后出现的问题。
这一阶段测试以软件开发人员为主。
5.5测试用例设计
添加一个账户权限为普通管理员,打开数据库文件,即可在在后台数据库看到添加后的管理员的详细信息如图5-1所示。
图5-1后台数据资料图
为商品添加种类也可以在数据库文件中查看到商品详细信息如种类和状态等,详细资料如图如图5-2所示。
图5-2后台数据资料图
系统的测试用例如表5-3所示。
表5-3测试用例表
输入数据
预期结果
实际结果
用户名:
admin密码:
admin
进入系统主页面
成功进入系统主页面
用户名:
张三密码:
123
进入系统主页面
成功进入系统主页面
用户名:
李四密码:
123
进入系统主页面
成功进入系统主页面
为李四分配进货管理专员角色,再为李四分配机构维护资源
李四具有进货管理专员的所有权限和机构维护资源
成功看到李四具有进货管理专员的所有权限和机构维护资源
为张三分配商品管理专员角色,再为李四分配员工维护资源
张三具有商品管理专员的所有权限和员工维护资源
成功看到张三具有商品管理专员的所有权限和员工维护资源
结论及尚存在的问题
本系统的设计目标是简化商品管理和商品销售的工作量,从而提高超市的工作效率并且降低成本,同时满足用户及时沟通需要和方便使用者对超市人员的管理。
为了保证本系统操作的方便性,将该系统进和货库存自动化和智能化,在大大降低超市商品的采购成本的同时随之可以适量的降低商品的销售价格,使顾客可以从中得到实惠,从而吸引更多的顾客,而且超市人员的管理也更加的正规化,调动起了超市人员工作的积极性。
在开发的过程中还是会存在一定的问题,比如界面不够美观,另外在开发的过程中,也发现了一些新的功能和方法,但是很遗憾没能在有限时间内完成全部,而且随着计算机技术的大众化和互连