毕业设计之客户关系管理系统的实现_第1页
毕业设计之客户关系管理系统的实现_第2页
毕业设计之客户关系管理系统的实现_第3页
毕业设计之客户关系管理系统的实现_第4页
毕业设计之客户关系管理系统的实现_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计客户关系管理系统的实现姓名:姓名:学号:班级:专业:软件工程所在系:计算机客户关系管理系统的实现摘要由于软件的开展,计算机应用已经逐步渗透到社会生活的各个角落,在各行各业中都离不开信息处理。使用计算机进行信息控制,不仅提高了工作效率,而且大大提高了其平安性。客户关系管理是企业管理中不可缺少的局部,它的管理对于企业的决策者和管理者来说是至关重要的。因此,客户关系管理系统应该能够为管理者提供充足准确的信息和快捷多样的查询手段。本系统采用B/S模式设计,利用Java、JavaScript、JSP作为前台的应用程序开发语言,利用MySQL创立后台的数据库,在JDK1.6、Tomcat6.0和MyEclipse8.5的开发环境下采用Servlet+JSP+commons-dbutils等技术进行开发,从而实现实现客户关系管理信息系统相关功能,帮助相关人员进行有效的管理。系统实现了:通过不断改善客户关系、互动方式、资源调配、业务流程和自动化程度,到达降低运营本钱、提高企业销售收入、客户满意度和员工生产力。实现缩减企业维护客户资源的本钱,提高企业的运作效率,进而为企业的开展提供助力。关键词:客户关系管理;B/S型模式;MySQLCustomerrelationshipmanagementsystemisrealizedABSTRACTDuetothedevelopmentofsoftware,computerapplicationhasgraduallypenetratedintoeverycornerofsociallife,inallwalksoflifeareinseparablefromtheinformationprocessing.Computersareuseofprocessinginformation,notonlyenhancetheworkefficiency,andgreatlyenhanceitssecurity.Customerrelationshipmanagementinenterprisemanagementisindispensablepartofmanagementforenterprise'sdecisionmakersandmanagersareessential.Therefore,thecustomerrelationshipmanagementsystemshouldbeabletoprovideenoughformanageraccurateinformationandfastvarietyofinquiresthemeans.ThesystemUSEStheB/Smodeldesign,useJava,JavaScript,JSPastheapplicationdevelopmentlanguage,usingMySQLbackenddatabasecreated,inJDK1.6,Tomcat6.0andMyEclipse8.5developmentenvironmentwithServlet+JSP+Commons-dbutilstechnologydevelopment,soastorealizetherealizationcustomerrelationshipmanagementinformationsystemrelatedfunction,helptheeffectivemanagementoftherelatedpersonnel.Thesystemrealized:throughthecontinuousimprovementofcustomerrelationship,interactiveway,resourceallocation,businessprocessandautomationdegree,toreduceoperatingcosts,improveenterprisesalesincome,customersatisfactionandemployeeproductivity.Realizeenterprisetomaintainthecustomerresourcesreducedcost,improvetheoperationalefficiencyoftheenterprises,andtoprovidepowerforthedevelopmentofenterprises.KeyWords:CustomerRelateManager;B/Smode;MySQL目录第一章 绪论11.1工程背景11.2课题现有状况21.3课题意义2第二章开发概述32.1开发方法32.2程序设计思想32.3程序设计语言42.4开发过程52.5系统的开发方法6第三章系统分析83.1可行性分析83.2系统的主要技术分析93.3系统的运行环境和开发平台11第四章数据库设计134.1数据库需求设计134.2数据库的概念结构设计134.3数据库表设计164.4数据库的平安性17第五章功能模块设计18第六章程序设计206.1系统后台设计206.2系统前台设计28第七章软件测试297.1软件测试的目的和原那么297.2测试实例的研究与选择307.3测试举例317.4客户端兼容性测试31第八章结论328.1系统到达的预期目标328.2个人总结33参考文献34致谢35绪论客户信息管理系统的根本目标应有三个,一是研究用户、确定市场,二是解决如何提供优质效劳吸引和开发客户,三是通过客户研究确定企业的管理机制和管理内容。它不仅是一个企业经营概念,同时也是管理技术。客户为中心的企业管理技术。即以客户为企业行为指南的管理技术。在这种管理技术中,企业管理的需要以客户需要为根底,而不是以企业自身的某些要求为根底。这是一种把企业与客户一体化的管理思想付诸实施的管理技术。智能化的客户数据库。要实行客户为中心的企业管理技术,必须有现代化的技术,原因就是现代企业所处的是信息时代。客户为中心的企业管理的中枢,智能化的数据库是所有其它技术的根底。从某种意义上说,智能化的数据库是企业开展的根本能源。信息和知识的分析技术。客户为中心的管理思想的实现,是建立在现代信息技术之上的,没有现代信息技术,就无法有效地实现客户为中心的管理技术。为了实现这种管理技术,企业必须对智能化的客户数据库进行有效地开发和利用,这种开发的根本与核心技术就是信息和知识的分析处理技术。只有经过分析和处理的信息,才是企业需要的知识使用客户信息管理的概念和技术,企业能快速搜集、追踪和分析每一个客户的信息,进而了解整个市场走势,并确切地知道谁是客户、谁是客户的客户、什么是客户的需要、客户需要什么样的产品和效劳、如何才能满足客户的要求,以及满足客户要求的一些重要限制因素。客户信息管理系统还能观察和分析客户行为对企业收益的影响,使企业与客户的关系及企业盈利都得到最优化。1.1工程背景随着现在经济越来越向消费者开展,科技和以人为本的思想贯穿了整个企业开展的始末,只有控制好客户才是企业开展的最正确渠道。企业要开展,销售是关键,能否让消费者知道,了解,认可自己的产品是企业销售队伍面临的主要问题,因此我们要培养消费者的满意度和忠诚度,这就客观要求企业在客户关系关系管理方面下一定的工夫,通过良好的客户关系的培养,企业才可以得到更大的开展。但是对于当前大局部网络公司来说,由于公司规模一般比拟小,无法独立腾出一个部门来实现对客户关系进行有效管理。因此,针对这个现状,我们决定开发一个适用于中小型企业的客户关系管理系统。从行业需求上来说,CRM是解决当前中小公司在管理方面的不便和充分利用电脑的优势实现办公自动的一个比拟好的解决方案;从技术角度来说,基于java下的CRM软件的开发无论是在日后更新,维护方面还是运行效率,性能方面,都是十分优越的。而java技术又作为SUN公司多年来力推的一个技术之一,有着非常广阔的前景,无论是B/S应用,还是C/S应用,都有其独特的优势。研究和学习java技术,对将来在工作中实际应用的帮助是不言而喻的。所以,本课题的研究是有实际意义的。1.2课题现有状况根据已经掌握的资料来看,目前国内大多数客户关系管理还处于人工记录管理阶段,这种管理方式存在很多缺点,比方:效率低且操作较为繁琐,另外随着管理工程的增加,工作量也将大大增加,这必然增加了管理者的、工作人员的工作量和劳动量,为客户关系管理信息的查找、更新和维护都带来了很多困难。虽然少局部公司拥有其独立的管理系统,而由于其操作复杂,硬件根底要求较高,很难得到普及。1.3课题意义毕业设计是四年学习的总结,同时也是自己综合运用所学知识解决实际问题的一次锻炼。客户关系管理系统的主要目的是为了方便企业对客户的信息进行录入、修改、查询,提高企业的工作效率。这一系统的开发成功,解决了手写速度慢、容易出错的现状。无论是在客户关系查询管理、录入管理等方面都可以帮助企业最迅速最准确的完成所需的工作。无论是在适用性、灵活性和易操作性方面都显示出了它的强大功能。第二章开发概述客户关系管理是一种旨在改善企业与客户之间关系的新型管理机制,它实施于企业的市场营销、销售、效劳与技术支持等与客户有关的领域,其目标是通过管理与客户间的互动,努力减少销售环节,降低销售本钱,实现最终效果的提高。本文论述了客户关系管理的根本思想,对它的根本含义、开展史、背景、市场等方面作了一个概述,并且讨论了其中的客户忠诚度的根本概念;论述了客户管理信息系统的设计思想,主要实现功能及数据库的结构,并就客户信誉度和客户忠诚度进行了粗略的评算,该系统可作为企业实施CRM的借鉴。系统基于MVC模式,采用以java为主,JavaScript、HTML等语言为辅进行代码编写,利用了JSP有良好支持,提高了系统的性能;使用性能优异的Mysql作为数据库系统,保证了数据处理、数据存取过程中的高效、平安;采用了三层结构对代码进行管理,隔离了逻辑层与数据层,为工程的管理以及日后的维护提供了可靠的保障。2.1开发方法传统的管理信息系统(ManagementInformationSystem,MIS)的开发均采用结构化的开发方法。随着市场的变化,软件的复杂性及变动性不断地增加,结构化开发方法由于思维方式的限制,已不能满足技术特征、管理特征以及经济特征3个方面的要求,致使软件质量不佳,开发本钱过高,软件开发周期延迟。而面向对象技术正是解决这种软件危机的最正确方法。集Booch方法、OMT方法和OOSE方法的优点于一身并吸收其他流派的建模语言的长处而形成的统一建模语言UML——为公共的、稳定的、表达能力强的、可重用的面向对象分析方法提供了坚实的根底。本课题实践管理信息系统的开发,将用例驱动的方法与UML建模相结合标准系统开发。用例驱动的方法基于面向对象技术,即从用例[出发,首先将用户需求转化为系统需求〔即用例〕,并根据对用例的描述和分析,得出系统的核心类然后进一步描绘出系统的静态结构和动态行为,以及系统的代码结构和物理配置。用例将“驱动”需求分析之后设计、实现、测试、配置等阶段的开发,将用例驱动的思想与UML这种面向对象分析设计语言相结合,改变目前管理信息系统开发落后的局面。2.2程序设计思想常见的设计思想有两种:结构化和面向对象化,本系统采用的是面向对象的设计思想,下面简单介绍一下两者的不同以及面向对象程序设计的优点。传统的结构化开发过程包括软件目标的功能分解,以及使用正确的参数和返回值来创立函数。首先分析需求,确定功能,然后以函数的形式进行建模。在一个Web应用中很可能有上千个函数,这些函数能够不受限制的互相调用,因此在访问某个变量时,很难保证它不是正在被其他的函数访问或者修改。用JSP脚本来开发Web应用时就是上面所说的情况。只使用JSP而不使用任何Bean或自定义标记,在Web应用的规模比拟小时还不会出现太多的问题,但是在Web应用的规模增大时就肯定会出现问题。这些代码也许能够满足功能上的需要,却不能到达非功能性的要求。在结构化开发方法面临问题的时候,使用面向对象的方法进行分析、设计和开发就可以解决一局部问题。面向对象的分析和设计方法源于现实生活中的模块化的思想。对象是提供一组相关功能的实体,对象之间互相作用从而完成一定的任务。OO开发方法包括对目标的模块化,以及用类的形式对数据和函数进行封装。面向对象方法主要有以下四个特征:抽象性抽象是对象建模参数的选择,这是进行分析后得到的结果。这意味着是由分析人员来选择一定的参数,以表示对象,这是对象模型化的第一步。封装性由于某些原因,类中的数据和方法不需要对其他的对象公开,我们可以将其隐藏在类的内部,这是对象模块化过程中很重要的一步。这个步骤将确保对象的行为以简单的借口出现,而复杂的执行过程都被隐藏了。比方,JavaBean就可以为Web网页开发人员提供一个简单的接口。继承性在一个现存对象的根底上创立一个新的对象,这个过程称为继承。这样我们可以不必重写所有的代码,只需在新对象中编写需要更新的代码就可以了。比方:Servlet通常是由HTTPServlet派生来的,这意味着Web效劳器可以用相同的方法来处理具有附属关系的两个Servlet。模块化为了减少独立工作小组之间的依赖性,软件系统中必须使用模块。比方,我们可以定义一个JavaBean来处理应用程序的状态,这样做的优点是可以独立地对模块进行维护,这样就减少了代码之间的相关性。2.3程序设计语言针对该工程,在综合考虑了此工程的总体特点并对当前流行软件的实用性进行比拟之后,我们主要采用JSP作为程序设计代码的开发工具。使用JSP作为开发工具的主要原因在于利用JSP技术可以建立动态的、高性能的、平安的、跨平台的先进动态网站。JSP技术在加速动态Web网页开发时的突出特点有以下几个:(1)JSP可以将内容的生成和显示进行别离:Web页面开发者可以用HTML或XML标识进行对最终页面的设计,同时使用JSPTag或JavaScript来生成页面上的动态内容,其内容在逻辑上是被封装在JSPTag和JavaBean中的,并被捆绑在JavaScript中.因为所有的脚本都在效劳器端运行,所以,如果核心逻辑局部被封装在标识或Beans中,那么Web管理人员或页面设计者将只能编辑JSP页面的显示方式,而不会影响其内容的实质。(2)对不同浏览器的兼容:由于JSP技术采用了将JSPTag和JavaScript在效劳器端解释并执行而只将结果以HTML或XML的形式送回到客户端的方法,从而保证了对其它基于HTML的Web浏览器的完全兼容。(3)强调可重用的组件:JSP页面在绝大多数情况下都利用了可重用的、可跨平台的组件来完成程序所需要的更为复杂的处理工作,JSP技术封装了许多功能,开发人员和使用者可以共享、使用这些组件,采用JSPTag访问或实例化JavaBeans组件、设置或检索这些组件的属性,从而实现“一次编写,各处运行”的功能,加快了动态页面的开发过程。基于这些优点,从实际考虑,决定用JSP作为开发语言来开发整个系统。2.4开发过程面向对象管理信息系统(MIS)的开发过程主要由客户需求分析阶段,系统分析阶段,系统设计阶段,系统实现、测试、维护阶段组成。如图2.1所示:图2.1面向对象开发过程Fig.2.1ObjectorienteddevelopmentprocessUML用于建立软件系统的模型,适用于系统开发的不同阶段。1.需求分析需求分析阶段的工作任务首要是在客户和软件开发人员之间沟通根本的客户需求,分析业务领域的范围、业务规那么和业务处理过程,明确系统的责任、范围和边界,确定系统需求,建造需求模型。在UML中,需求分析模型由用例建模完成。然后研究与系统目标有关的事物及其本质特性,识别和发现对象和类,确定它们的内部特征以及外在联系。2.系统分析根据建立的客户需求模型,建立三个系统模型:对象静态模型、对象动态模型以及对象功能模型。3.系统设计在系统分析阶段建立的对象静态模型、对象动态模型和对象功能模型的根底上,选择适当的开发环境进行设计,包括体系结构设计、对象设计、模式设计。面向对象的设计过程是一个逐步求精的过程。4.系统实现实现阶段的任务是使用面向对象的程序设计语言,将来自设计阶段的类转换成源程序代码,用组件图来描述软件的物理结构以及组件之间的关系。用配置图来描述和定义系统软硬件的物理体系结构。5.测试UML建立的模型是测试阶段的依据。可以使用类图进行单元测试,使用顺序图和协作图进行集成测试,使用用例图和业务流程图进行确认测试,以验证测试结果是否满足用户的需求。面向对象系统的开发过程以体系结构为中心,以用例为驱动,是一个反复、渐增的过程。采用面向对象方法建立的模型具有可追溯性,并且支持模型之间的无间隙转换。2.5系统的开发方法在本系统的开发过程中采用的是JSP+JavaBean+Servlet模式,在该模式中,结合了JSP和Servlet技术,充分利用了JSP和Servlet两种技术原有的优点。此模式遵循视图控制器〔MVC〕模式,它的主要思想是使用一个或多个Servlet作为控制器。请求由前沿的Servlet接收并处理后,会重新定向到JSP。在Servlet作为控制器时,每个Servlet通常只实现很少一局部功能,多个Servlet控制器就可以结合起来完成复杂的任务,这样的好处是Servlet的重用性好。在此模式中,JavaBean作为模型的角色,它充当JSP和Servlet通信的中间工具,Servlet处理完后设置Bean属性,JSP读取此Bean的属性,然后进行显示。此模式更加明显的把显示和逻辑别离,使代码容易管理,适合于大型工程的开发,所以在本系统中采用了这种模式。此模式的数据传递关系如图2.2所示。图2.2JSP+JavaBean+Servlet开发模式数据传递关系Fig.2.2JSP+JavaBean+Servletdevelopmentmodeldatatransmissionrelationships第三章系统分析本系统将会是一个基于Web版的客户信息管理软件,具有网络功能以后,虽然效劳反应消息渠道增多,但是操作更简单,界面更统一,这对于一个小型企业来说是完全可行的。并且在软件开发方面目前自己的水平也已经可行经过我们的调查发现,大局部的中小网络公司都因缺乏资金而无法组建客户管理部门,而通过本系统,可以实现在无须投入大量人力和资金的情况下,实现对客户资料的妥善管理,进而间接为公司创造利润。从技术上来讲,本系统所采用的Mysql作为数据存储,可以保证资料的完整性。3.1可行性分析可行性分析〔FeasibilityAnalysis〕也称为可行性研究,是在系统调查的根底上,针对新系统的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以防止投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。1经济可行性:主要是对工程的经济效益进行评价,本系统开发经费对于本人在经济上是可以接受的,并且本系统实施后可以显著提高用户的管理,有助于用户操作更方便快捷。所以本系统在经济上是可行的。2技术上的可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。该管理系统采用了当前新兴的Browser/Server模式进行开发。三层的Browser/Server体系结构具有许多传统Client/Server体系结构不具备的优点,而且又紧密的结合了Internet/Intranet技术,是技术开展的大势所趋,它把应用系统带入了一个崭新的开展时代。数据库效劳器选用Mysql数据库,它能够处理大量数据,同时保持数据的完整性并提供许多高级管理功能。它的灵活性、平安性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速开展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。3时机可行性:目前,网通、电信等电信运行商的网络已经覆盖了几乎城乡的所有地方,普通家庭可以选择廉价的ADSL拨号上网,企事业单位也可根据需求上网,因此网络客户关系管理已经势在必行。综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。3.2系统的主要技术分析3.2.1Browser/Server系统的三层体系结构在Browser/Server的系统中,用户可以通过浏览器向分布在网络上的许多效劳器发出请求。Browser/Server结构极大的简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,效劳器将担负更多的工作,对数据库的访问和应用程序的执行将在效劳器上完成。在Browser/Server三层体系结构下,表示层(Presentation)、功能层(BusinessLogic)、数据层(DataService)被分割成三个相对独立的单元:第一层--表示层:Web浏览器在表示层中包含系统的显示逻辑,位于客户端。它的任务是由Web浏览器向网络上的某一Web效劳器提出效劳请求,Web效劳器对用户身份进行验证后用HTTP协议把所需的主页传送给客户端,客户机接受传来的主页文件,并把它显示在Web浏览器上。第二层--功能层:具有应用程序扩展功能的Web效劳器在功能层中包含系统的事务处理逻辑,位于Web效劳器端。它的任务是接受用户的请求,首先需要执行相应的扩展应用程序与数据库进行连接,通过SQL等方式向数据库效劳器提出数据处理申请,而后等数据库效劳器将数据处理的结果提交给Web效劳器,再由Web效劳器传送回客户端。第三层--数据层:数据库效劳器在数据层中包含系统的数据处理逻辑,位于数据库效劳器端。它的任务是接受Web效劳器对数据库操纵的请求,实现对数据库查询、修改、更新等功能,把运行结果提交给Web效劳器。从上面的分析中可以看出,三层的Browser/Server体系结构是把二层Client/Server结构的事务处理逻辑模块从客户机的任务中别离出来,由单独组成的一层来负担其任务,这样客户机的压力大大减轻了,把负荷均衡地分配给了Web效劳器,于是由原来的两层的Client/server结构转变成三层的Browser/Server结构。3.2.2JavaServerPage(JSP)技术首先,J2EE结构是设计和开发本系统的核心。第二,系统提供的大局部操作都涉及到与用户动态地进行信息交互,要求系统能够实现数据的动态发布。第三,位于客户端的用户主要通过浏览器使用本系统。第四,在Sun公司提出的J2EE蓝图中明确推荐使用JSP技术为动态内容提供效劳。因此,在J2EE结构的模型框架下,JSP技术是实现此系统动态信息交互功能的首选方案。JSP技术主要有以下一些特点:(1)应用程序逻辑和页面显示相别离的特性。JSP把用户界面从系统内容中别离开来,使得设计人员能够在不改变底层动态内容的前提下改变整个网页布局。(2)组件的可重用性。绝大多数JSP页面依赖于可重用的、跨平台的组件来执行应用程序的处理。开发人员能够共享和交换执行组件,并利用这些组件创立应用程序。基于组件的方法加速了开发过程,提高了应用程序的开发效率。(3)跨平台特性。JSP技术将“一次编写,随处运行”的思想推广到了交互网页中,因此不需要作任何更改,就可以很轻松地跨平台和跨Web效劳器移动JSP页。(4)可以用多种格式为动态内容提供效劳。JSP可以为不同的客户端提供效劳,包括使HTML/DHTML的常规浏览器、使用WML的移动和PDA等手持式无线设备以及使用XML的其他B2B应用程序等。3.2.3JDBC技术JDBC技术在J2EE结构的中间层与EIS层的数据源之间提供了数据库独立的开放性连接,使应用程序不仅可以对基于SQL标准的关系数据库系统进行访问,而且还可以对其他类型的数据源进行访问。JDBC技术通过提供API使Java应用程序能够实现位于企业信息系统层的数据库的访问能力。javaEE结构中间层的应用组件通过JDBC技术可以完成以下功能:实现与位于J2EE结构中企业信息系统层的数据库效劳器的连接;管理事务;将SQL请求传送到数据库管理系统进行预处理并执行相应的数据操作;执行存储过程;检查修改查询语句的执行结果等。3.2.4数据库连接池技术在数据库操作中,数据库的连接开销最大,耗时最长。通常的处理方法是,Servlet响应客户请求时,如果要求操作数据库,那么它会建立数据库的连接,然后与数据库进行数据交换,最后,关闭数据库的连接。这样就会造成每响应一次用户请求就会进行一次数据库连接和关闭,如果同时请求的用户数量很大,那么数据库的连接和关闭的开销将会变得巨大。必然会造成系统的负载过重,响应的速度也会减慢。显然,这种处理方法性能是较低的,但是由于Servlet是基于HTTP协议,HTTP协议是无状态的协议,在处理完用户的响应后,不会保存用户的各种信息。因此,同一个用户的请求会当作不同的请求来处理。那么,同一个用户的两次数据库操作本应该做一次数据库连接,但由于HTTP无状态的原因,会进行两次数据库连接。HTTP协议的无状态性是造成数据库的无效的连接和关闭的根本原因。HTTP协议是国际标准的协议,无法将其改变。为了提高数据库连接的有效性,中间层的数据库连接将采用数据库连接池技术。连接池技术的核心思想是在数据库的连接被需要之前去建立一个数据库连接的集合。也就是说,在Servlet第一次被装载时,先建立一定数量的数据库连接后,放在一个集合对象中。这个对象作为数据库连接的代理,所有数据库连接的访问都由这个代理进行控制。当有客户端请求数据库连接时,它只需简单地向数据库连接代理程序请求空闲的连接就可以了。这个代理程序将从连接池中选择一个空闲的连接,并给它进行标记,以说明此连接不可用,然后将这个连接返回给客户端。由于连接是提前创立的,因此代理程序几乎可以不需要任何系统的开销就立刻返回一个连接。当连接不再需要时,客户端可以将它返回给代理程序,再由代理程序标记为可用。除了处理连接,代理程序将负责维护连接池的所有细节。其中包括数据库连接的刷新,刷新主要通过删除并重新建立某些数据库连接,或者当连接池中的可用连接被大量并行请求耗尽的时候而去创立新的连接。3.3系统的运行环境和开发平台3.3.1硬件设备及操作系统效劳器:PentiumIII1G〔或与此相当的CPU〕以上配置的高性能PC机,有网络接口卡〔NIC〕,内存应在256M以上,硬盘在80G以上。确认该计算机已经安装Web效劳器软件Tomcat,数据库软件MySql,还可选用备份效劳器。操作系统:WindowsXP以上。客户端:PentiumIII500〔或与此相当的CPU〕以上配置的PC机,有网络接口卡〔NIC〕,内存应在128M以上,硬盘在10G以上。Windows98以上操作系统,安装Web浏览器。网络:效劳器和客户端应有网络连通。配置TCP/IP协议。3.3.2系统开发平台电脑配置:CPU:英特尔Corei3-2330M@2.20GHz双核内存:2GB(DDR31333MHz)硬盘:500G操作系统:MicrosoftWindow7旗舰版Java虚拟机:JDK6开发环境:MyEclipse8.5Web效劳平台:ApacheTomcat6.0数据库:ApacheMySql系统设计原那么1.实用性原那么要求满足实际工作的需要,用户接口和操作界面设计尽可能做到界面美观大方,操作简便实用,能适应不同的用户,对用户的技能性要求应尽量的低,只需进行简单的操作就可完成所要的内容。2.可扩展性原那么为适应将来的开展,系统应具有良好的可扩展性和可维护性,软件设计尽可能模块化、组件化,使系统可灵活配置,适应不同的情况,使系统能在原来的根底上进行改良与护。3.平安性原那么软件与数据库的设计要做到平安可靠,防止非法用户的入侵,数据库与前台能友好地链接,做到前台操作来改变后台数据库的理想效果,并且不产生数据的冲突。4.用户界面设计原那么用户界面的设计应符合Windows标准的图形用户界面,做到美观大方。用户界面应当直观、明了,同时在各个界面的相应之处还有相关的信息提示从而使得用户更好地进行操作,真正地实现“傻瓜型”管理——易学、易用、易管理。5.数据库设计原那么要求数据具有一致性、完整性、平安性和可伸缩性以及可维护性的原那么。通过关键字的设置来提示用户在使用时防止数据的重复及冲突等情况。第四章数据库设计数据库设计是指根据用户的需求,在某一具体的数据库管理系统上,设计数据库的结构和建立数据库的过程。数据库系统需要操作系统的支持。数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建议中的核心技术。由于数据库应用系统的复杂性,为了支持相关程序运行,数据库设计就变得异常复杂,因此最正确设计不可能一蹴而就,而只能是一种“反复探寻,逐步求精”的过程,也就是规划和结构化数据库中的数据对象以及这些数据对象之间关系的过程。4.1数据库需求设计数据库是信息系统的核心和根底,它把信息系统中大量的数据按一定的模型组织起来,提供存储、维护、检索数据的功能,使信息系统可以方便、及时、准确地从数据库中获得所需要的信息。一个信息系统的各个局部能否紧密地结合在一起以及如何结合,关键在数据库。因此只有对数据库进行合理的逻辑设计和物理设计才能开发出完善而高效的信息系统。数据库设计是信息系统开发和建设的重要组成局部。针对客户关系管理系统的需求,设计如下面所示的数据项和数据结构:管理员信息,包括的数据项有:ID、登录名、密码、真实姓名、状态。联系人信息,包括的数据项有:ID、姓名、描述、状态。客户信息,包括的数据项有:ID、公司名、企业类型、企业性质、客户银行、企业资信、客户级别、客户满意程度、区域信息、联系人ID、联系人姓名、创立时间、状态。客户留言信息,包括的数据项有:ID、公司名、头像、网址、邮箱、QQ号码、IP地址、留言时间、回复时间、留言内容、回复内容、状态。邮政编码&区号信息,包括的数据项有:ID、城市、邮政编码、区号。4.2数据库的概念结构设计根据以上的设计规划出的实体有:管理员、联系人、客户、客户留言信息、邮政编码&区号信息。各个实体具体的描述E-R图如下:图4.1管理员实体E-R图Fig.4.1AdministratorentityE-Rchart图4.2联系人实体E-R图Fig.4.2ContactentityE-Rchart图4.3客户实体E-R图Fig.4.3CustomerentityE-Rchart图4.4留言实体E-R图MessageentityE-Rchart图4.5邮政编码和区号实体E-R图PostalcodeandtheareacodeentityE-Rchart本系统的总的实体关联图如图4.6所示:图4.6实体关联图Entityassociationchart4.3数据库表设计根据前面分析,本系统——客户关系管理系统的数据库中包括5个表,说明如下:表4.1管理员信息表Table4.1Administratorinformationtable列名数据类型数据大小可否为空主键idint11NOTNULL是loginnamevarchar32NOTNULL否passwordvarchar128NOTNULL否realnamevarchar64NULL否statusint11NULL否表4.2联系人信息表Table4.2Contactinformationtable列名数据类型数据大小可否为空主键idint11NOTNULL是namevarchar64NULL否descriptionvarchar255NULL否statusint11NULL否statusint11NULL否表4.3客户信息表Table4.3Customerinformationtable列名数据类型数据大小可否为空主键idint11NOTNULL是company_namevarchar64NULL否categoryvarchar128NOTNULL否propervarchar128NULL否bankvarchar128NOTNULL否creditvarchar64NULL否levelvarchar64NULL否degreevarchar64NULL否areavarchar128NULL否linkman_idint11NULL否linkman_namevarchar64NULL否created_timedatetimeNULL否statusint11NULL否表4.4留言表Table4.4Messagetable列名数据类型数据大小可否为空主键idint11NOTNULL是company_namevarchar128NULL否avatarvarchar128NULL否sitvarchar128NULL否emailvarchar128NULL否qqnumvarchar20NULL否ip_addrvarchar128NULL否timedatetimeNULL否reply_timedatetimeNULL否contenttextNULL否reply_contenttextNULL否statusint11NULL否表4.5邮政编码&区号表Table4.5Postalcodeandtheareacodetable列名数据类型数据大小可否为空主键idint11NOTNULL是cityvarchar32NULL否zip_codevarchar32NULL否codevarchar32NULL否4.4数据库的平安性数据库的平安性是指保护数据库以防止不合法的使用所造成的数据泄漏、更改或破坏。在数据库系统中,大量的数据集中存放,而且为许多用户直接共享,是珍贵的信息资源,系统的平安保护措施就显得更为重要,它保护数据库防止恶意的破坏和非法的存取。本系统包括数据库的平安和效劳器的平安。采用管理员表示和鉴定的方法实现数据库的平安,此平安管理措施并不在前台开发工具中实现,而是在后台数据库中实现。在登录数据库时,系统让管理员户表示自己的身份,不同的管理员权限不同,系统进行核实,鉴别此管理员是否为合法用户,假设是,系统进一步核实用户,通常要求用户输入口令,系统和对用户口令以鉴别用户身份。效劳器的平安也是通过用户在登录效劳器时输入合法的用户名和密码来实现的。这是一种简单可行的方法,实现起来比拟方便。没有采用更加复杂的系统平安管理措施是因为本管理系不涉及金融方面管理,采用平安管理措施主要是为了防止没有修改权限的用户无意间修改了数据,因此采用用户标识和鉴定的平安管理措施就能够保障数据库的平安性。第五章功能模块设计对本系统的各个子模块进行了系统分析和数据库设计之后,本章将主要讨论该系统所实现的各局部功能。软件所实现的功能强弱是衡量一个软件的最根本的标准。经过对系统的可行性分析、需求分析、数据分析以及数据库设计后,结合调研的情况,确定了本子系统的功能模块如图5.1所示。客户信息维护客户信息维护根底信息维护信息查询客户效劳辅助工具系统管理数据管理客户关系管理系统图5.1系统功能模块图Thesystemfunctionmodulechart1根底信息维护该模块主要是对客户的企业类型、企业性质、客户银行、企业资信、客户级别、客户满意程度、区域信息等一些根底信息进行设置。2客户信息维护该模块主要是对客户信息、联系人信息、业务来往等一些客户信息进行添加及维护操作的功能。3客户效劳该模块主要是对客户反应信息及客户投诉信息进行添加、删除等操作,同时对反应及投拆的数据以图表的形式加以分析。4信息查询该模块主要实现对客户信息、联系人信息等各种信息的查询,同时可对国内的各大城市的区号及进行查询。5数据管理该模块主要实现各种数据的打印操作,主要包括:客户信封打印、客户信息打印、联系人信息打印及全国各省份的信息的打印。6系统管理访模块主要实现对操作员、操作员权限进行设置及修改的操作7辅助工具该模块主要为用户提供一些辅助的工具,包括调用Word、调用Excel、发送邮件、计算器及工作业务备忘录。第六章程序设计在上一章讨论了系统功能模块的设计,详细分析了每一个模块的功能,在本章将讨论怎样具体的实现系统中每个模块的功能,也就是系统的详细设计过程。详细设计的根本目标是确定应该怎样具体的实现所要求的系统,也就是说,经过这个阶段的设计工作,应该得出对目标系统的描述,从而在编码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序。详细设计阶段的任务在于要设计出程序的“蓝图”,因此,详细设计的结果根本上决定了最终的程序代码的质量。详细设计的目标不仅仅是逻辑上正确地实现每个模块的功能,更重要的是设计出的处理过程应该尽可能简明易懂。结构程序设计技术是实现上述目标的关键技术,因此是详细设计的逻辑根底。6.1系统后台设计系统运行直接进入登录页面,用户可以输入正确的信息进入系统,并进行相应的资料管理、操作管理、查询管理和系统设置管理等功能。登录系统在登录系统界面中,用户输入正确的用户名、密码、以及验证码后,才可进行登录,进入管理的主界面。系统登录界面如图6.1.1所示:图6.1系统登录界面图Fig.6.1Systemloginscreenfigure6.1.2系统主窗口当以管理员身份登录系统后,进入管理首页,如以下图所示。图6.2系统主窗口界面图Themainwindowsysteminterfacediagram6.1.3操作管理1全部联系人、客户信息、管理员资料显示图6.3联系人资料列表图Fig.6.3Contactlistfigure图6.4客户资料列表图Fig.6.4Customerlistfigure图6.5客户资料列表图Fig.6.5Customerlistfigure2新增联系人图6.6新增联系人Fig.6.6Newcontacts3新增客户信息企业是从事生产、流通、效劳等经济活动,以生产或效劳满足社会需要,实行自主经营、独立核算、依法设立的一种盈利性的经济组织。企业主要指独立的盈利性组织,并可进一步分为公司和非公司企业,后者如合伙制企业、个人独资企业、个体工商户等。在20世纪后期中国大陆改革开放与现代化建设,以及信息技术领域新概念大量涌入的背景下,“企业”一词的用法有所变化,并不限于商业性或盈利组织。随着社会开展,真正有开展潜力的企业肯定是公司类型的企业。〔1〕企业类型中国企业类别:国有企业、集体企业、股份合作企业、联营企业、有限责任公司、股份、私营企业、其他企业港、澳、台商投资企业:、合资经营企业(港或澳、台资)、合作经营企业(港或澳、台资)、港、澳、台商独资经营企业、港、澳、台商投资股份外商投资企业:中外合资经营企业、中外合作经营企业、外资企业、外商投资股份。图6.7企业类型Fig.6.7Thetypeoftheenterprise〔2〕企业性质企业性质分为:国有企业、三资企业、集体企业、私营企业图6.8企业性质Fig.6.8Enterprisenature〔3〕企业资信工商企业资信等级及其含义A等:AAA级企业的信用程度高、债务风险小。该类企业具有优秀的信用记录,经营状况佳,盈利能力强,开展前景广阔,不确定性因素对其经营与开展的影响极小。AA级企业的信用程度较高,债务风险较小。该类企业具有优良的信用记录,经营状况较佳,盈利水平较高,开展前景较为广阔,不确定性因素对其经营与开展的影响很小。A级企业的信用程度良好,在正常情况下归还债务没有问题。该类企业具有良好的信用记录,经营处于良性循环状态,但是可能存在一些影响其未来经营与开展的不确定因素,进而削弱其盈利能力和偿债能力。B等:BBB级企业的信用程度一般,归还债务的能力一般。该类企业的信用记录正常,但其经营状况、盈利水平及未来开展易受不确定因素的影响,偿债能力有波动。BB级企业信用程度较差,偿债能力缺乏。该类企业具有较多不良信用记录,未来开展前景不明朗,含有投机性因素。B级企业的信用程度差,偿债能力较弱。C等:CCC级企业信用很差,几乎没有偿债能力。CC级企业信用极差,没有偿债能力。C级企业无信用。图6.9企业资信Fig.6.9Enterprisecredit〔4〕客户级别1级客户:1万~5万2级客户:5万~50万3级客户:50万~300万4级客户:300万~500万5级客户:500万~1000万图6.10客户级别Fig.6.10Customerlevel〔5〕客户状态客户状态分为:空闲客户、跟进客户、成交客户、丧失客户、到期客户。空闲客户指:无人跟进过的客户。不管是公共客户还是公司客户,只要是没有设置过跟进人,都是空闲客户。图6.11客户状态Fig.6.11Clientstate〔6〕添加成功图6.12添加成功Fig.6.12Addsuccess4新增管理员图6.13新增管理员Fig.6.13Newadministrator5信息查询功能可对联系人、客户信息、管理员以及全国各大城市邮政编码和区号进行组合查询图6.14信息查询Fig.6.14Informationquery查询结果:图6.15查询结果Fig.6.15Inquirestheresults6查看及回复留言图6.16查看及回复留言Fig.6.16Checkandreplymessage6.2系统前台设计6.2.1前台首页图6.17前台首页Fig.6.17Frontpage6.2.1客户留言反应图6.18客户留言反应Fig.6.18Customerfeedbackmessage第七章软件测试软件测试对于一个系统来说是一个非常重要的局部,但是往往不系统的开发人员是找不出自己编写的程序的错误,因为他们习惯了使用自己已经固定的思维来进行测试,当然是测不出问题来的,所以我们在进行测试时,需要找与系统开发毫无关联的个人或小组来帮助进行测试工作,开发人员只需要进行单元测试就可以了。在Web工程中,基于Web系统的测试、确认和验收是一项重要而富有挑战性的工作,基于Web的系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览器端的显示是否适宜。重要的是还要从最终用户的角度进行可用性和平安性测试。然而,Internet和Web媒体具有不可预见性,这使得测试变得很困难。7.1软件测试的目的和原那么软件测试是为了发现软件中的错误,使软件更加完美,它的根本目标是开发出高质量的完全符合用户需要的软件,因此,通过测试发现错误后还必须诊断并改正错误,这就是调试的目的。模块测试的目的是保证每个模块作为一个单元能正确运行,在这个测试步骤中所发现的往往是编码和详细设计的错误。子系统测试是把经过单元测试的模块放在一起形成一个子系统来测试,着重测试模块的接口。系统测试是把经过测试的子系统装配成一个完整的系统来测试。在这步中发现的往往是软件设计中的错误,也是发现需求说明中的错误,它们统称集成测试。所有的测试都应该追溯到需求分析,从用户的角度来看,最严重的错误是导致程序不能满足用户需求的那些错误。测试都应该从小规模测试开始,并逐步进行大规模测试。通常,首先重点测试单个程序模块,然后把重点转向在集成的模块簇中寻找错误,最后在整个系统中寻找错误。穷举测试是不可能的。所谓穷举测试就是把程序中所有可能的执行路径都检查一次,即使是一个小系统,其执行路径的排列数也十分庞大,由于受时间的,人力和资源的限制,在测试过程中不可能执行每个路径。因此,测试必须清心设计方案,才有可能充分覆盖程序逻辑并使程序到达所要求的可靠性。系统初步完成之后,就开始进入了系统调试,系统测试很重要,它及时的发现在设计时候无法发现的错误,有利于提高系统的平安性和完善系统的出错管理,更好的方便了用户使用,不会因用户的不慎操作而引起系统崩溃。在开发大型软件系统的过程中,需要面对错综复杂的问题,因此,在软件生存周期的每个阶段都不可防止地会产生错误。我们力求在每个阶段结束之前通过严格的技术审查,尽可能早的发现并纠正错误。测试的目的就是在软件投入生产性运行之前,尽可能多地发现软件中的错误。目前软件测试仍然是保证软件质量的关键步骤,它是对软件规格说明、设计和编码的最后复审。尽管面向对象技术的根本思想保证了软件应该有更高的质量,但无论采用什么样的编程技术,编程人员的错误都是不可防止的,而且由于面向对象技术开发的软件代码重用率高,更需要严格测试,防止错误的繁衍。因此,软件测试在面向对象编程里更具有它的重要性。与开发过程类似,测试过程也必须分步骤进行,每个步骤在逻辑上是前一个步骤地继续。大型软件系统通常由假设干个子系统组成,每个子系统又由许多模块组成。因此,大型软件系统的测试的根本层次。(1)单元测试单元测试的用例从单元详细设计中导出。在单元测试中可以采用功能性测试和结构性测试两种。(2)集成测试在这个测试步骤中所发现的往往是概要设计的错误。(3)系统测试在这个测试步骤中所发现的往往是需求规格说明的错误。一般来说,系统测试是功能性测试,不是结构性测试。7.2测试实例的研究与选择程序测试的主要方法分为两大类,白盒测试和黑盒测试。白盒测试:一种是以程序的内部逻辑结构为依据而设计测试用例的方法,因而又称结构测试或玻璃盒测试,将软件看成一个透明的白盒子,按照程序的内部结构和处理逻辑来选定测试用例,对软件的逻辑路径及过程进行测试,检查它与设计是否相符。白盒测试就是要选取足够的测试用例,对源代码实行比拟充分的覆盖,以便尽可能多地发现程序中的错误。主要有两种方法:一种称为逻辑覆盖法,另一种称为路径覆盖法。黑盒测试:也称功能测试,数据驱动测试等,它将待测对象堪称是一个黑盒子,在完全不考虑程序的内部结构和特性的情况下,只依据规格说明书检查程序的功能是否能正常使用。黑盒测试主要是根据输入条件和输出条件确实定测试数据,来检查程序是否能产生正确的输出。进行黑盒测试主要有下面几种方法:等价分类法、边界值分析法、猜错法、因果图法。本系统的测试综合了白盒测试、黑盒测试两种方法,但主要使用的是黑盒测试方法。在测试当中遵循了“尽早地和不断进行测试”,“保证测试用例的完整性和有效性”原那么。通过测试到达以下测试目的:1.功能检查:检查功能是否争取,是否遗漏或实现不了应该实现的功能等。2接口检查:检查能否正确地接受信息或输出信息。3数据检查:检查数据结构或外部信息是否有〔如数据文件〕访问错误。4性能检查:检查性能需求能否得到满足。5初始化、终止检查:检查是否能进行正确地初始化或终止。7.3测试举例一、测试用户登录是否成功:翻开客户关系管理系统,在“用户名”里选择一个存在的用户名,“密码”框里填入此用户的密码。填写完成点击“登录”按钮,将会出现系统主界面,即该用户已经登录成功了。二、测试其他用户是否能够登录:翻开客户关系管理系统登录页面,输入任意密码,点击“确定”按钮。将出现密码出错提示信息。三、测试新增新用户功能是否成功:在登录成功之后,进入系统主界面,单击按钮“管理员管理”,翻开新增用户界面,在Text中输入新用户信息,然后点击“新增”,在此界面的列表中查看新录入的用户信息,假设存在,那么说明注册成功。四、客户信息录入的测试:单击按钮“客户管理”,翻开新增客户信息页面,在Text中输入客户信息,点击联系人姓名的下拉菜单,查看菜单内容是否是自动生成的,并且正确。信息输入完毕点击“新增”,查看客户信息是否存在,假设存在,那么说明注册成功。五、用户退出系统的测试在操作已全部完成,需要退出程序的时候,在主界面中有一个“退出系统”的选项,点击之后便可退出。也可以直接关闭浏览器退出。7.4客户端兼容性测试客户端兼容测试主要包括:平台、浏览器等方面内容的测试。1.平台测试平台性测试需要在各种操作系统下对Web进行兼容性测试,经测试本系统可以在WindowsXP及windows7平台下运行良好,能够兼容。2.浏览器测试基于系统设计及过程中使用了CSS层叠样式表,那么本系统尽量不要运行在IE7浏览器以上的版本中,火狐浏览器和谷歌浏览器是较好的选择。第八章结论客户关系管理系统是在对相关人员进行详细调研后,确定了系统涉及的领域,包括数据库设计、界面设计、Web应用层设计等,是一个具有实际应用意义的典型管理系统。本系统具有如下特点:(1)采用Browser/Server三层体系结构,使系统具有很好的可维护性和可重用性。(2)在本系统的开发过程中采用的是JSP+JavaBean+Servlet模式,此模式将明显的把显示和逻辑别离,使代码容易管理,适合于大型工程的开发。(3)中间层使用数据库连接池技术加快与数据库效劳器之间的数据处理速度,也加快对客户机层的响应速度。(4)Web效劳器采用的是Apache公司的Tomcat应用效劳器,它是一个比拟完善的、开放的Web应用效劳器。它严格地遵循普遍流行的开放标准,在大型开发过程中较为适用。(5)后台数据库采用的DB2,它功能比拟强大,除了可以处理包含在各种平台上运行的数据库管理系统内核之外,还包括了数据复制、数据库系统管理、Internet网关支持、在线分析处理、多媒体支持和各种并行处理能力。但因为本系统比拟大,而且在本工程开始的时候,在Java和Web应用程序设计方面不太熟悉,再加上毕业设计的时间有限,许多方面在下一步的工作中还需要进一步改良和完善。8.1系统到达的预期目标该管理系统用以辅助管理,到达用户管理、联系人管理,客户信息管理,提高工作效率,完善业务管理,为管理员及客户提供更快捷效劳。该客户关系管理系统到达的预期目标:1、建立完整的客户关系管理信息计算机网络系统,实现计算机对联系人、客户、查询等关系工作全方位的管理;2、在管理系统内部实现资源的高度共享,为管理提供效劳,为方案、组织、管理与决策提供根底信息和科学手段,及时、准确、方便的收集

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论