客户管理系统

上传人:帝城 文档编号:111262843 上传时间:2022-06-20 格式:DOCX 页数:41 大小:2.94MB
收藏 版权申诉 举报 下载
客户管理系统_第1页
第1页 / 共41页
客户管理系统_第2页
第2页 / 共41页
客户管理系统_第3页
第3页 / 共41页
资源描述:

《客户管理系统》由会员分享,可在线阅读,更多相关《客户管理系统(41页珍藏版)》请在装配图网上搜索。

1、 本科毕业论文(设计)题 目 客户关系管理系统 院(系) 计算机与信息工程学院 专 业 计算机科学与技术 学生姓名 学 号 指导教师 职称 副教授 论文字数 完成日期: 年 月 日本科毕业论文(设计)诚信承诺书本人郑重声明:所呈交的本科毕业论文(设计),是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。本人签名: 日期: 本科毕业论文 (设计)使用授权说明本人完全了解学院有关收集、保留和使用毕业论文 (设

2、计)的规定,即:本科生在校期间进行毕业论文(设计)工作的知识产权单位属学院。学校根据需要,有权保留并向国家有关部门或机构送交论文的复印件和电子版,允许毕业论文 (设计)被查阅和借阅;学校可以将毕业论文(设计)的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编毕业,并且本人电子文档和纸质论文的内容相一致。保密的毕业论文(设计)在解密后遵守此规定。本人签名: 日期: 导师签名: 日期: 摘 要当今世界,全球经济一体化趋势愈加明显,企业的发展打破了地域的限制,市场前景广阔,竞争对手林立,随之而来的不仅仅是数不尽的机遇,更伴随这严酷的淘汰和挑战,这就要求的企业的发展,

3、先进化,信息化,电子化,人文化。在激烈的竞争中,一个企业想要获得更大的利润就要把客户作为核心。只有了解客户的真正需求,对不同的客户加以区别,并采用不同的方法来帮助企业挖掘到潜在客户,才能留住有价值的客户,增加企业效益。这就需要建立一个客户关系管理系统来对客户的各项数据进行分析管理。本系统是一个使用JAVA作为开发语言,mysql作为数据库,Tomcat作为Web服务器,致力于管理与维护客户关系的企业级应用开发。有系统权限的用户登录该系统以后可以创建销售机会、制定销售计划来开发新的客户资源。也可以管理维护现有客户以及客户联系人、交往记录信息。对于客户申请的咨询、投诉等服务也客户录入系统并记录客户

4、反馈信息,从而指导企业提供更加快捷而周到的优质服务。关键词:CRM;经济;竞争力;AbstractIn present world, the trend of the global economic Integration is clearer, the development of the enterprise has broken the regional restrictions which made a scene of wider prospect of market and more competitors. It is followed by not only countless

5、 opportunities but also cold eliminated and harsh challenge. It requests the development of the enterprise advanced electronic and culture.In the fierce competition, an enterprise which wants to gain more profits has to take customers as core. Only by understanding the real needs of customers, disti

6、nguishing between different customers and adopting different methods to find out potential customers can an enterprise retains valuable customers and increases enterprise benefits. Above all, it is necessary to set up a customer relationship management system to analyze and manage customer data. Thi

7、s system is an enterprise application development which takes JAVA as the development language, mysql as the database, Tomcat as the Web server that dedicates to the management and maIntenance of the customer relationships. When a user who has the system access right logins this system, he can creat

8、e new sales opportunities and make plan to develop new customer resources, manager customers, customer contact person and meeting record information. For customer consultation and complaInts services also input Into this system and record the feedback information. So as to guide the enterprise provi

9、de more quick and thoughtful service.Keywords: CRM; economy; cultureI目 录第一章 绪论11.1 提出问题11.2 研究方向11.3 研究意义1第二章 系统设计工具22.1 MyEclipse介绍:22.2 mysql介绍:22.3 Java语言32.4 Struts242.5 Hibernate52.6 Spring5第三章 需求分析73.1可行性研究73.1.1 经济可行性73.1.2 管理可行性73.1.3 技术可行性73.1.4 更新与维护可行性73.2使用范围83.3 系统需求分析83.3.1 营销管理分析83.3.

10、2 客户管理分析83.3.3 服务管理分析9第四章 总体设计104.1 系统设计104.2 数据库设计124.2.1 概念结构设计124.2.2 E-R图154.2.3数据表的设计15第五章 详细设计与系统实现185.1 界面设计原则185.2 主要功能以及界面的实现185.2.1 系统登录模块185.2.2 系统营销模块195.2.3 客户管理模块255.2.4 服务管理模块28第6章 结论与展望306.1 系统总结306.2 前景展望30参考文献31致 谢32附 录33III巢湖学院2013届本科毕业论文(设计)第一章 绪论1.1 提出问题随着现在的各企业之间的竞争愈加激烈,每个企业都是想

