CRM的英文是Customer Relationship Management,中文既是“客户关系管理”。它是在企业客户购买行为的个性化、市场竞争空前激烈、信息技术和企业信息化管理理念的推动下应运而生 的。“客户关系管理”是一种以客户为核心的经营管理理念,是新一代企业运营的标志。在当今日益激烈的企业运营环境下,更多的企业是通过对客户信息资源的整 合,在企业内部达到资源共享,从而为客户提供更陕速周到的优质服务,吸引和保持更多的客户,根据对客户特征、购买行为和价值取向的深入分析,为企业的决策 提供科学、量化的指导,更有效的管理客户关系,降低企业运营成本。本文就中小型软件公司CRM系统探讨设计方面的技术。
1 企业的CRM需求分析
相对于大型企业的资源优势,中小企业在需求分析过程中更加注重实效,因此在CRM系统的需求分析阶段投入大量的人力、物力。根据企业客户提供需求列表,到客户企业体验工作流程,与企业负责人员详细讨论最后确定最终的系统模块。
2 系统模块设计
根据需求列表和功能相似的原则,将整个系统分成四个模块:基础配置模块、客户管理模块、员工管理模块和客户服务管理模块。
2.1 模块内容
(1)基础配置模块
主要包括一些系统需要的基础设置。有区域、客户等级、客户业务类型、客户状态和部门设置5部分。公司主要有4个部门:开发部、销售部,测试部和客服部。
(2)客户管理模块
客户管理模块主要处理客户的一些资料,以及与公司有关的一些联系人的信息。
(3)成员管理模块
主要用于管理公司内部的人员。包括人员的基本资料、工作日志、任务计划等。
(4)客户服务管理模块
用于处理一些与客户沟通的信息。包括客户需求的处理、客户投诉的处理、客户实施记录、合同管理等。
2.2 设计类图
以客户管理模块为例具体分析功能模块并设计类图。
该模块的主要功能包括:客户的管理和联系人的管理。考虑到客户和联系人的属性比较多,采用实体设计的模式完成其设计。两大功能分别包含两个类:实体类和实体方法类。实体方法类其实就是实现了对实体的调用。
客户实体方法类,主要实现一些与客户资料相关的操作,如添加客户、查询客户等。
联系人信息实体类,此类主要为了实现联系人对象与数据库中联系人资料的映射,这样对联系人的操作更加便捷。
联系人实体方法类,实现了一些与联系人相关的操作方法,包括添加、查询等。
3 数据库设计
数据库设计主要考虑如何以最简单的关系存储数据信息,而且数据表之间的关联必须正确的体现。根据需求列表和功能设计将需要的信息分类,保存在不同的表中。以客户资料表信息为例介绍表与关联,结构如表1。
数据表之间的关系通过ID来关联,在本系统中,客户表几乎与所有的表都有关系,都通过主键UserID与其它表关联。客户表中的资料非常详细,但并 不是所有内容都必须登记在其中。为了减少数据冗余、便于维护,设计时将城市、客户等级、客户业务类型和客户状态4个单独列出来,并分别为其设计一个表,用 于存储信息。并将这4个表的主键保存在客户表中,作为客户表的外键。在数据库中还有一个很重要的表就是员工表。因为每一个功能模块的操作功能都有员工的参 与,根据模块设计员工表与其它表之间的关系。除了这些主要的关系之外,数据库中还有一些小关系,例如区域和城市之间的关联,部门与员工之间的关联,这里不 再赘述。
本系统中所有数据操作方法,都是用Microsoft提供的数据访问助手SqlHelper。SqlHelper是一个数据操作类,主要包括3类方 法:ExcuteNonQuery、ExcuteScalar和ExcuteREader。虽然只有3类方法,但通过方法的重载,此类共提供6个操作数据 的方法。通过这些方法,可以减或逻辑层与数据层之间交互,方便程序的开发。
4 总结
中小企业客户关系管理系统主要采用的是B/S结构的三层架构。表示层使用ASP.Net2.0的可视化编程界面,轻松实现了与用户的图形交互界面设计:使用SQL Server 2005建立数据库。我们对此系统作了简单的测试,此系统运行安全可靠。
在国内软件市场竞争不断加强的形势下,客户对行业服务高质量、灵活性、多样化和个性化期望值日益提高,吸引和留住客户成为企业运营的立足之本。CRM系统的应用,使得企业能够面对复杂的外部环境,提高自身核心竞争力,提高整体经营和服务水平。