CN111989649A - 动态用户界面蓝图 - Google Patents

动态用户界面蓝图 Download PDF

Info

Publication number
CN111989649A
CN111989649A CN201980026703.2A CN201980026703A CN111989649A CN 111989649 A CN111989649 A CN 111989649A CN 201980026703 A CN201980026703 A CN 201980026703A CN 111989649 A CN111989649 A CN 111989649A
Authority
CN
China
Prior art keywords
user
application
user interface
computer
file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201980026703.2A
Other languages
English (en)
Other versions
CN111989649B (zh
Inventor
A·阿塔勒
S·达萨里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
American Express Travel Related Services Co Inc
Original Assignee
American Express Travel Related Services Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by American Express Travel Related Services Co Inc filed Critical American Express Travel Related Services Co Inc
Publication of CN111989649A publication Critical patent/CN111989649A/zh
Application granted granted Critical
Publication of CN111989649B publication Critical patent/CN111989649B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

用户可以与第一应用程序交互。动态用户界面一致性系统可以创建存储明确的和推断的用户偏好的用户界面蓝图文件。用户可以打开第二应用程序。第二应用程序可以参考用户界面蓝图文件,以根据用户偏好来生成用户界面。

Description

动态用户界面蓝图
相关申请的交叉引用
本申请要求2018年2月19日提交的、名称为“DYNAMIC USER INTERFACE BLUEPRINT(动态用户界面蓝图)”的第15/898,788号美国申请的优先权及权益,其全部内容通过引用的方式并入本文用于所有目的。
技术领域
本公开大体上涉及计算机系统,更具体地,涉及用于计算机系统的用户界面。
背景技术
许多软件应用程序使用不同的用户界面,当切换到不同的应用程序时,对于查看一个应用程序的用户而言可能感到困惑或难以理解布局和功能。使用用户界面模板以便标准化用户界面的现有方法可能是静态的,并且限于使用用户界面样式,例如字体、颜色和控件的类型。需要更动态的改进的用户界面模板。
发明内容
公开了用于提供动态定制的用户界面的系统、方法和制品(统称为“系统”)。该系统可以执行包括以下的操作:为用户创建用户界面蓝图文件;在用户界面蓝图文件中存储对第一应用程序的明确的用户偏好;确定对第一应用程序的推断的用户偏好;将对第一应用程序的推断的用户偏好存储在用户界面蓝图文件中;从用户接收访问第二应用程序的请求;响应于该请求,读取用户界面蓝图文件;以及基于明确的用户偏好和推断的用户偏好生成对于第二应用程序的用户界面。
在各个实施例中,用户界面蓝图文件可以包括txt文件或xml文件中的至少一个。用户界面蓝图文件可以包括用户的唯一用户标识。响应于访问第二应用程序的请求,系统可以基于用户的唯一用户标识为了用户界面蓝图文件而查询数据库。第一应用程序和第二应用程序可以是用户装置上的本地应用程序。第一应用程序和第二应用程序可以是网络应用程序。用户界面蓝图文件可以包括多个用户偏好,包括字符数、段落数、图像数、图像大小、表单输入数、窗口大小、窗口缩放、窗口边框、字体列表、字体大小、控件层次结构、控件名称、控件顺序、控件大小、控件位置、控件颜色、控件对齐、滚动条、布局层次结构、布局类型、布局权重、布局方向和分页。
除非本文另外明确指出,否则前述特征和元素可以以各种组合进行组合而没有排他性。根据以下描述和附图,所公开的实施例的这些特征和元素以及操作将变得更加显而易见。
附图说明
本公开的主题在说明书的结论部分中被特别指出并明确要求保护。然而,当结合附图考虑时,通过参考具体实施方式和权利要求书可以获得对本公开的更完整的理解,附图中相同的标号表示相同的元素。
图1是示出根据各种实施例的用于动态用户界面一致性的系统的各种系统组件的框图。
图2示出了根据各种实施例的用户界面蓝图模板的示例。
图3示出了根据各种实施例的用于第一应用程序的单页注册表和多页注册表。
图4示出了根据各种实施例的从关于图3中描述的用户界面存储的偏好得到的用户界面蓝图文件的示例。
图5示出了根据各种实施例的用于第二应用程序的多页注册表的示例。
图6示出了根据各种实施例的用于提供定制的图形用户界面的过程的流程图。
具体实施方式
本文各种实施例的详细描述参考附图,附图通过说明的方式示出了各种实施例。尽管足够详细地描述了这些各种实施例以使本领域技术人员能够实践本公开,但是应该理解,可以实现其他实施例,并且在不脱离本公开的精神和范围的情况下,可以进行逻辑的和机械的改变。因此,本文仅出于说明而非限制的目的给出详细描述。例如,在任何方法或过程描述中记载的步骤可以以任何顺序执行,并且不限于所呈现的顺序。此外,任何功能或步骤都可以外包给一个或多个第三方或由一个或多个第三方执行。此外,对单数的任何引用都包括复数实施例,并且对多于一个组件的任何引用可以包括单数实施例。
本文公开了用于创建和/或修改用户界面的系统和方法。系统可以将用户已经熟悉的第一应用程序的用户界面(“UI”)动态地转换为便携式UI蓝图规范。然后,UI蓝图可以由用户可能不熟悉的第二应用程序使用。第二应用程序可以使用UI蓝图来调整自身,以增强给定用户的UI熟悉度。系统可以基于应用程序的使用来理解包括密度、设置、层次结构、语义、布局和/或学习的UI的动态方面。
该过程改善了计算机的功能。例如,通过提供用户熟悉的用户界面,用户执行较少的计算机功能并提供较少的输入,因为用户能够快速找到所需的内容,这节省了数据存储和存储器,这加快了处理速度。通过使用此方法,用户将能够快速且有效地完成其预期的任务,并减少装置/计算机上的计算时间/开销以及资源(例如存储器、CPU、电池)的使用。
参照图1,示出了根据各种实施例的用于动态用户界面一致性的系统100。系统100可以包括网络客户端110、第一应用程序服务器120、第二应用程序服务器130和用户界面蓝图数据库140。
网络客户端110可以是能够通过网络进行通信的任何装置,例如台式计算机或移动电话。用户可以与网络客户端110进行交互,以便查看由应用程序服务器120、130容纳的数据和应用程序。在各个实施例中,用户可以是交易帐户所有者,并且用户可能希望查看存储在应用程序服务器上的与其交易帐户相关的数据。
应用程序服务器120、130可以包括一个或多个处理器或数据库,其能够向网络客户端110提供数字内容。应用程序服务器120、130可以操作被呈现给网络客户端110的一个或多个应用程序。在各种实施例中,应用程序服务器120、130可以提供任何合适的应用程序或产品。
用户界面蓝图数据库140可以存储用户界面蓝图文件142。用户界面蓝图文件142可以是文本文件,诸如可扩展标记语言(xml)或txt文件。用户界面蓝图文件142可以包括用于查看内容的用户偏好。用户偏好可以包括明确的和隐含的用户偏好。例如,用户可以选择明确的用户偏好,例如偏好的背景颜色或字体大小。在用户未选择偏好的情况下,可以由应用程序服务器响应于用户行为来学习隐含的用户偏好。例如,如果存在多于五个的数据字段,则从历史上来看,用户可能会放弃注册过程。然后,应用程序服务器120、130可以在用户界面蓝图文件142中存储隐含的用户偏好:用户偏好具有少于五个数据字段的注册过程。
在各种实施例中,用户界面蓝图文件可以存储在网络客户端110上。网络客户端110可以运行一个或多个应用程序,该应用程序可以本地创建和参考用户界面蓝图文件,以便在网络客户端110上生成定制的用户界面。
参照图2,示出了根据各种实施例的用户界面蓝图模板200的示例。用户界面蓝图模板200可以包括偏好类别,诸如用户界面密度、用户界面设置、用户界面语义和用户界面布局。每一偏好类别可以包括一个或多个元素。例如,用户密度类别可以包括字符数、段落数、图像数、图像大小和表单输入数。用户界面设置类别可以包括窗口大小、窗口缩放、窗口边框、字体列表和字体大小。用户界面语义类别可以包括控件层次结构、控件名称、控件顺序、控件大小、控件位置、控件颜色和控件对齐。用户界面布局类别可以包括滚动条、布局层次结构、布局类型、布局权重、布局方向和分页。
参照图3,示出了根据各种实施例的用于第一应用程序的单页注册表310和多页注册表320。注册表310、320可以允许用户注册产品、创建帐户等。当整个注册表呈现在单个屏幕上时,某些用户可能更有可能完成注册表。但是,当将注册表格分部分呈现给用户,以使用户不会被单个屏幕上的大量数据字段淹没时,某些用户可能更有可能完成注册表格。
应用程序服务器可以在单个屏幕上呈现具有所有字段的单页注册表310。应用程序服务器可以确定用户未开始注册过程。通过使用页面级别分析,可以检测到用户放弃—它涉及检测用户登陆页面、停留持续时间、执行的任何动作,例如,填写部分表格,或者导航离开或关闭页面,或者使用单页注册表310开始但未完成注册过程。通过使用页面级别分析,可以检测到用户放弃—它涉及检测用户登陆页面、停留持续时间、执行的任何动作,例如,填写部分表格、以及导航离开或关闭页面。应用程序服务器在相同会话或不同会话中向用户呈现多页注册表320。多页注册表320可以在第一屏幕322、第二屏幕324和第三屏幕326中向用户呈现字段的不同子集。在用户完成第一屏幕322上的数据字段之后,应用程序服务器可以向用户呈现第二屏幕324。在用户完成第二屏幕324上的数据字段之后,应用程序服务器可以将第三屏幕326呈现给用户。响应于用户使用多页注册表320完成注册,应用程序服务器可以确定用户相比于单页注册表更偏好多页注册表。应用程序服务器可以在用户界面蓝图文件中存储推断出的偏好,该偏好表明用户偏好低密度的注册表,从而使注册表跨多个屏幕呈现和/或被限制为每个屏幕一定数量的字段。平均字段数是动态数字,其可以基于应用程序之间的使用情况而适配,并且可以相应地确定UI密度值(高、中、低)。
参照图4,示出了根据各种实施例的从关于图3中描述的用户界面存储的偏好得到的用户界面蓝图文件的示例。用户界面蓝图文件可以包括用户的唯一ID,用户界面蓝图文件表示的模板的类型以及偏好类别。密度类别表明用户偏好具有垂直排列的三个输入的低密度表格。布局类别表明用户不喜欢滚动条和三页。设置类别表明用户偏好1024x768像素大小、100%缩放、无窗口边框和12号Helvetica字体。语义类别表明用户偏好字段居中并左对齐。在各种实施例中,动态用户界面一致性系统可以实时地持续更新用户界面蓝图文件。例如,响应于用户在任何应用程序中采取的每个动作,动态用户界面一致性系统可以用任何附加的明确的或推断的偏好来更新用户界面蓝图文件。密度被捕获为指示符(高、中、低)以及绝对值(3、4等)。这些值可以基于历史数据的平均值来推断。
参照图5,示出了根据各种实施例的用于第二应用程序的多页注册表500的示例。为了生成多页注册表500,应用程序服务器可以参考图4中所示的用户界面蓝图文件。因此,可以利用分页以及每屏幕三个或更少的字段以低密度显示多页注册表500。多页注册表500可以包括在第一屏幕510上显示名字字段和姓氏字段。响应于用户完成名字字段和姓氏字段,多页注册表500可以在第二屏幕520上显示街道字段、城市字段和州字段。响应于用户完成第二屏幕520上的街道字段、城市字段和州字段,多页注册表500可以在第三屏幕530上显示电话字段和电子邮件字段。通过根据用户界面蓝图文件中的规范呈现多页注册表500,系统可以提高图形用户界面的有效性,并增加特定用户将完成多页注册表500的可能性。
因此,可以以与第一应用程序类似的外观和感觉向用户呈现第二应用程序。用户偏好可以包括视觉上可感知的元素,例如徽标、颜色、页面布局、导航系统、框架、鼠标悬停效果或在不同应用程序之间保持一致的其他元素,可以允许用户设置允许标记以启用/禁用对UI的适配。
参考图6,示出了根据各种实施例的用于提供定制的图形用户界面的过程的流程图600。用户可以访问第一应用程序(步骤610)。在各种实施例中,用户可以提供标识信息,例如用户名和密码。动态用户界面一致性系统可以将用户与唯一用户ID关联。如果应用程序是基于客户端-服务器的,则可以捕获来自用户活动的事件并将其本地存储在用户机器上或存储在服务器侧。动态UI系统将访问这些事件日志以监测输入并对其进行处理以生成蓝图。动态用户界面一致性系统可以为用户ID创建用户界面蓝图文件(步骤620)。用户可以向第一应用程序输入明确的偏好。例如,应用程序可以允许用户选择偏好,例如字体、字体大小、配色方案等,并且用户可以选择他们的偏好。动态用户界面一致性系统可以使用用户偏好API来从第一应用程序获得用户偏好。动态用户界面一致性系统可以确定推断的偏好。推断的偏好的示例包括用户未明确设置的任何UI设置—示例1、基于高文本密度UF的用户放弃确定UI文本密度偏好,2、基于低图像密度UI的用户放弃确定UI图像密度偏好。动态一致性系统可以将明确的偏好和推断的偏好存储在用户界面蓝图文件中(步骤630)。
用户可以访问第二应用程序(步骤640)。动态用户界面一致性系统可以确定对于与用户相关联的用户ID存在用户界面蓝图文件(步骤650)。例如,动态用户界面一致性系统可以为了对于用户ID的用户界面蓝图文件查询数据库。第二应用程序将需要被编程以为了UI蓝图查询动态UI系统。如果动态UI系统是完全基于客户端的,则此查询可以本地执行;如果系统是基于服务器的,则此查询可以在服务器上执行。动态用户界面一致性系统可以向第二应用程序提供用户偏好(步骤660)。第二应用程序可以参考用户界面蓝图文件,以根据用户偏好来生成动态用户界面(步骤670)。系统可以响应于用户与第二应用程序的交互而接收附加的用户偏好,并且系统可以将附加的用户偏好添加到用户界面蓝图文件(步骤680)。
本文中各种实施例的详细描述参考了附图和图片,其通过说明的方式示出了各种实施例。尽管足够详细地描述了这些各种实施例以使本领域技术人员能够实践本公开,但是应当理解,可以实现其他实施例,并且在不脱离本公开的精神和范围的情况下,可以进行逻辑和机械改变。因此,仅出于说明而非限制的目的给出本文的详细描述。例如,在任何方法或过程描述中叙述的步骤可以以任何顺序执行,不限于所呈现的顺序。而且,任何功能或步骤都可以外包给一个或多个第三方或由一个或多个第三方执行。此外,对单数的任何引用都包括复数实施例,并且对多于一个组件的任何引用可以包括单个实施例。
提供了系统、方法和计算机程序产品。在本文的详细描述中,对“各种实施例”、“一个实施例”、“实施例”、“示例实施例”等的参考指示所描述的实施例可以包括特定的特征、结构或特性,但是每个实施例可能不是必须包括该特定的特征、结构或特性。而且,这样的短语不一定指相同的实施例。此外,当结合实施例描述特定的特征、结构或特性时,认为结合其他实施例(无论是否明确描述)实行该特征、结构或特性是在本领域技术人员的知识范围内。在阅读了说明书之后,如何在替代实施例中实现本公开对于相关领域的技术人员而言将是显而易见的。
如本文中所使用的,“满足(satisfy)”、“符合(meet)”、“匹配(match)”、“与...相关联(associated with)”或类似短语可以包括相同匹配、部分匹配、符合一定标准、匹配数据的子集、相关、满足一定标准、对应性、关联、算法关系等。类似地,如本文中所使用的,“认证(authenticate)”或类似术语可以包括准确认证、部分认证、认证数据的子集、对应性、满足一定标准、关联、算法关系等。
类似于“关联(associate)”和/或“关联(associating)”的术语和短语可以包括标记、标识、相关、使用查找表或用于指示或创建元素(例如,诸如(i)交易帐户和(ii)项目(例如,要约、奖励、折扣)和/或数字信道)之间的关系的任何其他方法或系统。此外,响应于任何适当的动作、事件或时间段,关联可以在任何时间点发生。关联可以以预定间隔、周期地、随机地、一次、多于一次或响应于适当的请求或动作而发生。可以经由软件启用的链接来分发和/或访问任何信息,其中链接可以经由电子邮件、文本、发布(post)、社交网络输入和/或本领域中已知的任何其他方法来发送。
该系统或任何组件可以利用诸如AMAZON开发的ALEXA系统等系统集成技术集成。Alexa是基于云的语音服务,可以在任务、娱乐以及常规信息等方面给予帮助。所有AmazonAlexa装置(例如,Amazon Echo、Amazon Dot、Amazon Tap和Amazon Fire TV)可以访问Alexa语音服务。该系统可以经由其语音激活技术接收语音命令,并激活其他功能,控制智能装置和/或收集信息。例如,音乐、电子邮件、文本、呼叫、已回答的问题、家居改善信息、智能家居通信/激活、游戏、购物、制作待办事项清单、设置警报、流式播客、播放有声读物以及提供天气、交通和其他实时信息,例如新闻。该系统可以允许用户访问有关合格帐户的信息,该合格帐户跨过所有启用Alexa的装置链接到在线帐户。
本文讨论的任何通信、传输和/或信道可以包括用于传递内容(例如,数据、信息、元数据等)的任何系统或方法和/或内容本身。内容可以以任何形式或介质来呈现,并且在各种实施例中,内容可以以电子方式传递和/或能够以电子方式呈现。例如,信道可以包括网站或装置(例如,FACEBOOK、
Figure BDA0002730516880000081
)、统一资源定位符(“URL”)、文档(例如,
Figure BDA00027305168800000811
文档、
Figure BDA00027305168800000812
文档、
Figure BDA0002730516880000086
.pdf文档等)、“电子书”、“电子杂志”、应用程序或微型应用程序(如本文所述的)、SMS或其他类型的文本消息、电子邮件、Facebook、twitter、MMS和/或其他类型的通信技术。在各种实施例中,信道可以由数据伙伴托管或提供。在各种实施例中,分发信道可以包括商家网站、社交媒体网站、附属或伙伴网站、外部供应商、移动装置通信、社交媒体网络和/或基于位置的服务中的至少一个。分发信道可以包括商家网站、社交媒体网站、附属或伙伴网站、外部供应商和移动装置通信中的至少一个。社交媒体网站的示例包括
Figure BDA00027305168800000813
Figure BDA0002730516880000089
等。附属或伙伴网站的示例包括
Figure BDA00027305168800000810
等。此外,移动装置通信的示例包括短信、电子邮件和智能手机的移动应用程序。
在各种实施例中,使用在此描述的各种具体机器来实现在此描述的方法。如本领域技术人员将立即认识到的,可以以任何合适的组合使用以下具体机器以及以后开发的那些机器来实施本文描述的方法。进一步地,从本公开中可以清楚地看出,本文描述的方法可以得到某些物品的各种变换。
为了简洁起见,本文中将不详细描述系统(以及系统的各个操作组件的组件)的常规数据联网、应用程序开发和其他功能方面。此外,在此包含的各个附图中示出的连接线旨在表示各个元素之间的示例性功能关系和/或物理联接。应当指出,在实际系统中可以存在许多替代或附加的功能关系或物理连接。
本文讨论的各种系统组件可以包括以下的一个或多个:主机服务器或包括用于处理数字数据的处理器的其他计算系统;与处理器耦接的存储器,用于存储数字数据;输入数字转换器(digitizer),其耦接到处理器,用于输入数字数据;应用程序,存储在存储器中,并且可由处理器访问用于指导处理器对数字数据的处理;显示装置,其耦接到处理器和存储器,用于显示从处理器处理的数字数据得出的信息;以及多个数据库。这里使用的各种数据库可以包括:客户端数据;商家数据;金融机构数据;和/或对系统运行有用的类似数据。如本领域技术人员将理解的,用户计算机可以包括操作系统(例如,
Figure BDA0002730516880000091
OS2、
Figure BDA0002730516880000092
MacOS等)以及通常与计算机相关联的各种常规支持软件和驱动器。
本系统或其任何部分或功能可以使用硬件、软件或其组合来实现,并且可以在一个或多个计算机系统或其他处理系统中实现。然而,由实施例执行的操纵通常是用例如匹配或选择的术语来指代的,这些术语通常与人类操作员执行的智力操作相关。在本文所述的任何操作中,人类操作员的这种能力在大多数情况下都不是必需的或需要的。而是,这些操作可以是机器操作,或者任何操作可以通过人工智能(AI)或机器学习来进行或增强。用于执行各种实施例的有用的机器包括通用数字计算机或类似装置。
实际上,在各种实施例中,这些实施例针对能够执行本文所述功能的一个或多个计算机系统。计算机系统包括一个或多个处理器,例如处理器。处理器连接到通信基础结构(例如,通信总线、交叉条(cross over bar)或网络)。按照该示例性计算机系统描述了各种软件实施例。在阅读该描述之后,对于相关领域的技术人员来说,如何使用其他计算机系统和/或架构来实现各种实施例将变得显而易见。计算机系统可以包括显示接口,该显示接口转发来自通信基础结构(或来自未示出的帧缓冲器)的图形、文本和其他数据,用于在显示单元上显示。
计算机系统还包括主存储器,诸如例如随机存取存储器(RAM),并且还可以包括辅助存储器或内存中(非旋转)硬盘驱动器。辅助存储器可以包括例如硬盘驱动器和/或可移动存储驱动器,表示软盘驱动器、磁带驱动器、光盘驱动器等。可移动存储驱动器以众所周知的方式从可移动存储单元读取和/或写入可移动存储单元。可移动存储单元表示由可移动存储驱动器读取和写入的软盘、磁带、光盘等。如将理解的,可移动存储单元包括其中存储有计算机软件和/或数据的计算机可用存储介质。
在各个实施例中,辅助存储器可以包括用于允许将计算机程序或其他指令加载到计算机系统中的其他类似装置。这样的装置可以包括例如可移动存储单元和接口。这样的示例可以包括程序盒式存储器和盒式接口(例如在视频游戏装置中找到的)、可移动存储芯片(例如可擦除可编程只读存储器(EPROM)或可编程只读存储器(PROM))和相关嵌套、以及其他可移动存储单元和接口,其允许将软件和数据从可移动存储单元传输到计算机系统。
计算机系统还可以包括通信接口。通信接口允许软件和数据在计算机系统和外部装置之间传输。通信接口的示例可以包括调制解调器、网络接口(例如以太网卡)、通信端口、个人计算机存储卡国际协会(PCMCIA)插槽和卡等。通过通信接口传输的软件和数据以信号的形式存在,信号可以是电子的、电磁的、光的或其他能够被通信接口接收的信号。这些信号通过通信路径(例如,信道)被提供给通信接口。该信道承载信号,并且可以使用电线、电缆、光纤、电话线、蜂窝链路、射频(RF)链路、无线和其他通信信道来实现。
术语“计算机程序介质”和“计算机可用介质”和“计算机可读介质”通常用于指代诸如可移动存储驱动器和安装在硬盘驱动器中的硬盘之类的介质。这些计算机程序产品向计算机系统提供软件。
计算机程序(也称为计算机控制逻辑)存储在主存储器和/或辅助存储器中。也可以经由通信接口来接收计算机程序。这样的计算机程序在被执行时使计算机系统能够执行本文所讨论的特征。特别地,计算机程序在被执行时使处理器能够执行各种实施例的特征。因此,这样的计算机程序代表计算机系统的控制器。
在各个实施例中,可以使用可移动存储驱动器、硬盘驱动器或通信接口将软件存储在计算机程序产品中并加载到计算机系统中。当由处理器执行时,控制逻辑(软件)使处理器执行如本文所述的各种实施例的功能。在各种实施例中,硬件组件诸如专用集成电路(ASIC)。硬件状态机器的实现以执行本文描述的功能对于相关领域的技术人员将是显而易见的。
在各个实施例中,服务器可以包括应用程序服务器(例如,WEB SPHERE、WEBLOGIC、JBOSS以及
Figure BDA0002730516880000111
Postgres Plus
Figure BDA0002730516880000112
(PPAS)等)。在各种实施例中,服务器可以包括网络服务器(例如,APACHE、IIS、GWS、SUN
Figure BDA0002730516880000113
SYSTEM WEB SERVER以及在LINUX或WINDOWS上运行的JAVA虚拟机)。
网页客户端包括经由任何网络通信的任何装置(例如,个人计算机),例如诸如本文所讨论的那些。这样的浏览器应用程序包括安装在计算单元或系统内的因特网浏览软件,以进行在线交易和/或通信。这些计算单元或系统可以采用计算机或计算机组的形式,然而可以使用其他类型的计算单元或系统,包括膝上型计算机、笔记本电脑、平板电脑、手持式计算机、个人数字助理、机顶盒、工作站、计算机-服务器、大型机、微型计算机、PC服务器、普及型计算机、网络计算机组、个人计算机(例如
Figure BDA00027305168800001111
Figure BDA0002730516880000116
)、自助服务终端、终端、销售点(POS)装置和/终端、电视或任何其他能够通过网络接收数据的装置。网页客户端可以运行
Figure BDA0002730516880000117
INTERNET
Figure BDA00027305168800001112
Figure BDA00027305168800001110
Safari或任何其他可用于浏览互联网的各种软件包。
从业者将意识到,网页客户端可以与或可以不与应用程序服务器直接联系。例如,网页客户端可以通过另一个服务器和/或硬件组件访问应用程序服务器的服务,该另一服务器和/或硬件组件可以直接或间接连接到互联网服务器。例如,网页客户端可以通过负载平衡器与应用程序服务器进行通信。在各种实施例中,访问是通过网络或互联网经由可商购的网络浏览器软件包进行的。
如本领域技术人员将理解的,网页客户端包括操作系统(例如,
Figure BDA0002730516880000121
/CE/Mobile、OS2、
Figure BDA0002730516880000122
MacOS等)以及通常与计算机关联的各种常规支持软件和驱动器。网页客户端可以包括任何合适的个人计算机、网络计算机、工作站、个人数字助理、蜂窝电话、智能电话、小型计算机以及大型机等。网页客户端可以在具有网络访问权限的家庭或企业环境中。在各种实施例中,访问是通过网络或互联网经由可商购的网络浏览器软件包进行的。网页客户端可以实现安全协议,例如安全套接层(SecureSockets Layer,SSL)和传输层安全(Transport Layer Security,TLS)。网页客户端可以实现几种应用层协议,包括http、https、ftp和sftp。
在各个实施例中,系统100的组件、模块和/或引擎可以被实现为微型应用程序或微应用。微型应用通常部署在移动操作系统的环境中,包括例如
Figure BDA0002730516880000123
移动操作系统、
Figure BDA0002730516880000124
操作系统、
Figure BDA0002730516880000125
Figure BDA0002730516880000126
操作系统等。可以将微应用配置为通过一组预定规则来利用较大操作系统和相关硬件的资源,该预定规则管理各种操作系统和硬件资源的操作。例如,在微应用希望与除移动装置或移动操作系统之外的装置或网络通信的情况下,微应用可以在移动操作系统的预定规则下利用操作系统和相关装置硬件的通信协议。此外,在微应用需要来自用户的输入的情况下,微应用可以被配置为请求来自操作系统的响应,该操作系统监测各种硬件组件,然后将检测到的来自硬件的输入传送到微应用。
如本文所使用,“标识符”可以是唯一地标识项目的任何合适的标识符。例如,标识符可以是全局唯一标识符(Globally Unique Identifier,“GUID”)。GUID可以是在通用唯一标识符标准下创建和/或实现的标识符。此外,GUID可以存储为128位值,其可以显示为32个十六进制数字。标识符还可以包括主数(major number)和次数(minor number)。主数和次数可以分别是16位整数。
在各个实施例中,帐户号可以标识消费者。另外,在各个实施例中,可以通过各种标识符(包括例如电子邮件地址、电话号码、cookie ID、射频标识符(RFID)、生物特征等等)来识别消费者。
如本文所使用的,术语“网(络)”包括结合了硬件和/或软件组件的任何云、云计算系统或电子通信系统或方法。例如,各方之间的通信可以通过任何合适的通信渠道来完成,例如,通过电话网络、企业网、内部网、互联网、交互点装置(销售点装置、个人数字助理(例如,
Figure BDA0002730516880000131
Figure BDA0002730516880000132
)、蜂窝电话、自助终端等)、在线通信、卫星通信、离线通信、无线通信、应答器通信、局域网(LAN)、广域网(WAN)、虚拟专用网(VPN)、联网或链接的装置、键盘、鼠标和/或任何适当的通信或数据输入形式。此外,尽管本文中经常将系统描述为利用TCP/IP通信协议来实现,但是系统也可以使用IPX、
Figure BDA0002730516880000133
talk、IP-6、
Figure BDA0002730516880000134
OSI、任何隧道协议(例如,IPsec、SSH)或任何数量的现有或将来的协议来实现。如果网络具有公共网络(例如,互联网)的性质,则假定网络不安全并向窃听者开放可能是有利的。与结合互联网使用的协议、标准和应用软件有关的特定信息通常是本领域技术人员已知的,因此在此无需详细说明。参见,例如,Dilip Naik,Internet Standards andProtocols(互联网标准和协议)(1998);多位作者编撰的
Figure BDA0002730516880000135
2COMPLETE(完全JAVA2),(Sybex 1999);Deborah Ray和Eric Ray的Mastering HTML 4.0(掌握HTML 4.0)(1997);Loshin的TCP/IP Clearly Explained(清楚解释TCP/IP)(1997)以及DavidGourley和Brian Totty的HTTP,The Definitive Guide(HTTP权威指南)(2002),这些的内容在此通过引用而并入。
各种系统组件可以经由数据链路独立地、分别地或共同地适当地耦接到网络,数据链路包括例如通过本地环路与互联网服务提供商(ISP)的连接,如通常结合标准调制解调器通信、电缆调制解调器、Dish
Figure BDA0002730516880000136
ISDN、数字用户线(DSL)或各种无线通信方法所使用的,请参见,例如,Gilbert Held的“Understanding Data Communications(理解数据通信)”(1996),其在此通过引用并入。应当注意,网络可以被实现为其他类型的网络,例如交互式电视(Interactive Television,ITV)网络。此外,该系统考虑通过具有本文所述类似功能的任何网络使用、销售或分发任何商品、服务或信息。
“云”或“云计算”包括这样的模型,其使能够对可配置计算资源(例如,网络、服务器、存储、应用程序和服务)的共享池进行方便的、按需的网络访问,该可配置计算资源可以用最少的管理工作或服务提供者交互来被快速供应和发布。云计算可以包括位置无关的计算,从而共享服务器按需向计算机和其他装置提供资源、软件和数据。有关云计算的更多信息,请参见NIST(国家标准技术研究院)对云计算的定义,网址为http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf(最新访问日期为2012年6月),其通过引用整体并入本文。
如本文所使用的,“传输”可以包括通过网络连接将电子数据从一个系统组件发送到另一系统组件。另外,如本文所使用的,“数据”可以包括数字或任何其他形式的包含信息,例如,命令、查询、文件、用于存储的数据等。
该系统预期与网络服务、效用计算、普及和个性化计算、安全和身份解决方案、自主计算、云计算、商品计算、移动性和无线解决方案、开源、生物识别、网格计算和/或网式计算关联使用。
本文讨论的任何数据库可以包括关系数据库、层次数据库、图形数据库、区块链数据库、面向对象的结构数据库和/或任何其他数据库配置。可用于实现数据库的常见数据库产品包括
Figure BDA0002730516880000141
(位于纽约州阿蒙克市)的DB2、可从
Figure BDA0002730516880000142
公司(位于加利福尼亚州红木海岸)获得的各种数据库产品、
Figure BDA0002730516880000143
公司(位于华盛顿州雷德蒙德市)的
Figure BDA0002730516880000144
Figure BDA0002730516880000145
SQL
Figure BDA0002730516880000148
MySQL AB(位于瑞典乌普萨拉)的MySQL、
Figure BDA0002730516880000146
Apache
Figure BDA0002730516880000147
的HBase、MapR-DB或任何其他合适的数据库产品。而且,数据库可以以任何适当的方式来组织,例如,作为数据表或查找表。每个记录可以是单个文件、一系列文件、一系列链接的数据字段或任何其他数据结构。
某些数据的关联可以通过任何期望的数据关联技术来完成,例如本领域中已知或实践的那些技术。例如,关联可以手动或自动完成。自动关联技术可以包括例如数据库搜索、数据库合并、GREP、AGREP、SQL、在表中使用关键字段来加快搜索速度、对所有表和文件进行顺序搜索、根据已知的顺序对文件中的记录进行排序以简化查找,等等。关联步骤可以通过数据库合并功能来完成,例如,使用预选数据库或数据区中的“关键字段”。考虑使用各种数据库调优步骤来优化数据库性能。例如,可以将诸如索引之类的常用文件放置在单独的文件系统上,以减少输入/输出(“I/O”)瓶颈。
更具体地,“关键字段”根据由关键字段限定的对象的高级类别对数据库进行分区。例如,可以将某些类型的数据指定为多个相关数据表中的关键字段,然后可以基于关键字段中的数据类型来链接数据表。优选地,每个链接的数据表中的与关键字段相对应的数据是相同的或是相同类型的。但是,例如,也可以通过使用AGREP链接在关键字段中具有尽管不相同但是类似的数据的数据表。根据一个实施例,可以利用任何合适的数据存储技术来存储数据而没有标准格式。数据集可以使用任何适当的技术来存储,包括例如:使用ISO/IEC 7816-4文件结构存储各个文件;实现域,由此选择专用文件,该专用文件暴露包含一个或多个数据集的一个或多个基本文件;使用分级文件系统使用存储在各个文件中的数据集;被存储为在单个文件中的记录的数据集(包括压缩、SQL可访问的、经由一个或多个密钥被哈希处理的、数字的、通过第一元组按字母顺序的等等);二进制大对象(BLOB);存储为使用ISO/IEC 7816-6数据元素编码的未分组数据元素;存储为使用在ISO/IEC8824和8825中的ISO/IEC抽象语法符号(ASN.l)编码的未分组数据元素;和/或可以包括分形压缩方法、图像压缩方法等的其他专有技术。
在各个实施例中,通过将信息存储为BLOB来促进以不同格式存储各种信息的能力。因此,任何二进制信息可以存储在与数据集关联的存储空间中。如上所述,二进制信息可以与系统相关联地存储或存储在系统外部但与系统有关。BLOB方法可以使用固定的存储分配、循环队列技术或有关存储器管理的最佳实践(例如,分页存储器、最近最少使用等)经由固定的存储器偏移将数据集存储为格式化为二进制块的未分组的数据元素。通过使用BLOB方法,存储具有不同格式的各种数据集的能力有助于由数据集的多个且不相关的所有者将数据存储在数据库中,或与系统关联地存储数据。例如,可以由第一方提供可以存储的第一数据集,可以由不相关的第二方提供可以存储的第二数据集,且可以由与第一方和第二方不相关的第三方提供可以存储的第三数据集。这三个示例性数据集的每一个可以包含使用不同的数据存储格式和/或技术存储的不同的信息。此外,每个数据集可以包含也可以与其他子集不同的数据子集。
如上所述,在各种实施例中,可以不考虑常用格式而存储数据。但是,该数据集(例如,BLOB)当被提供用于操纵数据库或系统中的数据时,可以以标准方式被注释。注释可以包括被配置为传达在管理各种数据集时有用的信息的与每个数据集有关的短头标(header)、尾标(trailer)或其他适当的指示符。例如,注释在本文中可以被称为“条件头标”、“头标”、“尾标”或“状态”,并且可以包括对数据集的状态的指示或者可以包括与数据的特定发布者或所有者相关的标识符。在一个示例中,每个数据集BLOB的前三个字节可以被配置为或可配置为指示该特定数据集的状态:例如,已加载、已初始化、就绪、已阻止、可移除、或已删除。后续的数据字节可用于指示例如发布者、用户的身份、事务/会员帐户标识符等。这些条件注释中的每一个在本文中进一步讨论。
数据集注释也可以用于其他类型的状态信息以及各种其他目的。例如,数据集注释可以包括建立访问级别的安全信息。例如,访问级别可以被配置为仅允许某些个人、员工级别、公司或其他实体访问数据集,或被配置为允许基于事务、商家、发布者、用户等访问特定数据集。此外,安全信息可以仅限制/仅允许某些动作,例如,访问、修改和/或删除数据集。在一个示例中,数据集注释指示仅数据集所有者或用户被允许删除数据集,各种标识的用户可以被允许访问该数据集以读取,而其他用户全部被排除在访问数据集之外。但是,也可以使用其他访问限制参数,允许各种实体适当地以各种许可级别访问数据集。
包括头标或尾标的数据可以由独立的交互装置接收,该交互装置被配置为根据头标或尾标添加、删除、修改或扩充数据。因此,在一个实施例中,头标或尾标不与关联的发布者拥有的数据一起存储在事务装置上,而是可以通过在独立装置处向用户提供要采取的动作的适当选项而采取适当的动作。该系统可以考虑数据存储布置,其中,数据的头标或尾标、或者头标或尾标历史被存储在与适当数据相关的系统、装置或事务工具上。
本领域技术人员还将意识到,出于安全原因,任何数据库、系统、装置、服务器或系统的其他组件可以在单个位置或多个位置处由其任何组合组成,其中每个数据库或系统包括各种合适的安全特征中的任何一种,例如防火墙、访问代码、加密、解密、压缩、解压缩等。
加密可以通过本领域现在可用或可能变得可用的任何技术来执行,例如,Twofish、RSA、El Gamal、Schorr签名、DSA、PGP、PKI、GPG(GnuPG)、HPE格式-保留加密(FPE)、Voltage以及对称和非对称密码系统。这些系统和方法还可以并入SHA系列密码方法以及ECC(椭圆曲线密码术)和其他正在开发的量子可读密码算法。
网页客户端的计算单元可以进一步配备有使用标准拨号、电缆、DSL或本领域已知的任何其他互联网协议而连接到互联网或内联网的互联网浏览器。起源于网页客户端的事务可以经过防火墙,以防止其他网络用户的未经授权的访问。此外,可以在CMS的不同组件之间部署附加防火墙,以进一步增强安全性。
本文讨论的计算机可以提供用户可访问的合适的网站或其他基于互联网的图形用户界面。在一个实施例中,
Figure BDA0002730516880000171
INTERNET INFORMATION
Figure BDA0002730516880000172
(IIS)、
Figure BDA0002730516880000173
Transaction Server(MTS)和
Figure BDA0002730516880000174
SQL Server与
Figure BDA0002730516880000175
操作系统、
Figure BDA0002730516880000176
NT网络服务器软件、
Figure BDA0002730516880000177
SQLServer数据库系统和
Figure BDA0002730516880000178
Commerce Server结合使用。另外,诸如Access或
Figure BDA0002730516880000179
SQL Server、
Figure BDA00027305168800001710
Sybase、Informix MySQL、Interbase等的组件可用于提供符合动态数据对象(Active Data Object,ADO)的数据库管理系统。在一个实施例中,Apache网络服务器与Linux操作系统、MySQL数据库以及Perl、PHP、Ruby和/或Python编程语言结合使用。
本文讨论的任何通信、输入、存储、数据库或显示可以通过具有网页的网站来促进。本文所使用的术语“网页(web page)”并不意味着限制可能用于与用户交互的文档和应用程序的类型。例如,除了标准的HTML文档之外,典型的网站还可以包括各种形式、
Figure BDA00027305168800001711
小程序、JAVASCRIPT、动态服务器页面(ASP)、通用网关界面脚本(CGI)、可扩展标记语言(XML)、动态HTML、级联样式表(CSS)、AJAX(异步JAVASCRIPT和XML)、助手程序应用程序以及插件等。服务器可以包括从网络服务器接收请求的网络服务,该请求包括URL和IP地址(123.56.789.234)。网络服务器检索适当的网页并将该网页的数据或应用程序发送到IP地址。网络服务是能够通过通信手段(例如互联网)与其他应用程序进行交互的应用程序。网络服务通常基于标准或协议,例如XML、SOAP、AJAX、WSDL和UDDI。网络服务方法在本领域中是众所周知的,并且在许多标准文本中都有介绍。参见,例如,Alex Nghfem的“IT WebServices:A Roadmap for The Enterprise(IT网络服务:企业的路线图)”(2003),在此通过引用并入。例如,代表性状态传输(REST)或RESTful网络服务可以提供一种启用应用程序之间互操作性的方式。
中间件(middleware)可以包括适当地被配置为促进异构计算系统之间的通信和/或处理事务的任何硬件和/或软件。中间件组件是可商购的并且是本领域已知的。中间件可以通过可商购的硬件和/或软件、通过定制的硬件和/或软件组件、或通过其组合来实现。中间件可以驻留在各种配置中,并且可以作为独立系统存在,或者可以是驻留在互联网服务器上的软件组件。出于本文所公开的任何目的,中间件可以被配置为处理应用程序服务器的各种组件与任何数量的内部或外部系统之间的事务。
Figure BDA0002730516880000181
有限公司(纽约州阿蒙克)的
Figure BDA0002730516880000182
MQTM(以前的MQSeries)是可商购的中间件产品的示例。企业服务总线(“ESB”)应用程序是中间件的另一个示例。
从业者还将意识到,存在多种用于在基于浏览器的文档内显示数据的方法。数据可以表示为标准文本,或者可以表示在固定列表、可滚动列表、下拉列表、可编辑文本字段、固定文本字段、弹出窗口内等。同样,存在许多方法可用于修改网页中的数据,例如,使用键盘的自由文本输入、菜单项的选择、复选框、选项框等。
本文中可以根据功能块组件、屏幕截图、可选选择和各种处理步骤来描述系统和方法。应当理解,可以通过被配置为执行指定功能的任何数量的硬件和/或软件组件来实现这样的功能块。例如,系统可以采用各种集成电路组件,例如存储器元件、处理元件、逻辑元件、查找表等,其可以在一个或多个微处理器或其他控制装置的控制下执行各种功能。类似地,系统的软件元素可以使用任何编程或脚本语言来实现,例如C、C++、C#、
Figure BDA0002730516880000183
JAVASCRIPT、JAVASCRIPT对象表示法(JSON)、VBScript、Macromedia Cold Fusion、COBOL、
Figure BDA0002730516880000184
动态服务器页面、汇编、PERL、PHP、awk、Python、Visual Basic、SQL存储过程、PL/SQL、任何UNIX外壳脚本和可扩展标记语言(XML),其中各种算法通过数据结构、对象、过程、例程或其他编程元素的任意组合来实现。此外,应当注意,系统可以采用任何数量的常规技术来进行数据传输、信令、数据处理、网络控制等。更进一步,系统可以被用来检测或防止诸如JAVASCRIPT、VBScript等的客户端侧脚本语言的安全问题。对于密码学和网络安全的基本介绍,请参见以下任何参考文献:(1)Bruce Schneier的“AppliedCryptography:Protocols,Algorithms,And Source Code In C(应用密码学:C中的协议、算法和源代码)”,由John Wiley&Sons出版(第二版,1995年),(2)Jonathan Knudson,“
Figure BDA0002730516880000191
Cryptography(
Figure BDA0002730516880000192
密码术)”,由O’Reilly&Associates出版(1998年);(3)William Stallings的“Cryptography&Network Security:Principles&Practice(密码学和网络安全:原理与实践)”,由Prentice Hall出版,通过引用将其全部内容并入本文。
在各个实施例中,系统的软件元素也可以使用
Figure BDA0002730516880000193
实现。
Figure BDA0002730516880000194
可以实现几个模块来处理各种核心功能。例如,诸如
Figure BDA0002730516880000195
的包管理模块可以实现为开源库,以帮助组织第三方
Figure BDA0002730516880000196
程序的安装和管理。
Figure BDA0002730516880000197
还可以实现过程管理器,例如诸如并行多线程机(Parallel Multithreaded Machine,“PM2”);资源和性能监测工具,例如诸如节点应用程序指标(“appmetrics”);用于构建用户界面的库模块,例如诸如
Figure BDA0002730516880000198
和/或任何其他合适和/或所需的模块。
如本领域普通技术人员将理解的,系统可以具体化为现有系统的定制、附加产品、执行升级软件的处理装置、独立系统、分布式系统、方法、数据处理系统、用于数据处理的装置和/或计算机程序产品。因此,系统或模块的任何部分可以采取执行代码的处理装置、基于互联网的实施例、完全硬件的实施例、或结合互联网、软件和硬件的各方面的实施例的形式。此外,该系统可以采取计算机可读存储介质上的计算机程序产品的形式,该计算机可读存储介质具有体现在该存储介质中的计算机可读程序代码装置。可以利用任何合适的计算机可读存储介质,包括硬盘、CD-ROM、光学存储装置、磁存储装置等。
本文参考根据各种实施例的方法、装置(例如,系统)和计算机程序产品的屏幕截图、框图和流程图说明来描述该系统和方法。将理解,框图和流程图图示中的每个功能块以及框图和流程图图示中的功能块的组合分别可以通过计算机程序指令来实现。
因此,框图和流程图的功能块支持用于执行指定功能的装置的组合、用于执行指定功能的步骤的组合以及用于执行指定功能的程序指令装置。还应理解,框图和流程图图示的每个功能块以及框图和流程图图示中的功能块的组合可以通过执行指定功能或步骤的基于专用硬件的计算机系统来实现,或通过专用硬件和计算机指令的适当组合来实现。此外,过程流的图示及其描述可以参考用户
Figure BDA0002730516880000201
网页、网站、网页表单(webform)、提示等。从业人员将认识到,本文描述的图示步骤可以包括以任何数量的配置,包括使用
Figure BDA0002730516880000202
网页、网页表单、弹出
Figure BDA0002730516880000203
和提示等。还应当理解,图示和描述的多个步骤可以组合成单个网页和/或
Figure BDA0002730516880000204
但是为了简单起见已被扩展。在其他情况下,图示和描述为单个处理步骤的步骤可以分为多个网页和/或
Figure BDA0002730516880000205
但为了简单起见已被组合。
术语“非暂时性”应被理解为仅从权利要求范围中除去传播暂时性信号本身,而不放弃对不仅仅在传播暂时性信号本身的所有标准计算机可读介质的权利。换句话说,术语“非暂时性计算机可读介质”和“非暂时性计算机可读存储介质”的含义应被解释为仅排除在In re Nuijten中发现的那些不属于《美国法典》第35编第101条规定的可专利性主题范围的暂时性计算机可读介质的类型。
在此已经关于特定实施例描述了益处、其他优点以及问题的解决方案。然而,益处、优点、问题的解决方案以及可能引起任何益处、优点或解决方案出现或变得更加明显的任何元素均不应被解释为本公开的关键、必需或必要特征或元素。因此,本公开的范围仅受所附权利要求的限制,在所附权利要求中,以单数形式提及元素并不旨在表示“一个且仅一个”,除非明确地如此指出,而是“一个或多个”。此外,在权利要求书或说明书中使用与‘A、B和C中的至少一个’或‘A、B或C中的至少一个’类似的短语时,意图将该短语解释为:实施例中可以单独存在A、实施例中可以单独存在B、实施例中可以单独存在C、或者在单个实施例中可以存在元素A、B和C的任何组合;例如,A和B、A和C、B和C、或A和B和C。
尽管本公开包括方法,但是可以预期其可以体现为有形计算机可读载体(诸如磁或光存储器或磁盘或光盘)上的计算机程序指令。本领域普通技术人员已知的上述各种实施例的元素的所有结构、化学和功能等同物通过引用明确地并入本文,并且意在被本权利要求所涵盖。此外,装置或方法不必解决本公开寻求解决的每个或各个问题,本公开被本权利要求所涵盖。此外,无论在权利要求中是否明确叙述了本公开的元素、组件或方法步骤,都不旨在将这些元素、组件或方法步骤贡献给公众。没有任何权利要求元素旨在引起《美国法典》第35编第112(f)款,除非使用短语“装置用于(means for)”明确地叙述了该元素。如这里所使用的,术语“包括”、“包含”或者其任何其他变型意在涵盖非排他性的包含,从而使得包括列出的元素的过程、方法、物品或者装置不仅仅包括那些元素,而且还可以包括没有明确列出的或者这样的过程、方法、物品或者装置固有的其他元素。
本公开和权利要求书不仅仅描述提供动态定制的用户界面的特定结果,而是本公开和权利要求书包括用于实现提供动态定制的用户界面的结果的特定规则,并将信息呈现为特定格式,该特定格式然后被使用并应用于创建提供动态定制的用户界面所需的结果,如McRO,Inc.诉Bandai Namco Games America Inc.(联邦法院案号15-1080,2016年9月13日)所述。换句话说,可以通过许多不同类型的规则和规则的组合来执行提供动态定制的用户界面的结果,并且本公开包括具有特定规则的各种实施例。虽然没有完全的先占权可能不保证主张合格,但是本公开根本没有充分先占提供动态定制的用户界面的领域。本公开起到缩小、限制和以其他方式约束本公开的作用,以不覆盖提供动态定制的用户界面的一般抽象概念。明显地,存在提供动态定制的用户界面的其他系统和方法,因此断言所要求保护的发明先占了该领域或独占了提供动态定制的用户界面的基本工具将是不合适的。换句话说,本公开将不会阻止其他方提供动态定制的用户界面,因为其他系统已经以与请求保护的本发明不同的方式执行功能。此外,请求保护的本发明包括这样的发明构思,该发明构思可以在已知常规手段的非常规和非通用排列中发现,符合Bascom v.AT&T Mobility,2015-1763(联邦巡回上诉法院,2016年)。本公开和权利要求超出了任何一个系统的任何常规性,在于:系统的交互和协同作用导致附加功能,该附加功能是通过任何一个独立运行的系统所没有提供的。本公开和权利要求还可以包括多个不同系统之间的交互,因此本公开不能被认为是通用计算机的实现,或者不能被认为是仅仅“将其应用于”抽象过程。本公开和权利要求还可以针对具有对软件领域中的问题的解决方案的具体实现的软件的改进。
在各种实施例中,系统和方法可以包括图形用户界面,用于动态地重新定位/重新缩放底层窗口(underlying window)的被遮挡的文本信息以自动变为用户可观看到的。通过允许文本信息根据重叠状况被动态地重新定位,可以提高计算机显示信息的能力。更具体地,用于动态地重新定位在图形用户界面中显示的底层窗口内的文本信息的方法可以包括:在计算机屏幕上的图形用户界面内显示包含第一格式的文本信息的第一窗口;在图形用户界面中显示第二窗口;持续地监测第一窗口和第二窗口的边界,以检测第二窗口与第一窗口重叠而使得第一窗口中的文本信息从用户的视线来看被遮挡的重叠状况;确定如果文本信息被重新定位到第一窗口的未遮挡部分则文本信息将不是完全可见的;计算第一窗口的面积的第一度量和第一窗口的未遮挡部分的面积的第二度量;计算缩放因子,该缩放因子与第一度量和第二度量之间的差成比例;根据缩放因子缩放文本信息;在重叠状况期间,由处理器将缩放后的文本信息自动以第二格式重新定位到第一窗口的未遮挡部分,使整个缩放后的文本信息可由用户在计算机屏幕上查看;当重叠状况不再存在时,由处理器自动将重新定位的缩放后的文本信息返回为第一窗口内的第一格式。
在各个实施例中,系统还可以使用用于将主机(host)网页的“外观与感觉(lookand feel)”与广告商家的网页的产品相关内容信息共同营销的系统来解决在代销购买(affiliate purchase)事务期间对顾客保持控制的问题。系统可以由第三方外包提供商运行,第三方外包提供商充当多个主机与商家之间的代理。在实施之前,主机在主机的网页上放置到商家网页的链接。这些链接与商家网页上的产品相关内容相关联。此外,外包提供商系统将来自每个主机的网页的“外观与感觉”信息存储在与计算机服务器耦接的计算机数据存储库(store)中。“外观与感觉”信息包括视觉上可感知的元素,例如徽标、颜色、页面布局、导航系统、框架、鼠标悬停效果或在每个主机各自的某些或全部网页中一致的其他元素。点击广告链接的顾客不是从主机网页转到商家的网页,而是被重定向到合成网页,该合成网页将与所选物品相关联的产品信息与主机网页的视觉可感知元素组合。外包提供商的服务器通过首先识别已在其中选择链接的主机网页并检索相应存储的“外观与感觉”信息来进行响应。服务器使用检索到的主机网页的“外观与感觉”信息构建合成网页,在其中嵌入了与产品相关的内容,以便顾客将合成网页在视觉上感知为与主机网页相关联。然后,服务器将该合成网页发送并呈现给顾客,以便她有效地留在主机网页上以购买物品,而不被重定向到第三方商家代销商。由于这种合成网页被顾客在视觉上感知为与主机网页相关联,因此它们给顾客的印象是她正在查看主机提供的页面。此外,顾客能够在不被重定向到第三方商家代销商的情况下购买商品,从而允许主机保留对顾客的控制。该系统使主机能够获得与以前相同的广告收入流,而不损失访客流量和潜在顾客。更特别地,该系统在外包提供商服务于提供商业机会的网页中可能是有用的。计算机存储库包含用于多个第一网页的每一个的数据,该数据限定了多个视觉上可感知的元素,这些视觉上可感知的元素对应于多个第一网页;其中每个第一网页属于多个网页所有者之一;其中每个第一网页显示至少一个与商业对象相关联的活动链接,该商业对象与选择的多个商家中一个的购买机会相关联;其中,选择的商家、外包提供商以及显示相关链接的第一网页的所有者每一个相对于彼此都是第三方;外包提供商处的计算机服务器耦接至计算机存储库,并且被编程为:从计算机用户的网页浏览器接收信号,该信号指示由第一网页之一显示的链接之一的激活;自动将其上链接已被激活的第一个网页之一识别为源页面;响应于对源页面的识别,自动取得与该源页面相对应的存储数据;使用取得的数据,自动生成第二网页并将其传输到网页浏览器,该第二网页显示:与关联于已激活的链接的商业对象相关联的信息,以及与源页面在视觉上相对应的多个视觉上可感知的元素。
权利要求书(按照条约第19条的修改)
1.一种方法,包括:
由基于计算机的系统为用户创建用户界面蓝图文件;
由基于计算机的系统在所述用户界面蓝图文件中存储对于第一应用程序的明确的用户偏好;
由基于计算机的系统确定对于所述第一应用程序的推断的用户偏好;
由基于计算机的系统在所述用户界面蓝图文件中存储对于所述第一应用程序的所述推断的用户偏好;
由基于计算机的系统接收来自用户的访问第二应用程序的请求;
由基于计算机的系统响应于所述请求,读取所述用户界面蓝图文件;以及
由基于计算机的系统基于所述明确的用户偏好和所述推断的用户偏好来生成对于所述第二应用程序的用户界面。
2.根据权利要求1所述的方法,其中,所述用户界面蓝图文件包括纯文本txt文件或可扩展标记语言xml文件中的至少一个。
3.根据权利要求1所述的方法,其中,所述用户界面蓝图文件包括所述用户的唯一用户标识。
4.根据权利要求1所述的方法,还包括:由基于计算机的系统响应于访问所述第二应用程序的请求,基于所述用户的唯一用户标识为了所述用户界面蓝图文件而查询数据库。
5.根据权利要求1所述的方法,其中,所述第一应用程序和所述第二应用程序是用户装置上的本地应用程序。
6.根据权利要求1所述的方法,其中,所述第一应用程序和所述第二应用程序是网络应用程序。
7.根据权利要求1所述的方法,其中,所述用户界面蓝图文件包括多个用户偏好,所述用户偏好包括以下中的至少一项:字符数、段落数、图像数、图像大小、表单输入数、窗口大小、窗口缩放、窗口边框、字体列表、字体大小、控件层次结构、控件名称、控件顺序、控件大小、控件位置、控件颜色、控件对齐、滚动条、布局层次结构、布局类型、布局权重、布局方向、分页。
8.一种系统,包括:
处理器;以及
有形的非暂时性存储器,被配置为与处理器通信,所述有形的非暂时性存储器具有存储在其上的指令,这些指令响应于处理器的执行而使所述处理器执行包括以下的操作:
由处理器为用户创建用户界面蓝图文件;
由处理器在所述用户界面蓝图文件中存储对于第一应用程序的明确的用户偏好;
由处理器确定对于所述第一应用程序的推断的用户偏好;
由处理器在所述用户界面蓝图文件中存储对于所述第一应用程序的所述推断的用户偏好;
由处理器接收来自用户的访问第二应用程序的请求;
由处理器响应于所述请求,读取所述用户界面蓝图文件;以及
由处理器基于所述明确的用户偏好和所述推断的用户偏好来生成对于所述第二应用程序的用户界面。
9.根据权利要求1所述的方法,其中,所述用户界面蓝图文件包括txt文件或xml文件中的至少一个。
10.根据权利要求8所述的系统,其中,所述用户界面蓝图文件包括所述用户的唯一用户标识。
11.根据权利要求8所述的系统,所述操作还包括:由所述处理器响应于访问所述第二应用程序的请求,基于所述用户的唯一用户标识为了所述用户界面蓝图文件而查询数据库。
12.根据权利要求8所述的系统,其中,所述第一应用程序和所述第二应用程序是用户装置上的本地应用程序。
13.根据权利要求8所述的系统,其中,所述第一应用程序和所述第二应用程序是网络应用程序。
14.根据权利要求8所述的系统,其中,所述用户界面蓝图文件包括多个用户偏好,所述用户偏好包括以下中的至少一项:字符数、段落数、图像数、图像大小、表单输入数、窗口大小、窗口缩放、窗口边框、字体列表、字体大小、控件层次结构、控件名称、控件顺序、控件大小、控件位置、控件颜色、控件对齐、滚动条、布局层次结构、布局类型、布局权重、布局方向或分页。
15.一种制品,包括其上存储有指令的非暂时性有形计算机可读存储介质,所述指令响应于由基于计算机的系统的执行而使所述基于计算机的系统执行包括以下的操作:
由基于计算机的系统为用户创建用户界面蓝图文件;
由基于计算机的系统在所述用户界面蓝图文件中存储对于第一应用程序的明确的用户偏好;
由基于计算机的系统确定对于所述第一应用程序的推断的用户偏好;
由基于计算机的系统在所述用户界面蓝图文件中存储对于所述第一应用程序的所述推断的用户偏好;
由基于计算机的系统接收来自用户的访问第二应用程序的请求;
由基于计算机的系统响应于所述请求,读取所述用户界面蓝图文件;以及
由基于计算机的系统基于所述明确的用户偏好和所述推断的用户偏好来生成对于所述第二应用程序的用户界面。
16.根据权利要求15所述的制品,其中,所述用户界面蓝图文件包括txt文件或xml文件中的至少一个。
17.根据权利要求15所述的制品,其中,所述用户界面蓝图文件包括所述用户的唯一用户标识。
18.根据权利要求15所述的制品,还包括:由基于计算机的系统响应于访问所述第二应用程序的请求,基于所述用户的唯一用户标识为了所述用户界面蓝图文件而查询数据库。
19.根据权利要求15所述的制品,其中,所述第一应用程序和所述第二应用程序是用户装置上的本地应用程序。
20.根据权利要求15所述的制品,其中,所述第一应用程序和所述第二应用程序是网络应用程序。

Claims (20)

1.一种方法,包括:
由基于计算机的系统为用户创建用户界面蓝图文件;
由基于计算机的系统在所述用户界面蓝图文件中存储对于第一应用程序的明确的用户偏好;
由基于计算机的系统确定对于所述第一应用程序的推断的用户偏好;
由基于计算机的系统在所述用户界面蓝图文件中存储对于所述第一应用程序的所述推断的用户偏好;
由基于计算机的系统接收来自用户的访问第二应用程序的请求;
由基于计算机的系统响应于所述请求,读取所述用户界面蓝图文件;以及
由基于计算机的系统基于所述明确的用户偏好和所述推断的用户偏好来生成对于所述第二应用程序的用户界面。
2.根据权利要求1所述的方法,其中,所述用户界面蓝图文件包括txt文件或xml文件中的至少一个。
3.根据权利要求1所述的方法,其中,所述用户界面蓝图文件包括所述用户的唯一用户标识。
4.根据权利要求1所述的方法,还包括:由基于计算机的系统响应于访问所述第二应用程序的请求,基于所述用户的唯一用户标识为了所述用户界面蓝图文件而查询数据库。
5.根据权利要求1所述的方法,其中,所述第一应用程序和所述第二应用程序是用户装置上的本地应用程序。
6.根据权利要求1所述的方法,其中,所述第一应用程序和所述第二应用程序是网络应用程序。
7.根据权利要求1所述的方法,其中,所述用户界面蓝图文件包括多个用户偏好,所述用户偏好包括字符数、段落数、图像数、图像大小、表单输入数、窗口大小、窗口缩放、窗口边框、字体列表、字体大小、控件层次结构、控件名称、控件顺序、控件大小、控件位置、控件颜色、控件对齐、滚动条、布局层次结构、布局类型、布局权重、布局方向和分页。
8.一种系统,包括:
处理器,
有形的非暂时性存储器,被配置为与处理器通信,所述有形的非暂时性存储器具有存储在其上的指令,这些指令响应于处理器的执行而使所述处理器执行包括以下的操作:
由处理器为用户创建用户界面蓝图文件;
由处理器在所述用户界面蓝图文件中存储对于第一应用程序的明确的用户偏好;
由处理器确定对于所述第一应用程序的推断的用户偏好;
由处理器在所述用户界面蓝图文件中存储对于所述第一应用程序的所述推断的用户偏好;
由处理器接收来自用户的访问第二应用程序的请求;
由处理器响应于所述请求,读取所述用户界面蓝图文件;以及
由处理器基于所述明确的用户偏好和所述推断的用户偏好来生成对于所述第二应用程序的用户界面。
9.根据权利要求1所述的方法,其中,所述用户界面蓝图文件包括txt文件或xml文件中的至少一个。
10.根据权利要求8所述的系统,其中,所述用户界面蓝图文件包括所述用户的唯一用户标识。
11.根据权利要求8所述的系统,所述操作还包括:由所述处理器响应于访问所述第二应用程序的请求,基于所述用户的唯一用户标识为了所述用户界面蓝图文件而查询数据库。
12.根据权利要求8所述的系统,其中,所述第一应用程序和所述第二应用程序是用户装置上的本地应用程序。
13.根据权利要求8所述的系统,其中,所述第一应用程序和所述第二应用程序是网络应用程序。
14.根据权利要求8所述的系统,其中,所述用户界面蓝图文件包括多个用户偏好,所述用户偏好包括字符数、段落数、图像数、图像大小、表单输入数、窗口大小、窗口缩放、窗口边框、字体列表、字体大小、控件层次结构、控件名称、控件顺序、控件大小、控件位置、控件颜色、控件对齐、滚动条、布局层次结构、布局类型、布局权重、布局方向和分页。
15.一种制品,包括其上存储有指令的非暂时性有形计算机可读存储介质,所述指令响应于由基于计算机的系统的执行而使所述基于计算机的系统执行包括以下的操作:
由基于计算机的系统为用户创建用户界面蓝图文件;
由基于计算机的系统在所述用户界面蓝图文件中存储对于第一应用程序的明确的用户偏好;
由基于计算机的系统确定对于所述第一应用程序的推断的用户偏好;
由基于计算机的系统在所述用户界面蓝图文件中存储对于所述第一应用程序的所述推断的用户偏好;
由基于计算机的系统接收来自用户的访问第二应用程序的请求;
由基于计算机的系统响应于所述请求,读取所述用户界面蓝图文件;以及
由基于计算机的系统基于所述明确的用户偏好和所述推断的用户偏好来生成对于所述第二应用程序的用户界面。
16.根据权利要求15所述的制品,其中,所述用户界面蓝图文件包括txt文件或xml文件中的至少一个。
17.根据权利要求15所述的制品,其中,所述用户界面蓝图文件包括所述用户的唯一用户标识。
18.根据权利要求15所述的制品,还包括:由基于计算机的系统响应于访问所述第二应用程序的请求,基于所述用户的唯一用户标识为了所述用户界面蓝图文件而查询数据库。
19.根据权利要求15所述的制品,其中,所述第一应用程序和所述第二应用程序是用户装置上的本地应用程序。
20.根据权利要求15所述的制品,其中,所述第一应用程序和所述第二应用程序是网络应用程序。
CN201980026703.2A 2018-02-19 2019-02-11 动态用户界面蓝图 Active CN111989649B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/898,788 US10705691B2 (en) 2018-02-19 2018-02-19 Dynamic user interface blueprint
US15/898,788 2018-02-19
PCT/US2019/017419 WO2019164688A1 (en) 2018-02-19 2019-02-11 Dynamic user interface blueprint

Publications (2)

Publication Number Publication Date
CN111989649A true CN111989649A (zh) 2020-11-24
CN111989649B CN111989649B (zh) 2024-05-28

Family

ID=

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101236563A (zh) * 2008-02-01 2008-08-06 刘峰 智能个性化服务网站构造方法
CN102104666A (zh) * 2009-12-17 2011-06-22 深圳富泰宏精密工业有限公司 应用跳转预测系统及方法
CN102246116A (zh) * 2008-12-15 2011-11-16 符号技术有限公司 界面适配系统
CN102479094A (zh) * 2010-11-30 2012-05-30 英业达股份有限公司 可携式通讯装置运作方法
CN102622238A (zh) * 2012-03-15 2012-08-01 中兴通讯股份有限公司 移动设备的界面布局方法及装置
CN103415835A (zh) * 2012-10-08 2013-11-27 华为终端有限公司 一种触屏装置用户界面的处理方法及触屏装置
US20140282062A1 (en) * 2013-03-15 2014-09-18 Microsoft Corporation Techniques for efficient and granular composition of a user profile
US20150050633A1 (en) * 2012-11-29 2015-02-19 Edsense, L.L.C. System and method for displaying multiple applications

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101236563A (zh) * 2008-02-01 2008-08-06 刘峰 智能个性化服务网站构造方法
CN102246116A (zh) * 2008-12-15 2011-11-16 符号技术有限公司 界面适配系统
CN102104666A (zh) * 2009-12-17 2011-06-22 深圳富泰宏精密工业有限公司 应用跳转预测系统及方法
CN102479094A (zh) * 2010-11-30 2012-05-30 英业达股份有限公司 可携式通讯装置运作方法
CN102622238A (zh) * 2012-03-15 2012-08-01 中兴通讯股份有限公司 移动设备的界面布局方法及装置
CN103415835A (zh) * 2012-10-08 2013-11-27 华为终端有限公司 一种触屏装置用户界面的处理方法及触屏装置
US20150050633A1 (en) * 2012-11-29 2015-02-19 Edsense, L.L.C. System and method for displaying multiple applications
US20140282062A1 (en) * 2013-03-15 2014-09-18 Microsoft Corporation Techniques for efficient and granular composition of a user profile

Also Published As

Publication number Publication date
WO2019164688A1 (en) 2019-08-29
US10705691B2 (en) 2020-07-07
KR102414753B1 (ko) 2022-06-30
EP3756101A1 (en) 2020-12-30
JP2021514080A (ja) 2021-06-03
EP3756101A4 (en) 2021-11-17
SG11202007798VA (en) 2020-09-29
KR20200111736A (ko) 2020-09-29
US20190258366A1 (en) 2019-08-22
JP7237975B2 (ja) 2023-03-13

Similar Documents

Publication Publication Date Title
US11100569B2 (en) Embedding a widget into a webpage
US9495881B2 (en) System and method for displaying multiple applications
US10839000B2 (en) Presentations and reports built with data analytics
US10521446B2 (en) System and method for dynamically refactoring business data objects
US10979370B2 (en) Multi-profile chat environment
US20190121669A1 (en) Executing tasks using modular and intelligent code and data containers
US11307949B2 (en) Decreasing downtime of computer systems using predictive detection
US10715467B2 (en) Support chat profiles using AI
US10120888B2 (en) Automated task execution based on task criteria
US11442923B1 (en) Systems and methods for processing data service requests
US11954160B2 (en) Personalization using clickstream data
US10360128B2 (en) System and method for dynamic scaling of concurrent processing threads
US20210034440A1 (en) Event information processing system
KR102414753B1 (ko) 동적 사용자 인터페이스 블루프린트
CN111989649B (zh) 动态用户界面蓝图
US20180115600A1 (en) System and method for health monitoring and task agility within network environments
US20130226789A1 (en) Email client money exchange interface
US20130041913A1 (en) Systems and methods for providing real time email content

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40032925

Country of ref document: HK

GR01 Patent grant