目录
1 引言
科学技术是第一生产力。时间已经进入21世纪,科技的发展对我们的生产生活都带来了巨大的改变。科技不再是一个遥远而陌生的名词,尤其是互联网大范围的普及,科技应用逐渐由军事化,工业化转变为更加亲民,更加便捷的市场化,日常化,科技开始大范围的应用于生活生产中。伴随着互联网的发展,大量的信息每时每刻都在交汇,并且产生新的数据。人们开始利用计算机来处理这些繁杂的数据,以减轻人工的工作量,达到降低成本,节约时间的目的。计算机的普及化,使得数据处理不再是大型公司机构的特权,数据处理渐渐由大规模的,集成的数据处理,分析等转向更加具体,细化的处理。例如,在对具体事务的分析上,大数据分析能够有效帮助我们;再比如数据分析在工作流的应用…。近年来随着电商的崛起,人们网上消费的次数变得越来越频繁,伴随而来的是在售后方面的巨大的缺失。【1】
对于售后,仅仅靠人工服务,是远远不够的,人们开始渴求一种能够方便快捷,取代人工服务,有效解决售后的方法。计算机开始进入了人们的视线,人们开始大范围使用计算机来解决问题,简化人工操作,实现更加智能化,高效率的管理。由此产生了计算机为中心,链接互联网,广泛采用数据库管理系统的管理信息系统为背景的大型交易处理和工作流管理中的应用。
我国信息产业、企业售后服务发展迅速,电商的发展超出了所有人都想象,与此同时也带来了诸多的问题。飞速发展的交易额,带来了大量的GDP增长,然而光鲜的背后是每天无数客服手忙脚乱的为顾客服务。传统管理方式需要大量人工,费时费力,成本较高,已不适应日新月异的现代社会节奏。这种国情下,采用新技术,改善传统生产经营模式,提高服务水平质量,增进管理层管理能力势在必行,这也是对国家发展规划政策的积极响应。企业售后服务管理信息化能够有效提高售后工作效率,减少劳动力损耗,降低企业成本,从而达到更多盈利的目的。这样,企业售后服务管理的信息化势在必行,改变传统的管理格局势在必行。
售后服务是企业服务的重要组成部分,是商品销售后提供的各项服务活动。售后的好坏,决定了顾客是否会再次购买的意愿。良好的售后服务能够让你在众多企业中脱颖而出,成为其中的佼佼者,不至于被大浪淘沙淘汰。售后服务也可以作为企业的一个主打服务。改革开放以后人民生活物质极大丰富,人们更多的有闲资用来购物,在比较价格之后,顾客们更喜欢拥有良好售后服务的商家。人们在购物时倾向于选择名牌,名牌良好的售后服务也是其中的一个关键因素。售后服务现在作为销售中最重要的部分之一,已经成为保持或扩大市场份额的关键(如疏达,天猫、京东等)。售后服务质量将影响顾客满意度。在采购中,保证货物,售后服务等相关规定将使客户摆脱疑虑、摆动的形式,决定来决定购买的产品,优质的售后服务是品牌经济的产物,在当今激烈的市场竞争中,消费者权利意识的不断提高,315晚会的不断曝光,消费观念的改变,良好的售后服务,不仅是企业产品的质量,而且客户可以得到真正的和完全满意。良好的售后服务不仅能够有效提高企业文化形象,更是对客户以及顾客的的庄严承诺。企业通过对产品建立有效的跟踪售后服务,不仅能够完成对顾客的承诺,更关键的是,企业可以利用这个机会,完成对企业产品的监控,知道自己的产品在那些地方容易出现问题,并对此进行改善,做到有的放矢,不至于盲目乱撞。在市场经济条件下,竞争如此激烈,许多公司每天都在建立,许多公司都被淘汰了。一个公司如果想要在竞争如此激烈的今天立足,就必须有自己的特色,也可以说是自己的企业文化。售后服务的良好就可以作为一个良好的文化点。一个公司要强大,产品的售后服务是一个非 常重要的环节,企业可以因此做成一个品牌,形成品牌效应。
系统开发的总体任务是完成企业售后服务管理的系统化、规范化、自动化和智能化,从而达到提高信息管理效率的目的。
计算机的应用已经成为在中国越来越普遍。改革开放后,中国已经和计算机用户的应用水平不断提高,特别是互联网、通信、多媒体等领域的应用,取得了良好的效果。从最初的军事科学研究和应用推广到社会的各个领域,其应用领域,已形成规模庞大的计算机产业,因此是世界技术的进步,导致了一场深刻的社会变革,计算机已经在普通学校,企事业单位,进入普通百姓家,成为信息社会不可缺少的工具。【2】
现在我国的企业售后服务的管理水平还比较落后,未能形成一个良好的管理体系,管理依赖于人工而非制度,高层对于公司有着一言堂的权力,变相走了古代封建社会的老路子。这样的机制经过几千年的历史,已被证明不再适应现今的社会。它浪费了大量的人力和物力,对于人力物力没能做到物尽其用。虽然我国是一个人口大国,但是对于繁琐的事情,交给计算机来解决,可以解放更多的人力物力来投放到对于新中国的建设中去。在信息时代,计算机和互联网的普及使得这种传统的管理方式必然被以计算机为基础的信息管理所取代。这是时代发展带来的必然结果。幸运的是,我国更多的管理层已经看到了这点,并对于此已经做出了更多的改变。
在现代生活中,售后管理的范围越来越广,由于顾客对自身生活质量要求越来越高,售后管理业必须随着人们生活水平的提高而改变。伴随着购物规模的不断扩大,售后的各项反馈、投诉,对售后的要求等都将越来越复杂,售后管理系统的自身的管理工作量也将越来越大。人工服务不能做到及时有效的反映,以及做出正确的应对以及保存,迫切需要一个系统来解决这些问题。本项目的出发点力在解决这一困难! 【3】
我们希望建立一个售后管理系统,该系统将能够:
(1)建立一个具有界面简洁明了,操作简单易行的售后管理系统;
(2)能够提供一种更加便捷、高效的售后管理方式;
(3)实现对顾客信息的存储;
(4)实现对顾客反映情况的即时保存反馈;
(5)实现对售后服务的规范化管理;
(6)系统能够体现人性化的管理方式和设计理念。
本系统的主要任务是为基于JavaEE技术和SQL Server数据库的售后服务管理系统建立一个企业设计。主要技术要求包括:掌握web开发所需的技术,包括HTML和JSP动态网页编程技术,SQL Server数据库知识,等等。主要实现企业售后服务信息的增删改查,顾客信息的增删改查,顾客留言信息的及时反馈保存,管理员帐号增删、登录等。该系统还可以方便制造商跟踪产品的质量和服务和管理以及购买者对企业的建议提交。
2 系统分析
2.1 系统需求分析
近年来随着电商的崛起,人们网上消费的次数变得越来越频繁,伴随而来的是在售后方面的巨大的缺失。对于售后,仅仅靠人工服务,是远远不够的,人们开始渴求一种能够方便快捷,取代人工服务,有效解决售后的方法。我国信息产业、企业售后服务发展迅速,电商的发展超出了所有人都想象,与此同时也带来了诸多的问题。飞速发展的交易额,带来了大量的GDP增长,然而光鲜的背后是每天无数客服手忙脚乱的为顾客服务。传统管理方式需要大量人工,费时费力,成本较高,已不适应日新月异的现代社会节奏。售后服务是企业服务的重要组成部分,是商品销售后提供的各项服务活动。售后的好坏,决定了顾客是否会再次购买的意愿。良好的售后服务能够让你在众多企业中脱颖而出,成为其中的佼佼者,不至于被大浪淘沙淘汰。售后服务也可以作为企业的一个主打服务。改革开放以后人民生活物质极大丰富,人们更多的有闲资用来购物,在比较价格之后,顾客们更喜欢拥有良好售后服务的商家。
人们在购物时倾向于选择名牌,名牌良好的售后服务也是其中的一个关键因素。售后服务现在作为销售中最重要的部分之一,已经成为保持或扩大市场份额的关键(如疏达,天猫、京东等)。售后服务质量将影响顾客满意度。在采购中,保证货物,售后服务等相关规定将使客户摆脱疑虑、摆动的形式,决定来决定购买的产品,优质的售后服务是品牌经济的产物,在当今激烈的市场竞争中,消费者权利意识的不断提高,315晚会的不断曝光,消费观念的改变,良好的售后服务,不仅是企业产品的质量,而且客户可以得到真正的和完全满意。良好的售后服务不仅能够有效提高企业文化形象,更是对客户以及顾客的的庄严承诺。企业通过对产品建立有效的跟踪售后服务,不仅能够完成对顾客的承诺,更关键的是,企业可以利用这个机会,完成对企业产品的监控,知道自己的产品在那些地方容易出现问题,并对此进行改善,做到有的放矢,不至于盲目乱撞。在市场经济条件下,竞争如此激烈,许多公司每天都在建立,许多公司都被淘汰了。一个公司如果想要在竞争如此激烈的今天立足,就必须有自己的特色,也可以说是自己的企业文化。售后服务的良好就可以作为一个良好的文化点。一个公司要强大,产品的售后服务是一个非 常重要的环节,企业可以因此做成一个品牌,形成品牌效应。【4】
自进入现代社会以来,世界各地越来越密切,文化和经济交流日益频繁,带来了信息的爆炸性增长,近年来随着信息高速公路的快速发展迅速变化,每个人可以访问世界的任何角落,要获取的信息量大幅增长,外部环境的快速变化,完全人为地记录信息变得非常不切实际。如何收集足够的信息,及时快速的处理信息,快速存储和编辑信息,信息技术的发展已经成为现代社会的常见问题。电脑解决了外观上的问题。可以使用大量信息收集,编辑或调查易于使用和快速编辑,计算机和快速处理。同时,电脑硬件的发展也逐渐适应了现代社会信息量的快速增长,信息的快速更新,随时随地改变需求的趋势。可以预见未来信息系统的发展不仅仅是简单的数据处理,而且可以得出工具的结论,可以根据不同的条件从所有可用的信息中筛选,排序,分析,为用户提供一个最终结论,例如现在在实验治疗系统开发中包括开发过程系统简单,数据处理结果小,报表系统进一步发展成为最终决策专家系统的支持系统,甚至在一些领域已成为战略信息系统,可以支持领导层面的竞争战略。这是电脑发展的未来趋势。
目前在国内,售后系统架构主要分为B/S和C/S俩种,B/S是通过浏览器方式来浏览相关信息,进行一系列的相关操作。因为现代社会的信息更新速度快,更新频繁,同时对信息的安全性有很高的要求,所以各公司的内部系统大多采用这种模式,我要做的这个仅仅是为客户投诉,售后服务的,应该公开面向社会,所以,应当采用更稳定的C/S模式。
该系统采用三层结构,这是由客户端和用户通过浏览器完成,并且浏览器的表达逻辑由JSP页负责。
图2-1系统模式图
2.2 可行性分析
开发系统相关的数据可以利用现有资源优势去收集相关系统,互联网的信息集成为我们提供了诸多的方便。系统所需的软件在网上都可以找到其开源的下载路径,硬件也只需要一台电脑和互联网。因此,在发展成本方面,该系统成本很低。该系统与传统的管理模式相比较,能够大量节省人力,解决时间,从而达到节约成本的最终效果。因此,从经济学的角度来说,该系统是一个值得开发,并且具备良好前景的项目。
技术可行性是指该系统采用了现有的已经比较成熟的JAVAEE体系,开发环境所需的各种环境已经配置部署完毕,基本不会出现问题。学校所学的知识也是可以解决所涉及的问题。当前的计算机硬件配置完全可以运行所需的工作环境,工具,软件方面现有的软件很多都是开源的,网上可以免费下载。操作可行性指的是组织结构的影响,现有的人员和机构的可用性,以及系统的适用性和人员培训和补充计划的环境。当前的信息化技术比较普及,操作人员的水平也比较高,操作可行。【5】
社会可行性是指在当下这个情况下,人们需要这样一个系统来减轻人们的工作量。在现代生活中,售后管理的范围越来越广,由于顾客对自身生活质量要求越来越高,售后管理业必须随着人们生活水平的提高而改变。伴随着购物规模的不断扩大,售后的各项反馈、投诉,对售后的要求等都将越来越复杂,售后管理系统的自身的管理工作量也将越来越大。人工服务不能做到及时有效的反映,以及做出正确的应对以及保存,迫切需要一个系统来解决这些问题。传统的人工服务效率低下,必须采用计算机为核心的新型技术才能应对日新月异的社会。
法律可行性是指该系统的开发并未违反我国现有的法律。我国现有的《知识产权法》和《计算机软件保护条例》中并没有影响本人系统开发的地方。
2.3 本系统采用的关键技术
2.3.1 MyEclipse 开发工具
MyEclipse企业级工作平台是MyEclipseEnterprise Workbench ,中文简称MyEclipse。比起Eclipse,Myeclipse在功能方面更加强大,插件众多,广为流传。我们主要用来开发JAVA,J2EE,数据库。利用它我们可以在开发与整合方面极大的提高工作效率。它的可扩展性是非常强的,通过安装在组件的语言环境的不同,可以在一个新的语言的开发中从容的适应。广泛的支持JAVAScript,
JSF,JDBC等工具。它的本身是一个最为基本的框架平台,你可以通过使用不同的插件来实现不同的功能,但是插件太多也导致了它很难具有其他相对固定的语言开发环境的稳定性,具体的一些细节功能会有所欠缺,对于深度开发人员来说体验也许并不是很好。所以很多的语言开发厂商以eclipse为基础开发了适用于各自语言开发的集成开发环境。但是eclipse仍然是应用最广泛,开发最基础,使用十分便捷的开发环境。Eclipse 最初于1999年4月由IBM和OTI统一集团,在此,IBM开始的Eclipse推出的核心代码,包括平台的两个IDE产品开发,JDT和PDE。Eclipse是一个开放源码项目,开的最初目的是用来替代Visual Age for Java,刚开始的界面和Visual Age for Java差不多,但是由于他的开放性,更多的人参与进来,所有人都可以免费的下载,以此为工具来开发自己所需要的插件,因此不断地受到人们的关注和宠爱,得到了广泛的推广和使用。由于Eclipse广泛使用,各大公司和开发商也加入其中,以最初的IBM为中心,大家组成了一个广泛的开发联盟,配合开发了许多著名的工具插件,其中包括Borland(C++插件)、Rational Software(设计开发工具)、Red Hat(虚拟服务器)及Sybase(数据库)等。随后,Oracle等诸多大型公司也参与了进来,加入了该项目的开发和维护,不断的提高其扩展性和实用性,使其最终能够成为一个可以使用不同的插件来进行任何语言开发的集成开发环境,具有相对平衡的灵活性和稳定性,更好的推广计算机语言,为信息化数字化的发展奠定良好的基础。
在2006年,参与eclipse项目的诸多公司成立了eclipse基金会,专门用于eclipse的版本发布,推进和维护。每年版本的发布会一般在6月,并且在同年的9月和次年的2月进行当年版本的更新,释放出SR1及SR2版本。
2.3.2 数据库
系统的数据库基于数据库管理系统,所有信息系统的来源是用户体验直接不可或缺的一部分。 近年来,数据库技术是计算机技术发展最快,增长最快的技术之一。 数据库用于存储整个系统所需的所有信息,并可直接影响系统在相同硬件配置下的性能。 评估系统质量的主要标准。 作为系统的基石,整个系统的设计完全取决于数据库的设计。 因此,在本节中,我们将解释此系统使用的数据库。数据库是组织的信息的集合,以便可以容易地访问,管理和更新信息。
计算机数据库通常包含数据记录或文件的聚合,如销售交易,产品目录和库存以及客户资料。【6】
通常,数据库管理器为用户提供控制读/写访问的能力,指定报告生成和分析使用。一些数据库提供ACID(原子性,一致性,隔离和耐久性)合规性,以确保数据一致且事务完整。
数据库在大型主机系统中很普遍,但也存在于较小的分布式工作站和中端系统(如IBM的AS / 400和个人计算机)中。
数据库自20世纪60年代成立以来就发展了,从分层和网络数据库开始,到20世纪80年代,面向对象的数据库,以及SQL和NoSQL数据库和云数据库。
在一个视图中,数据库可以根据内容类型进行分类:书目,全文,数字和图像。在计算中,数据库有时会根据组织方式进行分类。有许多不同类型的数据库,从最流行的方法,关系数据库,分布式数据库,云数据库或NoSQL数据库。数据被组织成行,列和表,并且它被索引以便于更容易地找到相关信息。 随着新信息的添加,数据被更新,扩展和删除。 数据库处理工作负载来创建和更新自己,查询它们包含的数据并运行应用程序。
由E.F. Codd于1970年在IBM发明的关系数据库是一个表格数据库,其中定义数据,以便可以以多种不同的方式对其进行重组和访问。
关系数据库由一组具有适合预定义类别的数据的表组成。 每个表在列中至少有一个数据类别,每行都有一些数据实例,用于列中定义的类别。
结构化查询语言(SQL)是关系数据库的标准用户和应用程序接口。 关系数据库易于扩展,并且可以在原始数据库创建之后添加新的数据类别,而不需要修改所有现有的应用程序。
分布式数据库是数据库,其中数据库的一部分存储在多个物理位置,并且在哪个处理中分散或复制在网络中的不同点之间。
分布式数据库可以是同质的或异构的。 均匀分布式数据库系统中的所有物理位置都具有相同的底层硬件,并运行相同的操作系统和数据库应用程序。 异构分布式数据库中的硬件,操作系统或数据库应用程序在每个位置都可能不同。
Oracle数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心,使用目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的一组软件产品,是目前世界上最流行的,使用最为广泛的大型数据库之一。数据库是信息存储的基本条件,比如SilverStream就是基于数据库的被广泛使用的一种中间件。
云数据库是一个数据库,已经针对混合云,公共云或私有云中的虚拟化环境进行了优化或构建。 云数据库提供了诸如在每次使用的基础上支付存储容量和带宽的能力的好处,并且它们提供了按需的可扩展性以及高可用性。
云数据库还使企业有机会在软件即服务部署中支持业务应用。
NoSQL数据库对大型分布式数据集很有用。NoSQL数据库对于大数据性能问题无效,关系型数据库不能解决。当组织必须分析存储在云中的多个虚拟服务器的大量非结构化数据或数据时,它们是最有效的。
使用面向对象编程语言创建的项目通常存储在关系数据库中,但面向对象的数据库非常适合这些项目。面向对象的数据库围绕对象而不是动作,数据而不是逻辑。例如,关系数据库中的多媒体记录可以是可定义的数据对象,而不是字母数字值。
图形数据库或图形数据库是一种使用图形理论存储,映射和查询关系的NoSQL数据库。图形数据库基本上是节点和边的集合,其中每个节点表示实体,每个边表示节点之间的连接。图形数据库越来越受欢迎,用于分析互连。例如,公司可能会使用图形数据库来挖掘来自社交媒体的客户的数据。
数据库管理系统(DBMS)是一种允许您定义,操纵,检索和管理数据库中存储的数据的软件。关系数据库管理系统(RDBMS)是一种基于关系模型的上世纪70年代开发的数据库管理软件,仍然是数据库管理最流行的方式。
Microsoft SQL Server,Oracle数据库,IBM DB2和MySQL是面向企业用户的顶级RDBMS产品。数据库管理系统技术始于20世纪60年代,用于支持分层数据库,包括IBM的信息管理系统和CA的集成数据库管理系统。
Oracle数据库管理系统是目前使用最为广泛的数据库管理系统,作为一个所有产品通用的数据库系统,它具有完整的全面的数据管理功能;作为一个关系型数据库,它是一个具有完备关系的产品;以分布式数据库为核心的它实现了分布式处理的所有功能。Oracle使用方便,容易学习,运用广泛,你只要在任何一种机型上学习了Oracle知识,便能在各种类型的机器上使用它。
2.3.3JSP技术
JSP的全名为java服务器页面,中文名叫java服务器页面,根是一个简化的Servlet的设计,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术类似于ASP技术,它是在传统的HTML网页(子集的标准通用标记语言)文件。热媒,*。HTML)插入java程序(脚本)和JSP标签(tag),从而形成一个JSP文件,后缀名为(JSP)。使用JSP开发的web应用程序是跨平台的,在Linux上运行并在其他操作系统上运行。它在HTML语法中实现Java扩展。像servlet,jsp是在服务器端执行。通常返回客户端是一个HTML文本,所以只要浏览器可用,客户端就可以浏览。JSP技术使用java编程语言写的tags和scriptlets XML来封装产生动态网页的处理逻辑。该网页还采用tags和scriptlets访问存在于服务端的资源的应用逻辑。日本学术振兴会单独网页逻辑与网页设计和支持可重用的基于组件的设计,使基于Web的应用程序的快速和容易的发展。JavaServer Pages是其主要目的是表示逻辑从Servlet单独的动态网页技术。
3 系统概要设计
根据系统的功能需求分析,将本系统划分为以下几大模块:
图3-1系统分析总模块图
3.1 系统管理模块
该模块主要用于对系统进行管理,包括系统权限的设置,系统管理员的增加删除,密码的修改,用户的管理等。
系统权限是系统操作的先决条件。设计系统必须对使用系统的人作出分类,不同的人能够使用的权限是不同的,管理员权限不能随意授予,只能交给公司高层使用。普通用户使用的是普通权限。他们只能对自己的信息进行修改查询,不能对其他人进行查询修改,否则信息泄露,公司会变成一团糟。
3.2 服务信息管理模块
该模块主要是对消费者的信息进行管理维护,对客户信息进行数据建档,包括售后服务信息的添加、删除和修改。客户在购买之后,可以对客户信息进行登记录入系统,然后对客户进行跟踪服务,客户可对服务进行点评,提出建议,公司可不定时对客户发放问卷,进行满意度调查。
3.3 产品安装信息管理
这个模块主要负责对产品安装信息进行登记,删除等。保证服务到位,对客户负责。客户能够查询到自己所购买产品的安装信息,进度等。
3.4 产品维修信息管理
对产品维护信息(包括维护时间、维护内容、维护量等)增加、删除修改等进行登记,一方面便于管理,另一方面可以对产品性能进行监控,知道产品的寿命,以及产品容易出现的问题。
3.5 产品退货信息管理
主要包括产品退货信息的增加、删除和修改(包括退货日期、变更原因等);
3.6 用户回复信息管理
这包括用户回复记录的添加、删除和修改,便于了解用户的需求。
3.7 投诉信息管理
它主要包括前台的产品投诉信息、管理员查看、回复等。
4 系统详细设计
4.1 后台数据库设计
在数据库被推出的十多年来,数据库管理系统得到了迅猛的发展,从以前单的应用程序发展成为了拥有自己专属的语言,专门的理论,专业的研究人员的系统软件。通过数据库管理系统,将数据库中的数据变得结构清晰,关系明确,冗余度低,拥有较高的程序独立性,容易增减,条理清楚,易于被相关的系统或者程序调用,因此,不论是大型的系统软件还是小型的应用软件都建立在数据库的基础之上,大大降低了数据保存的难度,使得计算技术得以广泛的推广。在近几年来逐渐流行的大数据分析,也是建立在数据库的基础上,对海量的数据进行相关的分析。随着计算机软件的广泛推广,对于数据库的性能要求越来越高,反过来也促进了数据库技术的发展。通过不同的设计方式设计出来的数据库,在各个方面的优劣也不相同。比如:在大型数据处理系统中,不仅对数据库的稳定性有极高的要求,性能方面也不能差的太多,这就需要使稳定性和高性能达到一个平衡;然而在微型计算机系统中,数据规模不大,需要的是能够及时的响应用户的相关操作,因此对性能就有极高的要求。随着对数据库的研究越来越正式化,科学化,投入不断地增加,已经使得现在的数据库系统从以前的单纯处理加工数据为中心转变为围绕共享的数据库为中心,这种数据库的改变,更加的方便了数据的集中管理,有效的挖掘出数据中蕴含的更加丰富的信息,有利于应用程序对数据的调用,也方便了程序本身的开发和维护,通过对相同的数据整合,不仅节省了数据库空间,更使得数据本身之间的联系更加明确清晰。
同时,数据库中的相关数据,都是从现实生活中抽象得来的。通过对现实世界的实体模型的抽象化,将实体模型的各种属性都量化为一个个具体的数字,不同的数据,表明了实体模型的差异性,相似升值相同的数据,表明了实体模型之间的相似性。所以,通过设计不同的数据库,不同的表,视图,行,列就可以把实体模型转换为数据库模型。所以,数据库设计的好坏,也直接影响了能否完整的将一个实体模型所具有的特点直接彰显出来,突出实体模型之间的差异性。
综上所述,数据库设计是数据库的核心,是数据库管理系统的核心任务,是评价一个系统好坏优劣的主要标准,是能否直截了当地将数据之间的关系展现出来,是能否和现实世界完美的结合起来的主要手段。数据库设计的不好,小则影响了系统中某一个功能模块的流畅运行,大则是的整个系统都不能达到要求,造成巨大的损失。数据库设计的不好,其他一切用来提升数据库性能的方法和手段都会收效甚微。在数据库设计不断发展的进程中,人们逐渐提出了一系列标准和方法来规范数据库的设计。在现在流行的关系型数据中,这些标准和方法叫做范式,换句话说,范式就是某一种关系的集合。现在人们遵循的大多为第三范式,即:在某个数据库表中不能包含其他表中的非主关键字。这种范式的采用,降低了数据冗余,明确了表和表之间的关系,提升了数据库相关操作的性能。
(1)管理员信息表
1.管理员用户名
2.管理员姓名
3.密码
4.登陆时间
5.权限
(2)顾客信息表
1.顾客姓名
2.性别
3.购买商品名称
4.价格
5.购买时间
6.商品单号
7.维修记录
8.退换记录
(3)回访信息表
1.姓名
2.性别
3.年龄
4.证件号码
5.日期时间
6.留言
7.联系电话
8.回复
(4)维修信息表
1.商品编号
2.顾客姓名
3.性别
4.年龄
5.证件号码
6.维修原因
7.电话号码
8.维修状态
(5)退换信息表
1.商品编号
2.顾客姓名
3.购买时间
4.退换原因
5.是否退换
图4-1 admin表
图4-2 系统权限表
图4-3 设计表“attend”
其它表略
4.2 系统E-R图
图4-8系统E-R图
4.3.1 系统操作流程
图4-8系统操作流程
4.3.2 数据增加流程
增加数据时,数据会自动生成新的编号,同时对数据的合法性进行验证,验证通过以后数据导入数据库,完成数据添加,未通过则不予添加,需要重新输入。
图4-9数据增加流程图
4.3.3 数据修改流程
修改信息时,选择需要修改的信息,然后进行修改,修改后需要对数据合法性进行再次验证,过程与添加类似,也是验证合格则添加入库,不合格则不预入库。
图4-10 数据修改流程图
4.3.4 数据删除流程
当用户选定一条记录时,单击删除按钮,会提示用户是否确定删除,然后删除数据库相关内容。数据删除流程图如图所示。
图4-11 数据删除流程图
4.4 系统模块设计
4.4.1管理登陆
当系统登陆时,首先出现的是一个用户登陆的界面,主要是维护系统的安全性和完整性。如下图所示:
图4-12系统主页面
主要代码如下:
定义一个窗体
setTitle(“售后管理系统登录”);
label.setText(“用 户 名:”);
label_1.setText(“密 码:”);
login.setText(“登录”);
reset.setText(“重置”);
panel_1.add(reset);
生成验证码
public String getCheckCode(){
Random random = new Random();
String sRand=””;
for (int i=0;i<4;i++){
String rand=String.valueOf(random.nextInt(10));
sRand+=rand;
}
return sRand;
}
4.4.2 售后服务分类管理
管理员可以对售后服务进行分类,包括对售后服务类别的添加、删除、修改等操作。界面如下图所示:
图4-13系统管理界面
主要代码如下:
x= new x();
x.open();
try{
int i = x.executeUpdate(sql);
if(i == 1)
return Constant.SUCCESS;
else
return Constant.SYSTEM_ERROR;
}catch(Exception e){
e.printStackTrace();
return Constant.SYSTEM_ERROR;
}finally{
x.close();
}
4.4.3 售后服务信息管理
系统分为管理员和普通用户,管理员权限较高,可对售后服务信息进行管理,包括增、删、修等操作。下图为相关界面:
增加
public int addEmp(String name,String sex,String bir,String departs,String zhiwu,String tel,String address,String remark){
String sql=”insert into emp(name,sex,bir,departs,zhiwu,tel,address,remark,addtime) ” +
“values(‘”+name+”‘,'”+sex+”‘,'”+bir+”‘,'”+departs+”‘,'”+zhiwu+”‘,'”+tel+”‘,'”+address+”‘,'”+remark+”‘,'”+date+”‘) “;
DBO dbo = new DBO();
dbo.open();
try{
int i = dbo.executeUpdate(sql);
if(i == 1)
return Constant.SUCCESS;
else
return Constant.SYSTEM_ERROR;
}catch(Exception e){
e.printStackTrace();
return Constant.SYSTEM_ERROR;
}finally{
dbo.close();
}
}
修改
public int upEmp(String id,String name,String sex,String bir,String departs,String zhiwu,String tel,String address,String remark){
String sql=”update emp set name='”+name+”‘,sex='”+sex+”‘,bir='”+bir+”‘,departs='”+departs+”‘,zhiwu='”+zhiwu+”‘,”+”tel='”+tel+”‘,address='”+address+”‘,remark='”+remark+”‘ where id='”+id+”‘ “;
DBO dbo = new DBO();
dbo.open();
try{
int i = dbo.executeUpdate(sql);
if(i == 1)
return Constant.SUCCESS;
else
return Constant.SYSTEM_ERROR;
}catch(Exception e){
e.printStackTrace();
return Constant.SYSTEM_ERROR;
}finally{
dbo.close();
}
}
图4-14售后服务信息管理
4.4.4 投诉信息管理
管理员还可以对客户留言的投诉信息进行回复或者删除操作,相关界面如下:
删除留言
public int delGuestBook(int id[]){
DBO dbo=new DBO();
dbo.open();
try{
for(int i = 0;i<id.length;i++){
dbo.executeUpdate(“delete from guestbook where id = ‘”+id[i]+”‘”);
dbo.executeUpdate(“delete from replay where mid = ‘”+id[i]+”‘”);
}
return Constant.SUCCESS;
}catch(Exception e){
e.printStackTrace();
return Constant.SYSTEM_ERROR;
}finally{
dbo.close();
}
}
回复留言
public int reGuestBook(int mid ,String replay,String replayer){
String sql = “insert into replay (mid,replay,replayer,replaytime)” +
” values (‘”+mid+”‘,'”+replay+”‘,'”+replayer+”‘,'”+date+”‘) “;
String sql2 = “update guestbook set replay=’1′ where id='”+mid+”‘ “;
DBO dbo = new DBO();
dbo.open();
try{
int i = dbo.executeUpdate(sql);
int j = dbo.executeUpdate(sql2);
if(i == j && i== 1)
return Constant.SUCCESS;
else
return Constant.SYSTEM_ERROR;
}catch(Exception e){
e.printStackTrace();
return Constant.SYSTEM_ERROR;
}finally{
dbo.close();
}
}
图4-15 投诉信息管理
4.4.5 产品回访管理
可以对回访信息进行添加修改或删除,界面如下图所示:
图4-16 产品回访管理
5 系统调试与测试
5.1程序调试
系统在设计的过程中不可避免的会出现这样那样的问题。简单的错误,例如语句的语法错误这类的错误,程序在运行时系统自动就会进行提示然后可以做出相应的更正。但另一种类型的错误是在某些数据的计算中操作错误或逻辑错误的结果。这种类型的错误是如此隐秘,它有时会发生,有时不会发生,所以它需要很多的努力来解决这种类型的动态错误。
5.2测试模块
5.2.1测试的作用
(1)为什么测试
测试是在产品发布之前进行的一项工作,它能够保证在交付之前软件能够正常工作,最大限度地降低了需要使用专业技术才能解决问题出现的可能性,在很大程度上避免了软件在销售出去以后,出现各种各样的问题带来的人力物力财力损耗。例如软件售出以后,出现问题,造成用户损失需要赔偿,同时需要对系统进行维护,所耗费的人力物力财力都是大数目。
进入信息化时代以后,大多数企业使用计算机和互联网来进行日常的办公和管理,合理利用计算机可以使工作更有序,更高效,更准确。软件应用程序是通过这些软件工作,以获得所需的结果。
软件测试不仅可以找出系统是否存在漏洞,从而避免漏洞带来的损失,还可以检测出是否完成用户所要求的系统需求。与客户不断地沟通,将新的问题逐步解决,新的需求逐渐添加,最后得到最终可以交付的系统。这样可以最大化的降低后期维护的成本。软件测试作为系统开发过程中的一个小模块,却十分重要,像是马蹄上的一个钉子一样。
在实践中,软件测试的难度往往非常大。一是测试本身是一件非常艰苦的事情,面对大数量的代码,很多时候无从下手。编程人员和测试人员不是一个人,也不能是一个人,这就造成了代码在理解上的差异性。编程时有人不写注释,测试人员不能理解编程人员的意思。还有,测试不想编程,是一个能很快得出结果的工作。编程完成,实现一个功能以后,你会有极大的满足感,而测试则是你可能会不断地陷入繁杂冗余的代码中出不来,你的工作只是为了找到那一个bug。这种心理上的落差也是测试难度不断变大的原因之一。另外,有些公司对于测试不够重视等也是阻碍测试发展的原因。
2)测试的目的
测试的目的不仅是为了发现更多的错误,还要为了更好的修正软件。如果仅仅为了多发现错误,应该采用针对性的测试。针对容易出现错误的地方进行测试,这样可以较容易的发现错误。测试的方法一般是对程序进行运行,针对出现的问题进行修正。软件测试的目的首先是确认软件的质量,一方面要确保该软件能够执行您想要做的工作,另一方面是确保软件以正确的方式执行。 二是向开发商或项目经理提供反馈信息,并准备风险评估信息。 第三软件测试不仅在测试软件中,软件产品本身,还包括软件开发过程。 如果开发了软件产品,就会发现很多问题,这表明软件开发过程可能有缺陷。 因此,软件测试的第三个目标是确保整个软件开发过程具有高质量。
5.2.2用户登录测试
表5-1 用户登录测试
测试对象 |
测试案例 |
预期结果 |
实际结果 |
是否通过 |
用户登录 |
用户名:sdaf 密码:空 验证码:正确 |
请输入用户名 |
弹出请输入用户名 |
通过 |
用户登录 |
用户名:空 密码:1 验证码:正确 |
请输入密码 |
弹出请输入密码 |
通过 |
用户登录 |
用户名:sdasf 密码:111 验证码:正确 |
报错,提示用户名或密码错误 |
报错,提示用户名或密码错误 |
通过 |
用户登录 |
用户名:admin 密码:024admin 验证码:正确 |
登陆成功 |
登陆成功 |
通过 |
用户登录 |
用户名:admin 密码:024admin 验证码:错误 |
登录失败,验证码错误 |
弹出验证码错误 |
通过 |
用户登录流程图如下图:
图5-1 用户登录流程图
5.2.2其他功能部分测试
本着测试用例的不可穷举,选取代表性的原则,故本系统只选取了部分关键功能进行测试,一来节省了开发时间,便于早日交付,使得客户早日用上系统;二来节约了开发成本,因为越到测试的后期花费的人力物力与测试出的bug数不成正比,没有必要进行如此的浪费。
除了用户登录模块与权限密切相关,需要较高的安全性以及优先级,其余采用白盒黑盒相结合的方法,对各大模块的一个或几个模块进行单元测试,后选取几个模块观测软件的集成跳转功能是否满足要求,设置相关案例以及编号,具体如下页表。
表5-2 其他功能测试
测试对象 |
测试案例 |
预期结果 |
实际结果 |
是否通过 |
管理员设置 |
点击“管理员设置”按钮 |
跳转到管理员设置 |
跳转到管理员设置 |
通过 |
售后服务分类 |
点击“售后服务分类”按钮 |
跳转到售后服务分类页面 |
跳转到售后服务分类页面 |
通过 |
售后服务信息 |
点击“售后服务信息”按钮 |
跳转到售后服务信息页面 |
跳转到售后服务信息页面 |
通过 |
售后服务查询 |
点击“售后服务查询”按钮 |
跳转到售后服务查询页面 |
跳转到售后服务查询页面 |
通过 |
产品安装信息 |
点击“产品安装信息”按钮 |
跳转到产品安装信息页面 |
跳转到产品安装信息页面 |
通过 |
安装信息查询 |
点击“安装信息查询”按钮 |
跳转到安装信息查询页面 |
跳转到安装信息查询页面 |
通过 |
产品维修信息 |
点击“产品维修信息”按钮 |
跳转到产品维修信息页面 |
跳转到产品维修信息页面 |
通过 |
维修信息查询 |
点击“维修信息查询”按钮 |
跳转到维修信息查询页面 |
跳转到维修信息查询页面 |
通过 |
退换信息查询 |
点击“退换信息查询”按钮 |
跳转到退换信息查询页面 |
跳转到退换信息查询页面 |
通过 |
产品回访信息 |
点击“产品回访信息”按钮 |
跳转到产品回访信息页面 |
跳转到产品回访信息页面 |
通过 |
回访信息查询 |
点击“回访信息查询”按钮 |
跳转到回访信息查询页面 |
跳转到回访信息查询页面 |
通过 |
投诉信息管理 |
点击“投诉信息管理”按钮 |
跳转到投诉信息管理页面 |
跳转到投诉信息管理页面 |
通过 |
6 结论
通过系统的设计和开发,得出以下结论:
(1)在日常生活中,要想灵活应用所学的知识,就必须将其与实践相结合。尤其是在学习一门新技术时,最重要的是实践,只有充分的实践才能掌握它。实践才是检验真理的唯一标准。在开发程序的过程中,许多以前上课时候学过的知识都被遗忘了,不得不重新打开书本查阅资料,观看视频来学习这些知识。如果当初能够做到及时复习巩固,这些知识肯定不会被遗忘到这种地步。这样,开发过程可以缩短时间,提高效率,把系统做的更好,而不是像现在这样马马虎虎。根本原因不仅是学习不认真,更重要的是缺乏将知识转变为实践的能力。知行不能做到合一,那知识就是纸上谈兵,不具有任何的作用。身为一个大学生,只会夸夸其谈,大概是无法成为一个合格的程序员。毕竟这门学科更注重的是实践,只有更多的实战操作才能让自己合格。一次次的编写代码修改,这才是我们应该做的,而不是仅仅停留在书本知识,处理日常考试。如何将书本知识转变为自己的能力,是今后的生活中应当注重的一点。
(2)一个系统的开发,经验是非常重要的。没有经验,第一次做系统总是会手忙脚乱,无从下手。所幸的是学校安排的课程设计帮了大忙,让自己做系统时不至于不知从何做起。做这个系统参考了网上的很多资料,得益于互联网的高速发展,使得我们能够轻松的站在前人的肩膀上看世界。网上的诸多系统给了我很多的启发,一个人的思维有着很多的局限性,汇集诸多思维就能够逐步完善一个想法,并且逐渐把他变成实际。做系统,最重要的一点心得是要及时记录。你会偶然间想出一个好点子,这时要记得记录,因为你平常面对的是很小的简单系统。然而,现在我们面对的是一个庞大的系统,多个子系统组成的大系统、多功能模块下的子系统,功能模块、多功能页面、页面点、子函数和子系统的逻辑功能、功能模块和功能页面,功能是一个复杂的逻辑网络。这需要我们计划,分析,提炼,深思熟虑,并制定出一个编程计划。这时你必须通过笔记来记录整理,就像破案一样,在千头万缕的繁杂线索中,找到其中的关键。善学习别人的成绩,实现自己的功能,可以有效缩短开发时间,提高工作效率,是提高编程能力的最佳途径。网上有很多的论坛,帖子,博客,他们的代码是开源的,你可以从中找到自己所需要的功能模块。学习别人的工作不仅仅是复制别人的源代码,如果只是这样,你往往会因为系统的错误,无奈,到最后成了鸡肋和抱怨。看到别人的源码,应该首先分析,读懂别人的程序思想,取其精华弃其糟粕,使之成为你自己的思想,然后将这些功能和它们的功能块融合起来。如果有些事情是由他们自己简单地考虑出来的,那么它们可能是精心设计的,但在很短的时间内是不可能的。这个系统测试,它开始作为一个简单的复制的代码和粘贴它,造成许多错误。然后进一步讲解编程思想,首先学习数据库的关系和功能,并根据数据来预测字段与数据之间的关系,并了解各块代码函数之间的关系,最后再仔细敲打一遍。通过这样一个完整的过程,有一个更深入的了解的要求和应用程序的规定性,安全性和效率方面。这对新手程序员很好。
(3)及时、清晰、完整的工作记录有利于业务水平的快速提高和编程效率的提高。工作笔记是发生在工作中的东西件的顺序。书面工作笔记如集记录填写相关因素的事件,如看似简单的工作记录,但包含了深厚的知识,工作笔记需要包含哪些元素来完成记录,一目了然的事件?您如何记录和分类您的笔记,以便我们可以学习更多的未来?我做的这个节点,一天睡觉前回忆今天的任务工作,遇到什么困难,如何解决,你有什么意见,以表格的形式,按场要素:时间、事件、和困难,解决僵局,评论,记录相对完整,还可以根据时间、难易程度和经验来分类,以方便今后的学习。
(4)每项功能完成后,应及时进行其他完整功能的测试,然后进行下一步。如果您可以很容易地找到链接和错误的原因,在测试中,我们称之为“一步一步”,这可能是非常有益的/有帮助的初级开发人员助。对于程序员来说,每一步都有一点错误,每一个功能都是一个循环,一个链接,一个交互。如果一环出错,它也会对系统不可估量的影响。
今天的文章售后服务系统软件_java物流管理系统[通俗易懂]分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/88846.html