11、着各种办法让自己在这个竞争激烈的社会发展下去。一个公司或者企业的发展的好与坏最关键的就是客户。拥有越多的客户,才能使自己的企业或者是公司更好的发展。每个企业公司的领导者都希望可以有一个好的与客户交互的方式。在这种形式发展下客户关系管理系统的作用就日益显得更为明显。所以我要做的就是一个这样与客户友好交互的一个系统客户关系的管理系统。在过去的时候也有一些手工的方式来警醒客户关系的管理,这样造成的纰漏很多。手工的方式已经不能再能满足当今现在公司或者企业发展的庞大需求,用手工的方式来进行客户关系的管理,所需要的工作人员就越来越多,这对于一个公司的支出是很大的。我编写的就是一个小型的客户关系管理系统。主

12、要帮助企业来进行客户管理的管理。1.2 研究方向此系统是一个小型的客户关系管理系统,所以也许所做的功能还不是很完善。本系统的主要的功能是:1) 营销管理功能:包括创建销售机会,制定销售计划,编辑销售机会,删除销售机会,指派销售机会等的操作。2) 客户管理功能:要对客户的信息进行管理,包括穿件基本的客户信息,对客户信息进行更新等操作。3) 管理服务功能:当客户提出服务时,有关的负责人要对这个服务进行处理,录入客户反馈信息以及服务归档等。1.3 研究意义本系统为个企业或者公司节省了一笔很大的开销。能清晰的记录本公司的所有客户的各种记录,不至于遗漏或者重复客户信息。对客户的服务也是可以清楚的记录,能

13、够更好的服务客户。管理一些业务上的需求。0第二章 系统设计工具开发本系统我主要使用了MyEclipse开发工具和mysql数据库。使用java语言,和SSH框架进行编写2.1 MyEclipse介绍:MyEclipse是一种企业级工作平台。在这之前,人们最长使用的是eclipse,eclipse的优点是免费、程序代码排版等功能。可以说MyEclipse是eclipse的一种扩展或者是继承,利用MyEclipse我们可以在数据库和J2EE的开发、发布,同时还可以应用程序服务器的整合方面来提高我们的工作效率。既然说是它是eclipse的一种继承,就说明它不仅有eclipse的各种功能,而且还对ec

14、lipse进行丰富。MyEclipse包括了完整的编码、调试、测试和发布的各种功能,这足以看出此开发工具的优点。并且MyEclipse还支持HTML、Struts、JSE、CSS、JavaScript、SQL、Hibernate。图1 是MyEclipse的页面:图1 MyEclipse的初始页面2.2 mysql介绍:目前国内外使用最多的数据库有Oracle, Sql Server, Access, Mysql等。SQL全称是“结构化查询语言(Structured Query Language)”,最早的是IBM的圣约瑟研究实验室为其关系数据库管理系统SYSTEM R开发的一种查询语言,它的

15、前身是SQUARE语言。SQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言,得到了广泛的应用。如今无论是像Oracle ,Sybase,Informix,SQL server这些大型的数据库管理系统,还是像Visual Foxporo, PowerBuilder这些微机上常用的数据库开发系统,都支持SQL语言作为查询语言。mysql是一个小型关系型数据库管理系统,开发者为瑞典mysql AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购。mysql是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所

