《基于排队论在线客服系统的优化设计与实现_1.pdf》由会员分享,可在线阅读,更多相关《基于排队论在线客服系统的优化设计与实现_1.pdf(66页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 1 摘 要 在线客服系统联系着企业与客户,是企业把握市场脉搏,掌握市场动向,了解客户信息的重要工具。企业要做到高效益和高效率的处理客户的要求,就必须优化在线客服系统的工作机制、服务效率,提高企业的服务质量,缩短对客户等待服务的响应周期,提高企业竞争力。本文首先对在线客服系统的特征和实际数据进行分析,确定可以用排队论对在线客服系统进行建模优化,通过对 M/M/n 和 M/M/1 排队方式性能的比较,决定用 M/M/n 排队方式对在线客服系统进行建模,在此基础上,分别从排队方式、客户容忍度、企业效率和决策策略四个方面对在线客服系统进行了优化设计。接着分别从功能性和非功能性两个方面对在线客服系统的
2、需求进行了分析,然后从排队方式、调度策略、功能结构、体系结构和数据库五个方面对系统分别进行了分析设计,在此基础上,在 J2EE 规范下实现了优化后的基于排队论在线客服系统,对其性能进行了分析,结果表明,优化后的在线客服系统性能明显优于未优化的客服系统。关键词:在线客服;排队论;分时策略;优化设计 Abstract Enterprise and the customer is linked by online customer service 2 system,it is the tool with which the enterprise to grasp the pulse of the m
3、arket,grasp market trends,understand customer information important.Companies to achieve high efficiency and high efficiency processing customer requirements,it is necessary to optimize the online customer service system working mechanism,service efficiency,improve the service quality of the enterpr
4、ise,to reduce customer waiting service response time,improve the competitiveness of enterprises.On the online customer service system characteristic and the actual data are analysed in this paper,which can be determined by using queuing theory to the online customer service system modeling and optim
5、ization,based on the M/M/N and M/M/1 queue performance comparison,decided to use M/M/N queue on online customer service system modeling,on the basis of on the way,separately from the queue,customer tolerance,enterprise efficiency and decision strategies in four aspects of online customer service sys
6、tem optimized design.And then separately from the functional and non-functional two aspects of online customer service system needs analysis,and then from the queue,scheduling strategy,function structure,system structure and the database of five aspects of the system are analyzed the design,on the b
7、asis of this,the J2EE specification achieved under optimized based on queuing theory online customer service system,its performance analysis,the results show that after the optimization,online customer service system performance are significantly superior to the optimization of the customer service
8、system.Keywords:customer service;queuing theory;Timeshare strategy;Optimization design 3 目录 第 1 章 绪 论.1 1.1 研究背景和意义.1 1.2 国内外研究现状.2 1.2.1 在线客服系统研究现状.2 1.2.2 排队论的研究现状.3 1.2.3 问题的提出.3 1.3 论文内容安排.5 第 2 章 排队论和在线客服系统相关技术介绍.6 2.1 排队论的基础知识.6 2.1.1 排队论概述.6 2.1.2 排队服务系统的基本概念.7 2.1.3 排队服务系统中的主要指标.7 2.1.4 评价排队
9、系统性能的基本参数.8 2.1.5 排队系统的类型.8 2.1.6 排队系统的优化.10 2.1.7 常用离散型概率分布.10 2.1.8 LittIe 公式.11 2.2 客服系统相关技术介绍.11 2.2.1 J2EE 平台.11 2.2.2 RIA 技术.14 2.2.3 MVC 设计模式.14 2.2.4 基于 Ajax 的 MVC 模式.19 2.3 本章小结.21 第 3 章 基于排队论在线客服系统的建模与优化.22 3.1 基于排队论在线客服系统建模.22 3.1.1 特征描述.22 3.1.2 排队系统的假设.22 3.1.3 实际数据的收集与整理.23 3.1.4 客户进入次
10、数的分布研究.24 3.1.5 客户服务时间的分布研究.25 3.2 排队方式的选择.26 3.2.1 M/M/1 排队方式.27 3.2.2 M/M/n 排队方式.28 3.2.3 性能分析.30 3.3 在线客服系统的模型优化.32 3.3.1 基于排队论在线客服系统的模型优化.33 3.3.2 基于客户容忍度的优化.33 3.3.3 基于企业成本考虑的优化.34 3.3.4 基于分时分级策略的优化.36 3.4 本章小结.37 第 4 章 基于排队论在线客服系统的设计与实现.38 4.1 基于排队论的在线客服系统需求分析.38 4 4.1.1 基于排队论的在线客服系统简介.38 4.1.
11、2 功能性需求.39 4.1.3 非功能性需求.41 4.2 基于排队论在线客服系统的设计.42 4.2.1 排队方式的设计.42 4.2.2 调度策略设计.43 4.2.3 系统功能结构设计.46 4.2.4 系统体系结构设计.47 4.2.5 数据库的设计.49 4.3 基于排队论在线客服系统的实现.50 4.3.1 系统的开发技术.50 4.3.2 系统的实现.51 4.4 系统性能分析.55 4.4.1 评价体系的建立.55 4.4.2 参数初始化.56 4.4.3 结果分析.57 4.4 本章小结.58 第 5 章 总结与展望.59 参考文献.60 致谢.62 第 1 页 共 62
12、页 第 1 章 绪 论 1.1 研究背景和意义 随着二十一世纪互联网技术的迅速发展,现在越来越多的企业单位纷纷建立起自己的网站系统,作为企业形象和企业产品的展示窗口,为了更好宣传企业文化和销售企业产品,如何提高来访客户的满意度,如何留住来访的客户,从而扩大企业规模,扩大企业市场,已经成为企业眼前迫切需要解决的问题1。在线客服系统,充分利用了二十一世纪互连网技术的优势,给企业和客户的沟通创造了二十一世纪互联网的神话。互联网的迅速发展扩大了客户对在线客服系统的市场需求。所谓在线客服系统,也称作网站前台,是一种以网站为媒介,向互联网来访客户与网站客服人员提供即时咨询,即时沟通的页面通信技术。在线客服
13、系统充分利用互联网技术来实现对客户的在线服务。在线客服系统是基于网页会话的,在线客服的出现代替了传统的在线QQ 客服,在线 MSN 等的使用,QQ、MSN 作为客服工具有一些弊端,如需安装软件、加好友、功能单一。虽然 QQ 以及 MSN 在某些功能在个人用户的使用上无法替代,但是网站在线客服系统作为一个更专业的网页客服工具,是与企业网站来访客户进行即时沟通的一款通讯系统,其良好的用户体验是无法比拟的。在线客服不仅仅是在线客服,同时还为网站提供流量统计分析、客户关系管理、来访客户轨迹跟踪等功能,完全超过了即时通讯工具的功能。国外很早就推出了整合免费电话、在线客服、留言为一体,提供流量统计分析、客
14、户关系管理、来访客户轨迹跟踪等功能的新一代在线客服系统,由于互联网的急速发展,在中国也为越来越多的人所接收,互联网已经成为国内中小企业的必争之地,所以出现越来越多的在线客服系统。随着电子商务产业的不断发展,客户对在线客服的方式和质量的要求也越来越高,传统在线客服系统正面临严峻的挑战。为了提高企业效率和客户的满意度,满足客户服务需求,提高企业自身竞争优势,需要设计及开发一个集适应性强、并发性、高效性于一身的在线客服系统。在线客服系统联系着企业与客户,是企业把握市场脉搏,面对市场变化做出敏捷反应的重要工具。企业要做到高效益和高效率的处理客户的要求,就必须通过科学合理的协调等待服务的客户,提高企业的
15、服务质量,缩短对客户等待服务的响应周期,提高企业竞争力。排队论(Queuing theory,又称随机服务系统)是研究排队系统的状态、概率 第 2 页 共 62 页 特征、运行规律以及最优控制的一门理论。通过对服务对象到来及服务时间的统计研究,得出等待时间、排队队列长度、系统空闲概率等数量指标的统计规律,然后根据得到的规律对服务系统的结构进行改进,或重新组织被服务对象,使得服务系统既能满足服务对象的需要,又能使服务机构的成本最经济或某些指标最优。在线客服系统中,网站访问者可以看作服务对象,在线服务系统为服务机构,因此,使用排队论对在线服务系统进行优化设计是可行的。用排队论对在线客服系统进行优化
16、设计,这不仅能提高在线客服系统的工作效率,减小企业的成本,对提供企业效率、促进社会发展是很有意义的。1.2 国内外研究现状 1.2.1 在线客服系统研究现状 在线客服系统成为一种客服趋势,它能使客户在浏览企业门户网站、获取企业业务信息的同时,可以快捷方便的通过该网站在线客服系统向企业的客服人员进行咨询,有利于提高客户的服务质量和服务效率,提高客户的满意度,提升企业形象和企业竞争力2-4。网站在线客服系统,英文可译为“Web IM”,是一个基于 Web 的实时通讯工具,网站访客只需点击网页中的对话图标或链接,无需安装或者下载任何软件,就能直接和网站客服人员进行即时交流。相比较其他即时通讯软件(Q
17、Q、MSN 等),网站在线客服系统能够实现和网站的无缝结合,为网站提供和访客对话的平台。国内最早的网站在线客服系统是“LR 软件”,又名“网站商务通”,它是人连人刘智勇 1999 年开始研制的国内第一款网站通讯专家软件。此后,各种版本的网站在线客服系统如雨后春笋般推出。日前,国内有几十家网站在线客服系统,诸如 51 客服、53KF,KF99、Live800,TQ 洽谈通、企客商务通、书生企业通、盛网在线通、5107 网站伴侣等,除其名称和功能外,客服系统的工作性能,工作效率以及客户满意度相差不大。相对于 QQ,MSN,UC 等其他即时通讯软件,网站在线客服系统有着鲜明和无与比拟的特点,实现了消
18、费前快捷沟通,消费后快捷咨询的快速转变,可以为工商业、企业发掘史多的潜在客户,化被动为主动,使销售机会最大化,提升客户信任感和满意度,是企业进行在线咨询、在线营销、售后服务的有力工具。日 第 3 页 共 62 页 前,网站在线客服系统己广泛应用于商贸、医疗、教育、物流、旅游、在线游戏等各个行业网站,成为企业不可或缺的咨询系统5。1.2.2 排队论的研究现状 排队系统最优化的目的在于通过对优化方法的研究,最终达到较高的人员利用率进而获得高的投入产出比。对排队系统优化设计以及对现有排队系统的控制过程进行优化是该方面研究的重点之一。对不同系统控制的优化问题,通常采用的方法有马尔可夫决策过程、相对优先
19、顺序等方法。近年来,排队系统的性能分析及其优化问题受到广大专家学者的广泛关注,也取得了很多成果。Boris M 在排队系统优化的研究中提出了一类动态规划方法。Jau.chuan Ke 针对服务台不稳定、双重休假策略、有限缓冲的 M/M/c 排队系统的优化问题提出了直接搜索优化算法。Jongwoo Kim 等对 M/G/1 排队模型的最优服务策略问题进行了较为深入的分析并提出解决方案。从企业经营成本考虑,希望用最少的服务人员做尽可能多的工作。但服务机构中服务人员数量相对较少时,如果等待服务的客户数量较多,就会增加客户等待时间和等待队长,影响客户的满意度,降低企业竞争力。因此企业通常采用提高服务员
20、的熟练程度,或者增加服务人员的数量的方法,来提高服务效率,从而减少客户的等待时间与等待队长,增加企业竞争力。因此,产生了企业成本与客户满意度之间的矛盾。企业决策者要从客户和企业自身两方面考虑,对一个排队系统进行优化设计或优化运行管理,在保证客户满意度的同时,尽可能降低企业成本。文献6从客户容忍度考虑排队系统的最优设计问题。一般的,企业要考虑客户能够容忍的等待时间和等待队长。能够满足客户容忍度的最优服务人员数量就是最优人员数量。但是,考虑到客户容忍的平均等待时间、最长平均等待队长等性能指标难以统计并且变化频繁,并且没有规律可循,难以进行统计分析。因此,这种方法也是存在缺陷的。1.2.3 问题的提
21、出 评价在线客服系统性能的指标主要体现在,企业效率和客户满意度。目前,第 4 页 共 62 页 国内外普遍使用的在线客服系统有在线对话软件,先来先服务在线客服系统、最短服务时间优先在线客服系统、最高优先级优先在线客服系统、随机分配在线客服系统。1.常用的对话软件每接待一个对话就得打开一个对话窗口,同一段时间如果客户过多,客户因排队时间过长而流失了一部分客户,客服则是手足无措7-8。另一方面,客户的访问和咨询存在忙期和闲期,忙期严重降低了客户的满意度,企业也由于忙期失去了部分客户;过多的闲期则大大降低了企业效率。2.先来先服务线客服系统,是对等待的客户,采用先来先服务的方式决定最优先服务的客户,
22、是国内采用最广泛的在线客服系统。这种策略的缺点是,此时间段内的客户越多,客户的平均等待时间就越长,而对于服务时间短的而排在等待队列后面的客户是不公平的,严重降低了这类客户的满意度。3.最短服务时间优先线客服系统,是对等待的客户,采用最短服务时间的方式决定最优先服务的客户。由于服务时间长的客户排列在等待队列的后面,如果此时间内不断有服务时间短的客户咨询客服,那么服务时间长的客户就一直排列在后面而得不到服务,这种策略也势必降低了服务时间长的客户的满意度。4.最高优先级优先线客服系统,是对等待的客户,采用具有最高优先级客户的方式来决定最优先服务的客户,此策略虽然兼顾了重要客户的服务,在平均等待时间和
23、客户满意度上有了一定的提升,但还是不能很好处理服务时间的忙期和闲期。5.随机分配在线客服系统,是对正在等待的客户,采用随机数的方式来决定最优先服务的客户。此策略因为随机性,没有对哪些客户产生不公平9,但也因为随机性,而没有让企业效率和客户满意度得到明显的改善。经过对目前国内外客服系统的横向比较和纵向比较,目前国内外在线客服系统都没能使企业效率和客户满意度同时达到令人满意的效果。因此,本论文设计并开发一种能让企业效率和客户满意度都得到明显改善的在线客服系统,该系统用排队论对在线客服系统进行优化设计,经过验证,系统能有效平衡提高企业效率和提高客户满意度之间的关系,具有重要的理论和实际意义。第 5
24、页 共 62 页 1.3 论文内容安排 本文共分为五章:第一章为绪论部分,首先介绍了本文的研究背景和意义;接着对目前在线客服系统和排队论的国内外研究现状进行了分析,总结了在线客服系统在企业效率和客户满意度等方面存在不足;最后给出了论文的内容安排,确定了文章的主要工作。第二章为排队论和在线客服系统相关技术介绍,首先介绍了排队论的基础知识;接着介绍了在线客服系统的相关技术,为文章的后续研究做好了理论铺垫。第三章为基于排队论在线客服系统的建模与优化,首先分析在线客服系统的特征,通过对实际数据的分析,建立了基于排队论的在线客服系统模型;接着分析了比较了 M/M/m 排队方式和 M/M/1 排队方式的性
25、能特点,结果表明 M/M/n 的性能特点明显优于 M/M/1;最后分别从排队方式、客户容忍度、企业成本和分时分级策略四个方面对基于排队论的在线客服系统进行了优化设计。第四章为基于排队论在线客服系统的设计与实现,首先从功能性和非功能性两个方面分析了基于排队论在线客服系统的需求;接着对系统的排队方式、调度策略、功能结构、体系结构和数据库进行了分析设计;最后根据前面的设计,实现了优化的在线客服系统,通过性能分析,表明优化的在线客服系统性能明显优于未优化的在线客服系统。第五章为总结与展望,总结了论文的主要工作,提出了论文需要继续完善和修改之处。第 6 页 共 62 页 第 2 章 排队论和在线客服系统
26、相关技术介绍 2.1 排队论的基础知识 2.1.1 排队论概述 排队论又被人们称之为随机服务系统理论10,是一门研究拥挤现象(排队、等待)的科学。更确切地说,它是基于研究各种排队系统概率规律性的一门学科,能很好地解决排队系统的最优设计和最优控制问题。追溯排队论起源,那得回到20 世纪初,而且仅仅是因为现在的一个普遍现象电话通话。1909-1920年,爱尔朗(A.K.Erlang),一个来自丹麦的数学家兼电气工程师,首次成功地用概率论的方法解决了电话通话存在的难题,从而诞生了一门应用数学学科排队论,但没有被数学界认同其重要性。知道 1930 年中期,由于费勒(W.Fener)引进了生灭过程,它才
27、正式被人们认可。排队论越来越在实践中得到检测,在二战期间和之后,运筹学虽然作为一个新兴领域,但排队论也成为了它的一个非常重要的内容。1950 年初,肯德尔(D.G.Kendall)进一步系统地嵌入马尔可夫(A,Markov)链方法研究了排队论11,推进了排队论的快速发展。从 1960 起现实存在的很多问题难以求的精确解又或求出的解很繁琐,而不适用,就导致了排队论研究的课题的日益复杂。由此人们就开始转向去研究近似方法。实际的需要产生并发展了排队论,并决定了它今后的发展方向。排队论有很广的应用范筹,一切服务系统都可以使用它,应用最多的有交通系统、计算机存储系统、生产力管理系统和通信等方面12。随着
28、计算机的迅猛发展,更是开拓了排队论应用的无限前景。这其中合理的排队规则是排队论的核心所在。排队服务系统由服务对象(客户)和服务机构组成。服务对象到来的时刻是随机的。最简单的排队系统的排队系统模型包括三个组成部分:输入过程、排队规则和服务机构。排队论模型的记号是 20 世纪 50 年代初由 D.G.Kendall(肯达尔)引入的,通常由 35 个英文字母组成,其形式为 X/Y/Z/A/B/C 。其中 X指顾客相继到达的间隔时间的分布;第 7 页 共 62 页 Y指服务时间的分布;M指负指数分布、D确定型、Ek k 阶爱尔朗分布。Z指服务台个数;A指系统容量限制(默认为);B指顾客源数目(默认为)
29、;C指服务规则(默认为先到先服务 FCFS)。2.1.2 排队服务系统的基本概念 排队规则:是指服务允许不允许排队,顾客是否愿意排队。损失制排队系统:顾客到达时,若有服务台均被占,服务机构 又不允许顾客等待,此时该顾客就自动辞去13。等待制排队系统:顾客到达时若所有服务台均被占,他们 就排队等待服务。在等待制系统中,服务顺序又分为:先到先服务,即顾客按到达的先后顺序接受服务;后到先服务。混合制排队系统:损失制与等待制的混合,分为队长(容量)有限的混合制系统,等待时间有限的混合制系统,以及逗留时间有限制的混合系统。2.1.3 排队服务系统中的主要指标 (1)排队长(LS)-指在系统中的顾客的平均
30、数(包括正在接受服务的顾客);(2)等待队长(Lq)-指系统中排队等待的顾客的平均数14;(3)等待时间(Wq)-指客户进入系统到接受服务的这段时间;(4)逗留时间(Ws)-指处于等待队列中的客户宁愿等待的时间;(5)忙期-指从顾客到达空闲的系统,服务系统立即开始,直到系统再次变为空闲的这段时间,它反映了系统中服务机构的工作强度,是衡量服务机构利用效率的指标;(6)闲期-指服务系统从忙期刚结束到忙期再次开始的这段时间;(7)服务机构工作强度-有效的服务客户人数与进入服务系统总的客户人数。第 8 页 共 62 页 2.1.4 评价排队系统性能的基本参数 当s个服务器被占用后,顾客自动离去。其模型
31、的基本参数与等待制排队模型有些不同15,我们关心如下指标:(1)系统损失的概率 ),(SloadpebPlost(其中 load 是系统到达负荷,S是服务台或服务员的个数.)(2)单位时间内平均进入系统的顾客数(e 或Re).1()1(lostlosteePRPR(3)系统的相对通过能力Q与绝对通过能力A.)1()1(,122lostelostelostPRQRPQAPQ(4)系统在单位时间内占用服务台(或服务员)的均值Ls./TRLees(5)系统服务台(或服务员)的效率./SLs(6)顾客在系统内平均逗留时间(由于 Wq=0,即为 Ws)./1TWs 2.1.5 排队系统的类型 排队系统的
32、服务模式按照客户的排队模式以及服务台的排列形式,可以分为以下几种:单对单、单对多、多对多和服务台串联、并联、串并联的结合的相互组合。按照服务模式,排队系统具体可以分为以下几个类型16:单对单服务台模型如图 2.1 所示。第 9 页 共 62 页 图 2.1 单对单服务台模型 在单对单服务台模型中,系统有一个服务台,一个排队队列。客户到达后,若服务台空闲则接受服务;否则,排队等待服务台空闲后再接受服务。这种模型适用于少量的客户服务系统。单对多服务台模型如图 2.2 所示。图 2.2 单对多服务台模型 在单对多服务台模型中,系统有 n(2n)个服务台,一个排队队列。有客户到达后,若有服务台空闲,则
33、接受服务;否则,在队列中等待,直到有服务台空闲后再接受服务。这种模型可以处理大量的客户服务要求。多对多服务台模型如图 2.3 所示。图 2.3 多对多服务台模型 在多对多服务台模型中,系统有 n(2n)个服务台,n(2n)个排队队列。客户到达后,若有服务台空闲,则接受服务;否则,可以选择排队队列较短的队列等待,直到相应的排队队列的服务台空闲后再接受服务。第 10 页 共 62 页 2.1.6 排队系统的优化 排队系统的最优化包括静态最优和动态最优。静态最优也称最优设计,是在服务系统设置之前,通过科学的理论计算分析,对未来的情况进行估计,为设计人员提供理论依据。比如电话局的规模,机场跑道数量等的
34、设计;动态最优是指对己有排队系统寻求最优的运行策略17-18。比如超市排队付款人数太多,需要增开交款台,虽然增加了企业成本,但是却减少了客户付款的等待时间,提高了客户满意度。因此,对排队系统的设计或者管理运行中,需要考虑服务机构和客户双方的利益,使得在企业成本或者客户满意度方面,系统达到最优化。优化的参数指标函数可以是等待时间,也可以是成本或者收入。应用排队论对排队系统进行最优化设计或者运行管理,可以创造更好的经济效益和社会效益。排队系统的设计与运营管理,既要考虑服务机构的利益,又要考虑客户的利益。企业的决策者需要在某种合理指标,比如企业成本,客户容忍度等方面使得排队系统性能最优。由于客户对服
35、务的需求是随机的,不能由企业控制。因此,企业解决问题的关键是确定企业服务人员服务效率,或者是确定排队系统中服务台的数量,或者选择适当的客户的服务规则。2.1.7 常用离散型概率分布 1.泊松分布 泊松分布与指数分布有密切的关系19。当顾客平均到达率为常数的到达间隔服从指数分布时,单位时间内到达的顾客数 K 服从泊松分布,即单位时间内到达 k 位顾客的概率为:记作(Poisson),泊松分布在排队服务、产品检验、生物与医学统计、天文、物理等领域都有广泛应用。2.负指数分布 一个连续性随机变量 X,若它的分布密度函数为20:第 11 页 共 62 页 其中,常数0,则称随机变量 X 服从参数为的负
36、指数分布。X 的概率分布函数为:2.1.8 LittIe 公式 设e表示单位时间内实际进入系统的客户数量,L 表示平均队长,q表示平均等待队长,W 邢为平均逗留时间,Wq 为平均等待时间。当排队系统达到稳态时,假定系统中1,2nn,在等待制系统中,e,则有以下 Little公式:又假定平均服务时间对所有的1n 为常数1l/,则有:通过 Little 公式,只要知道qqLLWW、四者之一,就可以求的其余三者。另外,还有 2.2 客服系统相关技术介绍 2.2.1 J2EE 平台 J2EE 囊括了许多组件,这些组件主要起到简化和规范应用系统的开发与部署的作用,进而提高系统的灵活性、安全性、重复利用性
37、的价值,是一套完全和传统技术不同的开发架构21。J2EE 核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循 J2EE 架 第 12 页 共 62 页 构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,导致企业内部或外部很难相互连通的问题。开发者可以在依循J2EE架构规范的基础上进一步开发企业级别的运用;为了确保不同J2EE平台与各类产品之间的兼容性,不同的 J2EE 供货商会支持不同 J2EE 版本内所拟定的标准。换句话说,J2EE 架构的应用系统可以运用在不同的应用服务器,不用或只须稍稍修改少量代码就能大幅
38、度的提高应用系统的可移植性。J2EE 是以企业与企业之间的运算为导向的 JAVA 开发环境,它的技术规范主要由升阳(SUN)与 IBM等厂商协同业界一起拟定。J2EE 架构有很多不同的组件的定义,如 Web Component、EJB Component等,而且还有一个强大的功能就是能让已经开发完的组件或者已经购买回来的组件能进一部组装成不同的系统,可再次被利用,有很高的利用率。对一个开发者来说,他可以灵活运用不同的开发平台,不用专注底层繁琐程序的撰写工作,只需要注重各种应用系统的商业逻辑和架构设计就可以大幅提升应用系统的开发与部署效率。Enterprise Java Beans 是 J2EE
39、 的核心规范。按 EJB 不同的特性可分为三种,它们是 Message Driven Bean、Entity Bean 和 Session Bean。其中的 Session Bean 和 Entity Bean 可以说是 EJB 的鼻祖,在EJB 1.x版本推出时这两种EJB规格就已经存在,而Message Driven Bean是在 EJB 2.0 的规格之中的。目前最受业界程序设计师或者是网页设计人员喜爱的是 JSP/Servlet。这些程序设计师或者是网页设计人员利用 JSP/Servlet 的便利性可以在 J2EE 服务器之上开发有关的应用,或是整合公司内部的各项资源。依照应用领域的不
40、同,Java 2 平台共分为三个大的版本:J2EE、标准版本 J2SE、微型版本 J2ME,以及 Java Card 等。从整体上说,J2EE 是 Java 技术不断适应和促进企业级应用过程中的产物,也是使用 Java 技术开发企业级应用的一种事实上的工业标准(Sun 公司出于其自身利益的考虑,至今没有将 Java 及其相关技术纳入标准化组织的体系),为了克服传统 Client/Server 模式的弊病,Sun 就进一步推出了 J2EE,迎合 Browser/Server 架构的潮流,为应用 Java 技术开发服务器端应用提供一个平台独立的、可移植的、多用户的、安全的和基于标准的企业级平台,从
41、而简化企业应用的开发、管理和部署。J2EE 是一个标准,而不是一个现成的产品。各个平台开发商按照 J2EE 规范分别开发了不同的 J2EE 应用服务器,J2EE 应用服务器是 J2EE 企业级应用的部署平台。由于它们都遵循了 J2EE 第 13 页 共 62 页 规范,因此,使用 J2EE 技术开发的企业级应用可以部署在各种 J2EE 应用服务器上,J2EE 有多方面的优点22-24。1.开发高效。J2EE 的的开发人员只需要花时间在如何创建商业逻辑上即可,加为中间件供应商已经把其中一些很繁琐的、通用的服务端任务完成。这样就明显地缩短了许多开发的时间。高级中间件供应商通常提供一些中间服务,有的
42、是复杂的,服务有。持续性服务:开发人员更易于开发与维护,而不用对编写应用程序对数据访问逻辑访问,J2EE 能快速生成与数据库无关,更简便的应用程序。状态管理服务:开发人员能够更快地完成程序的开发,不用关心如何管理状态,通常只需要编写更少量的代码。分布式共享服务:J2EE 极大在整体部署的伸缩性上有了极大的提高,开发人员只需要编制高效的代码和高性能的系统25。2.可伸缩性。在商业运作的大量新客户,企业必须选择一种能够提供极好的可伸缩性的平台支满足这类商业运作的系统。而 J2EE 的供应商拥有更广泛的策略,允许多服务器同时部署,能消除系统的瓶颈问题,同时部署也可达到数百个处理器,满足商业需要,实现
43、系统的伸缩性。3.支持异构环境。J2EE 的语言 JAVA 是多平台的,不依赖特定的操作系统、硬件和中间件。因此 J2EE 也可以只需要一次开发编译,到处运行,可部署到多种平台,这在异构企业中是非常关键的。J2EE 组件可以部署到异构环境中,节省包括制订方案、开发实施的费用。4.可用性。企业公司的运转需要一个 24 小时全天服务器端平台。因为 Internet 是全球化的,在任何时间停止运转都可能造成严重的不可挽回的损失。若意外停止运转,后果是灾难性的。J2EE 可以部署到长期运转的操作环境而支持长期的可有性。如 Windows 环境,或者更安全的 Linux 操作系统,安全健壮的操作系统可达
44、到99.9%的可用性。第 14 页 共 62 页 2.2.2 RIA 技术 Rich Internet Applications 的缩写是 RIA,翻译成中文是富因特网应用程序(Macromedia 中文网站翻译为 Rich Internet 应用程序)。建立在页面基础上、在服务器端进行数据传递的模式是传统网络程序的开发的特点,在 HTML 页面之上建立网络程序的表示层,使 HTML 是适合文本格式,网络浏览者越来越高的、越来越全方位的体验要求已经使得传统的基于页面的系统渐渐不那么受欢迎了,这个现象被 Macromedia 公司取名为体验问题(Experience Matters),为了解决这
45、个问题,开发者就研发了富因特网应用程序(Rich Internet Applications,缩写为 RIA)。RIA(Rich Internet Application,富互联网应用系统)技术使用起来很方便,它允许我们像以一种使用 Web 一样简单的方式在因特网上部署富客户端程序。相对于用 HTML 能实现的接口 RIA 实际上就是一个更加健壮、反应更加灵敏和更具有令人感兴趣的可视化特性的用户接口。人们所猜测的事情是RIA 将来能够完全代替 HTML 应用系统,但不管它能否如人们所猜测的那样,对于那些通过运用胖客户端技术进行复杂应用系统研究的机构来说,他们认为RIA确实提供了一种廉价的选择。
46、对于企业,部署 RIA 的优点也是明显的。RIA 无需替换更多的应用程序,中需要在现有的 Web 应用程序中继续使用包括 J2EE 的模型。并且利用 RIA 技术,能够更轻松也建立更易使用、更迅速的应用程序。RIA在无刷新页面的前提下提供快速响应界面,在消息确认前提下提供 互动用户界面,在离线前提下提供拖放等用户界面特性,RIA 具有 Web 应用程序的特点,包括实时互动和跨平台等。在此外,RIA 还可以让企业产生多元化效益,包括减少带宽成本、提高品牌形象、提高企业产品销量、增强客户关系等26。2.2.3 MVC 设计模式 MVC 由 Trygve Reenskaug 提出,首先被应用在 Sm
47、allTalk-80 环境中,使许多交互和界面系统的构成基础,Microsoft 的 MFC 基础类也遵循了 MVC 的思想。对于界面设计可变性的需求,MVC 把交互系统的组成分解成模型、视图、控制三种部件。模型部件是软件所处理问题逻辑在独立于外在显示内容和形式情况下的内在抽象,封装了问题的核心数据、逻辑和功能的计算关系,他独立于具体的界 第 15 页 共 62 页 面表达和 I/O 操作。视图部件把表示模型数据及逻辑关系和状态的信息及特定形式展示给用户。它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。控制部件是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传
48、播,确保用户界面于模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现对模型的计算控制,是使模型和视图协调工作的部件。通常一个视图具有一个控制器。模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化-传播机制27。MVC 模型包含了应用问题的核心数据、逻辑关系和计算功能,它封装了所需的数据,提供了完成问题处理的操作过程。控制器依据 I/O 的需要调用这些操作过程。为了让视图获取显
49、示数据,模型还为其提供了访问其数据的操作。各个相互依赖部件之间的注册关系体现了变化-传播机制的本质。这种变化-传播机制是在模型数据和状态发生变化的条件下激发的,这就决定了模型数据和状态发生的变化连接了模型、视图和控制器。视图把信息转达给用户是通过显示的形式。显示的方式有很多种,不同的视图会通过不同的显示方式来表达模型的数据和状态信息。每个视图有一个更新操作,它可被变化-传播机制所激活。当调用更新操作时,视图获得来自模型的数据值,并用它们来更新显示。在初始化时,通过与变化-传播机制的注册关系建立起所有视图与模型间的关联。视图与控制器之间保持着一对一的关系,每个视图创建一个相应的控制器。视图提供给
50、控制器处理显示的操作。因此,控制器可以获得主动激发界面更新的能力。控制器接受用户的输入是通过采用时间触发的方式。这就有一个问题,控制器是如何获得事件的呢?那就得依赖于界面的运行平台,最终把事件转化成对模型或相关视图的激发操作。这个转化过程是控制器通过事件处理过程对输入事件进行处理,并为每个输入事件提供了相应的操作服务的过程。模型的变化其实可以自行改变控制器的行为,例如对某些事件进行禁止操作。这些变化都是建立在控制器的行为依赖于模型的状态的基础上,当模型状态发生变化则控制器应该在变化-传播机制中进行注册,并提供一个更新操作。第 16 页 共 62 页 实现基于 MVC 的应用需要完成以下工作,如