呼叫中心中可定制报表系统的设计与实现(二)
上海易谷网络科技有限公司 赵延超 2010/01/13
第三章 可定制报表系统分析和总体设计
图3.1 报表系统用例图
根据用例图,在对其进行功能分析后,该系统首先需要具有以下几个功能:
1.数据库配置管理功能
本报表系统主要的功能是通过呼叫中心中业务导向的历史数据报表,为企业提供综合性信息分析。而因为历史报表是由呼叫中心数据库中的原始数据进行提取和挖掘生成的,所以数据库的配置模块也就成为了该系统最基本的模块,主要完成对呼叫中心对象,以及相关的报表数据的配置。另外,系统中所有参数的配置,也由配置数据库管理模块来管理。
2.报表设计功能
该功能是系统使用的核心,用户按照系统事先给定的报表逻辑定义的数据规则,根据实际情况,设计自己所需要的报表。
3.报表展现功能
通过该功能的设计,用户可以对报表采取适合自己的报表展现工具来对报表数据进行展现。
4.报表传输功能
用户可以将报表工具生成的报表打印,也可以将数据库中的数据以表格形式进行打印,然后再以各种方式发送给企业决策者。同时,用户还可以通过因特网采用浏览器来观看,或是直接以EMail方式递送到相关人员处。
5.数据查询功能
用户可以直接以SQL语句对数据仓库中的数据进行查询,也可以通过其他数据库查询工具来查询报表数据。
6.数据定义功能
对系统中的数据进行规范定义,以使系统灵活调用。
7.系统安全管理
管理用户进入系统的用户名,密码等个人信息,保证系统的安全使用。
另外,为了满足报表的灵活多变的需求,对本系统的设计要求还应该有以下特点:
1.灵活多样
提供给报表最终用户可视化的报表分析和设计工具,具有报表自定义设计的功能。对不同的报表需求,不仅可以进行标准报表的设计和生成,用户还可以灵活而简单地利用此工具根据其逻辑定义创建新的统计规则和报表生成方式,以满足正确的数据需求。
2.界面友好,操作方便
在Windows环境下设计一系列可视化的报表生成向导,实现数据自动生成,让使用者入门和操作简单方便,维护和扩展方便。
3.标准化的报表存取
一套标准化的报表工具,来监视与分析话务员的状态与工作表现、来电的管理、来电转接与 IVR 的状态、以及在因特网上的互动等。这些报表可以依照管理者的需求而在时间上以每一刻钟、每小时、每天、每周、每月、每季或每年为单位来出数据,做到时间上完整。
4.客户化的报表内容与显示方式
需要对任何报表展现工具都具有很好的支持。可以通过简单易用的报表绘图工具,提供改善质量相关的各种报表。从而,客服中心的管理者可以根据不同的业务需求进行交互分析,例如产品销售与客户满意度等。
5.最佳化的报表结构
为使报表生成与数据分析的过程达到最佳化,系统架构依循数据仓库的工作方式,先将原始数据由挖掘出来后,写入ODS (Operational
Data Source)数据库。ODS数据库中的原始资料将被萃取,预先被计算整理,而后转入数据仓库作进一步的报表生成与分析。以这样的方式可以将大量的资料运算过程划分成多个步骤,在最短的时间内生成正确的报表。
6.报表生成美观、整齐、规范。
它支持动态的报表设计,具有灵活,通用报表设计规范,报表样式多样化。联络中心代理人和主管都可以轻松查看宝贵的性能指标,以驱动日内性能改进。
3.2 报表系统总体设计
3.2.1 系统功能模块划分
本系统的系统架构模型是基于结构化分析方法和面向对象的思想,运用“自顶向下逐步求精”和“自底向上综合”相结合的方式,采用抽象化的手段,将比较复杂的单一的大系统分解为若干个简单的模块,并力求模块之间保持较强的独立性,即各模块之间的高内聚低耦合。根据系统的高内聚低耦合、较强独立性的要求,报表系统设计包含逻辑设计和物理实现。逻辑设计是指根据报表的逻辑定义,对不同形式的报表需求实现报表的逻辑设计;报表的物理实现是具体描述报表的实现流程和具体实例。
通过对系统总体构架的分析,本节对系统详细划分为各功能模块,并介绍各功能模块的设计方法。系统功能模块划分如图3.2所示。
图3.2系统功能模型图
从功能模型图中分析,可定制报表系统主要包括数据库模块、数据ETL管理模块和报表管理模块三大模块。下面来介绍这几个功能模块:
1.数据库管理模块
数据库管理功能是实现报表系统的逻辑设计的基础,它主要负责数据库结构的逻辑定义和逻辑解析。逻辑定义是对统计业务需求的精确表示,实现对报表数据和报表格式的配置,使用者可以根据不同的报表模式设计不同的逻辑定义,并且有很好的通用性。逻辑解析是指它能够清楚地描述报表数据及其含义,对逻辑定义信息解析并设计相应报表模式的数据规则,是报表模式定义的很好应用。
数据库管理模块包括配置数据库模块、ODS(Operational Data Source)源数据模块和报表数据库模块。
配置数据库主要负责存储报表系统的基本配置,包括呼叫中心中相关对象的信息,报表数据的统计信息,模板信息等。
ODS源数据库主要用来存放从呼叫中心数据库收集来的源数据。经过简单要求的处理后,把其中的数据按照一定的规则进行储存。
报表数据库中得到的数据是最终报表生成的直接数据。
2.数据ETL管理模块
数据ETL管理模块主要包括数据抽取模块、数据过滤模块、数据转换模块、数据加载模块。
数据抽取模块主要负责源数据的抽取。数据过滤模块是根据一定的数据规则,把数据进行过滤,去掉那些与需求无关的数据。数据转换模块负责将数据转换为正确的可识别的数据。数据加载模块负责数据装载到目的数据库中。
3.报表管理模块
报表管理模块主要负责不同需求报表的设计,以及报表数据的最后展现。报表管理模块又分为报表设计模块和报表展现模板。
报表设计模块可以按照用户需求设计出其需要的报表规则,然后交给数据ETL模块对源数据进行处理,相应的报表生成数据就会放到报表数据中。
报表展现模块负责报表的展现,它通过一定的报表工具,对报表格式和样式进行设计,再将报表数据库中的数据按照其设计规则读取出来并生成报表。同时,用户可以对其生成的报表进行打印,也可以通过网络将报表数据发给指定目标等,再生成最终的报表。它还负责报表格式的维护,完善用户对报表形式的需求。
3.2.2 软件体系结构设计
根据可定制报表生成系统的需求分析和功能模块分析,该报表系统的软件体系结构如图3.3所示。
图3.3 软件体系结构图
根据软件体系结构图,首先呼叫中心通过与报表系统的接口,将报表相关数据按照一定的模式存放到ODS源数据库中,期间经过一些模式和列属性的处理。这是报表系统的数据基础。
在呼叫中心源数据存入ODS源数据库后,ETL服务首先读取配置数据库中对报表数据的基本配置。根据其配置信息以及数据库管理模块的逻辑定义来解析报表统计的各对象的信息和所有的报表需求则,然后把ODS数据库中的数据进行过滤,去掉那些与报表需求无关的数据,只抽取报表需求数据,并将其放入临时数据库中,以供处理。
然而,从数据源中抽取的数据不一定完全满足目的库的要求,例如数据格式的不一致、数据输入错误、数据不完整等等。数据转换模块主要功能是把数据过滤模块过滤后的数据进行数据转换和加工,最终转换成报表工具识别的数据。
接着,数据加载模块将转换模块转换和加工后的数据按照一定的要求装载到目的库中,形成报表数据库。报表数据库中得到的数据是经过处理以后的数据,其格式已经经过处理,成为完全符合报表要求的最终数据。用户可以通过报表展现工具把报表数据库存放的数据直接取出来,从而生成满足需求的报表。
3.3 报表系统软件体系结构精化
在前面对报表系统的需求分析和软件体系结构设计基础上,本节将对报表系统的体系结构进行结构细分和功能具体设计。
根据软件体系结构设计,该报表系统主要流程是把呼叫中心收集到数据库中的源数据进行抽取、转换最终加载到数据仓库中,从而形成报表。该体系结构各部件精化后架构如图3.4所示。
图3.4 系统体系结构精化图
以上架构图中的呼叫中心是指呼叫中心系统的基础话务功能部件,它是整个报表系统的基础,为其提供最初的数据来源,包括其基础部件的通讯等。
而当呼叫中心进行通讯时,它首先把所有的话务信息实时地传给状态服务器,然后状态服务器以一定的格式把所有关于电话的交互信息和统计对象相关信息纳入ODS源数据库中。且状态服务器支持客户互动网络,它可以同时连接一个或一个以上的计算机网络。
报表系统各部件根据功能模块模型分析,其主要功能分为三个部分:
1.数据库管理部分
该部分是对系统数据的存储管理,它包括配置数据库,ODS源数据库,临时数据库,报表数据库管理。
配置数据库
它是呼叫中心底层数据库,其中含有所有的模板、统计对象以及呼叫中心的数据相关配置等。在ETL服务启动时,它首先得从该数据库中读取其相关的需求配置。配置数据库储存的配置信息包括统计对象(坐席,分机,坐席组,队列,队列组,技能组,路由点等),统计参数(例如数据收集时间,统计内容,过滤内容,一些函数应用等),同时还包括一些信息的更新改变等。总之,在数据处理方面配置数据库提供配置对象的所有信息,用于判断收集什么数据,怎么收集数据。
ODS源数据库
ODS源数据库中存储了呼叫中心中传递的所有数据信息,作为报表系统的基础源数据。
临时数据库
该数据库是ETL服务在进行数据处理时,为数据临时储存而设计的一个数据库。在数据处理完成后一定时间内,临时数据库中存储的数据将被删除。
报表数据库
报表数据库是报表系统的最终数据仓库。其中的数据就是按照报表的需求产生的,其格式都已经按照要求进行了处理,可以直接利用任何报表展现工具对其进行展现。
2.数据ETL管理部分
呼叫中心将从状态服务器上传来的数据放入ODS数据库中。该部分服务对ODS中的数据进行抽取,转换,清洗和加工,最终加载到数据仓库中。该部分管理主要是ETL服务,它主要完成报表数据的处理。
ETL服务
该部件首先从配置数据库中读取模板的配置信息后,进行解析,从而确定报表的过滤需求。首先,它需要确定报表数据的时间间隔,不过报表要求的报表数据间隔必须是可计算的。比如若基于15分钟来收集数据,则可以统计一个小时的数据,只需要收集4个15分钟的数据求和即可。但是不能要求统计20分钟内相关资料的数据收集,因为以15分钟为基础无法组成一个20分钟。再者,读取模板统计信息后,它会根据模板的配置来对某个对象进行定期的数据收集、过滤、转换、清洗和加载。
3.报表管理部分
该部分的管理包括报表展现工具,报表设计工具和模板设计以及最终报表数据的展现。报表设计工具主要完成报表模板相关的设计。
报表设计工具
报表设计工具是一个可视化界面工具,用来配置模板的导入,导出,加载,卸载, 编辑,创建,删除等操作。在它修改完成后,会把新的模板信息发给配置数据库,配置数据库就会将信息传给ETL服务,使其配置的数据保持一致。
报表模板
报表模板在逻辑上是一种可视化的规则,用来定义报表怎么统计,统计什么内容等。正是由于模板的划分,使得报表系统具有较好的灵活性和智能性。
报表展现工具
报表展现工具主要负责把数据仓库中的数据分析并解析,然后将之展现出来生成适用的报表。本质上,报表展现工具就是一个将数据展现出来的工具。它可以设计报表的展现样式,如以柱形图展现,以饼图展现等。
报表
报表就是用户需求的数据展现,可以有多种样式。
基于以上软件体系结构,在系统操作人员利用报表设计工具编辑模板时,报表设计工具将模板修改信息发送给ETL服务,ETL服务会将修改配置数据库中的模板配置。
在ETL服务运行时,首先它会从配置数据库中获取模板的配置信息,并且根据其配置信息从ODS源数据库中抽取数据。ODS源数据库中的数据是状态服务器从呼叫中心中获得的。在ETL抽取数据后对其进行转换和加工,将其加载到报表数据库中。并利用报表展现工具将报表数据展现出来。其最终设计的系统各部件交互时序图如图3.5所示。
图3.6 报表系统使用流程图
根据流程图,使用者在进入系统时需要输入用户名和密码以及要连接的ODS数据源的IP和端口。如果信息正确,则进入到报表系统主界面。然后报表设计工具会从配置数据库中读取报表模板配置,再将现在统计数据的报表模板信息展现出来。
如果不需要对模板进行编辑,那么系统依旧按当前的报表模板配置收集数据。若要编辑模板,可以新建一个模板或者对已有的模板属性进行修改。在报表模板编辑完成后,系统会按照修改后的模板来处理数据。
当数据处理完成后,报表系统的数据会直接存放到数据库中,通过报表工具直接将报表系统数据展现出来形成报表。
3.5报表设计工具与报表生成流程设计
3.5.1 报表设计工具的分析和设计
报表设计工具,主要功能是用来在可视化界面中察看和修改记录统计,负责处理报表的设计工作。它应该具有全面的报表设计功能和友好的用户界面,能够被普遍的数据处理和编辑时所采用。该报表设计工具的操作员利用该工具可以进行系统登录,创建模板,编辑模板,加载模板,卸载模板等,用例图[30]
[31]如图3.7所示。同时,在处理数据方面,用户通过该工具还可以设计原始数据格式,然后通过一个程序从数据库文件中获取或者生成报表静态描述信息(报表格式)和计算公式定义。在获得报表静态描述信息和计算公式后,报表的基本框架也就界定下来,随后只要进行查询参数的定义、取数规则与填充区域的定义就可以完成整个报表的设计工作。
图3.7 报表设计工具用例图
另外,报表工具设计需要具有以下特性:
1.统一查询界面
不同的报表查询参数各不相同,如果对每一报表各自提供一个查询界面,会给编程造成极大的冗余。在可定制报表系统中把每一报表需要的查询参数存放到数据库中,并可以根据报表代码进行索引,这样通过传入不同的报表代码可以动态生成不同报表的查询界面。在提交查询请求时对查询界面上的信息进行遍历,获取每个查询要求的名称和内容,组装成报表请求信息进行发送,交给报表生成器进行处理。同样报表生成器返回的报表实例也是标准的、格式化的信息,需要一个程序来解释并展示不同的报表实例。
2.多视图展示
生成的报表实例需要以多种视图方式展示给用户。它可以对文档中进行数据填充和修饰,形成用户所需要的报表,开发人员不需要去具体了解文件格式。
3.直观的设计工具
用户通过此报表工具进行一些简单的报表参数配置就可以快速地实现各种报表设计工作,无须编写程序代码。
4.与企业基础构架整合
报表设计工具要与基础构架结合,按照报表系统规定的数据库表存储格式,将其读取出来,然后按照用户设计好的格式来展现出来,生成报表。
根据报表设计工具功能分析,操作人员登录系统时,报表设计工具首先向ETL服务发送一个获取模板配置的消息,ETL服务会从配置数据库中读取模板配置并将其解析传给报表设计工具。报表设计工具就会将模板配置以可视化的方式来显示出来。
在操作人员对模板进行创建、加载或者对其统计项进行编辑完成时,报表设计工具就会将新的模板配置信息发送给ETL服务,并写入配置数据库中。其最终设计的报表设计工具与相关部件交互[30]
[31]如图3.8所示。
图3.8 报表设计工具交互图
根据报表设计工具功能以及与各部件交互情况分析,其界面布局设计包括菜单栏,报表设计工具编辑的基本对象区域,同时还包含该对象的属性展示以及基本单元信息明细。该工具界面布局设计如图3.9所示。
图3.9 报表设计工具界面布局设计图
在报表设计工具布局设计图中,基本对象区域列出了该工具编辑的基本对象,对象展示区域显示了选中的对象基本属性配置,基本单元明细列出了该对象包含的各基本单元的配置信息,菜单栏是对选中的对象或者基本单元进行操作。利用菜单可以创建,修改和删除操作对象。
3.5.2 报表生成流程设计
报表生成流程分为模式定义、规则定义和数据制作三个部分。规则定义需要引用模式定义的结果,而数据制作需要引用规则定义的结果。因此,需要遵循模式定义――规则定义――数据制作的顺序过程。其流程如图3.10所示。
图3.10 报表生成流程图
1.模式定义
模式定义是指定义模式各组成部分及其相互关系的过程。通常包括定义每个部分的名称、位置、尺寸、格式,若该部分还有内部结构,则照此模式继续深入定义。
模式定义确定了作为数据载体的报表形态与结构,是生成报表数据的基础和规则定义的前提条件。
2.数据规则定义
数据规则定义是在模式定义的基础上,确定业务数据到报表数据的映射方法。规则定义为报表构造了一个规则集合,集合中的规则是报表各个组成部分数据的来源和变换过程。因此,规则定义是报表生成过程中的一个重要环节,是数据制作的前提条件,是模式定义和数据制作之间必要的衔接和过渡过程。
3.数据制作
数据制作是报表生成过程的最后一个步骤,它在模式定义的基础上,使用规则定义生成的映射规则集合将业务数据映射到报表中。根据数据规则的内容,数据制作过程具体可以分为三个步骤,数据采集,数据变换,数据填写。
1)数据采集
数据采集它按照数据规则中制定的要求取得业务数据。
2)数据变换
数据变换会按照数据规则中指定的方法对采集到的数据实施变换操作。
3)数据填写
数据填写是按照规则中指定的格式将变换后的数据放置到规则所示的报表位置上。例如规则:“将本年度1至12月份的工资总额以标准数字格式填写到报表第2行第4列的位置上”。对应的三个过程为:
数据采集:获取本年度1至12月份的12个工资数据
数据变换:对采集到的12个数据进行求和运算,Ei(i=1,2 ,3 ....12)。
数据填写:将结果填写到报表单元中。
3.6 本章小结
该系统的研究目的是减少报表系统在呼叫中心中不同时期的开发总工作量,解决系统生命周期短的问题,确保系统具有较好的通用性。本章针对这一目的对报表系统进行了分析和总体设计。该部分主要完成了报表系统的具体需求分析,研究了可定制报表系统的研究目的、意义和方法,提出了具体的解决方案,并在系统分析的基础上阐述了系统设计的思想、任务和过程,构建了系统的总体架构和功能设计模型。
本文未经许可谢绝转载!
呼叫中心中可定制报表系统的设计与实现(三)
呼叫中心中可定制报表系统的设计与实现(四)
作者独家供稿 CTI论坛报道
呼叫中心中可定制报表系统的设计与实现(一) 2010-01-11 |
基于VoiceXML可视化IVR系统设计和实现(四) 2010-01-07 |
基于VoiceXML技术可视化IVR设计和实现(三) 2009-12-29 |
基于VoiceXML技术可视化IVR设计和实现(二) 2009-12-29 |
基于VoiceXML的可视化IVR系统设计和实现(一) 2009-09-22 |