16、有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。mysql的SQL“结构化查询语言”。SQL是用于访问数据库的最常用标准化语言。mysql软件采用了GPL(GNU通用公共许可证)。由于其体积小、速度快、总体拥有成本低,这里我选用mysql作为其数据库。2.3 Java语言Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun公司在1995年5月推出的Java程序设计语言和Java平台(即Java SE, Java EE, Java ME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、游戏控制台、数据中心、科学超级计算机、移动电

17、话和互联网等,同时拥有全球最大的开发者专业社群。Java语言是一种简单的分布式的多线程的可移植的纯面向对象程序设计语言。 Java语言的种种优良特性使得Java应用有着无比的健壮性和可靠性,从而也减少了应用系统的维护费用。Java面对对象技术的全面支持和Java平台内嵌的API能缩短应用系统的开发时间也能降低成本。Java的具体特点有以下几项:(1)简单:指这门编程语言既易学又好用,不要将简单误解成这门编程语言很干瘪。如果从语言的简单性方面看,Java要比C+简单,C+中有很多容易混淆的概念,或者被Java弃之不用了,或者以一种更清楚更容易理解的方式实现。这样对于初学者来说不至于那么难入门,也

18、增加了人们学习的积极性。(2)面向对象:出于人的思维模式的考虑,面向对象的编程思想,使人们更容易编写程序。(3)与平台无关:Java最大的优势就是与平台无关。其它编程语言程序普遍遇到的一个重要问题就是:CPU升级、核心系统资源变化和操作系统的变化,都可能会产生程序错误或无法运行的结果,但是这个问题却被Java虚拟机成功解决。(4)解释型:我们知道C,C+等语言的编译对象是CPU芯片,在此基础上生成机器码,其运行就依赖于特定的CPU。而Java的编译并不针对CPU芯片,它是把源代码编译成一种“中间代码”字节码文件。该文件与机器码很接近,可以在提供了Java虚拟机(JVM)的任何系统上被解释执行。

19、(5)多线程:内置对多线程的支持又是Java的一大特点,多线程可以同时进行多项任务。多线程之所以使人产生能够并发执行多个任务的错觉,是因为处理器可以快速切换于不同线程之间,实际上,计算机处理器在同一时刻仍旧只能处理一个线程3。而C+没有内置的多线程机制,因此它如果想要进行多线程程序的设计就必须调用操作系统的多线程功能。(6)安全:Java的安全性被认为是字节码和虚拟机的安全性,在语言级上提供了很好的安全措施。在支持Java的浏览器上可以放心的运行Java的小应用程序(Java Applet),另外Java提供了诸如jca之类的安全框架,能够给应用程序提供很好的安全保障。(7)动态:类是Java

20、的基本组成单位,类的种类很多,有些可以直接从类库中引入,有些要自己编写。Java可以在分布式环境中动态地维护程序及类库,无需修改程序,因为它的类在运行时是动态装载的。而C+类库升级之后,如果想让程序具有新类库提供的功能,就需要对程序进行修改和重新编译。2.4 Struts2Struts2是Struts框架的下一代产品,Struts框架已经是一个非常成熟的Web框架,在当时的开发过程中应用广泛,广受开发者的喜爱。但是Struts框架没有将Control层与View层解耦,严重依赖Servlet API,测试过程非常不便利。而随着技术越来越发达,更多优秀的框架,如 JSF,SpringMVC等,出

21、现在市场中,Struts框架的市场份额占有率迅速减少,Struts框架陷入了即将淘汰的危机中。Struts2框架是Apache公司联合Xwork公司一共开发,整合了Struts框架和Xwork框架的技术和设计思想,运用最新的设计理念,克服了Struts框架的不足之处,而开发出的一个新型的,更加成熟优秀的框架,Struts2虽然是Struts框架的延续,但是其实其核心技术确实Xwork的技术。Struts2框架融合了两大框架的精髓,版本一发布就受到了关注并迅速运用到开发中去。Struts2框架的思想非常精妙,它采用了拦截器思想,当客户端发来request时,通过一个filter过滤器,Strut

22、s2会自动为该请求创建一个ActionProxy代理对象,运用反射机制,将请求通过18个拦截器,这些拦截器会为request创建一些必要的对象,这些前期的工作使得开发人员在Control层中只需要专注与业务逻辑的处理,而不用考虑View层的显示问题,将控制层与显示层完全解耦,代码更加简便易懂,也更加便于测试。因为Struts2框架的优秀与便利,我在项目中也引用了Struts2框架来处理显示层与控制层的业务逻辑。2.5 HibernateHibernate框架是一个开发源代码的对象关系映射(ORM)框架,它对于数据库jdbc进行了非常轻量级的封装,并且支持不同的数据库,只要开发人员对于每一个po

23、jo类配置一个映像文件,然后只需对pojo对象进行增、删、改、查操作,Hibernate会自动去数据库对记录进行操作,节省了开发人员很大一部分放在sql语句上面的精力,可以更加专注与业务逻辑处理。Hibernate完全实现了持久层操作,也是ORM框架的领导者,它已经将到目前为止的设计思想运用的淋漓尽致。Hibernate是一个非常具有革命意义的框架,甚至是IT发展历史中的一座里程碑。它通过Session,SessionFactory,Configuretion类,Transaction接口,Query和Criteria这6个核心接口来实现对数据库的ORM持久化编程。Hibernate还有一个更

24、加精妙的地方就是一级缓存、二级缓存的设置和延迟加载(lazy)机制,一级缓存和二级缓存分别对应了SessionFactory和Session接口,查询中的数据会在缓存中存储一份,这种机制可以减少一些不必要的查询,节省的数据库宝贵的Connection资源。而lazy机制则是Hibernate的精华所在,如果没有lazy机制,那么Hibernate在读取一个对象时,会将所以与这个对于有关系的对象一起读取出来,如果数据库关系比较复杂,那么有可能,一条select会导致数十上百条甚至更多的语句在一同执行,在系统内存中也会同时建立相应的对象,效率低下,内存占用率大。而lazy的核心思想是,查询数据时,

25、只查需要的对象,其它有关系的对象,只有系统在用到的时候,Hibernate才发出sql语句去数据库中查询。我在项目中运用了Hibernate来完成ORM,使用Hibernate容器去管理对数据库的操作,这让我更加集中注意力于核心的业务逻辑开发,大大提升了我的开发效率。2.6 SpringSpring是一个轻量级的、控制反转(IOC)和面向切面(AOP)的开源框架,它解决了企业应用开发的复杂性,使得javaBean可以完成以前只能由EJB完成的功能,从简单性、松耦合和可测试性的角度而言,任何java程序都可以从Spring中受益匪浅。在应用程序中,当开发人员需要使用一个对象的属性或者方法时,必须

26、使用new关键字去新建该对象,才可以在内存中为该对象开辟空间,每使用一次,就要新建一次,项目中会有很多的重复代码,增大了程序的复杂性,而Spring就解决了这个问题,我们只需在类中声明我们需要的对象的成员变量,并且提供Get()和Set()方法,那么spring会自动为我们将该对象注入到成员变量中,不再需要去频繁的新建对象,这就是Spring的一个核心思想IOC,也有人称之为依赖注入。Spring的另一个核心的功能就是AOP编程,程序开发过程中,可能需要地方需要做一些同样的操作,例如:判断用户权限,安全性检查,和记录系统日志等,Spring形象的把这些操作所处的位置看做一个切面,切面上需要做这

27、些操作的地方则成为一个切点,只要在Spring的配置文件中将切面,切点,以及要切入的操作或者方法配置好,当执行到切点时,Spring会自动为我们调用方法,大大减少了开发项目中的重复代码。同时,Spring还提供了优秀的数据库事务管理机制,我的项目中运用到了Spring,使用Spring来进行事务管理和IOC。30第三章 需求分析3.1可行性研究做一个系统之前就要做好各种可行性的分析,无论哪一个方面没有了可行性就说明这个系统的设计是不可行的。这种可行性分析是每个系统设计所必须的。可行性分析可以包括很多方面。例如技术可行性,经济可行性,管理可行性等,下面我就对着三个方面来对这个系统进行可行性分析。

28、3.1.1 经济可行性 客户关系管理系统的设计就是为了节省公司哪些管理客户关系的人员,为公司企业带来了很大的经济效益,所以说这个系统绝对有经济可行性。这个系统的运行也不需要太大的成本,而且还能给公司带来了很大的经济效益,这个系统只需要在一个公司内部运作就可以了,很方便实用,性价比是很高的。3.1.2 管理可行性在没有使用客户观系管理系统是用来人工管理客户的信息的。这个系统本身就是一个管理系统,所以肯定具有管理可行性。对管理客户信息的管理既安全又方便。不容易出现遗漏某个客户的信息,很适合当前的一些大中小型的公司与企业。3.1.3 技术可行性对于编写此系统时所遇到的技术问题的确是一时不能顺利的解决

29、。由于我是使三大框架来编写此程序的,所以在编写此系统的时候也遇到不少技术问题,经过自己不断的调试运行,最终形成了这个小型的客户关系管理系统。虽然在某些功能上有些欠缺,但是运行一般的客户关系管理系统还是可以的,所以从基本上将是具有技术可行性的。3.1.4 更新与维护可行性一个系统是随着需求的越来越多,而进行不断的完善。所以一个系统的更新与维护就显得尤为重要。这个是一个客户关系管理系统,对于不断对功能的更新与维护是很重要的,由于对本系统的编写的过程中,已经使用了一些可以不断进行维护与更新的方法,所以肯定具有更新与维护的可行性。综合上述,本系统的开发目的已明确,在经济和技术操作等方面都可行,并且开发

30、成本低,成效明显,因此开发本系统是完全可行的3.2使用范围客户关系管理系统是一个企业级应用的开发,主要是为了企业中对于销售机会,客户关系,客户服务等信息的管理,同时对于流失的客户进行预警,并采取相应的措施来暂缓客户流失,除此之外,还包括对于客户所申请的服务进行处理,录入客户反馈信息,根据客户反馈信息来完善企业经营模式,提供的服务等等,从而帮助企业管理好客户关系,提升企业竞争力。3.3 系统需求分析客户关系管理系统方便了企业对于客户关系的挖掘、分析和管理,但是由于客户关系管理系统是最新提出的一个概念并将之运用到企业当中去,所以,本系统的发展还处于摸索阶段,并不纯熟,并没有一个经济学家或者权威组织

31、发出一个能够得到广泛认可的系统功能描述,所以每个企业中的客户关系管理系统可能所需求的功能模块都不一致。经过我调查企业需求和查找多方资料,决定本系统分为营销管理模块,客户管理模块,服务管理模块三个模块。3.3.1 营销管理分析营销的过程是开发新客户的过程。对老客户的销售行为不属于营销管理的范畴。本模块有两个分模块,第一个是销售机会管理模块。这个分模块是指当企业员工发现新的销售机会时,在系统中录入该销售机会的信息。用户登录以后,可以去新建销售机会,编辑销售机会,以及将销售机会指派给某个员工,已经指派过的销售机会就不可以再指派给别的员工了。第二个分模块是客户开发计划管理。客户开发计划,是指员工登录系

32、统以后,可以查看指派给自己的销售机会,并可以对该销售机会建立销售计划项目,每个销售机会可能要制定多个销售计划,记录每个销售计划项的计划时间和具体措施,同时也可以查看一个销售机会下所有制定的销售计划项,员工按照销售计划项实施以后要在本模块中记录销售计划项执行的结果,按照执行结果,最终确定销售机会开发成功或者失败,开发失败的销售机会被假删除,开发成功的销售机会会自动新建新客户信息,以及客户联系人信息。3.3.2 客户管理分析客户信息是公司资产的构成部分之一,应对其进行妥善保管、充分利用。有调查表明,公司的大部分利润来自老客户,开发新的客户成本相对较高而且风险相对较大。因此我们有必要对超过6个月没有

33、购买公司产品的客户应予以特殊关注,防止现有客户流失。本系统中的客户是指销售机会开发成功以后系统自动保存的公司,客户联系人指某个公司中的员工,公司需要与之联系来解决一下需求上的问题。当一个销售机会确认开发成功以后,该公司信息会自动保存到客户信息中去,在本模块可以完善编辑客户的基本信息,添加和管理某个客户的联系人。某个客户超过半年没有下订单或购买本公司产品时,本系统会自动发出客户流失预警,提醒企业员工可能会流失该客户,企业员工对即将流失客户进行暂缓流失措施,且该措施可以不断追加。如果确定该客户不可逆转的确定不可能再购买本公司产品,则确定该客户流失,确认客户流失时需要填写客户流失原因,根据其原因修正

34、本企业的一下不足之处,从而提升企业竞争力。3.3.3 服务管理分析客户服务是客户管理的重要工作。通过客户服务我们的销售团队可以及时帮助客户解决问题、打消顾虑,提高客户满意度。还可以帮助我们随时了解客户的动态,以便采取应对措施。当企业收到客户请求的服务时,在系统中创建服务单据,并可以将该服务分配给某个用户,当该用户登录以后,可以查看分配给他的服务,并对于该服务进行处理,在系统中录入处理的方法。当一个客户申请的处理之后,根据该服务单据主动联系客户,对于客户的反馈信息进行记录,根据客户的反馈选择客户满意度,满意度为15。如果一个服务单据的客户满意度大于3,那么说明该服务圆满解决,将该服务的状态改为已

35、归档,如果满意度小于3,用户对于服务不满意,则重新进行该服务的处理。第四章 总体设计4.1 系统设计本系统选用了MyEclipse作为系统的开发工具,mysql作为数据库且设计原则上属于第三范式,规范并且易于维护,J2EE进行开发,运用时下流行的B/S架构模式,并运用了的SSH这三大优秀的java开源框架,其中Hibernate框架进行数据库持久化编程,Struts2框架进行Control层和View层交互与控制,Spring框架进行依赖注入和数据库事务控制,采用MVC三层构架的基础上增加了service层来专注的处理业务逻辑,保证了本系统的可维护性和可扩展性,同时本系统引用了JUnit4来进

36、行单元测试,对一些复杂功能模块写出测试用例,将系统Bug出现率降到最低,保证系统运行的稳定性。根据上一章的系统需求分析,将本CRM系统详细划分为三个子模块,分别是营销管理模块、客户管理模块和服务管理模块。这样划分模块,使得各个模块在逻辑上独立,有着相对完整的功能,尽可能降低了块间联系和块间耦合度,模块相对独立,数据接口简单,软件易于实现,易于理解和维护,尽可能所得软件开发速度快,软件质量高,系统设计较合理。1)各模块功能:a)营销管理模块:包含销售机会的管理和对客户开发过程的管理。是对于潜在销售机会的管理,对于可能实现的销售机会制定计划并实施计划,本模块是开发新客户的过程。b)客户管理模块:是

