CS图书销售管理系统设计与实现毕业设计.docx
《CS图书销售管理系统设计与实现毕业设计.docx》由会员分享,可在线阅读,更多相关《CS图书销售管理系统设计与实现毕业设计.docx(98页珍藏版)》请在冰点文库上搜索。
CS图书销售管理系统设计与实现毕业设计
毕业设计(论文)任务书
毕业设计(论文)题目:
C-S图书销售管理系统
毕业设计(论文)要求及原始数据(资料):
1.综述编写目的程序的缘由及其所带来的方便性;
2.实地了解大中型书店在日常营业中对图书的销售、管理等方式;
3.精确分析系统流程,同时构建程序框架;
4.熟练掌握C/S程序的编写技术,训练利用Java编写客户端程序的能力;
5.熟练掌握GUI等技术,完成客户端程序与数据库之间信息的传递;
6.训练数据封装能力,减少程序中的冗余代码;
7.深入了解测试程序所用的黑盒法以及白盒法;
8.训练检索文献资料和利用文献资料的能力;
9.训练撰写技术文档与学位论文的能力。
毕业设计(论文)主要内容:
1.综述图书销售管理系统在大中型书店应用的前景;
2.了解编写C/S程序需要的相关技术;
3.熟练运用编写C/S程序的开发环境;
4.精确掌握程序开发需求并设计系统流程图;
5.深入分析系统流程,完成程序概要设计及划分程序模块;
6.熟练运用多种Java技术实现程序中的各个模块并将其整合;
7.熟练掌握测试用例的编写,完成测试,生成测试报告。
学生应交出的设计文件(论文):
1.内容完整、层次清晰、叙述流畅、排版规范的毕业设计论文;
2.包括毕业设计论文、源程序等内容在内的毕业设计电子文档及其它相关材料。
主要参考文献(资料):
[1]葛欣,孟凡荣.使用cU/GUI开发图形用户界面[J].计算机工程与设计,2005
[2]陈一明.SQLServer数据库应用技巧探讨[J].科学技术与工程,2008
[3]张军峰.如何使软件测试更有效[J].电脑知识与技术,2005
[4]王世峰.MVC设计模式的研究与应用[D].中国海洋大学,2006
[5]赵淑菊.JavaGUI事件处理机制之探究[J].济南职业学院学报,2010
[6]吕校春,李玲莉.基于Swing的JavaGUI组件开发[J].机械工程师,2008.
[7]潘红改,李国贞.JavaGUI布局管理方法探讨[J].漯河职业学院学报,2010.
[8]Crosby,PhilipB.QualityisFree.NewYork:
NewAmericanLibrary,MentorBooks,1979.
[9]Chelf,BenandRaoulJetley.“DiagnosingMedicalDeviceSoftwareDefectsUsingStaticAnalysis.”CoverityTechnicalReport.SanFrancisco:
2008.
[10]W.Clay,Richardson,Donald,“Avondolio.TheJavahighclassweavesadistance:
JDK5”,Scientific&TechnologyBookReview,No.3,2006.
[11]AndreaAdamoli,DmtrijsZaparanuks,MilanJovic,MatthiasHauswirth.Automated
GUIperformacetesting.SoftwareQualityJournal,2011
专业班级
软件1007班
学生
于健
要求设计(论文)工作起止日期
2014年3月17日~2014年6月27日
指导教师签字
日期
2014年3月17日
教研室主任审查签字
日期
系主任批准签字
日期
C-S图书销售管理系统
摘 要
随着时代的进步,科技的发展,计算机不但逐渐步入寻常百姓家庭,成为人们日常生活中不可或缺的一部分,而且在工业、农业、商业等多领域起着巨大作用。
计算机的广泛应用对提高经济效益、生活效率、实现管理现代化、科学化、智能化等方面起到了举足轻重的作用,并且取得了显著效果。
基于C/S的图书销售管理系统是专为图书销售单位而设计,它取代了过去会计、出纳的“账本式”记录与管理,在给工作人员带来方便快捷的同时也大大提高了他们的工作效率,加快了管理步伐,避免了账目混乱,任务繁重等问题,符合现代办公的需求。
本系统主要使用Java中的GUI(图形用户界面)和AWT编程,开发环境为Eclipse,数据库采用MySQL5.0。
整体框架采用三层架构模式,即显示层、业务层、数据层,大大降低了程序的耦合性。
系统的主要功能包括:
销售管理、库存管理、书本管理、种类管理、出版社管理五大功能模块,方便快捷地帮助书店管理人员实现了对图书进、存、销三方面的管理。
关键词:
图书;销售管理系统;C/S结构
Booksales&managementsystembasedonC/S
Abstract
Withtherapiddevelopmentofscienceandtechnology,thecomputernotonlygraduallyintotheordinarypeoplefamily,becomeanindispensablepartofPeople'sDailylife,andinmanyfieldssuchasindustry,agriculture,businessplaysabigrole.Computeriswidelyusedtoimprovetheeconomicbenefit,thelifeofefficiency,realizemodernizationmanagement,scientific,intelligent,etchasplayedapivotalrole,andachievedsignificanteffect.
Booksales&managementsystembasedonC/Sisspeciallydesignedforbooksalesunit,ithasreplacedthepastrecordofaccountantandcashier"books"andthemanagement,thestafftobringconvenientatthesametimealsogreatlyimprovetheirworkefficiency,quickenthestepsofthemanagement,toavoidthechaosaccounts,theproblemsuchasonerous,meetingtheneedsofthemodernoffice.
ThissystemismainlyusedinJavaGUI(graphicaluserinterface)andAWTprogramming,developmentenvironmentforEclipse,usingMySQL5.0database.OverallframeworkUSESthethree-tierarchitecturemodel,namelythedisplaylayer,businesslayer,datalayer,greatlyreducesthecouplingoftheprogram.System'smainfeaturesinclude:
salesmanagement,inventorymanagement,booksmanagement,categorymanagement,pressfivebigfunctionmodule,convenientandquicktohelpbookstoremanagersrealizethebooksintomanagement,saveandpin.
Keywords:
Book;Sales&Management;C/Sstructure
1绪论
1.1课题背景
改革开放以来,我国经济迅速发展,科技日益更新,计算机以迅雷不及掩耳之势覆盖全球,大量实用软件更是伴随计算机语言产生而受到众多领域的青睐。
好的管理软件能够把大量的工作人员从繁重的手工工作中解脱出来,提高工作效率并减少错误的发生。
调查发现,目前我国中小型书店仍采用手工方式对图书进行管理记录,不仅工作量大、效率低,而且还容易出现数量不清、账目混乱等问题,与现代办公要求格格不入。
中小型书店最繁重的工作就是图书进、存、销三方面的工作,因此只需要设计一款简单而实用的软件,帮助书店工作人员轻松实现这三方面的工作。
混乱的界面,繁琐的操作不仅难以达到轻松管理的目的,还容易使工作人员情绪暴躁,影响书店效益。
因此,我的目标是做一款界面清晰,操作方便的简单管理软件。
1.2目的和意义
图书销售管理系统开发的目的是为图书销售单位提供图书信息管理和提高图书销售管理工作的效率。
图书销售管理系统是一个图书销售单位不可缺少的部分,它的内容对于图书销售单位的决策者和管理者来说都至关重要,所以图书销售管理系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来人们使用传统人工的方式管理数据信息,这种管理方式存在着许多缺点,如:
效率低、工作量大,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
作为计算机应用的一部分,使用计算机对图书销售信息进行管理,具有手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、寿命长、成本低等。
这些优点能够极大地提高图书销售管理工作的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
1.3开发工具及技术
本系统基于C/S结构设计,采用三层架构体系,编写系统主要用到Java中的GUI(图形用户界面)和AWT编程,开发环境为Eclipse,数据库采用MySQL5.0并以NavicatforMySQL作为辅助工具。
下面分别对C/S模型、三层架构模式、GUI、AWT编程、Eclipse、MySQL5.0数据库和NavicatforMySQL进行简要介绍。
1.3.1开发工具
(1)Eclipse
Eclipse是著名的跨平台的自由集成开发环境(IDE)。
最初主要用来Java语言开发,通过安装不同的插件Eclipse可以支持不同的计算机语言,比如C++和Python等开发工具。
Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。
许多软件开发商以Eclipse为框架开发自己的IDE.
Eclipse最初由OTI和IBM两家公司的IDE产品开发组创建,起始于1999年4月。
IBM提供了最初的Eclipse代码基础,包括Platform、JDT和PDE。
Eclipse项目IBM发起,围绕着Eclipse项目已经发展成为了一个庞大的Eclipse联盟,有150多家软件公司参与到Eclipse项目中,其中包括Borland、RationalSoftware、RedHat及Sybase等。
Eclipse是一个开放源码项目,它其实是VisualAgeforJava的替代品,其界面跟先前的VisualAgeforJava差不多,但由于其开放源码,任何人都可以免费得到,并可以在此基础上开发各自的插件,因此越来越受人们关注。
随后还有包括Oracle在内的许多大公司也纷纷加入了该项目,Eclipse的目标是成为可进行任何语言开发的IDE集成者,使用者只需下载各种语言的插件即可。
(2)MySQL5.0
MySQL5.0是一个关系型数据库管理系统,由瑞典MySQLAB公司开发,目前属于Oracle公司。
Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(RelationalDatabaseManagementSystem:
关系数据库管理系统)应用软件之一。
MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。
MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。
由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。
(3)NavicatforMySQL
NavicatforMySQL是一款强大的MySQL数据库管理和开发工具,它为专业开发者提供了一套强大的足够尖端的工具,但对于新用户仍然易于学习。
NavicatforMySQL基于Windows平台,为MySQL量身订作,提供类似于MySQL的用管理界面工具。
此解决方案的出现,将解放PHP、J2EE等程序员以及数据库设计者、管理者的大脑,降低开发成本,为用户带来更高的开发效率。
NavicatforMySQL使用了极好的图形用户界面(GUI),可以用一种安全和更为容易的方式快速和容易地创建、组织、存取和共享信息。
用户可完全控制MySQL数据库和显示不同的管理资料,包括一个多功能的图形化管理用户和访问权限的管理工具,方便将数据从一个数据库转移到另一个数据库中(LocaltoRemote、RemotetoRemote、RemotetoLocal),进行档案备份。
NavicatforMySQL支援Unicode,以及本地或远程MySQL服务器多连线,用户可浏览数据库、建立和删除数据库、编辑数据、建立或执行SQLqueries、管理用户权限(安全设定)、将数据库备份/复原、汇入/汇出数据(支援CSV,TXT,DBF和XML档案种类)等。
软件与任何MySQL5.0.x伺服器版本兼容,支援Triggers,以及BINARYVARBINARY/BIT数据种类等的规范。
1.3.2开发语言
主要使用Java语言中的GUI(图形用户界面)和AWT(抽象窗口工具包)编程。
(1)GUI
图形用户界面(GraphicalUserInterface,简称GUI,又称图形用户接口),即人机交互图形化用户界面设计,是指采用图形方式显示的计算机操作用户界面。
与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。
(2)AWT
抽象窗口工具包(AbstractWindowingToolkit,缩写为AWT)是Java的平台独立的窗口系统图形和用户界面器件工具包。
AWT是Java基础类(JFC)的一部分,为Java程序提供图形用户界面(GUI)的标准API。
AWT提供了JavaApplet和JavaApplication中可用的用户图形界面GUI中的基本组件(components)。
由于Java是一种独立于平台的程序设计语言,但GUI却往往是依赖于特定平台的,Java采用了相应的技术使得AWT能提供给应用程序独立于机器平台的接口,这保证了同一程序的GUI在不同机器上运行具有类似的外观。
1.3.3开发结构及模式
(1)C/S结构
C/S结构,即大家熟知的客户机和服务器结构。
它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的通讯开销。
目前大多数应用软件系统都是Client/Server形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web和Client/Server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。
这也就是目前应用系统的发展方向。
(2)三层架构模式
三层架构模式即显示层、业务逻辑层、数据层。
其工作模式:
显示层往往面向操作者,主要用来接受数据、传递数据和显示数据;业务逻辑层主要是用来处理显示层接收到的数据和数据库中的数据;数据层主要用来对数据库进行操作,其中包括常见的增、删、改、查等操作。
采用三层架构模式可以大大降低了程序的耦合性,符合现代软件的标准。
1.4软硬件需求
1.4.1硬件需求
电脑:
笔记本电脑或台式电脑
CPU:
Pentium以上
内存:
512M以上
1.4.2软件需求
操作系统版本:
WindowsXP/vista/Win7
开发工具:
Eclipse
开发语言:
Java
2需求分析
2.1可行性分析
可行性研究主要内容是要求以全面、系统的分析为主要方法,经济效益为核心,围绕影响项目的各种因素,运用大量的数据资料论证拟建项目是否可行。
对整个可行性研究提出综合分析评价,指出优缺点和建议以确定该项目是否可行。
2.1.1技术可行性
本系统开发工具是Eclipse和MySQL数据库,开发语言是Java,java是一种面向对象编程语言,简单易学而且灵活方便。
数据库的设计和操作是本系统设计的核心,但在NavicatforMySQL的帮助下能够轻松便捷的对数据库进行操作。
此外,大学期间学习过数据库操作语言,软件测试,UML统一建模语言等课程使系统分析、设计和测试不再成为难题。
因此,完成系统实现在技术上完全具有可行性。
2.1.2经济可行性
开发此项目用到的软件都是开源的,为开发软件节省了大量的金钱,达到了低成本的目的。
另外,本系统对计算机配置的要求不高,几乎每个家庭中可使用的电脑都能满足。
因此,开发该系统在经济上是完全可行的。
2.1.3操作可行性
该系统是本着界面简洁、操作方便的目的进行开发,主要目的是帮助图书销售商对图书进行进、存、销三方面管理。
因此该系统在操作上具有功能简单,操作简洁的优势,完全可行。
2.1.4法律可行性
由于在开发过程中所使用的软件都是开源软件,不存在侵权问题。
此外,开发该系统的目的仅仅是作为一款管理软件应用于图书销售单位,不存在与国家法律不符的目的综上所述,该系统的开发在法律方面也是可行的。
2.2系统流程图
图2.1系统流程图
如图2.1所示,由于系统是C/S模式,所以无需注册等操作,只需要在编程时将用户名和密码设定,如客户对用户名和密码有特殊要求,由编程人员将客户要求的用户名和密码事先输入程序当中,如本系统的用户名和密码都为yujian,该数据已经在数据库的T_USER表事先存好。
如果客户输入错误,则要重新回到登录页面输入正确的账号密码。
如果输入正确,则可以进入用户操作页面进行相应的操作。
在进一系列的操作之后然后点击关闭按钮,即可退出系统。
2.3系统用户用例图
系统只涉及图书的进、存、销三方面的功能,其所对应的功能模块分别是图书管理模块、库存管理模块、销售管理模块。
此外,为方便用户在这三方面的操作更加简洁增加了出版社管理模块,种类管理模块,这样做一方面能够使用户界面简单易用,另一方面能够使用户在主要使用的三个重要界面有更多的选择而不是去输入,减少了错误发生的概率。
管理员即能够正确输入用户名和密码的操作人员,且其享有全部权限。
因此管理员用例图十分清晰明了,如图2.2。
图2.2管理员用例图
图2.2清晰明了的告诉我们用户登录是前提,只有用户经过正确的身份验证才可以操作本系统几个最重要的操作页面。
2.4功能模块需求分析
本系统本着界面简洁大方,操作简单的原则实现以下功能:
1.系统界面清晰分明、简单易用,管理人员能够在短时间内熟练操作。
2.管理员享有销售管理、库存管理、图书管理、出版社管理、种类管理五大权限。
3.尽可能的让用户去选择,而不是输入,减少错误发生的概率。
4.增加主要功能的快捷键,增加操作的简易性。
系统的功能结构图,如图2.3。
图2.3系统功能模块图
从图2.3中可以看到,系统分为六个模块,分别是管理人员登录模块,销售管理模块,入库管理模块,图书管理模块,种类管理模块和出版社管理模块,其中登录模块并不与其它模块相平行,登录模块只是决定操作人员是否有权限去操作其它五大模块。
2.5设计的基本思路
设计思路遵循以下几点:
1.考虑到图书销售单位只是简单的对图书进行管理、记录,因此软件采用C/S结构,C/S结构的优点是客户端响应速度快,能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。
2.采用三层架构模式。
一方面能够使开发人员的逻辑思维清晰,提高软件开发效率,另一方面降低了程序的耦合性,例如本程序如果要开发成为B/S结构只需要改动业务逻辑层即可。
3.模块化设计。
模块化设计要求将整个系统划分成基于小的模块,有利于代码的重载,简化设计和实现过程。
4.效率第一。
设计该系统的目的是让大量工作人员从繁琐的工作中解脱出来,因此本系统必须达到提高工作效率的目的。
5.界面清晰明了,操作简单。
方便用户使用,让用户能够在最短时间轻松方便的适应系统的操作。
7.系统设计不仅要功能完善还要突出重点。
要符合设计需求,在有可能改进的地方进行扩充,使系统更适应用户的需要。
2.6性能需求
2.6.1系统的易操作性
为使工作人员能够轻松操作该系统,需做到以下要求:
1.操作界面不涉及跳转,要操作的界面覆盖已显示的界面。
2.主要功能界面尽可能的让用户去选择,而不是输入。
3.部分系统设计加入自动计算功能,且不可更改。
4.在操作发生错误时出现友好提示。
2.6.2数据的正确性和完整性
1.数据库设计过程中明确哪些数据可以为空,哪些数据不能为空。
2.关系表中的相关数据必须明确统一。
3.具有自动判断功能,如销售数量大于库存数量时应给出友好的错误提示。
4.具有自动加、减、乘功能,保证单价、总量等数据的正确性。
5.交易日期根据系统时间而显示、记录,且不可更改。
2.6.3数据的安全性
只有被授权的管理人员,即知道账户和密码的人才可进入系统。
2.7界面需求
界面设计是整个设计很重要的一部分,好的界面不仅方便管理人员操作,还可以使操作人员有一个阳光的心情,提高工作人员工作效率,因此界面的设计必须满足以下几点要求:
1.简易性
界面的简洁是让用户便于了解,便于使用,并能减少用户发生错误选择的可能性。
2.用户语言
界面中要使用能反应用户本身的语言,而不是程序员的语言。
3.记忆负担最小化
人脑不是电脑,在设计界面时必须要考虑大脑处理信息的限度。
人类的短期记忆极不稳定,且有限,24小时内存在25%的遗忘率。
所以对用户来说,浏览信息要比记忆更加重要。
4.一致性
一致性是每个优秀界面都具备的特点。
界面的结构必须清晰且一致,与客户的需求一致。
5.清楚
视觉上便于理解与使用。
6.用户熟悉程度
用户可通过已掌握的知识来使用界面,但不应超出一般常识。
7.人性化
高效率和用户满意度是人性化的体现。
想用户所想,做用户所做,用户总是按照他们自己的方法理解和使用。
8.安全性
用户做出危险的选择使有信息介入系统的提示。
3系统分析与设计
3.1