1、天津商务职业学院毕业设计(论文) 题目:客户关系管理(CRM)系统 后台功能模块的开发与设计专业班级软件技术1001班学 号0108100131姓 名 陆乐指导教师刘卫东企业指导教师李林2013年 4 月 19 日班 级:软件1001班姓 名:陆乐联系电话:18920820006 摘 要 随着市场经济体系的日益完善,各项科技技术飞跃发展,我们现在已经进入了一个买方市场时代,选择空间扩大、购买渠道拓宽、消费心态和购买行为越发成熟,使客户再不会对某一企业或者产品盲目地保持绝对忠诚。在这种严峻的情形下,我们如何不断改善客户关系,掌握更多的客户信息,提高客户满意度;如何在日益激烈的市场竞争中把握机会,
2、占有更大的市场份额;如何建立高效业务流程,降低运营成本,获取更多的利润,这些已成为每个企业所面临的首要问题。信息时代是客户短缺的时代,企业发展所需的各种资源,比如人力、物力、生产力等等都是可以创造的,但每个领域中的客户资源确却是有限的,所以通过产品的创新、企业管理的创新、服务的创新,我们可以以此来抢占有限的客户资源、维护好企业和客户之间的关系、从而去更深的了解客户的需求动向,这些所需的各方面的努力已成为企业生存发展面临的重大问题。企业要在激烈的市场竞争中立于不败之地,就必须找到一种全新的管理理念和管理手段,对其内部和外部资源进行有效的整合。对于每个企业来说客户管理的完善程度将直接影响企业的经济
3、效益。关键词:客户关系 ;信息时代 ;客户资源 Abstract With the growing market economy improved, the technology develops at very fast speed, we have now entered an era of a buyers market, choice of space expand, channels of purchase widen, consumptive mentality and the purchase become more mature,so that customers no lon
4、ger maintain absolute loyalty to a enterprise or product blindly. In such severe circumstances, how can we continue to improve customers relations, have more customers, improve customers satisfaction;how to seize the opportunity in the increasingly fierce market competition,to have a greater market
5、share;how to establish a highly efficient business processes, reduce operating costs, gain more profit, each of these enterprises have become the most important issue to face.The information era is the era which is hard up of customers, all kinds of resources that business development needs, such as
6、 human and material resources, productivity etc. can be created, but everyone in the field is limited for customer resources,so through product innovation, enterprise management innovation and service innovation,we can in order to seize the limited resources of the client, and maintaining a good rel
7、ationship between the customer and the enterprise thus to understand deeper on customer demand trends ,these requirements in all aspects of the efforts have become major issues to face for a enterprise to survive and develop. To keep in an invincible position in the fierce market competition,enterpr
8、ises must find new manage ideas and manage methods,to integrate its internal and external resources for effective. For each enterprise customers management degree of perfection will directly affect the economic efficiency of enterprises.【Key words】 customer relations;information age;customer resourc
9、es目 录第1章 绪论11.1课题研究背景及意义11.2国内外相关研究及发展趋向11.3研究课题所采取的技术2 1.3.1 MVC设计模式介绍.3 1.3.2 Struts技术介绍.3第2章系统分析42.1需求分析42.1.1功能需求42.1.2数据需求42.1.3性能需求52.2可行性论证52.2.1经济可行性52.2.2技术可行性52.2.3操作可行性5第3章设计及实现63.1系统设计63.1.1项目规划63.1.2系统功能结构图63.1.3设计目标73.1.4开发运行环境73.2数据库设计73.2.1设计方案分析73.2.2设计方案确定83.2.3数据表的建立93.3详细设计及实现103
10、.3.1数据库的连接103.3.2各功能模块的介绍103.3.3系统登录模块113.3.4综合管理模块123.3.5系统管理模块173.3.6客户投诉管理模块19第4章系统测试204.1测试目标204.2测试平台204.2.1硬件204.2.2软件204.3测试方案204.3.1黑盒测试204.3.2白盒测试214.4测试及结果分析214.4.1功能测试214.4.2可靠性与易用性214.4.3测试结论22结 论23参考文献24致 谢25 天津商务职业学院2010届毕业设计(论文)第1章 绪论客户关系管理是一种基于信息技术的应用系统,它通过对企业业务流程的重组来整合用户信息资源,以更有效的方法
11、来管理客户关系,在企业内部实现信息和资源的共享,从而降低企业运营成本,为客户提供更经济、快捷、周到的产品和服务,保持和吸引更多的客户,以求最终达到企业利润最大化的目的。1.1 课题研究背景及意义客户关系管理它是一项综合的IT技术,也是一种新的运作模式,它源于“以客户为中心”的新型商业模式,是一种旨在改善企业与客户关系的新型管理机制,它更是一项企业经营战略,企业据此赢得客户,并且留住客户,让客户满意。通过技术手段来增强客户关系,并进而创造其价值,最终提高利润增长的上限和底线,这才是客户关系管理的焦点问题。进入新世纪,现代企业市场营销也进入了一个新阶段,各种营销模式、概念不断更新; 众多企业在市场
12、竞争日趋激烈的情况下遭遇重重困难;企业品牌的生命周期越来越短,目标客户群体越来越小。在产品及品牌的感觉价值迅速降低并且导致价格低落的今天,企业对客户需要的反应,实现高效的客户管理,将最终决定其在市场的成败得失。客户关系管理能够帮助企业获得客户的真实信息,在客户需求的拉动下,充足企业内部资源以及供应链上其他企业的优势资源,通过个性化客户服务,提高客户价值和企业价值。1.2 国内外相关研究及发展趋向近年来,随着市场竞争的日趋激烈,社会经济高速发展,商业、IT、建设、机械等项目事业的持续增长,客户的存在作为企业生存发展的前提和基础,其重要性已逐渐被人们所认识,客户关系的管理更是显得至关重要。客户关系
13、管理CRM,其概念的引入已有数年,其深层的内涵却有许多的解释。客户关系管理是一项营商策略,透过选择和管理客户达至最大的长期价值。它需要用以客户为中心的营商哲学和文化来支持有效的市场推广、营销和服务过程。企业只要具备了合适的领导、策略和文化,应用CRM可促成有效的客户关系管理。除此以外客户关系管理也是信息行业用语,它具体指的是有助于企业有组织性地管理客户关系的方法、软件以至互联网设施等等。相对于国外的企业来讲,客户关系管理之所以能够成为热点与它所能够实现的强大功能是密不可分的。客户关系管理的快速发展与企业的迫切需求有直接的联系,而企业的需求又与客户关系管理在新经济的环境下所能解决的问题密切相关。
14、概括起来,企业选择客户关系管理的六大目标包括交叉销售、追加销售、客户保留、客户获取、客户再生和客户体验。这六大目标最终归结为一个核心目标,实现客户资源价值的最大化。对于我们国家的企业发展状况来说,客户关系管理它是企业为提高核心竞争力,达到竞争制胜,快速成长的目的,树立客户为中心的发展战略,并在此基础上展开的包括判断、选择、争取、发展和保持客户所需的全部商业过程。企业以客户关系为中心,通过开展系统化的客户研究,通过优化企业组织体系和业务流程,提高客户满意度和忠诚度,提高企业效率和利润水平。同时企业在不断的改进与客户关系的全部业务流程,最终实现电子化、自动化运营目标的过程中,创造并使用先进的信息技
15、术、软硬件和优化管理方法、解决企业所面临的种种难题。CRM 在企业的应用是可以将各种业务流程、人员和技术结合在一起,实现并保持让客户满意这一目标,不过长久以来 CRM 都无法达成这个理想的目标,原因在于用户与企业的联系仅靠功利性异常强烈的消费所维系,同时以企业为中心向群体消费者扩散的单向关系维护手段绝难取得优秀的效果。社会化网络的诞生恰恰可以帮助企业达到目标。社会化网络的关系管理模式和交互方式与 CRM 的客户管理方法可以无缝对接,社会化网络带给 CRM最直接的变化包括:化主动为被动、柔化直接销售、关系建立更为可控和可靠、效果指标可考量。随着 Twitter 和 Facebook 的流行,越来
16、越多的企业已经意识到社交型 CRM 已成为一种不可忽略的趋势。从理论上说,准确把握社交网络的脉搏可以促进 变革,提高客户忠诚度,并刺激销售,提高服务质量。社交网站为面向客户人 员提供了快速收集这类数据的能力。而今,将CRM与社交网络相互连接,形成销售管理、客户服务、客户反馈、员工合作等为一体的管理模式,带来了传统管理模式和管理理念的新突破。1.3研究课题所采取的技术企业客户关系管理系统是由客户管理模块、综合管理模块、报表管理模块、系统管理模块组成。该系统是基于jsp+servlet技术和struts2技术的开发环境下编写而成,后台选用数据库系统是MySql数据库。 Servlet是用Java语
17、言编写的运行在服务器端的小应用程序,能够接受Web客户端的请求,并能对Web客户端进行响应,通常是HTTP协议进行工作的。在Java Web开发中要编写Servlet,通常会继承HttpServlet。Servlet编写Html脚本时,需要使用print或println方法逐句打印输出,这样会带来很大麻烦,而JSP网页是在HTML脚本中嵌入Java代码,从根本上改变了Servlet的编写方式。Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大
18、。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2的变化很小。MVC模式是一种适用于交互式系统的软件设计模式。首先对客户关系管理系统的交互性、可扩展性、数据操作复杂性和集成性等特点进行了分析。针对客户关系管理系统的特点提出了基于MVC模式的系统设计方案,重点论述了系统的功能和结构方面的特点。Dreamweaver 在此次开发系统的过程中起到了举足轻重
19、的作用。它是Macromedia公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,它是第一套针对专业网页设计师特别发展的视觉化网页开发工具,利用它可以轻而易举地制作出跨越平台限制和跨越浏览器限制的充满动感的网页。1.3.1 MVC设计模式介绍 MVC(ModelViewControl)设计模式,即模型视图控制器模式,是为那些需要为同样的数据提供多个视图的系统而设计的。它很好地实现了数据层与表示层分离,将系统对象分为三类:(1) Model类,主要实现系统的业务逻辑和数据逻辑;(2) View 类主要实现系统的显示逻辑;(3)Control类主要实现系统的控制流程。MVC体系保持系统的
20、业务逻辑和数据逻辑、显示逻辑、控制逻辑的相互独立性,从而实现面向业务领域构建业务逻辑和数据逻辑,面向具体的应用领域设计控制逻辑和显示逻辑。在系统业务流程调整时,无须修改或尽可能少修改业务逻辑和数据逻辑。在业务领域本身的业务规则、算法变化时,只修改Model 类组件,从而实现系统组件的独立性。MVC模式分离了数据访问和数据表现。1.3.2 Struts2技术介绍Struts是一个Web框架,他以一种更加优雅的方式来实现控制器,并提供如国际化,类型转换,数据验证,ajax等一系列的功能。Struts是在MVC架构模式的基础上构建的一种WEB解决方案。在Struts2中使用IOC和AOP最先进的设计
21、思想,使得控制器与容器最大程度的解耦. 第2章 系统分析系统分析是管理信息系统的一个主要关键阶段,负责这个阶段的关键人物是系统分析员,完成这个阶段任务的关键问题是开发人员与用户之间的沟通。客户关系管理系统分析从系统需求入手,从用户观点出发建立系统用户模型,用户模型从概念上全方位表达系统需求及系统与用户的相互关系。系统分析在用户模型的基础上,建立适应性强独立于系统实现环境的逻辑结构。 2.1 需求分析2.1.1功能需求客户管理模块:该模块需要完成对客户资料信息、公司资料信息进行增加,查询,删除,修改的基本的操作功能。客户投诉管理模块:该模块需要对客户反馈的信息进行处理,实现对其信息的处理的操作。
22、系统管理模块:该模块主要管理用户的登录信息,系统信息,修改密码,登陆日志等操作的功能。2.1.2数据需求(1)要按照严格的数据格式输入,否则系统不予响应进行处理。 (2)查询时要保证查全率,所有相应域包含查询关键字的记录都应能查到。因为通常信息的记录会很多,所以本系统采用了两种方法进行查询:直接查询和模糊查询。2.1.3性能需求一般系统操作的响应时间应在120毫秒内。在软件方面,响应时间,更新处理时间都比较快且迅速,完全满足用户要求。当用户需求,如操作方式,运行环境,结果精度,数据结构与其他软件接口等发生变化时,设计的软件要做适当调整,灵活性、适应性非常大。2.2可行性论证可行性论证是在进行初
23、步调查后对系统的开发进行必要性和可能性的研究,所以也称为可行性分析研究。研究的结果可能是肯定的,即系统可以进行开发;也可能是否定的,即系统在现有条件下不应开发;客户关系管理系统功能模块齐全,运行稳定。2.2.1经济可行性通过计算机网络对客户信息进行管理,使企业对自身拥有的客户有了一个更为深刻的了解,不仅能全面的统计客户的购买数量,及时的了解客户的动态信息,还可以根据计算机记录的数据信息,不断的调整企业的生产发展动向,这带来的经济回报将远超过我们所支出的,大大提高企业的经济效益。2.2.2技术可行性此系统的设计是基于MVC模型的开发环境的,利用Struts2,servlet技术,使用技术利于程序
24、开发,使页面操作简洁,程序稳定运行。2.2.3操作可行性本系统界面朴实大方,设计简单,它可以适合大众群体使用。各功能模块一目了然,其中简洁的界面给予操作人员易操作的可视提示,以保证每一步操作都容易理解上手,容易理解。由此可见这个系统在操作上是完全可行的。25第3章 设计及实现3.1 系统设计3.1.1项目规划客户关系管理系统是由客户管理模块、客户投诉管理模块、报表管理模块、系统管理模块组成。3.1.2系统功能结构图客户关系管理系统各模块功能结构如图3-1所示。 客户关系管理系统管理客户投诉管理 综合管理系统信息用户管理登录日志客户投诉处理公司资料管理客户资料管理图3-1 系统功能结构图3.1.
25、3设计目标本系统是针对中小型企业通过网络实现对客户的管理而设计的,主要实现如下目标:(1)可以对客户信息即客户的基本信息进行全面的管理;(2)能及时了解客户的反馈信息,并对其进行管理操作;(3)实现各种信息的选择查询、模糊查询功能等;(4)管理员可以添加操作员信息、设置操作员的权限;(5)系统运行稳定、安全可靠。3.1.4开发运行环境开发工具: 开发工具软件:Myeclipse9.0,Dreameever8,PhotoShop CS2;硬件平台:CPU: P4 1.8 GHz;内存:128MB以上。软件平台:操作系统:Windows 7( Windows 2000/ 2003,Windows
26、xp);数据库:MySql;浏览器:IE5.0及以上;Web服务器:tomact6.0。 3.2 数据库设计数据库也即是按照数据结构来组织、存储和管理数据的仓库。具体来说它是存储在一起的相关数据的集合,这些数据是结构化的,无害的或不必要的冗余,并为多种应用服务。数据的存储独立于使用它的程序。对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。3.2.1设计方案分析我们平时设计过程中经常用到的数据库有Oracle11g和MySQL ,这次设计选择了MySQL数据库,MySQL使用简单、方便,稳定不易出错,占用空间小。3.2.2设计方案确定MySQL数据库,MySQL使用简单
27、、方便,稳定不易出错,占用空间小。3.2.3数据表的建立该系统数据库采用MySql数据库,系统数据库名称为db_crm。数据库db_ crm中包含如下几张表。(1)clientsinfo(客户信息表)客户信息表主要用于保存客户信息信息,该数据表的结构如表3-1所示。表3-1 发件人信息表字段名数据类型长度主键否描述idint11是自动编号clientnamevarchar30否客户名称hangyevarchar30否行业类别enterprisevarchar30否企业性质cityvarchar30否所在城市phonevarchar30否客户电话mailvarchar100否客户邮箱status
28、varchar30否客户状态gradevarchar30否客户级别bankaccountvarchar100否银行帐号cdatevarchar50否日期cexplainvarchar500否说明(2)companysinfo(公司信息表)公司信息表主要用于公司信息,该数据表的结构如表3-2所示。表3-2 客户信息表字段名数据类型长度主键否描述idint11是自动编号companynamevarchar100否公司名称companynaturevarchar100否公司性质companycityvarchar100否城市companyphonevarchar100否公司电话companymail
29、varchar100否公司E-mailcompanystatusvarchar100否公司状态companygradevarchar100否公司等级ClientHabitudevarchar100否企业性质legalrepresentativevarchar100否法人代表companydatevarchar100否日期companyexplainvarchar500否说明(3) 用户表(hadminusers)如图3-2所示 图3-2 用户表(4) 登录日志表(loginrole)如图3-3所示 图3-3 用户表3.3 详细设计及实现3.3.1数据库的连接系统后台采用MySQL 数据库,系统
30、数据库名称为db_crm。数据库连接代码如下所示: public Connection getConn()try Class.forName(com.mysql.jdbc.Driver);conn = DriverManager.getConnection(jdbc:mysql:/localhost:3306/db_crm,root,root); catch (ClassNotFoundException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (SQLException e) / TODO Auto-gen
31、erated catch blocke.printStackTrace();return conn; 3.3.2各功能模块的介绍客户管理模块:(1) 客户资料管理:该模块主要功能是对客户信息做增加,删除,修改的操作。(2) 公司资料管理:该模块主要功能是对公司信息做增加,删除,修改的操作。客户投诉管理:(1) 客户投诉处理:该模块主要功能是对客户投诉做处理操作。;系统管理模块:(1) 登录日志:该模块主要查询用户登录的情况。(2) 系统信息:该模块主要查询系统的具体信息。(3) 修改密码:该模块主要是用户能够对自己的密码进行修改。(4) 用户管理:该模块主要是添加,修改,删除,操作员信息、设置
32、操作员的权限。3.3.3系统登录模块用户登录模块主要功能是验证用户是否合法,用户登录模块页面主要由用于收集登录信息的前台表单部分和用于验证后台处理部分组成。当单击“登录”时,后台对用户得身份进行验证,主要是检索用户和密码在数据库中是否存在,如果存在那么登录成功,进入操作页面,否则显示登录失败。用户登录模块的运行结果如图3-4所示:图3-4 登录界面首页如图3-5所示图3-5 首页3.3.4综合管理模块综合管理模块的主要功能是对客户资料,公司资料进行管理。1、客户资料管理设计客户资料报表管理设计主要包括对客户信息进行增加,显示,修改,删除等操作。用户可以通过功能导航进入客户信息管理页面。 (1)
33、客户资料管理新增:用户能够新增自己的信息。如图3-6所示。图3-6 客户信息管理增加页面设计图(2)客户资料管理查询:用户客户对自己的信息进行查询,并且能够对自己的信息进行新增、删除、修改等操作。如图3-7所示。图3-7 客户信息管理页面设计图主要代码如下:/* * 查询数据列表 * return */public ListfindAll() List list=new ArrayList();conn=getConn();try pstmt = conn.prepareStatement(select * from clientsinfo order by id desc);rs = pst
34、mt.executeQuery();while(rs.next()int id = rs.getInt(id);String clientname=rs.getString(clientname);String hangye = rs.getString(hangye);String enterprise = rs.getString(enterprise);String city = rs.getString(city);String phone = rs.getString(phone);String mail = rs.getString(mail);String status = rs
35、.getString(status);String grade = rs.getString(grade);String bankaccount = rs.getString(bankaccount);String date = rs.getString(cdate);String explain = rs.getString(cexplain);ClientDataInfo clientdata = new ClientDataInfo();clientdata.setId(id);clientdata.setClientname(clientname); clientdata.setHan
36、gye(hangye);clientdata.setEnterprise(enterprise);clientdata.setCity(city);clientdata.setPhone(phone);clientdata.setMail(mail);clientdata.setStatus(status);clientdata.setGrade(grade);clientdata.setBankaccount(bankaccount);clientdata.setDate(date);clientdata.setExplain(explain);list.add(clientdata); c
37、atch (SQLException e) e.printStackTrace();finallyclose(rs, pstmt, conn);return list;2.公司资料管理设计公司资料管理设计主要包括对公司信息进行增加,显示,修改,删除等操作。用户可以通过功能导航进入公司信息管理页面。 (1)公司资料管理查询:用户客户对公司的情况进行增加、删除、修改等操作。如图3-8所示。图3-8 公司资料报表管理页面设计图(2)公司资料管理修改:客户能够对公司的信息进行修改。如图3-9所示。图3-9公司资料报表管理修改页面设计图主要代码如下: /* * 更新,修改用户 * param addus
38、er * return */public int updateCompany(ListCompanyInfo listcompany) int i=0;conn=getConn();try pstmt = conn.prepareStatement(update companysinfo set companyname=?,companynature=?,companycity=?,companyphone=?,companymail=?,companystatus=?,companygrade=?,legalrepresentative=?,companydate=?,companyexpl
39、ain=? where id=?);pstmt.setString(1, listcompany.getCompanyname();pstmt.setString(2, listcompany.getCompanynature();pstmt.setString(3, listcompany.getCompanycity();pstmt.setString(4, listcompany.getCompanyphone();pstmt.setString(5, listcompany.getCompanymail();pstmt.setString(6, listcompany.getCompa
40、nystatus();pstmt.setString(7, listcompany.getCompanygrade();pstmt.setString(8, listcompany.getLegalrepresentative();pstmt.setString(9, listcompany.getCompanydate();pstmt.setString(10, listcompany.getCompanyexplain();pstmt.setInt(11, listcompany.getId();i = pstmt.executeUpdate(); catch (SQLException
41、e) e.printStackTrace();finallyclose(pstmt, conn);return i;3.3.5系统管理模块 系统管理模块包括登录日志、系统信息、修改密码,用户管理4个部分。(1) 登录日志 用于查询用户登录的记录,记录什么时间登录,设计效果如图3-10所示。 图3-10 登录日志(2)系统信息 用于查询系统信息,如图3-11所示。 图3-11 系统信息(3) 用户管理该模块主要是添加,修改,删除,操作员信息、设置操作员的权限,如图3-12,图3-13所示。图3-12 用户信息管理图3-13 用户信息管理3.3.5客户投诉处理模块客户投诉处理模块的主要功能是处理客
42、户提交的投诉信息,获取客户的投诉单,进行处理,处理后将处理信息反馈给客户。如图3-14所示。图3-14 客户投诉处理第4章 系统测试系统详细设计完成后,往往要对系统进行测试,以便检验系统的性能和功能。这是一个严格的过程,必须认真进行。系统测试主要解决各模块之间的数据通信和数据共享问题以及检测系统是否达到用户的实际要求,是在整个系统范围内进行的。4.1 测试目标系统测试的目的是精心选取那些易于发生错误的测试数据,以十分挑剔的态度,找出软件中的错误,并改正错误。为了能准确地表达各模块要完成的功能,找出程序中隐藏的漏洞和错误,在正式投入使用之前解决出现的问题,减少不必要的麻烦,我们必须认真进行系统测试。从不同的角度进行多次测试,最终要达到预期效果,进一步完善程序的设计。测试客户关系系统是否存在漏洞,设计是否有缺陷,细节处理不完善等问题。4.2 测试平台4.2.1硬件测试时使用硬件要求如下: CPU: P4 1.8 GHz;内存:128MB以上。4.2.2软件测试前需作好软件上的一些相关配置,首先操作系统需符合如下要求:Windows 7,Windows xp或者 Windows 2000/ 2003;后台数据库使用MySQL;浏览器需要IE5.0及以上;Web服务器为tomcat6.0,其中在系统无异常情况下需要认真配置英特信息服务器.。4.3 测试方案4.3.1黑盒测试黑盒测