37、对于客户信息的维护和管理,本模块维护了客户信息,客户联系人信息和与客户交往记录的信息。c)服务管理模块:客户服务是客户管理的重要工作。是对于客户提出所需服务的处理,录入处理的措施并联系客户进行反馈,根据客户服务以及客户反馈信息可以时帮助客户解决问题、打消顾虑,提高客户满意度。还可以帮助我们随时了解客户的动态,以便采取应对措施。2)图1是本系统的系统功能图:开发失败,结束开发编辑销售机会开发成功执行开发计划制定开发计划指派销售机会删除销售机会创建销售机会编辑客户基本信息客户流失预警暂缓客户流失确认客户流失管理客户的交往的记录查看客户的历史订单管理客户的联系人创建服务分配服务查看归档服务反馈服务处

38、理服务服务管理模块客户关系管理系统客户管理模块营销管理模块图1 系统功能4.2 数据库设计4.2.1 概念结构设计任何软件产品的开发都要追溯到用户需求,概念结构设计就是要将需求分析阶段得到的用户需求抽象为信息结构的过程。首先要能够将需求分析阶段所得到的应用需求进行抽象化,抽取所关心的共同特性,并将其用各种精确的概念加以描述,才能更准确地、更好地用某一DBMS来实现。1. 能准确、真实地反映现实世界中事物和事物之间的联系,能满足用户需求,是对现实世界的抽象,并且应该是一个真实模型。2. 便于理解,即使用户不熟悉计算机,也能够通过它交换对系统的意见和想法。3. 便于修改,当用户需求发生改变时,能够

