仪表板性能分析器的制造方法
【专利摘要】本文描述了用于使数据可视化的仪表板的技术,在一些实现中,提供具有一个或多个仪表板项目的仪表板。评估仪表板的性能以确定仪表板的加载时间。如果从评估仪表板的性能确定了性能缺陷,则提供用于提高仪表板的性能的可行建议。
【专利说明】仪表板性能分析器
【技术领域】
[0001] 本发明一般涉及智能工具。具体地,涉及包括用于使数据可视化的仪表板的性能 分析器的智能工具。
【背景技术】
[0002] 仪表板设计工具是业务智能工具,其被用于基于定义的度量和关键绩效指标 (KPI)来创建使数据可视化的仪表板。良好的仪表板设计的一个重要方面是其性能或者加 载时间。例如,具有很长加载时间(例如,低性能)的仪表板可能由于使等待仪表板运行的用 户失望而影响仪表板的有效性。仪表板可以运行在许多设备上。例如,仪表板可以运行在 诸如平板计算机、智能移动电话的移动设备上,或者诸如膝上型计算机或台式计算机的非 移动设备上。不同类型的设备具有不同的处理能力。一般情况下,与非移动设备相比,移动 设备具有更低的处理速度。因此,仪表板可以对于具有高处理速度的设备表现良好,但是对 于具有低处理速度的设备表现不好的性能。
[0003] 因此,期望提供能够基于设备确定仪表板设计的性能的工具。
【发明内容】
[0004] 本文描述了一种评估仪表板设计的方法。提供了具有一个或多个仪表板项目的仪 表板。评估仪表板的性能以确定仪表板的加载时间。如果从评估仪表板的性能确定了性能 缺陷,则提供用于提高仪表板的性能的可行建议。
[0005] 在一个实施例中,公开了一种仪表板评估系统。该系统包括仪表板解析器和性能 评估器。仪表板解析器识别仪表板的项目,而性能评估器确定仪表板的加载时间。该系统 还包括推荐器。推荐器建议提高仪表板的性能的解决方案。
[0006] 在另一实施例中,提出了一种具有计算机可读程序代码有形地具体实施在其中的 计算机可用介质,该计算机可读程序代码适于由处理器执行以实施评估仪表板设计的方 法。该方法包括提供仪表板。评估仪表板的性能以确定仪表板的加载时间。如果从评估仪 表板的性能确定了性能缺陷,则提供用于提高仪表板的性能的可行建议。
[0007] 随着这些以及其它优点和特征将在以下变得清楚,通过参考以下的详细描述和附 加权利要求以及所附的附图可以获得进一步信息。
【专利附图】
【附图说明】
[0008] 在附图中示出了一些实施例。图中相似的参考标记表示相似的部件。
[0009] 图1示出了环境的实施例。
[0010] 图2示出了软件环境的实施例。
[0011] 图3a至图3b示出了仪表板的示范性实施例。
[0012] 图4示出了用于分析仪表板的性能的过程的实施例。
[0013] 图5示出了 PAS的实施例的高层架构。
[0014] 图6示出了用于设计仪表板(包括执行性能分析)的过程的实施例。
[0015] 图7示出了 PAS面板的实施例。以及
[0016] 图8a至图8f示出了 PAS的过程流的实施例的示范性屏幕截图。
【具体实施方式】
[0017] 在以下描述中,为了说明的目的,特定的数目、材料以及配置被阐述,以便提供本 架构和方法的彻底的理解,并且以便满足法定撰写的描述、启用、以及优选模式的要求。然 而,本领域技术人员将清楚,在没有特定示范性细节的情况下也可以实践本架构和方法。在 其它实例中,公知特征被省略或简化,以使本架构和方法的示范性实施方式的描述更清楚, 并由此更好地解释本架构和方法。而且,为了容易理解,某些方法步骤被描绘为分开的步 骤;但是,这些分开描绘的步骤不应当被解释为必要的从属次序或它们的执行相互独立。
[0018] 这里描述了用于显示数据的框架或应用。显示框架可以被用于,例如,显示业务信 息以增强决策做出过程。在一个实施方式中,本框架可以对用于使数据可视化的仪表板的 有效性进行评估。框架可以例如向仪表板设计器提供指导以提高与设计仪表板相关的工作 流。
[0019] 图1示出了示范性环境100的框图。例如,该环境便于使数据可视化。该环境可 以具有客户端/服务器架构。例如,该环境可以是分布式客户端/服务器架构。在一个实 施例中,该环境包括经由通信网络102通信地耦合的一个或多个客户端108a至108c和服 务器105。客户端108a至108c可以访问服务器105以存储信息和/或检索保留在服务器 上的信息。此外,服务器可以便于客户端之间的通信。
[0020] 通信网络,例如,可以是互连不同设备(诸如客户端和服务器)的局域网(LAN)。其 它类型的网络也可以是有用的。设备可以通过无线和/或有线连接经由网络被耦合。
[0021] 在一个实施例中,服务器可以是包括存储器和处理器的计算机。服务器被配置为 发送、接收、处理和存储与环境相关的信息或数据。可以采用不同类型的计算机。例如,计 算机可以是大型机(mainframe)、工作站、以及其他类型的处理设备。服务器可以适于运行 任何操作系统。例如,服务器的操作系统可以是z/OS、Linux-Intel、Linux/390、UNIX或 Windows Server。也可以使用其他类型的操作系统。服务器还可以包括网络(Web)服务器 和/或简单邮件传输协议(SMTP)服务器,或者与Web服务器和/或SMTP服务器通信地耦 合。
[0022] 虽然环境被示出为具有一个服务器,但是应该理解的是,也可以采用一个以上的 服务器(诸如服务器池)以及除服务器以外的计算机。
[0023] 服务器的存储器可以包括任何存储器或数据库模块。存储器可以是易失性存储器 或非易失性存储器,诸如磁介质、光介质、随机存取存储器(RAM)、只读存储器(ROM)、可移 动介质、或任何其它合适的本地或远程存储器组件。
[0024] 客户端可以是具有例如本地存储器和处理器的本地或远程计算设备。存储器可以 包括固定的和/或可移动的存储介质,诸如磁计算机盘、CD-ROM、或其他合适的介质。不同 类型的处理设备可以作为客户端。例如,客户端可以是PC、平板PC、工作站、网络计算机、信 息亭或个人数据助理(PDA)。也可以使用其他类型的处理设备。处理设备可以包括存储器 和处理器。可以为处理设备提供输入和输出设备。输入设备可以是,例如,小键盘、触摸屏、 鼠标、或其能够从用户接受信息的其他设备。例如,客户端可以使用输入设备从用户接收请 求。输出设备可以是向用户传达信息的显示器。其他类型的输入和输出设备也可以是有用 的。客户端可以接收、发送、处理和存储与环境100相关联的任何适当的数据。
[0025] 客户端/服务器(C/S)应用也可以被设置在环境中。通常,C/S应用包括前端部 分和后端部分。前端部分本地存储在客户端上,而后端部分位于服务器中。不同类型的C/ S应用可以被设置在环境中。
[0026] 客户端可以包括用户界面,用于出于各种目的使用户与环境接口连接。例如,界面 可以被用于访问环境中的各种应用。用户界面也可以用于其他目的。在一个实施例中,用 户界面包括图形用户界面(GUI)。⑶I可以提供以高效和用户友好的方式呈现信息或与环 境通信。例如,⑶I可以包括任务菜单以及用于显示信息的一个或多个窗格(pane)。其他 类型的用户界面,诸如命令行界面(CLI),也可以是有用的。用户界面的类型可以依赖于在 客户端上运行的应用的类型。例如,前端部分可以包括使能用户与后端部分进行交互以访 问存储在服务器中的数据的GUI。
[0027] 虽然环境被示出为具有三个客户端和一个服务器,但是应该理解,可以存在通信 地耦合到一个或多个服务器的任意数量的客户端。此外,可以包括其它类型的设备。客户 端可以是本地客户端或外部客户端。此外,"客户端"和"用户"可以适当地交替使用,而不 脱离本公开的范围。例如,客户端可以由一个或多个用户使用,同时用户可以使用一个或多 个客户端。作为示例,用户可以具有用于应用(例如电子邮件系统)的用户账户。任何用户 都可以通过执行认证或登录过程(诸如提供用户名和密码)从任何客户端访问用户各自的 账户。
[0028] 图2示出了软件环境200的实施例。如图所示,软件环境可以包括数据源260。数 据源,例如,可以是数据文件。任何类型的数据可以被包含在数据文件中。数据文件,例如, 可以是报告、电子表格,XML文件、平面文件、网络服务文件或其他类型的文件。数据文件可 以从一个或多个软件应用生成,如数据库或其他类型的软件应用。例如,数据可以是个人数 据或业务数据,例如公司的数据。业务数据可以包括雇员数据、销售数据以及与公司有关的 其他类型的数据。软件应用可以包括各种类型的功能,诸如报告生成和与数据分析有关的 功能。软件应用可以包括C/S架构。例如,数据、报告和其他信息可以被存储在服务器中。 在其它实施例中,软件应用可以被本地安装在客户端或独立的计算机中。在这种情况下,数 据、报告和其他信息被本地存储。
[0029] 在一个实施例中,软件应用包括业务应用。可以使用各种类型的业务应用。业务 应用,例如,保持业务的数据并创建与数据有关的业务报告。这样的业务应用可以包括,例 如,SAP水晶解决方案(SAP Crystal Solution),其包括来自SAP AG的Xcelsius、水晶报告 (Crystal Report)、网络智能(WeblntelIigence)。其他类型的业务应用或业务应用的套件 也可以是有用的。
[0030] 仪表板设计应用220被提供在软件环境中。仪表板设计应用被用于设计或创建仪 表板。仪表板可以包括不同的元素,以使用例如适当的KPI、度量、趋势、数据可视化和交互 来呈现聚集的数据的视图。
[0031] 例如,在最高层,仪表板包括用户界面(UI)或仪表板面板。在面板内可以存在一 个或多个观看区域,它们对应于第二最高层。观看区域包括一个或多个视觉组件,以便于数 据可视化。提供其他类型的组件或元件也可以是有用的。依赖于设计,观看区域可以包括 具有不同的视觉元件的子观看区域。仪表板也可以被提供有不同的特征或功能。例如,组 件或元素(诸如用于执行"what if (如果)"分析和数据的动态可视化的下拉菜单、滑块和 命令按钮)可以被提供以使得用户能够在运行时进行交互。应该理解,仪表板的使用使能快 速理解数据,以便于更好地且更有效地做出决策。
[0032] 在一个实施例中,仪表板设计应用是SAPR+ BusinessObjects? Xce丨sillS+&:企业 版。其他类型的仪表板设计应用也可以是有用的。例如,仪表板设计应用可以是SAP11'视 觉编辑器。
[0033] 图3a不出了仪表板300的不范性实施例。如图所不,仪表板包括一个仪表板UI 或面板310。面板是仪表板的顶层。仪表板标签315被提供以描述仪表板。仪表板标签可 以被布置在仪表板的边缘附近。例如,仪表板标签被布置在仪表板的左上角。将仪表板标 签布置在其他位置也可以是有用的。
[0034] 在面板内可以存在一个或多个观看区域340。观看区域也可以被提供有观看区域 标签。观看区域包括一个或多个视觉组件360或其他类型的组件。组件,例如,包括不同类 型的图表、曲线图、仪表(gauge)、选择器、过滤器、地图和皮肤。不同的组件被用于(诸如通 过过滤)使数据或数据的片段可视化。
[0035] 举例来说,仪表板提供连锁旅馆的数据的视图。例如,在这种情况下,KPI、趋势 和重要信息涉及入住(occupancy)、客户满意度和收入。仪表板包括4个观看区域34(^至 3404。提供具有其他数目的观看区域的仪表板也可以是有用的。第一观看区域34〇i包括用 于显示来自一个区域(诸如城市)的信息的过滤器组件。提供其他类型的过滤器,诸如时间, 也可以是有用的。
[0036] 第二观看区域3402显示图表组件3602。如图所示,图表组件包括用于显示与客户 满意度有关的信息的分析网格或条形图表。第三观看区域340 3包括第一图表组件3603和 第二图表组件3604。图表组件包括代表入住信息和预订信息(例如,美元金额)的分析网格 或条形图表。第四观看区域340 4包括第一仪表组件3605、第二仪表组件3606和第三仪表组 件360 7。仪表组件显示平均容积率、按照预订百分比的经营Mg、和按照预订百分比的净收 入。根据应用,可以通过仪表板显示其他类型的信息或分析。
[0037] 如所描述的,仪表板包含单一页面。提供具有多个页面的仪表板也可以是有用的。
[0038] 图3b不出了仪表板300的另一不范性实施例。如图所不,仪表板包含具有仪表板 标签315的第一页305a和第二页305b。面板310a是第一页的顶层。第一页包括第一观 看区域340?、第二观看区域340a 2和第三观看区域340?。第一观看区域包含第一选择器 组件360?和第二选择器组件360a2。选择器组件,例如,包括选项卡(tab)组件,用于选择 观看的仪表板的页。第二观看区域包括第一过滤器组件360?、第二过滤器组件360a 4和第 三过滤器组件360a5。过滤器组件,例如,是用于选择期望的数据的子集来进行查看的单选 按钮组件。例如,单选按钮组件使得用户能够查看来自一组公司中的期望公司的数据。第 三观看区域包括图表组件360a 6。图表组件包括饼图。举例来说,饼图表示按地区的销售数 据。
[0039] 对于第二页,它包括第一观看区域340bi和第二观看区域340bi。第一观看区域 340bi与第一页的第一观看区域类似,包含第一选择器组件3601^和第二选择器组件360b2。 选择器组件,例如,包括选项卡组件,用于选择观看的仪表板的期望的页。第二观看区域包 括第一仪表组件360b3以及第一刻度盘组件360b 4和第二刻度盘组件360b5。仪表组件显示 销售,而刻度盘组件显示价格和数量。
[0040] 仪表组件或刻度盘组件可以用于显示,例如,KPI对比它的目标。KPI值可以由指 针表示,而目标可以由颜色范围表示。如图所示,颜色范围包括3种颜色。从左至右,颜色 可以是红色、黄色和蓝色。颜色可以被用于指示特定KPI相对于它的目标的相对位置。例 如,红色指示KPI低于目标,黄色指示KPI接近目标,而蓝色表示KPI达到或高于目标。
[0041] 使用选择器和过滤组件,用户可以在仪表板的页之间、以及在不同公司的销售数 据和性能之间进行切换。
[0042] 返回参照图2,软件环境包括仪表板性能分析系统(PAS) 240。PAS,例如,可以被 集成到仪表板设计应用,如由虚线225所指示的。在其它实施例中,PAS可以是与仪表板设 计应用进行交互的单独的应用。仪表板设计应用和仪表板评估器的其他配置也可以是有用 的。
[0043] PAS分析仪表板以确定其性能。在一个实施例中,PAS的性能分析确定仪表板的加 载时间。在另一实施例中,PAS包括建议功能。例如,如果在性能分析过程中确定了性能问 题,则PAS提供建议以提高性能。PAS提供仪表板的评级,从而指示其性能。
[0044] 软件环境可以包括与数据源和仪表板设计和评估应用进行交互的附加的应用。例 如,应用可以被用于生成报告和执行数据分析。其它类型的工具或应用,如微软Office、 Adobe和/或网络入口,也可以被提供在软件环境中。
[0045] 图4示出用于分析仪表板的性能的过程400的实施例。在步骤410中,仪表板模 型被提供给,例如,PAS。仪表板模型是图形仪表板的数据表达。仪表板模型可以是,例如, 用户或者仪表板设计器最新设计的仪表板。在其它实施例中,仪表板模型可以已经存在于 软件环境中。
[0046] 在步骤420中,启动PAS以对仪表板模型执行性能分析。PAS确定,例如,仪表板模 型410的加载时间。性能分析可以基于特定设备。例如,用户可以选择设备,诸如iPad4、 iPhone5或Nexus7。可以在选择表中提供该选择。在一些情况下,在设备未被列在选择表 中的时候,用户可以使用选择表中的设备作为参考设备。也可以对其它类型的设备进行分 析,包括移动设备和非移动设备。基于其他参数(诸如操作系统和/或处理器类型)的性能 分析也可以是有用的。加载时间可以基于仪表板和历史数据的组合来确定。在一个实施例 中,仪表板的平均加载时间被确定。确定与仪表板性能有关的其他信息也可以是有用的
[0047] 在步骤430生成性能分析结果。例如,分析结果可以是指示仪表板性能的报告。 在一个实施例中,分析结果为不同的仪表板组件提供加载时间的细目表。加载时间可以依 赖于组件的类型和数据量。例如,加载时间依赖于仪表板组件的复杂性和相关联的数据量。 为了比较,包含相同数目的简单组件的仪表板比包含相同数目的复杂组件的仪表板加载得 更快。
[0048] 根据分析结果,在步骤440中仪表板设计器可以做出改变以提高仪表板的性能。 例如,仪表板设计器可以对仪表板做出改变以减少仪表板的加载时间。在步骤420中可以 重新评估改变的仪表板。这个过程可以重复,直到达到所期望的性能水平。在某些情况下, PAS可以提供如何提高仪表板的性能的建议。如果没有做出改变或者如果用户对性能结果 满意时,在步骤450完成分析而且在步骤460终止PAS。
[0049] 在一些实施例中,在用户利用仪表板设计器设计仪表板模型的时候,PAS分析仪表 板模型。例如,PAS可以是仪表板设计器的一部分,而且在用户调用仪表板设计器来设计仪 表板的时候被自动启动。在调用仪表板设计器的时候,可以选择分析的参数。仪表板可以 在由用户设计的时候被分析。例如,每个仪表板项目被并入一个仪表板,PAS对它进行分析 以评估其性能。在一些情况下,现有的仪表板可以被更新。在这种情况下,在添加新的仪表 板项目的时候,性能可以被更新。将PAS提供为与仪表板设计器分离的模块也可以是有用 的。按照用户分析仪表板模型的需要,不论完成与否,PAS都可以被调用。PAS的其他配置 也可以是有用的。
[0050] 图5示出了 PAS240的实施例500的高层架构。PAS包括不同的模块或组件,用于 执行与在仪表板上执行性能分析相关联的不同功能。在一个实施例中,PAS包括仪表板解 析器510、性能评估器520、推荐器530和评级引擎540。
[0051] PAS接收仪表板模型作为输入。仪表板模型可以是最新设计的仪表板。仪表板包 括各种元素或项目。例如,仪表板模型可以来自仪表板设计器。项目通常可以被分类为组 件和公式。在一个实施例中,组件可以被分类为复杂组件或简单组件,而公式可以被分类为 距离公式(range formula)或简单公式。复杂组件是在UI上绘制许多数据点的组件。简 单组件是其性能是恒定值的组件。距离公式是计算任何数组中的数据而且其性能取决于数 组的大小的公式。简单公式是其性能恒定的公式。影响复杂组件项目的性能的变量是它的 数据量。类似地,影响距离公式的性能的变量是它的数据量。影响仪表板的整体性能的变 量是组件和公式的数量。用于对仪表板的不同项目进行分类的其他配置也可以是有用的。 例如,类别可以具有更细或更粗的粒度或其他类型的类别。
[0052] 下面的表1显示了仪表板的不同元素的类别的示范性列表:
[0053] 表 1
[0054]
【权利要求】
1. 一种评估仪表板设计的方法,包括: 提供具有一个或多个仪表板项目的仪表板; 评估仪表板的性能W确定仪表板的加载时间;W及 如果从评估仪表板的性能确定了性能缺陷,则提供用于提高仪表板的性能的可行建 议。
2. 如权利要求1所示的方法,其中,评估性能包括确定仪表板的平均加载时间。
3. 如权利要求1所示的方法,其中,评估性能包括基于设备确定仪表板的平均加载时 间。
4. 如权利要求3所示的方法,其中,确定平均加载时间包括: 确定仪表板项目的平均加载时间; 对仪表板项目的平均加载时间求和,W确定仪表板的平均加载时间。
5. 如权利要求4所示的方法,还包括解析仪表板W确定仪表板的仪表板项目。
6. 如权利要求5所示的方法,其中,确定仪表板项目的平均加载时间包括: 提供性能基准数据,该性能基准数据包含不同仪表板项目的平均加载时间;W及 从性能基准数据获得仪表板的仪表板项目的平均加载时间。
7. 如权利要求6所示的方法,其中,所述性能基准数据包含基于不同设备的不同仪表 板项目的平均加载时间。
8. 如权利要求7所示的方法,其中,所述性能基准数据是通过使用不同的设备进行实 际测试来获得的。
9. 如权利要求1所示的方法,其中,评估仪表板的性能包括提供基于仪表板的平均加 载时间的性能评级。
10. 如权利要求9所示的方法,其中: 仪表板的平均加载时间基于仪表板的仪表板项目的平均加载时间的总和;W及 显示仪表板项目的平均加载时间W便指示仪表板项目的性能成本。
11. 如权利要求10所示的方法,还包括,基于仪表板项目的平均加载时间来提供提高 性能的建议。
12. 如权利要求10所示的方法,还包括,如果仪表板项目的平均加载时间超过阔值加 载时间,则基于所述仪表板项目的平均加载时间来提供提高性能的建议。
13. -种仪表板评估系统,包括: 仪表板解析器,该仪表板解析器识别仪表板的项目; 性能评估器,该性能评估器确定仪表板的加载时间;W及 推荐器,该推荐器建议提高仪表板的性能的解决方案。
14. 如权利要求13所述的系统,其中,所述性能评估器基于仪表板的加载时间生成性 能评级。
15. 如权利要求13所述的系统,其中,所述性能评估器生成包含仪表板的仪表板项目 的输出。
16. 如权利要求15所述的系统,其中,所述仪表板的加载时间包括仪表板的平均加载 时间。
17. 如权利要求15所述的系统,其中,所述仪表板的加载时间包括基于设备的仪表板 的平均加载时间。
18. -种具有计算机可读程序代码有形地具体实施在其中的计算机可用介质,该计算 机可读程序代码适于由处理器执行W实施评估仪表板设计的方法,该方法包括: 提供仪表板; 评估仪表板的性能W确定仪表板的加载时间;W及 如果从评估仪表板的性能确定了性能缺陷,则提供用于提高仪表板的性能的可行建 议。
19. 如权利要求18所述的计算机可用介质,其中,所述计算机可读程序代码与仪表板 设计器结合。
20. 如权利要求18所述的计算机可用介质,其中,评估性能包括确定仪表板的平均加 载时间。
【文档编号】G06F11/00GK104346231SQ201310326002
【公开日】2015年2月11日 申请日期:2013年7月30日 优先权日:2013年7月30日
【发明者】车骏, 张子默, 张天犁, 李冠 申请人:商业对象软件有限公司