专利名称:协作开发可视化仪表板的方法和系统的制作方法
技术领域:
本发明涉及可视化工具领域,更具体地说,涉及仪表板(dashboard)可视化工具。
背景技术:
随着计算机技术的发展,计算系统承担聚合器的角色,聚合来自多种不同源的信 息。源的范围从在储存库中存储信息的数据系统到编译信息的最终用户,通常,分析聚合信 息的限制因素并不取决于计算资源,而是取决于操作人员。具体而言,尽管计算系统可以近 乎实时的方式聚合大量数据,但是操作人员最终必须对汇集的数据进行可视化,以从可视 化中得出有效结论。然而,最终用户消化汇集的信息的能力与呈现给最终用户的数据量呈 反比。当汇集的数据量过大时,操作人员几乎不可能充分分析数据。 可视化工具用于理解所收集的数据以及其中的相互关系。此类可视化工具通常使 用点状图来可视化操作数据。其他工具使用交叉(slice anddice)树图。尽管电子表格应 用提供了数据可视化的初始基础,但是电子表格的应用性有所限制并且不能无缝地提供实 时查看信息集合的能力。因此,大型协作系统提供嵌入式可视化工具来分析内部收集的数 据。在某些情况下,复杂的协作系统为最终用户提供对数据可视化仪表板视图的访问。在 仪表板视图中,单个窗口提供一个或多个代表所收集的数据的图。 集成丰富数据可视化的仪表板的开发和定制通常由技术人员而非最终用户执行。 结果,仪表板或者过于复杂,无法显示适当的数据,或者目标用户很难对其进行使用。某些 人通过引入冗长的面向用户的设计过程来解决此问题,该过程必须针对每个新创建的仪表 板重复执行。许多在其产品(如信息技术(IT)基础结构管理产品)中引入某种形式的数 据可视化的软件供应商提供了旨在帮助最终用户定制特定数据视图的工具。这些数据可视 化工具一般很复杂且基于用户界面,从而提供了许多用于排列图表和图以及将数据输入连 接到可视输出的按钮和控制点。这些数据可视化工具还倾向于面向单个用户,重点放在编 辑仪表板设计的单独的客户。 数据可视化已经扩展为Wiki页概念。Wiki页是被设计为允许所有访问Wiki页的 人都能使用被称为Wiki标记的简化标记语言添加或修改内容的页面或网页集合。Wiki通 常用于创建协作网站以及推动社区网站。在Wiki页的上下文中,可使用Wiki标记定义仪 表板以全面描述可视化的每一个方面。因此,在Wiki上下文中创建仪表板的用户必须完全 精通Wiki标记才能生成仪表板。进而,在Wiki页中定义的仪表板只能由相应Wiki用户通 过手动编辑Wiki标记进行修改_这是一项繁琐的工作。
发明内容
本发明的实施例解决了本领域中关于可视化工具和仪表板设计制造的缺陷并提 供了用于协作开发可视化仪表板的新颖而非显而易见的方法、系统和计算机程序产品。在 本发明的实施例中,提供了用于协作开发可视化仪表板的方法。所述方法可包括标识可视 化仪表板的Wiki工件(artifact)内的扩展Wiki指令(directive)。在此方面,如公知的,Wiki工件是Wiki页的标记段。因此,Wiki页被认为是被设计为允许访问Wiki页的最终用 户使用简化标记语言添加或修改内容的网页集合。本领域的技术人员将理解,Wiki通常用
于创建协作网站以及推动社区网站。 因此,所述方法还可包括检索由所述扩展Wiki指令引用的数据以及由所述扩展 Wiki指令引用的一个或多个可视显示元素以便可视化所检索的数据的各部分。所述方法还 可包括将所述扩展Wiki指令引用的所述可视显示元素映射到在所述可视化仪表板中以编 程方式呈现所述可视显示元素所必需的组件。所述方法还可包括在所述可视化仪表板中排 列所述组件和将所述组件链接到所检索的数据,以及将与所述可视化仪表板中的所述可视 显示元素之一的一部分对应的数据链接到另一可视显示元素,以作为所述可视化仪表板中 的所述另一可视显示元素的数据源。最后,所述方法可包括显示所述可视化仪表板。可选 地,可将编辑控件插入所述可视化仪表板并将其配置为响应于选择所述可视化仪表板中的 所述编辑控件而检索所述Wiki工件以便进行协作编辑。 在实施例的一个方面,由所述扩展Wiki指令引用的数据和可视显示元素可包括 从其他Wiki页检索的数据和可视显示元素。在实施例的另一方面,将所述扩展Wiki指令 引用的所述可视显示元素映射到在所述可视化仪表板中以编程方式呈现所述可视显示元 素所必需的组件的步骤可进一步包括确定无法访问所述组件中与所述扩展Wiki指令引 用的所述可视显示元素中的一个可视显示元素对应的一个选定组件;将所述扩展Wiki指 令引用的所述可视显示元素中的所述一个可视显示元素与组件类型进行模糊匹配;调用所 见即所得(WYSIWYG)编辑器以定义具有模糊匹配的组件类型的组件的实例;以及将具有模 糊匹配的组件类型的组件的所定义实例映射到所述扩展Wiki指令引用的所述可视显示元 素中的所述一个可视显示元素以替代所述组件中被确定为无法访问的所述一个选定组件。
在本发明的另一实施例中,可配置仪表板可视化数据处理系统以用于协作定义可 视化仪表板。所述系统可包括Wiki引擎,其在主机计算平台中执行;以及与所述Wiki引 擎耦合的扩展Wiki指令处理模块。所述模块包括能够执行以下操作的程序代码标识可视 化仪表板的由所述Wiki引擎管理的Wiki工件内的扩展Wiki指令;检索由所述扩展Wiki 指令引用的数据以及由所述扩展Wiki指令引用的多个可视显示元素以便可视化所检索的 数据的各部分;将所述扩展Wiki指令引用的所述可视显示元素映射到在所述可视化仪表 板中以编程方式呈现所述可视显示元素所必需的组件。 所述程序代码还能够执行以下操作在所述可视化仪表板中排列所述组件以及将 所述组件链接到所检索的数据;将与所述可视化仪表板中的所述可视显示元素之一的一部 分对应的数据链接到另一可视显示元素,以作为所述可视化仪表板中的所述另一可视显示 元素的数据源;以及将所述可视化仪表板返回所述Wiki引擎以便显示。还可以将WYSIWYG 编辑器与所述扩展Wiki指令处理模块耦合,所述扩展Wiki指令处理模块的程序代码还能 够执行以下操作调用所述所见即所得编辑器以交互地定义所述组件中被确定为无法访问 的选定组件;以及将对所述组件中被交互地定义的所述选定组件的引用插入所述Wiki工 件内的所述扩展Wiki指令。 本发明的其他方面部分在下面的说明中阐述,部分通过所述说明将是显而易见 的,或者通过实施本发明来获知。可通过所附权利要求中具体指出的元素和组合来实现和 获得本发明的各方面。将理解,上述一般说明和下面的详细说明都只是示例性和说明性的,
5并非限制所要求保护的发明。
结合在本说明书中并构成其一部分的附图示出了本发明的实施例,并且与说明一 起用于解释本发明的原理。此处所示的实施例现在为优选实施例,但是将理解,本发明并不 限于所示的精确布置和工具,其中 图1是用于协作开发可视化仪表板的过程的图示; 图2是针对协作定义可视化仪表板配置的仪表板可视化数据处理系统的示意图; 以及 图3是示出用于协作开发可视化仪表板的过程的流程图。
具体实施例方式
本发明的实施例提供了用于协作开发可视化仪表板的方法、系统和计算机程序产 品。根据本发明的实施例,通过分析Wiki指令标识应用的Wiki页中的数据源,以及一个或 多个可视显示元素被配置为对来自数据源的数据进行可视化。所述可视显示元素可根据指 令在单独的Wiki页内进行排列。此后,可将所述单独的Wiki页呈现为与来自所述数据源 的数据的应用关联的仪表板视图。 在附图中,图1图示了用于协作开发可视化仪表板的过程。如图1所示,可在根据 扩展Wiki指令170指定的Wiki标记工件120中聚合Wiki标记110的不同部分。在此方 面,扩展Wiki指令170可指定Wiki标记110的一个或多个部分,包括两个可视显示元素 160、要通过可视显示元素160可视化的数据190的数据源,以及可视显示元素160在数据 190的可视化仪表板140中的排列。 Wiki标记工件120被提供给扩展Wiki呈现器130。扩展Wiki呈现器130可处理 扩展Wiki指令170以在可视化仪表板140中排列可视显示元素160,以便可视化可视显示 元素160中的数据190。可视显示元素160中的选定元素还被配置为响应一个或多个用户 界面事件,例如可视显示元素160中的选定元素的一部分的选择事件,以便触发在另一可 视显示元素160中显示数据190的各部分。可选地,在可视化仪表板140中排列编辑控件 150,响应于激活编辑控件150,可提供扩展Wiki标记工件120来由最终用户进行编辑。
如果在呈现可视化仪表板140时找不到由扩展Wiki指令170引用的一个或多个 用于显示的可视显示元素160,则可插入一个占位符图标来替代可视化仪表板140中的显 示。可激活占位符图标以启动WYSIWYG编辑器180来创建可视化。此后,通过引用新指定 和排列的可视显示元素160将刚创建的可视化结合到扩展Wiki标记工件120内。通过这 种方式,在创建可视化时可支持手动Wiki标记的Wiki式编辑以及使用WYSIWYG编辑器180 的交互式编辑的组合,而非严格依赖于手动Wiki编辑。 值得注意的是,可以激活与数据190的一部分100对应的可视显示元素160之一 的一部分以将数据190的所述部分IOO提供为另一可视显示元素160的数据源。在此方面, 与可视化仪表板140中的可视显示元素160之一的一部分对应的数据100可被排队到另一 可视显示元素160作为可视化仪表板140中该另一可视显示元素160的数据源。因此,选 择可视显示元素160之一的不同部分时,可以将对应的基础数据100提供为另一可视显示元素160的数据源。 结合图1所述的过程可在仪表板可视化数据处理系统中实现。在其他图示中,图 2是针对协作定义可视化仪表板配置的仪表板可视化数据处理系统的示意图。所述系统可 包括被配置为通过计算机通信网络230与不同客户机210在通信上耦合的主机计算平台 240。主机计算平台240托管应用服务器260的执行,从而为诸如协作计算应用的应用270 提供操作环境。此外,数据存储库250可与主机计算平台240耦合以便为应用270生成的 数据提供数据存储。在此方面,每个客户机210都可支持执行内容浏览器220,可通过浏览 器220访问应用270以及数据存储库250中的相应数据。 Wiki引擎280可与主机计算平台240耦合并管理Wiki页的创建和维护,最终用户 可通过各自的内容浏览器220查看和编辑所述Wiki页。要注意的是,扩展Wiki处理模块 300可与Wiki引擎280耦合。扩展Wiki处理模块300可包括允许在扩展Wiki指定290B 中处理扩展Wiki指令的程序代码,所述扩展Wiki指令针对数据存储库250中的数据定义 可视化仪表板290A以根据需要通过内容浏览器220进行查看。 具体而言,扩展Wiki处理模块300的程序代码能够标识Wiki中由Wiki引擎280 处理的扩展Wiki指令。响应于标识扩展Wiki指令,所述程序代码能够针对数据存储库250 中的数据在扩展Wiki指令中查找指定数据源,以及查找要在可视化仪表板290A中排列的 一个或多个可视显示元素。例如,扩展Wiki指令可包括形式如下的Wiki指令
I = [Display Element ITitle] | = [Display Element 2Title]~ I ((DataSource-Display Element 1))| = ((DataSource. selected-Display Element 2)) 在上面所示的示例性指令中,可以指定要被可视化的数据的数据源连同对来自数 据源的数据执行可视化的显示元素。进而,指定第二显示元素以对第一显示元素中的选定 数据部分执行可视化。本领域中的技术人员将理解,包括扩展Wiki指令的Wiki工件还可 包括指定不同可视显示元素的精确可视排列的传统Wiki指令。 扩展Wiki处理模块300的程序代码还能够针对每个被配置为提供诸如饼形图、柱 状图、线图、树图之类的可视显示的指定可视显示元素查找在应用服务器260中执行的必 要组件。必要组件可包括传统的被编程为提供所需的可视显示元素的Java、 Javascript和 超文本标记语言(HTML) 、 Flash等。如果在呈现Wiki工件时找不到所述必要组件,则可以 调用WYSIWYG编辑器200以提供交互指定和排列所述必要组件。 备选地,如果应用服务器260无法访问精确地映射到指定可视显示元素的必要组 件,则采用参考表205的模糊匹配过程以便为符合可视显示元素的文本指定的可视显示元 素类型提供最佳猜测(模糊匹配)。例如,对包括术语"饼"的可视显示元素的文本引用可 模糊地解析为饼形图类型的可视显示元素。此后,可在可视化仪表板290A中提供链接并且 此链接被配置为激活WYSIWYG编辑器200以通过交互方式指定和排列符合模糊解析的可视 显示元素类型的组件来替代被确定为无法访问的必要组件。 进而,扩展Wiki处理模块300的程序代码还能够插入支持指令以响应可视显示 元素中的一个给定可视显示元素的选择事件。具体而言,所述支持指令可被配置为标识所 述一个给定可视显示元素的选定部分的相应数据,并将所述相应数据传递到另一可视显示元素以便在可视化所述一个给定可视显示元素的选定部分的相应数据时使用。通过这种方 式,访问扩展Wiki指定290B中的扩展Wiki指令的最终用户只需指定数据源、一个或多个 可视化元素、可视化元素之间的期望关系以及可视化元素的排列,以便有效而简单地定义 可视化仪表板290A。进而,由于扩展Wiki指定290B本质是由Wiki驱动的,因此,可以利用 Wiki环境的协作优势支持可视化仪表板290A的社区定义。 在扩展Wiki处理模块300的操作的其他图示中,图3是示出协作开发可视化仪表 板的过程的流程图。从方块305开始,加载可视化仪表板的Wiki指定以进行处理。在方块 310,检索Wiki指定中的第一扩展Wiki引用,并在方块315,检索由所述扩展Wiki引用所引 用的相应内容。所述相应内容可以是可视显示元素或将由可视显示元素可视化的数据。在 决策方块320,如果所检索的内容是要被可视化的数据,则在方块325,可将所述数据存储 在存储器中。否则,在方块330,可以将可视化所述数据的显示元素映射到必要的组件以提 供显示元素。 在决策方块335,如果仍有额外扩展Wiki引用要在可视化仪表板的Wiki指定中 处理,则在方块340,可检索下一扩展Wiki引用,然后在方块315,所述过程可重复执行。在 决策方块335,如果没有更多的扩展Wiki引用需要处理,则在方块345,可根据其他传统的 指定显示元素的特定可视排列的Wiki指令将映射的可视显示元素插入可视化仪表板。进 而,在方块350,所存储的数据可被链接到已插入显示元素中的指定显示元素。最后,在方块 355,发出请求的最终用户可呈现可视化仪表板以进行显示。 本发明的实施例可以采取完全硬件实施例、完全软件实施例或包含硬件和软件元 素两者的实施例的形式。在一个优选实施例中,本发明以软件实现,所述软件包括但不限于 固件、驻留软件、微代码等。此外,本发明可以采取可从计算机可用或计算机可读介质访问 的计算机程序产品的形式,所述计算机可用或计算机可读介质提供了可以被计算机或任何 指令执行系统使用或与计算机或任何指令执行系统结合的程序代码。 出于此描述的目的,计算机可用或计算机可读介质可以是任何能够包含、存储、传 送、传播或传输由指令执行系统、装置或设备使用或与所述指令执行系统、装置或设备结合 的程序的装置。所述介质可以是电、磁、光、电磁、红外线或半导体系统(或装置或设备)或 传播介质。计算机可读介质的实例包括半导体或固态存储器、磁带、可移动计算机盘、随机 存取存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的当前实例包括光盘-只读存 储器(CD-ROM)、光盘_读/写(CR-R/W)和DVD。 适合于存储和/或执行程序代码的数据处理系统将包括至少一个直接或通过系 统总线间接连接到存储器元件的处理器。所述存储器元件可以包括在程序代码的实际执 行期间采用的本地存储器、大容量存储装置以及提供至少某些程序代码的临时存储以减少 必须在执行期间从大容量存储装置检索代码的次数的高速缓冲存储器。输入/输出或I/O 设备(包括但不限于键盘、显示器、指点设备等)可以直接或通过中间1/0控制器与系统相 连。网络适配器也可以被连接到系统以使所述数据处理系统能够通过中间专用或公共网络 变得与其他数据处理系统或远程打印机或存储设备相连。调制解调器、电缆调制解调器和 以太网卡只是几种当前可用的网络适配器类型。
8
权利要求
一种用于协作开发可视化仪表板的方法,所述方法包括标识可视化仪表板的Wiki工件内的扩展Wiki指令;检索由所述扩展Wiki指令引用的数据以及由所述扩展Wiki指令引用的多个可视显示元素以便可视化所检索的数据的各部分;将所述扩展Wiki指令引用的所述可视显示元素映射到在所述可视化仪表板中以编程方式呈现所述可视显示元素所必需的组件;在所述可视化仪表板中排列所述组件以及将所述组件链接到所检索的数据;将与所述可视化仪表板中的所述可视显示元素之一的一部分对应的数据链接到另一可视显示元素,以作为所述可视化仪表板中的所述另一可视显示元素的数据源;以及显示所述可视化仪表板。
2. 如权利要求1中所述的方法,还包括 将编辑控件插入所述可视化仪表板;以及将所述编辑控件配置为响应于选择所述可视化仪表板中的所述编辑控件而检索所述 Wiki工件以便进行协作编辑。
3. 如权利要求l中所述的方法,其中检索由所述扩展Wiki指令引用的数据以及由所述 扩展Wiki指令引用的多个可视显示元素以便可视化所检索的数据的各部分的步骤包括 从其他Wiki页检索由所述扩展Wiki指令引用的数据以及由所述扩展Wiki指令弓I用的多 个可视显示元素以便可视化所检索的数据的各部分。
4. 如权利要求l中所述的方法,其中将所述扩展Wiki指令引用的所述可视显示元素映 射到在所述可视化仪表板中以编程方式呈现所述可视显示元素所必需的组件的步骤进一 步包括确定无法访问所述组件中与所述扩展Wiki指令引用的所述可视显示元素中的一个可 视显示元素对应的一个选定组件;将所述扩展Wiki指令引用的所述可视显示元素中的所述一个可视显示元素与组件类 型进行模糊匹配;调用所见即所得WYSIWYG编辑器以定义具有模糊匹配的组件类型的组件的实例;以及 将具有模糊匹配的组件类型的组件的所定义实例映射到所述扩展Wiki指令引用的所述可视显示元素中的所述一个可视显示元素以替代所述组件中被确定为无法访问的所述一个选定组件。
5. —种针对协作定义可视化仪表板配置的仪表板可视化数据处理系统,所述系统包括Wiki引擎,其在主机计算平台中执行;与所述Wiki引擎耦合的扩展Wiki指令处理模块,所述模块包括能够执行以下操作的程序代码标识可视化仪表板的由所述Wiki引擎管理的Wiki工件内的扩展Wiki指令;检索由所述扩展Wiki指令引用的数据以及由所述扩展Wiki指令引用的多个可视显示元素以 便可视化所检索的数据的各部分;将所述扩展Wiki指令引用的所述可视显示元素映射到 在所述可视化仪表板中以编程方式呈现所述可视显示元素所必需的组件;在所述可视化仪 表板中排列所述组件以及将所述组件链接到所检索的数据;将与所述可视化仪表板中的所 述可视显示元素之一的一部分对应的数据链接到另一可视显示元素,以作为所述可视化仪表板中的所述另一可视显示元素的数据源;以及将所述可视化仪表板返回所述Wiki引擎 以便显示。
6. 如权利要求5中所述的系统,其中所述可视显示元素包括从包含饼形图、柱状图、树 状图以及线图的组中选择的元素。
7. 如权利要求5中所述的系统,还包括布置在所述可视化仪表板中的编辑控件,所述 编辑控件包括响应于选择所述可视化仪表板中的所述编辑控件而检索所述Wiki工件以便 进行协作编辑的配置。
8. 如权利要求5中所述的系统,还包括与所述扩展Wiki指令处理模块耦合的所见即 所得WYSIWYG编辑器,所述扩展Wiki指令处理模块的程序代码还能够执行以下操作调用 所述所见即所得编辑器以交互地定义所述组件中被确定为无法访问的选定组件;以及将对 所述组件中被交互地定义的所述选定组件的引用插入所述Wiki工件内的所述扩展Wiki指 令。
全文摘要
本发明涉及一种协作开发可视化仪表板的方法和系统。在本发明的一个实施例中,可提供用于协作开发可视化仪表板的方法。所述方法可包括标识可视化仪表板的Wiki工件内的扩展Wiki指令。所述方法还可包括检索由所述扩展Wiki指令引用的数据以及由所述扩展Wiki指令引用的一个或多个可视显示元素以便可视化所检索的数据的各部分。所述方法还可包括将所述扩展Wiki指令引用的所述可视显示元素映射到在所述可视化仪表板中以编程方式呈现所述可视显示元素所必需的组件。所述方法还可包括在所述可视化仪表板中排列所述组件以及将所述组件链接到所检索的数据。最后,所述方法可包括显示所述可视化仪表板。
文档编号G06F9/44GK101770365SQ200910222448
公开日2010年7月7日 申请日期2009年11月13日 优先权日2008年12月31日
发明者F·B·维埃加斯, 哈姆 F·J·范, J·H·克里斯, K·D·肯纳, M·M·瓦滕伯格, M·M·麦基翁 申请人:国际商业机器公司