39、方便地对概念模型进行修改和扩充。4. 易于向层次、关系、网状等其它各种数据模型转换。本系统的概念结构设计采用的方法是自底向上设计方法,首先定义各局部应用的概念结构,然后将他们集成起来得到全局概念结构。CRM的主要实体图和系统E-R图如下:图2 服务实体-属性图图3 用户实体-属性图图4 客户联系人实体-属性图图5 销售机会实体-属性图图6 项目开发计划实体-属性图图7 客户实体-属性图4.2.2 E-R图根据需求分析可以得到以下的E-R图,由于各实体的属性已经在上面的实体属性图中列出,所以这里将不再列出属性。图8 E-R图4.2.3数据表的设计表1 用户表字段名类型长度是否可以为空备注idIn

40、t4否用户IDloginID Varchar20是登陆账号pwdVarchar20是密码unameVarchar20是用户名roleVarchar20是角色表2 开发计划表字段名类型长度是否可以为空备注PidInt4否开发计划IDPtateDatetime8否计划时间ContextVarchar100是计划内容ResultVarchar50是计划结果User_idInt4否用户Chance_idInt4否销售机会表3 销售机会表字段名类型长度是否可以为空备注cidInt4否销售机会IDSourceVarchar50是机会来源clientNameVarchar25是用户姓名OddsInt4是成功

