毕业设计论文基于Oracle的分布式客户关系管理(CRM)系统分析与设计.doc_第1页
毕业设计论文基于Oracle的分布式客户关系管理(CRM)系统分析与设计.doc_第2页
毕业设计论文基于Oracle的分布式客户关系管理(CRM)系统分析与设计.doc_第3页
毕业设计论文基于Oracle的分布式客户关系管理(CRM)系统分析与设计.doc_第4页
毕业设计论文基于Oracle的分布式客户关系管理(CRM)系统分析与设计.doc_第5页
免费预览已结束,剩余38页可下载查看

下载本文档

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

文档简介

福建农林大学本科毕业设计说明书设计题目: 基于Oracle的分布式客户关系管理系统分析与设计学 院: 计算机与信息学院 专业年级: 学 号: 学生姓名: 指导教师、职称: 2007年 5 月 16 - 37 -Subject: Analysis and Design of Distributed Client Relationship Management System Based on Oracle College: Computer and Information Science Specialty and Grade: Computer Science and Technology, 2005 Number:_Name: _ Advisor: Submitted time: May 16, 2007 目 录摘要IAbstractII1引言11.1课题的目的和意义11.2 Oracle 分布式数据库11.3 B/S 设计22系统概述33系统结构设计43. 1系统框架43.2体系结构43.2.1 Oracle分布式数据库结构43.2.2 Struts MVC框架53.2.3 Web应用体系框架54系统需求设计64.1系统描述64.2角色识别64.3用例识别65系统总体设计115.系统功能设计115.1.1功能列表115.1.2信息中心125.1.3系统面板125.1.4客户管理135.1.5销售管理135.1.6统计分析145.1.7用户面板155.2数据库设计155.2.1数据库需求分析155.2.2数据库总体设计165.2.3数据库表结构详细设计166系统实现206.1登录模块206.2用户面板模块216.3信息管理模块216.4系统面板模块226.5客户管理模块236.6销售管理模块246.7统计分析247系统部署267.1 CRM系统特性267.2部署架构267.3网络环境要求277.4服务器277.5工作站277.6软件系统278结束语28参考文献29致谢30附录31摘要从客户关系管理理论和应用出发, 深入研究了客户关系管理中的数据及功能。在对电子商务及企业信息化研究的基础上, 建立了一套成熟的实用CRM 的系统框架和层次架构。运用ORACLE分布式数据库技术建立起CRM 的实现。关键词: 客户关系管理; 电子商务; 分布式 ;Oracle;Abstract In this paper, we started from client relationship management theory and application, studied the data and function in the client relationship management. We built a mature and applied CRM system truss and layer frame on the basis of research on electronic business and information-based enterprise. Then we implemented CRM using Oracle distributed database technology. Key words: client relationship management, electronic business, distributed, Oracle;1引言1.1课题的目的和意义 CRM(Customer Relationship Management)就是客户关系管理。从字义上看,是指企业用CRM来管理与客户之间的关系。CRM是选择和管理有价值客户及其关系的一种商业策略,CRM要求以客户为中心的商业哲学和企业文化来支持有效的市场营销、销售与服务流程。如果企业拥有正确的领导、策略和企业文化,CRM应用将为企业实现有效的客户关系管理1。CRM是一个获取、保持和增加可获利客户的方法和过程。CRM既是一种崭新的、国际领先的、以客户为中心的企业管理理论、商业理念和商业运作模式,也是一种以信息技术为手段、有效提高企业收益、客户满意度、雇员生产力的具体软件和实现方法。CRM最大程度地改善、提高了整个客户关系生命周期的绩效。CRM整合了客户、公司、员工等资源,对资源有效地、结构化地进行分配和重组,便于在整个客户关系生命周期内及时了解、使用有关资源和知识;简化、优化了各项业务流程,使得公司和员工在销售、服务、市场营销活动中,能够把注意力集中到改善客户关系、提升绩效的重要方面与核心业务上,提高员工对客户的快速反应和反馈能力;也为客户带来了便利,客户能够根据需求迅速获得个性化的产品、方案和服务。CRM是一种手段,它的根本目的是通过不断改善客户关系、互动方式、资源调配、业务流程和自动化程度等,达到降低运营成本、提高企业销售收入、客户满意度和员工生产力。企业以追求最大赢利为最终目的,进行好客户关系管理是达到上述目的的手段,从这个角度可以不加掩饰地讲CRM应用是立足企业利益的,同时方便了客户、让客户满意。1.2 Oracle 分布式数据库Oracle是一个功能强大、应用广泛的大型分布式数据库管理系统,具有分布性、逻辑整体性、分布式计算、透明访问、均衡网络负载和可靠性较高的特性2,它对分布式事务、数据仓库有很强的处理能力,提供了一套有效的机制来保证数据的一致性、完整性和安全性2。该设计主要研究基于ORACLE的分布式数据库系统的设计与实现,介绍了基于ORACLE的分布式数据库设计方法,并对ORACLE数据库远程访问技术其分布式事务实现机制进行了深入探讨,阐述了分布式数据库技术在大型商业企业的系统结构设计及事务处理和查询中的实现过程。通过引入分布式技术,将多个站点上的数据库作来一个逻辑上的整体,数据一致性、完整性及安全性都得以实现,使信息资料的管理效率得以提高,并按实际需求设计一个安全、可靠、高效的分布数据库应用系统。利用SQL*NET对ORACLE分布式数据库进行联网,利用ORACLE远程数据访问技术和分布式事务处理能力,实现ORACLE 数据库的分布式应用架构让远程数据库之间的数据共享、存储和更新。采用ORACLE高级复制技术在各个分布站点间更新和同步数据。使应用程序从本地或远程数据库操作数据,通过数据库链接进行站点间通信。采用同义词、视图、快照技术来隐藏数据库对象的实际存放位置,实现对用户的透明访问,增强系统的安全性3。1.3 B/S 设计 在Internet环境下,采用BS结构技术,针对标准的连锁经营模式,开发一个完整CRM分布式数据库系统,并使它具有良好的通用性、实用性、安全,既提供了规范、标准的管理模式,又提供了灵活的接口,能适应不同的分布经营企业的情况。实现总部与各分站点数据交互,总部通过分站点数据的收集、汇总、分析、及时把握销售规律和市场趋势,准确制定相应的产品、价格、服务策略,加强对跨地区分布的许多分站点的监管。分站点能够及时获得总部的有关精神、任务及商场趋势,通过对比,了解自身的优势和缺点,确定发展方向,同时反馈诸如市场竞争、销售、服务等有关信息。2系统概述客户关系管理是一整套用于改变企业的传统思维模式的企业哲学;是一整套用于帮助企业持续盈利和发展的商业模式;是一整套用于帮助企业规范业务流程管理的管理工具;客户关系管理软件,是实施于企业市场营销、服务与技术支持等与客户相关的领域,通过多渠道(面对面直接销售、渠道销售、Internet、现场服务等)的客户交互管理,集中式数据管理,和数据分析以实现客户价值最大化的信息系统和管理系统。它通过提供快速和周到的优质服务吸引和保持更多的客户;通过对业务流程科学有效的管理降低企业的成本;帮助企业搜集、追踪和分析每一个客户,充分了解并满足用户的个性化需求并最终使企业与客户的关系以及企业的盈利都得到最优化4。3系统结构设计3. 1系统框架 本系统框架底层是电子商务系统,系统在客户基本信息、销售机会等数据源的支持下, 汇集了企业与客户双向活动中产生的实时数据和历史记录。系统框架最高层代表了实际的前台系统。客户、员工、合作伙伴可以利用它进行交流, 三部分均基于网络。3.2体系结构本系统利用JAVA Web编程技术实现,采用Struts MVC(Model-View-Controller 模型视图控制器)设计框架(由ActionServlet和Action作为Control来控制业务流程,jsp作为View为用户提供显示功能,Model由作为业务逻辑的Java Bean或EJB组件构成),由Hibernate O/R映射框架实现与ORACLE分布式数据库数据访问及分布式事务处理,ORACLE作为后台数据库。3.2.1 Oracle分布式数据库结构ORACLE 分布式数据库系统是一个客户服务器体系结构, 其结构如图 3-1。在网络环境中, 每个具有多用户处理能力的硬件平台都可以成为服务器, 也可成为工作站。多个服务器上的数据库对用户来说, 是一个逻辑上的单一数据库整体, 数据一致性、完整性及安全性都是对这一逻辑上的单个数据库进行控制的。服务器对共享数据的存取进行管理, 而非数据库管理系统的处理操作可以由客户机来完成。ORACLE 的分布式数据库功能允许用户开发的应用程序把多个数据库当作一个完整的数据库看待。SQL3 NET 允许多台运行ORACLE 产品的计算机相互通讯。ORACLE分布式数据库系统允许用户透明地操作远程数据库的数据, 可以用多个数据库满足多个工作组、部门或地区的需求, 并把它们连接在一起, 使应用程序看起来只有一个大型数据库。图3-1Oracle分布式数据库系统结构4在分布模式下,总部信息处理中心也可以设置多台中心服务器,作为总部的中心数据服务器集群和Web、应用服务器集群,并配置磁带机进行数据备份,双机热备可以保证系统的稳定和数据的安全。总部用户都通过浏览器方式(WEB SERVER)访问总部的应用服务器及数据服务器操作使用该系统。下属单位可以单独设置服务器供本单位用户使用,定期通过数据库同步复制到总部数据库中。3.2.2 Struts MVC框架1)、模型(Model):通常Action类中主要处理控制功能,尽量不包括业务逻辑,而是把业务逻辑的处理委托给其他组件处理,如JavaBean、EJB。2)、视图(View):Struts的视图组件可以包括:html页面,数据传输对象,ActionForm,jsp页面和自定义标记等。struts提供的标记库可以快速建立jsp页面,Struts Action Form对象用于框架包中,在用户和业务层之间来回传递客户机输入数据,框架包自动从请求中收集输入数据,并使用ActionForm对象将此数据传递给Action,然后在传递给业务层,Struts ActionForm本质上是一个JavaBean。3)、控制器(Controller):在struts中,用各种不同的组件完成控制器的功能,这些组件包括:ActionServlet类,Action类等。图3-2 Struts MVC框架图53.2.3 Web应用体系框架本系统采用的StrutsHibernate构架。在这个方案中,视图层是采用JSP技术结合Struts强大的TagLib来实现;业务层的核心部件是控制器,它由Struts的控制组件ActionServlet、ActionMapping及Action来实现,业务层还包含业务逻辑类,它由JavaBean来实现。当然,这些JavaBean里封装了与Hibernate的交互关系,业务层通过模型层来实现与数据库资源的交流,这一部分工作由Hibernate6来做。最底层是Oracle分布式数据库。4系统需求设计统一建模语言(Unified Modeling Language,UML),是系统开发的一个组成部分,本身并没有关于开发过程概念的定义和表示符号。UML的创始者比Booch 、Jacobson和Rumbaugh在Rational公司的支持下综合了多种系统开发过程的长处,提出新的面向对象的开发过程,称为Rational统一过程(Rational Unified Process,RUP)。RUP过程的核心工作流包括:业务建模、需求分析、系统分析与设计、实现、测试和系统配置。4.1系统描述CRM所贯穿的是从售前、售中到售后这样一条十分清晰的业务主线,用户从市场活动、营销策划,到挖掘机会、跟踪客户、达成交易,到支持服务,最后直至企业管理层的决策支持,可以说涵盖了用户市场、销售、服务和决策部门的所有业务流程。本系统功能包括:信息管理、系统管理管理、客户管理、产品管理、销售管理、服务管理、市场管理(决策统计)等。同时具有非常灵活的开放和集成性能,为后续的系统调整和整合提供便利7。4.2角色识别角色识别的任务是找出所有可能与发生交互行为的外部实体、对象和系统。它们的行为不受系统控制,但是可以提供输入给系统。 在前面的系统描述中,CRM功能主要用信息管理、系统管理、客户管理、产品管理、销售管理、服务管理、市场管理(决策统计)等。可知系统存在人员对信息公告、系统管理,要有专人处理销售管理信息、客服管理信息,还要有决策人员对相关信息进行统计分析。 综上所述,本系统主要存在四种角色系统管理员、决策人员、销售人员、客户管理人员。4.3用例识别UML的用例图较详细和确切地描述了用户的功能需求,使系统责任明确到位,奠定UML对系统建模的基础,这样,其他模型图的构造和发展依赖于用例图中所描述的内容,直至系统能够实现用例图中描述的功能。在角色的基础上,可以识别出与角色有关的用命,从而得到系统的用例模型,如图4-1所示:图4-1系统用例图n 信息管理用例图,主要对信息公告、公告类别进行CUID的操作,如图42如示:图42 信息管理用例图n 系统管理用例图,系统管理主要包括用户信息管理、及用户组、权限模块、权限分配及日志管理。图4-3系统管理用例图n 客户管理用例图,客户管理主要包括客户资料信息、客户反馈信息、客户服务信息进行添加、删除、修改、查询等管理图44客户资料管理及客户服务管理用例图图45 客户反馈管理用例n 销售管理用例图,主要包括产品信息、销售机会信息、报价单信息等管理,如图4-6所示:图4-6产品信息管理 及销售机会信息管理用例图图4-7 报价单管理用例图n 统计分析用例图,主要对销售信息、产品销售信息、客户信息及服务、反馈信息,如图4-7所示:图4-7统计分析用例图5系统总体设计5.系统功能设计 本系统CRM系统可分为三个功能系统,主要功能包括信息中心、系统面板、客户管理、销售管理、统计分析,代表着与销售、服务、支持和市场相关的业务流程的自动化,提高企业内部处理客户相关业务的内部效率,加快响应时间,从而提高客户满意度。本系统的三部分全面覆盖日常商务的各个环节,将帮助您更有效地处理您的商务活动。5.1.1功能列表表51 功能列表模块功能功能点说明信息中心信息管理增加公告信息修改公告信息删除公告信息查询公告信息类别设置增加公告信息类别删除公告信息类别修改公告信息类别查询公告信息类别系统面板用户管理增加用户信息修改用户信息删除用户信息查看用户信息查询用户信息权限组设置增加权限组修改权限组删除权限组查询权限组设置组所用有的权限权限模块设置增加权限模块修改权限模块删除权限模块查询权限模块用户日志查看用户日志客户管理客户资料增加客户资料修改客户资料删除客户资料查询客户资料客户反馈增加客户反馈 修改客户反馈删除客户反馈查询客户反馈客户服务增加客户服务修改客户服务删除客户服务查询客户服务销售管理产品管理增加产品信息修改产品信息删除产品信息查询产品信息销售机会管理增加销售机会信息修改销售机会信息删除销售机会信息查询销售机会信息报价单管理增加报价单信息修改报价单信息删除报价单信息查询报价单信息统计分析各地销售统计分析产品销售统计分析销售机会统计分析各地客户统计分析各地服务统计分析各地反馈统计分析用户面板个人桌面修改密码退出系统5.1.2信息中心该模块主要提供信息公告的管理及信息类别的管理。l 信息管理信息管理主要提供公司内部公告信息的添加、删除、修改及查询功能。l 类别设置类别管理主要提供公司内部公告信息类别的添加、删除、修改及查询功能。5.1.3系统面板本模块为系统提供完善的安全及管理机制。权限控制是网络安全的重要措施,系统管理员可在此模块完成用户的权限、管理、利用操作日志进行系统监控,以及对系统数据库的维护和管理,实现系统的多级安全性。l 用户管理用户管理模块主要提供了对用户基本信息的添加、修改、删除及查询功能,还有为用户设置用户组,实现权限设置。l 权限组设置权限组设置模块主要提供了用户组的编辑功能,包括添加、修改、删除及查询功能,还有为用户组设置功能访问权限,其中包含了为用户组添加、删除功能模块权限。l 权限模块设置权限模块设置主要为用户提供了权限模块的添加、编辑、删除。l 用户日志用户日志模块主要提供用户对系统操作日志的记录。5.1.4客户管理进行实时地、完整地管理不断更新的客户档案信息,以及在此基础上的客户价值分析,帮助企业发现和管理20%左右的最有价值的客户群。进行客户关系管理就要充分利用客户资源,通过与客户交流 , 建立客户个性化档案 ,与客户合作等方式,获得大量针对性强,内容具体 , 有价值的市场信息 , 包括有关产品特性和性能 , 销售渠道 , 需求变动 , 潜在客户等,成为企业经营决策的重要依据 。客户关系管理作为一个实实在在的系统和解决方案,能够帮助企业吸引潜在的客户和留住最有价值的客户。由于其对信息的有效集成,能对客户进行快速的反应,给予客户一对一的个性化服务 。l 客户资料本模块主要为用户提供了客户资料信息的添加、删除、修改及查询操作。l 客户反馈本模块主要为用户提供了客户反馈信息的添加、删除、修改及查询操作。l 客户服务本模块主要为用户提供了客户服务信息的添加、删除、修改及查询操作。5.1.5销售管理该模块主要功能包括:组织和浏览销售信息:对企业的产品进行管理,如产品种类的添加、价格的管理;对企业的销售机会进行管理,如销售机会的添加、跟踪等;对企业报价单的管理;销售管理提供方便易用的添加、删除、修改、查询等功能,形成直观详尽的产品列表和销售信息状况表。l 产品管理本模块主要为用户提供了产品信息的添加、删除、修改及查询操作。l 销售机会管理本模块主要为用户提供了销售机会信息的添加、删除、修改及查询操作。l 报价单管理本模块主要为用户提供了报价单信息的添加、删除、修改及查询操作。5.1.6统计分析统计分析是企业管理者必须经常进行的工作,决策水平的高低决定了企业的竞争力。本模块对客户、市场、销售等信息进行统计,用以分析业务的运行情况,为企业发展提供决策依据。为了形象地分析的结果,本系统还提供图形输出形式。l 各地销售统计分析通过图表显示各地销售统计信息,比较各地的销售情况,为公司销售决策提供了一个分析的资讯。l 产品销售统计分析通过图表显示本公司相关产品的销售情况,为公司产品管理方略提供了一个分析的资讯。l 销售机会统计分析通过图表显示本公司在本年度的销售情况,及时掌握公司的销售趋势。方便公司及进对销售方案做出相应的改变。l 各地客户统计分析通过图表显示各地客户总数,使公司能够针对不同的地域作为相应的策略。l 各地服务统计分析通过图表显示各地服务的统计,及时的反馈各地的服务情况。进一步了解客户的需求,对公司的整体方案做出相对应的更改。l 各地反馈统计分析通过反馈统计,及时地对客户、公司产品进行跟踪。能够进一步提高公司的服务体系的质量,快速对公司产品质量及相关情况进行了解5.1.7用户面板l 个人桌面主要为个人提供一些必须及时了解的资讯信息。l 修改密码为用户提修改登录信息l 退出系统5.2数据库设计5.2.1数据库需求分析数据库需求分析是系统开发周期的一个重要的阶段,也是工作量比较大的一项工作,其质量对系统影响颇大。随着现代软件的发展,手工分析方式已经很难满足系统数据库分析的要求,必须借助相关的工具。在开发本系统时,主要采用PowerDesigner对数据库进行分析设计。本系统主要采用ORACLE分布式数据库管理系统,通过PowerDesigner对数据库详细字段进行设计,并通过反向工程直接导入数据库并生成相关表结构及关系。通过上述系统功能分析,针对一般客户关系管理系统的需求,对于用户来说,就他们关心和能够使用的功能总结如下需求分析:u 信息中心模块n 信息表n 信息类别表u 系统面板模块n 用户基本信息表n 用户扩展信息表n 用户组表n 权限表u 客户管理模块n 客户资料表n 客户服务表n 客户反馈表u 销售管理模块n 产品表n 销售机会表n 报价单表5.2.2数据库总体设计 根据数据库需求分析,通过PowerDesigner对数据库进行相关设计,数据库总体设计图如下图所示:图5-1数据库总体设计图5.2.3数据库表结构详细设计基于上述的详细设计,我们根据模块功能需求要求设计到下列各表,这些表这间相互关联,共同存储着系统所需要的数据。在设计数据库表的过程中,要考虑到数据库设计一个表最好只存储一个实体或对象的相关信息,不同的实体最好存储在不同的数据表中,如果实体还可以再划分,实体的划分原则最好能够比当前系统要开发的实体的颗粒度要小;数据表的信息结构一定要合适,表的字段的数据一定不要过多;扩充信息和动态变化信息要分在不同的表里。l 信息中心表5-2 信息表属性描述数据类型允许 NULL值/范围IDIDVARCHAR2(32)不允许自动生成TITLE标题VARCHAR2(255)允许CONTENT正文CLOB允许INFOCLASS类别VARCHAR2(4000)允许PUBDATE发布时间DATE允许PUBUSER作者VARCHAR2(100)允许INFOFROM信息出处VARCHAR2(255)允许VIEWORDER显示顺序NUMBER允许STATUS状态NUMBER(2)允许表5-3信息类别表属性描述数据类型允许 NULL值/范围IDIDVARCHAR2(32)不允许自动生成TITLE标题VARCHAR2(255)允许CONTENT正文CLOB允许INFOCLASS类别VARCHAR2(4000)允许PUBDATE发布时间DATE允许PUBUSER作者VARCHAR2(100)允许INFOFROM信息出处VARCHAR2(255)允许VIEWORDER显示顺序NUMBER允许STATUS状态NUMBER(2)允许l 系统面板表5-4用户基本信息表属性描述数据类型允许 NULL值/范围USERID用户IDVARCHAR2(32)不允许自动生成NAME姓名VARCHAR2(255)允许SEX性别CLOB允许TEL电话VARCHAR2(4000)允许FAX传真DATE允许EMAIL电子邮箱VARCHAR2(50)允许IDTYPE证件类型NUMBER(2)允许IDNO编号NUMBER(2)允许表5-5用户扩展信息表属性描述数据类型允许 NULL值/范围USERID用户IDVARCHAR2(32)不允许自动生成ACCOUNT用户名VARCHAR2(255)允许PASSWD密码CLOB允许GROUPID用户组IDVARCHAR2(4000)允许REGTIME注册时间DATE允许STATUS状态NUMBER(2)允许表5-6用户组表属性描述数据类型允许 NULL值/范围GROUPID组IDVARCHAR2(32)不允许自动生成CODE组编号VARCHAR2(10)允许NAME组名称VARCHAR2(100)允许REMARK备注VARCHAR2(4000)允许STATUS状态NUMBER(2)允许表5-7用户组权限表属性描述数据类型允许 NULL值/范围GROUPID组IDVARCHAR2(32)不允许PRIVILEGE权限VARCHAR2(32)不允许表5-8权限表属性描述数据类型允许 NULL值/范围PRVID权限IDVARCHAR2(32)不允许自动生成PARENTPRVID父权限IDVARCHAR2(255)允许NAME名称CLOB允许REMARK备注VARCHAR2(4000)允许VIEWORDER显示顺序DATE允许STATUS状态NUMBER(2)允许ISSYS是否发布NUMBER(2)允许l 客户管理表5-9客户资料表属性描述数据类型允许 NULL值/范围CUSTID客户IDVARCHAR2(32)不允许自动生成CUSTNAME客户名称VARCHAR2(30)允许SEX性别VARCHAR2(5)允许TEL电话VARCHAR2(50)允许FAX传真VARCHAR2(50)允许EMAIL电子邮箱VARCHAR2(50)允许PHONE手机VARCHAR2(50)允许NOTES备注VARCHAR2(500)允许表5-10客户服务表属性描述数据类型允许 NULL值/范围SVID客户服务IDVARCHAR2(32)不允许自动生成SVTYPE服务类别VARCHAR2(30)允许CUSTNAME客户名称VARCHAR2(30)允许ATTENDANTS服务人员VARCHAR2(30)允许SERVICEDATE服务时间DATE允许NOTES备注VARCHAR2(300)允许表5-11客户反馈表属性描述数据类型允许 NULL值/范围FBID客户反馈IDVARCHAR2(32)不允许自动生成CUSTNAME客户名称VARCHAR2(30)允许FBTYPE反馈类别VARCHAR2(30)允许SUBJECT主题VARCHAR2(30)允许DESCRIPTION描述VARCHAR2(100)允许ANALYSIS分析VARCHAR2(3000)允许FBDATE反馈时间DATE允许l 销售管理表5-12产品表属性描述数据类型允许 NULL值/范围PID产品IDVARCHAR2(32)不允许自动生成PNAME产品名称VARCHAR2(30)允许PSHORTNAME产品简称VARCHAR2(30)允许PRICE价格NUMBER允许TYPE类型VARCHAR2(30)允许DESCRIPTION描述VARCHAR(100)允许表5-13销售机会表属性描述数据类型允许 NULL值/范围SOID销售IDVARCHAR2(32)不允许自动生成CUSTNAME客户名称VARCHAR2(30)允许SUBJECT主题VARCHAR2(30)允许TIME时间DATE允许CONCAT类型VARCHAR2(30)允许NOTES描述VARCHAR(300)允许表5-14报价表属性描述数据类型允许 NULL值/范围PLID报价IDVARCHAR2(32)不允许自动生成PRUDUCTNAME产品名称VARCHAR2(50)允许CUSTNAME客户名称VARCHAR2(30)允许UNITPRICE单价NUMBER允许COUNT数量NUMBER允许TOTAL总数NUMBER允许NOTES备注VARCHAR(300)允许6系统实现在整个开发过程中,按照软件工程的思想和原则来进行。 在实现本分布式应用系统时,考虑到界面的友好性、系统的易用性、安全性等方面,选用Windows 2003 Server作为服务器操作系统平台,采用Struts MVC框架,Hibernate O/R框架,JSP作为视图来实现系统功能。6.1登录模块登录模块是CRM必须的功能之一,当用户要对系统进行操作,需要用户处于登录状态。登录页面要求用户输入用户名和口令。在输入用户名和口令之后,系统将验证用户名和口令是否正确,如果验证成功,就使用户处于登录状态。否则,系统显示用户名或密码错误的信息。该用例的顺序图如图下所示:图6-1登录模块顺序框图图6-2登录图6.2用户面板模块用户面板模块主要显示用户一些待看的信息及待处理的事件,如重点客户、客户反馈信息、信息公告、销售机会信息等。用户面板模块图如下所示:图6-3用户面板模块图6.3信息管理模块 信息管理模块主要提供给登录用户,并且具有权限的用户对公告信息及信息类别进行相关的管理,如信息的添加、删除、修改、查询等操作。图6-4 信息查看顺序图图6-5信息管理图6.4系统面板模块系统面板模块根据登录用户信息判断是否具有操作权限,根据不同权限分别对用户信息、权限组、权限模块、用户日记等信息进行操作。例如对用户信息进行添加操作,当用户在用户列表视图或用户详细视图中单击“添加用户信息”按钮时,页面将跳转到添加用户视图页面,填入相关信息,单击“添加”按钮对用户信息进行添加操作。 图6-6权限设置管理图6.5客户管理模块客户管理模块主要针对客户资料、客户反馈资料、客户服务信息进行相关操作管理。例如修改客户资料,在进行客户资料修改操作时,修改要修改的信息,并点击“修改”按钮将会对该对象进行修改操作。图6-7客户管理图6.6销售管理模块销售管理模块主要对产品信息、销售机会信息、报价单信息进行相关的操作管理。用户在进行销售管理过程中,选择删除对象,单击“删除”就对所选对象进行删除。图6-8销售管理图6.7统计分析登录用户具有决策人员的权限,根据相关数据进行汇总统计,产生统计分析图。这一部分主要体现了分布式数据库远程访问的体现,通过创建数据库链接,实现远程数据的访问。例如要统计各地产品进行销售量统计分析,需创建如下的链接:Create database link BEIJING_LINKConnect to SYSTEM identified by SYSTEMUsing BEIJING;命令创建了“BEIJING_LINK”链接名,通过账户“SYSTEM”进行连接,服务名为BEIJING的服务器。然后建立PRICE_LIST的视图:Create view PRICE_LIST_BEIJINGAs select * from PRICE_LISTBEIJING_LINK这样就可以像使用本地对象一样查询视图PRICE_LIST_BEIJING.视图的使用可以使数据库对象对用户透明,增加了系统的安全性。在进行汇总统计时,先将本地数据及远程数据进行分别数据统计,然后进行叠加汇总。 图6-9各地产品销售图统计7系统部署7.1 CRM系统特性n 支持多数据库。包括SQL SERVER、ORACLE、MYSQL等。 n 支持多操作系统。NT、UNIX、LINUX n Java自身的跨平台特性,可运行于任何装有虚拟机的平台上 n 开放的JDBC数据库连接,可连接所有主流关系型数据库系统n 全面面向网络应用的WEB应用,基于WEB的技术,提供良好的Intranet应用方案n 基于大型数据库,利用大型数据库的大数据量的处理能力,实现良好的检索能力n 以JAVA技术为基础,良好的平台无关性,基于对象理论的语言。7.2部署架构按照各企业的分支机构的地理位置和网络连接条件的差别,数据库服务器存放位置可能有所不同在分布模式下,总部信息处理中心也可以设置多台中心服务器,作为总部的中心数据服务器集群和Web、应用服务器集群,并配置磁带机进行数据备份,双机热备可以保证系统的稳定和数据的安全。总部用户都通过浏览器方式(WEB SERVER)访问总部的应用服务器及数据服务器操作使用该系统。下属单位可以单独设置服务器供本单位用户使用,定期通过数据库同步复制到总部数据库中。 n 配置 SQL*NET Oracle 联网的基础是 SQL*NET8。它是一个在 TCP/IP 等标准网络协议顶层运行的软件层,能为驻留在不同机器上的各种 Oracle 产品间的通信提供接口,能连接客户机和服务器间的通信,也能连接服务器与服务器间的通信。这种通信主要是通过 3 个配置文件 TNSNAMES.ORA、LISTENER.ORA、 SQLNET.ORA 来实现的。 (1)、TNSNAMES.ORA 在 Oracle 分布式数据库中,数据库的每一个对象都是通过“完全识别对象名”即 FQON 来唯一识别的。FQON 由4 个部分组成:服务器名,实例名,拥有者名,对象名。要访问一个远程表,必须知道表的 FQON。在 SQL*NET 中,FQON 的信息存储在 TNSNAMES.ORA 中。下面是TNSNAMES.ORA 配置的一个样例: LOC=/*服务名 LOC*/ (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) /*通信协议为 TCP*/ (HOST= HQ) /*服务器名为 HQ 或其 IP 地址*/(PORT = 1521) /*通信端口为 1521*/ (CONNECT_DATA = (SID = LOC) /*数据库实例名为 LOC */ ) (2)、LISTENER.ORA 在网络的每一个服务器上都有一个 LISTENER.ORA 文件,文件 LISTENER.ORA 中列出了计算机上的所有监听进程及实例的地址和名字,它包含 4 个部分:头部分,内部进程调用地址定义部分,实例定义,操作参数。 (3)、SQLNET.ORA 这个配置文件由客户机和服务器使用,它包含关于Oracle names 的信息和其它客户机参数信息。 n 建立数据库链接 在 Oracle 分布式数据库中,访问远程数据库是通过建立数据库链接实现的9。数据库链接定义了如何从一个数据库访问另外一个数据库,同时也可以使用特殊的方式指定访问路径。如果需要频繁地使用一个远程数据库的连接,则需要建立一个数据库链。例如各子公司数据库要远程访问总部数据库的基表,需要建立如下的链接: create database link BEIJING_LINK connect to SYSTEM identified by SYSTEM using system; 命令 create database link 有 3个参数:(1)链接名(例如BEIJING_LINK );(2)连接账户(例中用户名是 SYSTEM,口令是 SYSTEM);(3)服务名(例中是system)。 其中(2)的连接账户如果不指定,将在远程数据库中使用本地用户名和口令登录。7.3网络环境要求本系统对网络硬件没有特殊要求,只要是配置有 Web 服务器的 INTRANET 网络都可以在其中运行。7.4服务器本系统支持UNIX小型机和PC服务器。服务器具有如下最低配置要求: 低档次PC服务器或高档PC机:CPU PIII750以上,512M内存,3G多余硬盘空间。一般适用于并发用户数量少于10人的分支机构。 7.5工作站工作站采用一般 PC即可,最低配置: CPU:P200以上,32M内存,1G多余硬盘空间。 7.6软件系统操作系统支持主流 UNIX 平台、Windows2000、NT4.0。应用软件设计采用标准 SQL 语句及JDBC标准接口,支持目前各种主流大型关系型数据库,包括:ORACLE、SQLSERVER、MYSQL等。8结束语在整个系统实现过程中,学习了Struts MVC 框架的实现及Hibernate O/R映射框架的优势,了解了设计模式的重要性。特别通过学习虚拟机技术来部署分布式环境,通过在一台计算机模拟多台计算机,并进行相应的环境配置,模拟一个分布式数据库数据分布统计的实现过程。在本机通过Vmware创建两个基于Windows Server 2003的操作系统,分别在上面部署两个ORACLE数据库服务器。在Oracle 分布式数据库中,各数据库之间的访问是通过Oracle远程数据库访问技术实现的。通过创建数据库链接,将分布式数据库当作单一数据库来处理,可以通过同义词和视图来提供数据库对象的透明性,我主要采用视图来实现各地数据统计,实现远程数据库访问。在整个开发过程中,由于相关技术掌握不够,及分析不够详细使系统整体设计有点混乱。随着代码量的不断增加,弊端就暴露出来了,整体设计显得杂乱无章。在开发过程中,学到不少的软件开发思想。在开发软件的过程中尽可能的做到封装,注重设计模式的使用加强系统的灵活性与可扩充性。参考文献1 用友CRM 技术文档 EB/OL/product/crm/2 刘莆迎 等 数据库原理及应用(oracle)实用教程 清华大学出版社.20043 葛卫民 基于Oracle高级复制的分布式数据库系统应用研究J.计算机工程与应用,2003,39(2):180-1814 赵文瑜、邵志清、闵高照等基于分布式数据库的CRM系统的设计与实现.华东理工大学学报2004-025 孙卫琴编著 精通Struts:基于MVC的Java Web设计与开发 电子工业出版社.20066 夏昕,曹晓钢,唐勇 编著 深入浅出Hibernate电子工业出版社.20057 邵佩英 等 分布式数据库系统及其应用 科学出版社.20058 姚文琳,王存刚,

温馨提示

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

最新文档

评论

0/150

提交评论