1、课程设计内页样例目 录1 题目背景 12 需求分析 22.1 用户需求 22.2 系统业务流程 23 开发环境简介 33.1 JAVA简介 33.2 MyEclipse简介 33.3 SQL Server 2008简介 33.4 Tomcat 简介 34 概要设计 44.1系统功能模块设计 44.2 系统总体结构图 45 数据库设计 55.1数据库概念结构设计 55.2数据库逻辑结构设计 66 详细设计 96.1用户登录模块 96.2图书入库管理模块 116.3 销售管理模块 117 系统测试 137.1 用户登录模块 137.2 销售管理模块 137.3 入库管理模块 148 结论 169
2、参考文献 171 题目背景现如今图书销售行业发展迅速,大大小小的书店到处可见,特别是一些发展较大的书城采用大规模的连锁经营方式。随着规模的扩大传统的图书管理已经不能适应发展的需要。图书管理工作繁琐,销售频繁,包含大量的信息数据,因此就需要一个完善的图书销售管理系统来实现对这些数据的有效管理。本系统主要任务就是对书店、图书、顾客、销售信息、查询进行统一管理,满足各类用户的需求。本系统在功能上要实现书店进货功能,图书统计功能,书店销售功能等。我通过对世面上的书城如新华书店和学校里的小书店进行了初步的了解,发现其业务主要是集中在对图书的管理和图书的销售上。对图书的管理工作量较大,采用手工的方式还容易
3、出错,并且不能满足顾客对图书的详细的查询功能。本系统在设计中考虑和克服了上诉的诸多问题,增强了实用性。2 需求分析2.1 用户需求要设计一个性能良好的管理系统,明确用户的应用环境对系统的要求是首要的和基本的。本系统从以下三个方面对用户需求进行了分析: 用户的信息需求:销售人员能够通过查询图书销售系统全面掌握本系统各类主体信息,如供应商信息、图书信息、进货信息、退货信息等。 用户的处理要求:当书店发生进货、销售、顾客退货等活动时,销售人员能够对库存图书中相关信息进行添加、删减和修改操作,进货表、销售表以及退货表能自动进行信息更新,同时系统能够根据销售情况输出统计报表。 对系统的适应性、通用性要求
4、:要求系统能够满足大部分书店对图书以及图书周转经营情况的管理需求。2.2 系统业务流程经详细调查后,为开发系统绘制的销售管理系统业务流程图如图 2-1所示:图2-1个体图书批发商图书管理系统流程图3 开发环境简介本系统的开发语言是JAVA,开发环境是MyEclipse 8.6,数据库采用SQL Server 2008,服务器采用Tomcat 7.0。3.1 JAVA简介Java,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、In
5、ternet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。 Java分为三个体系:JavaSE,JavaEE,JavaME。3.2 MyEclipse简介MyEclipse企业级工作平台(MyEclipse Enterprise Workbench称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持 HTML,Struts,JSP,CSS,Javascri
6、pt,Spring,SQL,Hibernate。3.3 SQL Server 2008简介SQL Server 2008出现在微软数据平台愿景上是因为它使得公司可以运行他们最关键任务的应用程序,同时降低了管理数据基础设施和发送观察和信息给所有用户的成本。这个平台有以下特点:可信任的使得公司可以以很高的安全性、可靠性和可扩展性来运行他们最关键任务 的应用程序。 高效的使得公司可以降低开发和管理他们的数据基础设施的时间和成本。智能的提供了一个全面的平台,可以在你的用户需要的时候给他发送观察和信息。3.4 Tomcat 简介Tomcat是Apache 软件基金会(Apache Software Fo
7、undation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。目前最新版本是8.0。4 概要设计4.1系统功能模块设计该系统各主要模块的功能如下:(1)进货。包括采购订货、进货入仓、采购退货、设置退货报警等功能。(2)价格管
8、理。包括设定和修改商品销售价格、设定促销折扣等功能。(3)库存管理。包括库存报表、库存变动、库存盘点录入等功能。(4)出货。包括前台零售、零售管理、零售退货、批发业务、批发退货等功能。(5)财务管理。包括财务管理日报、采购进货付款、批发退货付款、批发业务收款、采购退货收款等功能。(6)客户资料。包括进、销两级客户的管理。4.2 系统总体结构图图4-1 系统总体结构图5 数据库设计5.1数据库概念结构设计销售相关E-R图,如图5-1所示。图5-1 销售相关E-R图入库相关E-R图,如图5-2所示。图5-2 入库相关E-R图5.2数据库逻辑结构设计表5-3图书入库表字段名称字段类型是否必填字段说明
9、IDVARCHAR(30)TRUE入库单号PROVIDERVARCHAR(50)TRUE供应商OPERATORVARCHAR(50)TRUE操作员REBATEFLOATTRUE折扣SUMTOTALMONEYTRUE总计PAYMONEYMONEYTRUE应付金额FACTMONEYMONEYTRUE实付金额INTIMEDATETIMETRUE时间表5-4 入库退货表字段名称字段类型是否必填字段说明CANCELIDVARCHAR(30)TRUE退货单号PROVIDERVARCHAR(50)TRUE供应商OPERATORVARCHAR(30)TRUE操作员REBATEFLOATTRUE折扣SUMTOT
10、ALMONEYTRUE总计PAYMONEYMONEYTRUE应付金额FACTMONEYMONEYTRUE实付金额INTIMEDATETIMETRUE时间表5-5 图书销售表字段名称字段类型是否必填字段说明CANCELIDVARCHAR(30)TRUE销售单号CUSTOMERVARCHAR(30)TRUE客户OPERATORVARCHAR(30)TRUE操作员REBATEFLOATTRUE折扣SUMTOTALMONEYTRUE总计PAYMONEYMONEYTRUE应付金额FACTMONEYMONEYTRUE实付金额INTIMEDATETIMETRUE时间表5-8 图书库存表字段名称字段类型是否必
11、填字段说明MERCHANDISEIDVARCHAR(30)TRUE图书编号STORAGENAMEVARCHAR(30)TRUE仓库名称STORAGENUMFLAOTTRUE库存数量表3-7 供应商信息表字段名称字段类型是否必填字段说明PROVIDERVARCHAR(50)TRUE供应商名称CORPORATIONVARCHAR(30)TRUE法人PRINCIPALVARCHAR(10)FALSE负责人PHONEVARCHAR(30)FALSE联系电话ADDRVARCHAR(50)FALSE联系地址WEBVARCHAR(50)FALSE网址E_MAILVARCHAR(53)FALSE邮箱表3-8
12、图书信息表字段名称字段类型是否必填字段说明IDVARCHAR(30)TRUE图书编号NAMEVARCHAT(50)TRUE图书名称SPECVARCHAR(20)FALSE图书价格SHORTNAMEVARCHAR(10)TRUE助记码DEFAULTPRICEMONEYTRUE默认价格MANUFACTURERVARCHAR(30)FALSE出版商MEMOVARCHAR(100)FALSE备注6 详细设计6.1用户登录模块为了保证系统及信息的安全,防止非法用户进入系统,程序启动后,首先进入系统登录模块验证操作员名称和操作员密码。用户登录模块实现功能:用户需要在文本框中输入操作员名称和操作员密码,系统
13、将输入的名称和密码与数据库中的信息进行匹配,若该操作员名称存在,且密码正确,则取得用户权限,进入系统主界面;若该操作员名称不存在或密码错误,则不可登录本系统,此时将提示错误,并返回登录界面,可选择重新登录或者退出登录界面。用户登录模块流程图,如图6-1:图6-1 用户登录模块流程图用户登录模块结果运行如图6-2所示。图6-2 用户登录模块运行结果关键代码如下: private class BookLoginAction implements ActionListener public void actionPerformed(final ActionEvent e) user = Busine
14、ss.check(username.getText(), new String(password.getPassword();/调用business方法 if (user.getName() != null) /判断用户名是否为null try Main frame = new Main();/登陆成功,创建一个主窗体 frame.setVisible(true);/设置其可见 BookLogin.this.setVisible(false);/设置登录窗体为不显示 catch (Exception ex) ex.printStackTrace(); else JOptionPane.show
15、MessageDialog(null, 请输入正确的用户名和密码!);/弹出提示框 username.setText();/设置用户名输入框为空 password.setText();/设置密码输入框为空 6.2图书入库管理模块入库管理模块功能简述:入库主要是指将即将购进的图书的基本信息录入数据库中;入库退货只要是指已经购进的图书退货给供应商,并将相应的图书的基本信息在数据库中做相应的修改或删除。图书入库管理模块运行结果如图6-3所示。图6-3 图书入库管理模块运行结果6.3 销售管理模块销售管理模块功能简述:该模块分为图书销售管理和销售退货管理两个小模块。图书销售管理模块主要实现对图书销售信
16、息的记录,销售退货管理模块主要处理客户退货信息的管理。图书销售信息管理模块运行结果如图6-4所示。图6-4 图书销售信息管理模块运行结果7 系统测试7.1 用户登录模块用户登录功能测试主要测试登录模块是否能正常工作,正确判断合法用户名和密码及阻止非法用户登录系统。用户登录模块测试用例如表5-1所示。表7-1 用户登录模块测试用例测试编号V1.0-1功能描述用户登录图书管理系统。预设条件用户权限:系统管理员测试场景:用户输入正确的用户名和密码后,方能进入系统进行各种操作。测试方法手工设计人韩冰修订记录2014-7-14序号测试步骤输入检查点测试结果1. 用户输入用户名和密码,点击【确定】按钮。用
17、户名:zhang密码:123确认系统是否能正确判断用户是否存在。通过2. 用户输入用户名和密码,点击【确定】按钮。用户名:zhang密码:zx确认系统是否能正确判断用户是否存在。通过3. 用户输入用户名和密码,点击【确定】按钮。用户名:zx密码:123确认系统是否能正确判断存在用户的密码通过4. 用户输入用户名和密码,点击【确定】按钮。用户名:zx密码:123确认系统是否能正确判断存在用户的密码通过7.2 销售管理模块销售管理模块测试用例主要用来测试系统是否能进行图书销售信息及销售退货信息的正确操作,即操作员可对图书销售信息、销售退货信息等进行增加、修改、删除等操作。入库管理模块测试用例如表5
18、-4所示。表7-2销售管理模块测试用例测试编号V1.0-4功能描述操作员对图书销售信息、销售退货信息等基本信息进行增加、修改、删除等各项操作。预设条件用户权限:系统管理员测试场景:1. 操作员对图书销售信息进行增加、修改、删除等操作。2. 操作员对销售退货信息进行增加、修改、删除等操作。测试方法手工设计人韩冰修订记录序号测试步骤输入检查点测试结果测试场景11.点击菜单项【销售管理】-【图书销售管理】确认系统是否能通过菜单项显示正确的界面。通过2.点击【图书销售】工具栏按钮。确认系统是否能通过工具栏显示正确的界面。通过 3.点击【图书销售管理】界面中的【增加】按钮。输入图书入库基本信息1. 测试
19、【图书销售管理】界面是否能进行正确的标签转换。2. 测试【保存】按钮是否变为可用。3. 检查全部字段是否有数据合法校验。通过4.点击【修改】按钮。修改信息1. 测试系统能否正确判断是否选中修改条目。2. 测试界面是否能正常跳转。3. 检查全部字段是否有数据合法校验。4. 检查【保存】按钮是否变为可用。通过5.点击【删除】按钮1. 测试系统是否能正确判断是否选中修改条目。2. 测试删除结果是否正确。通过7.3 入库管理模块入库管理测试用例主要用来测试系统是否能对图书如库信息及入库退货信息进行正确操作,即操作员可对图书入库信息、入库退货信息进行增加、修改、删除等操作。入库管理模块测试用例如表5-3
20、所示。表7-3入库管理模块测试用例测试编号V1.0-3功能描述操作员对图书入库信息、入库退货信息等基本信息进行增加、修改、删除等各项操作。预设条件用户权限:系统管理员测试场景:1. 操作员对图书入库信息进行增加、修改、删除等操作。2. 操作员对入库退货信息进行增加、修改、删除等操作。测试方法手工设计人修订记录续表7-3 入库管理模块测试用例序号 测试步骤 输入 检查点 测试结果测试场景11.点击菜单项【入库管理】-【图书入库管理】确认系统是否能通过菜单项显示正确的界面。通过2.点击【图书入库】工具栏按钮。确认系统是否能通过工具栏显示正确的界面。通过 3.点击【图书入库管理】界面中的【增加】按钮
21、。输入图书入库基本信息4. 测试【图书入库管理】界面是否能进行正确的标签转换。5. 测试【保存】按钮是否变为可用。6. 检查全部字段是否有数据合法校验。通过4.点击【修改】按钮。修改信息5. 测试系统能否正确判断是否选中修改条目。6. 测试界面是否能正常跳转。7. 检查全部字段是否有数据合法校验。8. 检查【保存】按钮是否变为可用。通过5.点击【删除】按钮3. 测试系统是否能正确判断是否选中修改条目。4. 测试删除结果是否正确。通过8 结论本论文描述了图书销售管理系统的开发的整个完整过程。首先,介绍系统开发的实际意义、实现目标和系统运行环境。接着,按照软件工程的基本思想对系统进行需求分析,考察
22、当前中小型书店的实际运营情况,提出系统的功能性需求和非功能性需求。在需求分析的基础之上,进行了系统的总体设计,介绍系统规划和开发目标以及数据库设计。然后,进行系统的详细设计,详细阐述了各个功能模块的详细设计与实现。最后,对图书销售管理系统进行了详尽的功能性测试,测试系统开发是否满足最初的需求。测试结果表明,系统与期望结果相似,达到了开发的目的。图书销售管理系统通过对书店经营流程的分析,分为基础信息管理、入库管理、销售管理、查询管理、往来帐管理和系统管理六个功能模块,可实现中小型书店的销售过程的系统化、自动化和规范化,更加科学地管理图书的进销存过程,有效地避免了手工管理的一些弊端,提高书店的管理
23、效率,便于书店规模的扩大,有利于进一步提高书店的经营利润。管理方式的转变,使企业能够及时通过计算机管理系统,对整个销售过程进行数据的统计分析,并根据分析结果做出必要的调整,使企业在经济浪潮中占据有利地位,更好地适应市场的发展变化。但是,由于时间比较仓促,加上本人软件设计开发经验不足,因此在分析问题、解决问题时显得不够严密、完善,使得本系统还有许多不足之处,例如未对操作员级别进行详尽划分,使之具有不同的操作权限;对填写基本信息的数据格式验证不严格等,这些问题还有待解决,希望日后等能力有所提高及时间充足时能对系统进行完善。9 参考文献1 明日科技.java 管理信息系统完整项目实例剖析M.北京:人
24、民邮电出版,2005年:33-139.2 求是科技. SQL Server 2000数据库开发技术与工程实践M. 北京:人民邮电出版社,2004年:322-381.3 席庆国,深入体验java项目开发,清华大学出版社,2011年7月,35-39 4 陈小红,尹斌,金枝.基于问题框架的需求建模:一种本体制导的方法J.软件学报.第22卷第2期:177-194.5 覃征,徐文华,韩毅,唐晶. 软件项目管理(第二版)M. 北京:清华大学出版社,2009年:67-214.6 明日科技. Visual C+开发经验技巧宝典M. 北京:人民邮电出版社, 2007年:107-162.7 Walter Savitch. Problem Solving with C+: The Object of Programming(4th Edition)M.北京:清华大学出版社,2003年:134-328.8 金山,林慧.SQL Server 2000/2005数据库开发实例入门与提高M.北京:电子工业出版社,2006年:33-120.
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1