41、几率EssentialsVarchar100是概要LinkmanVarchar25是联系人TelephoneVarchar20是联系电话describeVarchar255是机会描述createDateDatetime8是创建时间createUser_idInt4否创建人taskDateDatetime8是指派时间taskUser_idInt4否指派人statusVarchar10是开发状态isAvailInt4是信息是否有效project_idInt4否开发计划id表4客户表字段名类型长度是否可以为空备注IdInt4否客户IDSortIDVarchar20否客户编号clientNameVar

42、char80否客户公司名称CeoVarchar20是客户经理AreaVarchar20是地区LevelVarchar20是客户等级StatisfactionInt4是客户满意度creditLineInt4是用户信用度AddressVarchar200是公司地址PostVarchar10是邮政编码PhoneVarchar15是电话FaxVarchar15是传真NetVarchar50是网址licenceNumVarchar20是营业执照注册号lawmanVarchar20是法人代表regBondVarchar20是注册businessVolumeVarchar20是年营运额bankNameVar

43、char80是开户行bankCardVarchar50是开户账号表5 客户联系人表字段名类型长度是否可以为空备注IdInt4否联系人IDSexInt4是性别PositonVarchar20是职位WorkPhoneVarchar20是办公电话TelephoneVarchar20是手机CompanyIDInt4否所属客户ID表6 服务表字段名类型长度是否可以为空备注id Int4否服务IDtypeVarchar20否服务类型essentialsVarchar100否概要client_id;Int4否客户IDstatusVarchar20否状态requestVarchar255是服务要求create

44、userInt4否创建人IDcreatedateDatetime8否创建时间taskuserInt 4否指派人IDtaskdateDatetime8否指派时间dealVarchar255是服务处理dealdateDatetime 8是处理时间dealresultVarchar100是处理结果satisfactionInt 4是满意度表7 交往记录表字段名类型长度是否可以为空备注IdInt4否交往记录IDTimeDatetime8否时间PlaceVarchar50否地点EssentialsVarchar20否概要ContentVarchar255是内容RemarkVarchar20是备注IsAv

45、ailVarchar20是是否有效ClientInt4是客户的Id(外键)第五章 详细设计与系统实现5.1 界面设计原则 在物质生活已经满足的状态下,现在的人们对美的追求也越来越高。所以在设计这个系统时候,可视化的要求就要高一些。这里面的页面设计原则不仅要美观大方,而且要安全与灵活。例如在用户想要查看服务时,但却跳转到客户的信息这页,这就严重违反了页面的设计原则。所以在我设计的过程中对着方面的要求是很严格的。不会出现不安全的跳转等问题。而且对用户来看很简单明了,不会使人感觉到页面的错乱感,很舒服的一个页面设计。这就要严格按照页面设计的原则来设计:1) 页面要美观:我们要符合使用者的一些要求来使

46、使用者满意2) 页面不存在安全隐患,就如我上面举的例子一样,经过我反复的调试,本系统已经不再存在这些问题了。5.2 主要功能以及界面的实现5.2.1 系统登录模块系统登录界面有两个输入项,输入用户名和密码,点击登录按钮,系统自动验证登录信息,用户名和密码正确,则跳转到主页。图9 系统登录页面用户登录以后来到主页,主页左上角会显示用户登录信息,右边是系统的三个主要功能模块。图10 系统主页面5.2.2 系统营销模块点击营销模块,会出现他的两个子模块,点击销售机会管理,会跳转到显示所有销售机会的页面。图11 系统销售机会管理主页面点击左上角新建,会跳转到新建销售机会管理的页面。所有带*的项目为必填

47、项,创建人和创建时间会自动填充。图12 新建销售机会管理页面新建销售计划成功后会跳出提示图13 新建销售成功提示页面选择一个销售计划点击编辑,会跳转到编辑页面,编辑后点击保存,会更新数据库中的销售机会数据图14 编辑销售机会页面在销售机会列表的页面上,选择一个限售机会,点击指派,可以将该销售机会指派给公司的员工,已经指派的销售机会,列表页面上不会显示指派按钮,即已经指派的销售机会不能再指派给他人。销售机会指派成功以后会跳出提示框,显示指派成功。图15 指派销售机会页面点击客户开发计划,会显示所有分配给当前登录用户的销售机会。图16 指派销售机会页面每个销售机会后面有三个按钮,分别是制定计划、开

48、发成功和、开发失败。制定计划是查看当前销售机会的销售计划,也可以制定新的销售计划。开发成功会更改该销售机会状态为开发成功,同时运用事务控制保存该新客户信息,表示新客户开发成功。开发失败会假删除该销售机会数据。下面是制定销售计划的页面,由于该页面超出了浏览器可以显示的范围,所以只截取到部分销售机会信息和销售机会计划项列表,以后新建计划项的列表。图17 制定开发计划页面按照日期格式输入日期,并输入计划项内容可以保存该开发计划,保存成功后会提示保存成功,跳转当前页面,会显示新保存的计划项。图18 保存开发计划页面图19 保存开发计划后跳转页面点击执行计划,会显示执行计划页面,该页面可以记录开发计划的

49、执行结果,已经填写了执行结果的项目就显示结果。图20 记录销售结果页面该页面可以记录销售结果,成功后跳出提示,并跳转可以显示新结果图21 保存计划项结果提示页面图22 保存计划项结果页面当确认销售机会无法完成时则选择终止开发按钮,系统会假删除数据。图23 终止开发提示页面图24 终止开发成功页面当确认销售机会开发成功即客户下了订单时,销售机会开发成功,系统自动录入客户信息以及客户联系人信息。图25 开发成功页面5.2.3 客户管理模块客户管理下有一个模块,客户信息管理,它是本系统中至关重要的一个模块,通过它管理和维护客户信息,客户联系人信息和与客户交往记录的信息。点选客户信息管理,会显示系统中

50、录入的所有客户信息.图26 客户信息页面点击编辑可以编辑客户信息,编辑成功后跳出提示信息图27 客户编辑成功页面点击联系人可以查看该公司在本系统录入的所有联系人信息图28 客户联系人列表页面联系人可以新建,编辑和删除,操作成功后会跳出提示信息,这里就不做过多描述了。点击交往记录会显示本系统中录入的与该公司的交往记录,来维护企业与客户之间的友好关系。图29 交往记录列表页面完成客户服务后,需要记录与客户交往记录的内容,特别是里程碑事件或有重大影响事件。需要记录时间,地点,概要,详细信息。图30 新建交往记录成功页面交往记录可以编辑,但是编辑时,必输项目不能为空。图31 编辑交往记录页面5.2.4

51、 服务管理模块点开模块后出现模块下的子功能。图32 服务管理子功能页面当收到客户服务请求时,需要创建一个服务单据,输入项目如下所示,系统自动录入状态、客户创建人和创建时间图33 服务创建页面选择服务分配,会显示所有系统录入的服务,选择一个未分派的服务指派给系统用户,指派成功后系统弹出提示图33 服务列表页面点击服务处理,选择一条已经指派的服务信息处理,录入处理方法图34 服务处理页面点击服务反馈,会显示当前所有已经处理的服务,获得客户反馈信息后需要录入反馈。图35 服务反馈页面根据客户的反馈结果,服务单据的流转也不同。如果客户满意度大于3,则将服务归档,如果满意度小于3,则更改其状态,重新进行

52、处理。服务归档可以查看所有的归档服务信息以及其详细信息,以备有一天需要参考。第6章 结论与展望6.1 系统总结通过客户关系管理系统的设计与实现,让本人对于开发一个简单的软件系统过程有了一定的了解,熟悉了开发软件的思路和基本步骤。首先对客户关系管理的相关工作进行调查,通过调查及对调查结果的总结分析过程中,了解客户关系管理系统所要完成的主要功能,并根据调研结果对系统的功能模块进行粗略地划分;其次是从经济、技术等方面考虑系统开发的可行性,确定系统的初步开发方案,搜集开发工具相关方面的资料;再次就是对系统进行需求分析,需求分析是以后系统的开发等的基础,划分出了系统模块,所以是重点的工作;最后进行的系统

53、设计与测试,系统设计主要的是概要设计、数据库设计和详细设计三个方面,设计完成后进行系统地测试。并通过Java进行了应用程序开发,实现了所有的系统模块。但是由于本人的知识和能力有限,在软件开发这方面涉世不深,没有开发经验可言,只能根据自己的摸索和借鉴已有资料,同时在请教老师和同学的情况进行系统的开发。所以系统中还存在一些缺陷和不足,基本功能是实现了,可是还不完善,自身还要进行反思和更深一步的学习。6.2 前景展望至此,一个简单的客户关系管理系统就完成了,基本上实现了客户关系管理的功能,但是很显然还有很多不足之处,还需要根据近来的企业实际情况进行相应功能的调整和优化,以更好地满足用户需求。通过设计

54、客户关系管理系统掌握了开发小型系统的各个重要环节以及基本步骤,进一步巩固和加强基本知识和技能的训练,提高了多学科理论、知识与技能综合运用能力,培养了分析问题、解决问题的能力。参考文献1 范云之.基于Web数据库在线考试系统的设计与实现研究J.商丘师范学院学报,2006,22(5):1-20.2 洪维恩,何嘉. Java2面向对象程序设计M.北京:中国铁道出版社,2005.3 郝玉龙JavaEE 编程技术M.北京:清华大学出版社,2008.4 尉哲明,李慧哲等. Java技术教程M.北京:清华大学出版社,2002.5 萨师煊,王珊.数据库系统概论M.北京:高等教育出版社,2000.6 孙一林,彭

55、波. Java数据库编程实例M .北京:清华大学出版社,2002.7 孙卫琴. Tomcat与JavaWeb 开发技术详解M.北京:电子工业出版社,2009.8 清宏计算机工作室. JAVA编程技巧M.北京:机械工业出版社,2004.9 向学哲JSP程序设计教程M.北京:人民邮电出版社,2007.10 (美)Marty Hall.Servlet与JSP权威指南M.北京:机械工业出版社,2002.11 齐治昌,谭庆平,宁洪.软件工程M.北京:高等教育出版社,2004.编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第34页 共41页致 谢历时将近两个月,客户关系管理系统总算基本

56、完成了,在这过程中我尤其要感谢我的指导老师吴艳文老师。从开始的收集资料、需求分析、概要设计、详细设计和代码实现以及系统的功能实现等过程中吴艳文老师都进行了详细的指导,倾注了心血,对于吴老师我充满了感激之情。他不仅在技术上和系统实现上给我提供了莫大的帮助,而且还教会了我要做一个严谨细心的人,使我受益匪浅。客户关系管理系统运用到了我在苏州科大讯飞实习所学的知识,在此要感谢所有的老师对我的指导,同时也感谢系领导的帮助,感谢他们为我创造了学习和研究的环境,帮助我的成长。最后我要感谢我的同学和所有帮助我的人,在我做设计时不断地给我帮助和鼓励,让我在困难面前毫不畏惧,想尽一切办法解决问题,也让我的知识面在水平上有了一个质的飞越!附 录源程序主要代码: 1.Hibernate主要配置 org.gjt.mm.mysql.Driver jdbc:mysql:/localhost:3306/crm root ok org.hibernate.dialect.MySQLDialect true updateUTF-8 true mapp

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!