CN102007488A - 基于代码的网站实验 - Google Patents

基于代码的网站实验 Download PDF

Info

Publication number
CN102007488A
CN102007488A CN2009801132448A CN200980113244A CN102007488A CN 102007488 A CN102007488 A CN 102007488A CN 2009801132448 A CN2009801132448 A CN 2009801132448A CN 200980113244 A CN200980113244 A CN 200980113244A CN 102007488 A CN102007488 A CN 102007488A
Authority
CN
China
Prior art keywords
program code
segmentation
code
alternative
snippet
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.)
Pending
Application number
CN2009801132448A
Other languages
English (en)
Inventor
科恩斯·艾瑞克·瓦斯里克
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN102007488A publication Critical patent/CN102007488A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/875Monitoring of systems including the internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

一种用于基于代码的网站实验的***和方法。基于代码的网站实验可以包括指定所识别的要进行实验的程序代码分段,以及指定一个或多个替选的程序代码分段以替代实验着陆页面配置中的所识别的程序代码分段。可以对与所述程序代码分段相关联的统计进行分析以确定执行哪个程序代码分段比其它程序代码分段更好。

Description

基于代码的网站实验
优先权要求和相关专利申请
本文要求于2008年2月19日提交的题为“CODE-BASED WEBSITE EXPERIMENTS”的美国专利申请序列No.12/033364的优先权,其全部内容通过引用结合于此,作为本文公开内容的一部分。
技术领域
本公开涉及网站实验。
背景技术
随着互联网的指数性扩张,电子商务(e-commerce)市场已经成为了许多人生活的组成部分。基于市场的扩张,已经创建了许多发布者来满足需求。这些发布者加剧了企业的竞争。而加剧的竞争也提升了发布者网站的重要性。例如,如果网站难以导航,消费者可能离开该网站并且使用竞争者的网站。
已经创建了工具以帮助发布者创建更好的网站。一种这样的工具是可从加州山景城的谷歌公司获得的Website Optimizer。这样的工具使得发布者能够为网页指定若干种不同的选项,并且发布者接着能够运行实验以基于转换(例如,销售、目标路径的导航等)的数量来确定若干选项中的任意选项是否好于当前版本的网页。该实验可以运行一段时间。在此实验期间,包括当前版本的各种选项能够被派发给客户端。可以收集并分析与各种选项中的每一个相关联的统计。分析能够确定在实验期间所执行的任意的指定选项是否好于当前版本。分析的结果可以被提供给发布者,其接着能够决定是否实施任意替选版本的网页或者保留当前版本的网页。
发明内容
提供了用于基于代码的网站实验的***、方法和计算机可读介质。示例性***可以包括界面和代码片段引擎。所述界面能够识别具有一个或多个分段的程序代码,并且还可以识别来自所述一个或多个程序代码分段的指定分段以及一个或多个替选程序代码分段。所述代码片段引擎能够提供代码片段,所述代码片段在被处理器执行时能够确定要执行所指定的程序代码分段或者所述一个或多个替选程序代码分段中的任意一个中的哪一个。
用于执行基于代码的网站实验的示例性方法可以包括:识别程序代码,所述程序代码具有至少一个分段;接收第一程序代码分段的标识;接收与所识别的第一程序代码分段相关联的第一替选程序代码分段的标识;以及提供代码片段,所述代码片段在被处理器执行时能够操作以确定在执行程序代码时执行第一程序代码分段还是第一替选程序代码分段。
用于执行基于代码的网站实验的另一种示例性方法可以包括:将一个或多个替选程序代码分段***到包括一个或多个程序代码分段的程序代码中;识别与所述一个或多个替选程序代码分段相关联的特定程序代码分段;所述特定程序代码分段是从所述一个或多个程序代码分段中选择的;将代码片段***到所述程序代码中,在所述代码片段执行时,所述代码片段可操作以使得处理器选择并执行包括所述特定程序代码分段或者所述一个或多个替选程序代码分段中的任意一个中的一个的代码;以及基于分别与所述特定程序代码分段和所述一个或多个替选程序代码分段相关联的性能量度,以所述一个或多个替选程序代码分段中的一个替代所述特定程序代码分段。
示例性计算机可读介质能够***作以使得处理器执行以下步骤,包括:识别程序代码,所述程序代码具有至少一个分段;接收第一程序代码分段的标识;接收与所识别的第一程序代码分段相关联的第一替选程序代码分段的标识;以及提供代码片段,所述代码片段在被处理器执行时能够操作以确定执行所述第一程序代码分段还是第一替选程序代码分段。
公开了包括针对***、方法、装置、计算机可读介质和用户界面的实施方式在内的其它实施方式。
附图说明
图1是能够提供自适应网站优化实验的示例性网络体系结构的框图。
图2是与执行自适应网站优化实验的网络设备相关联的示例性数据流程的框图;
图3是用于执行自适应网站优化实验的示例性设备组件的框图。
图4是用于提供自适应网站优化实验的示例性方法的流程图。
图5是用于提供自适应网站优化实验的另一种示例性方法的流程图。
具体实施方式
能够执行网站实验来确定发布者是否能够找到比当前着陆页面配置执行更好的着陆页面配置。由于网站已经变得越来越复杂,所以已经使用程序代码来为用户提供更为复杂的界面。然而,对于这样的复杂界面存在许多配置。
在一些实施方式中,可以识别程序代码分段并且可以将替选的程序代码分段与所识别的程序代码分段相关联。与程序代码相关联的着陆页面可以使用代码片段进行构建(instrumented)。所构建的着陆页面可以使得浏览器在加载所构建的着陆页面时向实验服务器发送请求。接收到所述请求时,实验服务器能够选择使用所识别的程序代码分段还是替选的程序代码分段,并且能够指示与所构建的着陆页面相关联的程序代码使用所选择的程序代码分段。此外,在一些实施方式中,实验服务器能够在每次进行与各程序代码分段相关联的选择时收集与所识别的程序代码分段以及一个或多个替选的程序代码分段相关联的统计。所收集的统计能够被所述实验服务器分析以推荐是否利用替选的程序代码分段中的一个来替代所识别的程序代码分段。
图1是能够提供自适应网站优化实验的示例性网络体系结构100的框图。在一些实施方式中,网络体系结构100可以包括发布者110、实验服务器120、客户端130和网络140。在一些示例中,发布者110可以包括提供用于销售的产品或服务的着陆页面(例如,网页)。在各个示例中,搜索引擎和其它第三方网站可以提供指向所述着陆页面的链接(例如,通用资源定位符(URL))。在使得来自在网站上所接收的业务的转换(例如,销售、沿目标路径行进等)最大化的努力中,发布者110能够对着陆页面进行改变以影响消费者的体验。
在一些实施方式中,发布者110可能希望对着陆页面的多个变体彼此进行测试。在这样的实施方式中,发布者110能够使用网站实验服务器120收集与每个变体(例如,由为着陆页面所指定的不同程序代码部分所产生的着陆页面的变体)相关的统计。网站实验服务器120的示例是可从加州山景城的谷歌公司获得的Website Optimizer。发布者110能够向网站实验服务器120提供实验参数,例如包括正在测试的每个可选代码分段的程序代码分段。在其它示例中,所述实验参数可以包括实验持续时间。
在一些实施方式中,网站实验服务器120能够向发布者110提供控制脚本。例如,所述控制脚本可以是超文本标记语言(HTML)或可扩展标记语言(XML)代码的片段。所述控制脚本可以由发布者连同每个着陆页面变体一起***到着陆页面中以产生所构建的着陆页面。
在一些实施方式中,所构建的着陆页面可以被配置为将统计提供回网站实验服务器120。例如,在被客户端设备130所加载时,所构建的着陆页面能够与网站实验服务器120进行通信以识别在所述着陆页面中包括的代码分段的变体中的哪一个要显示在客户端上。控制脚本也能够响应于用户与所显示的着陆页面代码的变体的交互(例如,选择任意链接)而与实验服务器120进行通信。
在其它实施方式中,网站实验服务器120能够作为发布者110的代理服务器,并且将为着陆页面所选择的代码分段派发给客户端130。例如,网站实验服务器能够与搜索引擎相关联,并且能够向客户端提供包括着陆页面的广告在内的广告。在这样的示例中,当选择与所述着陆页面相关联的URL时,所述搜索引擎能够检索所构建的网页,选择所要派发的选项并且将该选项在搜索引擎环境内(例如,框架内)派发给客户端。因此,用户对与网站相关联的任意链接(例如,包括提交按钮表示)的选择能够被网站实验服务器120所接收并记入日志。
在又另一种实施方式中,服务器能够向客户端设备提供与所构建的着陆页面相关联的广告。在选择所述广告时,所述服务器结合网站实验服务器能够向发布者发送请求以及与要向客户端130派发着陆页面代码分段的哪个变体相关的指令。派发给客户端130的着陆页面可以包括控制脚本,所述控制脚本可操作以将所述着陆页面上的任意消费者行为(例如,对任意超连接或按钮表示的选择)通信回实验服务器120。所述实验服务器120能够收集并汇编与派发给客户端设备130的变体相关联的统计。
图2是与执行基于代码的网站实验的网络设备相关联的示例性数据流程的框图。在各种实施方式中,发布者110能够将实验选项通信到实验服务器120,所述实验选项例如包括替选的程序代码分段以及所识别的当前程序代码分段。实验服务器120能够通过向发布者110提供控制脚本以便包括在着陆页面代码中进行响应,所述控制脚本例如包括一个或多个代码片段。发布者110能够将所述控制脚本***着陆页面中以产生所构建的着陆页面。
在各种实施方式中,所构建的着陆页面可以促进收集与所构建的着陆页面相关联的数据。例如,客户端130能够向发布者110发送URL请求以请求着陆页面。发布者110能够通过向客户端130提供所构建的着陆页面来对所述URL请求进行响应。当被客户端130所加载时,所构建的着陆页面能够使得客户端130与实验服务器120进行通信。
在一些实施方式中,所构建的着陆页面能够请求所构建的着陆页面中包括的多个程序代码分段中的哪一个应当被用于生成由客户端显示的部分。例如,所构建的着陆页面可能包括五个可选的程序代码分段以产生各种着陆页面配置。例如,所构建的着陆页面中包括的控制脚本能够使得客户端130与实验服务器120进行通信以便确定所述五个选项中的哪些要被客户端130显示。
实验服务器120能够操作以确定与各种着陆页面配置相关联的可选程序代码分段中的哪些应当被执行使得由客户端130进行显示。在一些实施方式中,实验服务器120能够提供指令,所述指令操作以向请求客户端130提供每个可选程序代码分段的随机或伪随机分发。例如,随机分发将从所述可选程序代码分段中随机选择所选择的程序代码分段以指示所构建的着陆页面向客户端130进行显示。因此,任意的特定可选程序代码分段被选择以向用户显示的机会与任意其它可选程序代码分段被选择以向用户显示的机会相等。
在一些实施方式中,实验服务器120能够收集与所构建的着陆页面相关联的每个可选程序代码分段的统计。例如,与所构建的着陆页面相关联的代码片段能够将导航信息通信回实验服务器。在其它示例中,实验服务器120能够通过经所构建的着陆页面从客户端接收URL请求并且将所述URL请求转发给发布者来作为代理。在这样的示例中,实验服务器120能够基于从执行所构建的着陆页面的客户端接收的URL请求来收集统计。
实验服务器120能够例如在实验时段结束时向发布者110提供基于代码的网站实验的结果。
图3是用来执行基于代码的网站实验的示例性设备组件的框图。发布者设备110能够创作用来产生转换(例如,销售产品,将用户指向另一站点等)的着陆页面305。在一些实施方式中,发布者设备110能够包括编辑器310,其可被用来创建着陆页面并对其进行编辑。例如,如果发布者110希望对其着陆页面进行编辑,则发布者110能够使用所述编辑器来创建所编辑的着陆页面。
在一些实施方式中,发布者110可能会决定相对于当前版本的着陆页面测试新版本的程序代码分段。在这样的实例中,发布者110能够与实验服务器120上的实验创建接口315进行通信。所述实验创建接口315能够促成实验的创建。例如,发布者110能够使用编辑器310将其可选的程序代码分段提供给实验创建接口315。在一些实施方式中,发布者110还能够提供实验持续时间。
实验创建接口315能够在统计数据存储中存储与实验相关联的参数。在一些实施方式中,实验创建接口315还能够向发布者110提供控制脚本。发布者110能够使用编辑器310将所述控制脚本***着陆页面305以产生所构建的着陆页面325。
在一些实施方式中,所构建的着陆页面325能够基于从客户端130所接收的请求(例如,URL请求)而被提供给客户端130。客户端130可以包括浏览器330,所述浏览器330可操作以加载从发布者110接收的所构建的着陆页面325。在加载所构建的着陆页面325时,浏览器330将遇到先前被发布者110***所构建的着陆页面325中的控制脚本。所述控制脚本可以使得浏览器330向实验服务器120处的选项选择模块335发送通信。
在一些实施方式中,选项选择模块335可以从可选的着陆页面配置中选择所选择的程序代码分段。例如,所述选项选择模块能够从可用的程序代码分段(例如,当前程序代码分段或替选程序代码分段)中随机或伪随机地进行选择。选项选择模块335可以向所构建的着陆页面335提供指令以执行这样的随机/伪随机选择的程序代码分段345,导致用于呈现在显示器350上的着陆页面的变体。
在各种实施方式中,能够贯穿实验收集统计。例如,每次从客户端130接收通信时,所述通信都能够由统计模块340在统计数据存储320中记入日志。在一些实施方式中,统计模块340能够定期(例如,每两个小时)更新统计的分析。在其它实施方式中,统计数据存储320中所存储的收集的统计的统计分析能够在每次接收到来自客户端130的请求时被更新。在这样的实施方式中,统计的当前分析能够在请求时被派发给发布者110。
图4是用于执行基于代码的网站实验的示例性方法400的流程图。在阶段405,识别程序代码。例如,所述程序能够由与编辑器(例如,图3的编辑器310)相结合的发布者(例如,图3的发布者110)来识别。在一些实施方式中,所述程序代码可以是预先存在的超文本标记语言程序代码,其定义了着陆页面并且能够被发布者提供给实验服务器(例如,图3的实验服务器120)。所述程序代码可操作以使得浏览器客户端显示与所述程序代码相关联的内容。
在阶段410,能够接收第一程序代码分段的标识。所述第一程序代码分段的标识例如能够由实验服务器(例如,图3的实验服务器120)从发布者(例如,图3的发布者110)接收。在一些实施方式中,第一程序代码分段的标识识别发布者意欲对其执行实验的程序代码分段。例如,如果与着陆页面相关联的程序代码包括程序代码分段A、B、C和D,则发布者能够将程序代码分段“C”识别为实验对象。
在阶段415,能够接收第一替选程序代码分段的标识。例如,第一替选程序代码分段的标识能够由实验服务器(例如,图3的实验服务器120)从与编辑器(例如,图3的编辑器310)相结合的发布者(例如,图3的发布者110)接收。例如,所述发布者能够创建替选程序代码分段以除了所识别的第一程序代码分段之外包括在着陆页面内。
在阶段420,能够提供可操作以识别要执行哪个程序代码分段的代码片段。例如,所述代码片段能够由实验服务器(例如,图3的实验服务器120)提供给发布者(例如,图3的发布者110)。在一些实施方式中,所述代码片段能够被***到与着陆页面相关联的代码中以创建所构建的着陆页面。所构建的着陆页面可操作以使得浏览器在加载所构建的着陆页面时与实验服务器进行通信。例如,当用户设备提交URL请求以使用浏览器接收着陆页面时,所述浏览器能够接收所构建的着陆页面。当加载所构建的着陆页面时,所述浏览器能够向实验服务器发送查询以便确定要向用户显示哪个程序代码分段。
在一些实施方式中,能够收集与各个程序代码分段相关联的统计信息。例如,统计信息可以包括与基于派发给用户的程序代码哪些着陆页面配置导致例如最高的转换频率相关的信息。在一些示例中,转换能够通过销售来识别。在其它示例中,转换能够通过沿目标路径的行进来识别。在一些实施方式中,与具有最高转换率的着陆页面配置相关联的程序代码分段能够被识别为最高的执行实验选项。
图5是用于执行基于代码的网站实验的示例性方法500的流程图。在阶段505,替选程序代码分段被***与着陆页面相关联的程序代码中。例如,所述程序代码能够由与编辑器(例如,图3的编辑器310)相结合的发布者(例如,图3的发布者110)来***。在一些实施方式中,所述替选程序代码分段能够定义着陆页面的不同配置。例如,如果发布者想要在其着陆页面上执行实验,则所述发布者能够创建替选程序代码分段。
在阶段510,能够识别与所述替选程序代码分段相关联的程序代码分段。例如,与所述替选程序代码分段相关联的程序代码分段能够由发布者(例如,图3的发布者110)来识别。在一些实施方式中,所述发布者能够识别要对其进行实验的程序代码分段。因此,所识别的程序代码分段被识别以使得所述替选程序代码分段能够替代包括所述替选程序代码分段的那些着陆页面配置中的所识别的程序代码分段。
在阶段515,能够将代码片段***程序代码中。在一些实施方式中,所述代码片段例如能够由与编辑器(例如,图3的编辑器310)相结合的发布者(例如,图3的发布者110)***到程序代码中。在一些实施方式中,所述代码片段能够被***到着陆页面中以产生所构建的着陆页面。当随所构建的着陆页面一起由浏览器进行加载时,所述代码片段可操作以使得所述浏览器向实验服务器(例如,图3的实验服务器120)发送查询。所述实验服务器能够从所识别的程序代码分段和替选程序代码分段中随机选择所选择的程序代码分段。所选择的程序代码分段能够被通信到客户端设备130,使得所述代码片段使用所选择的程序代码分段生成着陆页面配置。所述实验服务器还能够基于所述代码片段在所构建的着陆页面内的存在来收集与所构建的着陆页面的导航相关联的统计。例如,当随所构建的着陆页面进行加载时,所述代码片段能够使得客户端设备通信所构建的着陆页面或者包括所述代码片段的任意其它页面的用户导航。在各种实施方式中,所述实验服务器能够对所收集的与产生各种着陆页面配置的可选程序代码片段相关联的统计进行分析并且将结果通知发布者。
在阶段520,所识别的程序代码分段能够基于性能量度而被替选程序代码分段所替代。例如,所识别的程序代码分段能够由与编辑器(例如,图3的编辑器310)相结合的发布者(例如,图3的发布者110)以替选程序代码分段进行替代。虽然参考了替代代码,但是其它选项也是可能的,包括仅执行所选择的替选分段而不是替代代码。在各种实施方式中,与可选程序代码分段相关联的性能量度可以通过实验服务器(例如,图3的实验服务器120)所收集的导航统计得出。例如,如果着陆页面包括程序代码分段A、B、C和D,并且发布者决定使用替选程序代码分段C’和C”在程序代码分段C上进行实验,则实验服务器能够确定程序代码C产生10%的转换率,而替选程序代码分段C’产生8%的转换率,且替选程序代码分段C”产生18%的转换率。在这样的示例中,替选程序代码分段C”被识别为实验中最佳的执行程序代码分段。因此,发布者能够以替选程序代码分段C”替代程序代码分段C。
本说明书中所描述的主题的各个方面以及本说明书中所描述的所有功能操作均可以以数字电子电路来实施,或者以计算机软件、固件或硬件或者它们中一个或多个的组合来实施,所述计算机软件、固件或硬件包括该说明书中所公开的结构和其结构等同物。本发明书中所描述主题的实施例可以实现为一个或多个计算机程序产品,即在计算机可读介质上编码以便由数据处理装置执行或者控制数据处理装置的操作的计算机程序指令的一个或多个模块。所述计算机可读介质可以是机器可读存储设备、机器可读存储基片、存储器设备、影响机器可读传播信号的物体组合物,或者它们中一个或多个的组合。术语“数据处理装置”涵盖用于处理数据的所有装置、设备和机器,例如包括可编程处理器、计算机或者多个处理器或计算机。除硬件之外,装置可包括为所讨论的计算机程序创建执行环境的代码,例如构成处理器固件、协议栈、数据库管理***、操作***或者它们中一个或多个的组合的代码。传播信号是人为生成的信号,例如,机器生成的电、光或电磁信号,其被生成以对信息进行编码以便传输到适当的接收器装置。
计算机程序(也被称作程序、软件、软件应用、脚本或代码)可以以任意形式的编程语言书写,包括编译和解释语言,并且其能够以任意形式被部署,包括作为独立程序或者作为模块、组件、子程序或者适于在计算环境中使用的其它单元。计算机程序不必对应于文件***中的文件。程序可以存储在保持其它程序或数据的文件的一部分之中(例如,存储在标记语言文档中的一个或多个脚本),存储在专用于所讨论程序的单个文件中,或者存储在多个协同文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。计算机程序可被部署为在一个或多个计算机上执行,所述多个计算机位于一个地点或者分布于多个地点并且通过通信网络进行互连。
该说明书中所描述的过程或逻辑流程可由一个或多个可编程处理器执行,所述可编程处理器执行一个或多个计算机程序而通过对输入数据进行操作并生成输出来执行功能。所述过程和逻辑流程还可以由专用逻辑电路执行,并且装置也可以实现为专用逻辑电路,例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任意类型的数字计算机的任意一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或者其二者接收指令和数据。计算机的关键部件为用于执行指令的处理器以及一个或多个用于存储指令和数据的存储器设备。通常,计算机还将包括一个或多个用于存储数据的大型存储设备,或者可操作地耦合到所述大型存储设备以便从其接收数据或者对其传送数据或者其二者,所述大型存储设备例如磁盘、磁-光盘或光盘。然而,计算机无需具有这样的设备。此外,计算机能够被嵌入另一设备中,举出几个示例,所述设备例如移动电话、个人数字助理(PDA)、移动音频播放器、全球定位***(GPS)接收器。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,例如包括例如EPROM、EEPROM和闪存设备的半导体存储器设备;例如内部硬盘或可移动盘的磁盘;磁-光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以以专用逻辑电路进行补充或者集成在专用逻辑电路中。
为了提供与用户的交互,本说明书中所描述主题的实施例可以实现在具有用于向用户显示信息的显示设备以及键盘和指示设备的计算机上,所述显示设备例如CRT(阴极射线管)或LCD(液晶显示器),所述指示设备例如鼠标或轨迹球,用户能够利用其向计算机提供输入。也可使用其它类型的设备来提供与用户的交互;例如,提供给用户的反馈可以为任意形式的感官反馈,例如视觉反馈、听觉反馈或触觉反馈;并且来自用户的输入可以以任意形式被接收,包括声音、语音或触觉输入。
本说明书中所描述主题的各个方面可以在计算***中实施,所述计算***包括例如数据服务器的后端组件,或者所述计算***包括例如应用服务器的中间件组件,或者所述计算***包括例如客户端计算机的前端组件,所述客户端计算机具有图形用户界面或web浏览器,用户能够通过其与本说明书所描述主题的实施方式进行交互,或者所述计算***包括一个或多个这样的后端、中间件或前端组件的任意组合。所述***的组件可以通过任意形式或介质的数字数据通信进行互连,例如通信网络。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”),例如互联网。
所述计算***可以包括客户端和服务器。客户端和服务器通常彼此远离并且典型地通过通信网络进行交互。客户端和服务器的关系源于在各自计算机上运行并且彼此具有客户端-服务器关系的计算机程序。
虽然该说明书包含许多特定内容,但是这些内容不应被理解为对可要求保护的或范围的限制,相反应理解为对主题的特定实施方式的描述。该说明书中在分立实施例背景下所描述的特定特征也可以在单个实施例中组合实施。相反,在单个实施例背景下描述的各种特征也可以在多个实施例中分立地实施或者以适当的任意子组合来实施。此外,虽然特征在以上可被描述为以特定组合进行作用并且甚至最初如此要求,但是来自所要求组合的一个或多个特征在一些情况下可脱离组合,并且所要求的组合可针对子组合或者子组合的变体。
类似地,虽然在附图中以特定顺序对操作进行了描述,但是这不应被理解为要求这样的操作以所示特定顺序或连续顺序执行,或者要执行所图示的所有操作才能实现所需期望的结果。在特定情况下,多任务和并行处理会是有利的。此外,以上实施例中所描述的各***组件的划分不应当被理解为在所有实施例中要求这样的划分,并且其应当被理解为所描述的程序组件和***一般可以在单个软件产品中集成在一起或者封装到多个软件产品中。
已经关于特定实施例对本发明书中所描述主题进行了描述,但是其它实施例也能够得以实施并且处于所附权利要求的范围之内。例如,权利要求中所引用的动作可以以不同顺序来执行并且仍然获得期望的结果。作为一个示例,附图中所描绘的过程不必要求所示的特定顺序或者连续顺序才能获得期望的结果。在特定实施例中,多任务和并行处理会是有利的。其它变体处于所附权利要求的范围之内。相同的实验技术对于任意网页起作用,而并不仅限于广告发布着陆页面。任何网站拥有者都能够通过实验来确定其网站设计有多好,并且哪些网页应当有所改进。网站拥有者仅需要设计测试页面和目标页面。目标率可以被计算为已经到达测试页面的浏览用户继续到达目标页面的百分比。所述目标率可以被解释为成功的度量。在该说明书中,为了采用一般使用的术语,“着陆页面”被用来包括无论是否通过广告到达的所有测试页面,而“转换页面”则被用来包括所有目标页面。
这些和其它实施方式处于所附权利要求的范围之内。

Claims (23)

1.一种方法,包括:
识别程序代码,所述程序代码具有至少一个分段;
接收第一程序代码分段的标识;
接收与所识别的第一程序代码分段相关联的第一替选程序代码分段的标识;以及
提供代码片段,所述代码片段在被处理器执行时能够操作以确定在执行所述程序代码时是执行所述第一程序代码分段还是所述第一替选程序代码分段。
2.如权利要求1所述的方法,进一步将所述代码片段***到所述程序代码中。
3.如权利要求1所述的方法,进一步包括将所述程序代码嵌入网页内。
4.如权利要求3所述的方法,进一步包括:
收集与所述第一程序代码分段和所述第一替选程序代码分段相关联的统计;
其中所述统计包括识别观看具有相应代码分段的网页的用户选择指定链接的比率的量度。
5.如权利要求4所述的方法,进一步包括向用户提供所收集的统计。
6.如权利要求4所述的方法,进一步包括优化网页的性能,包括在执行所述程序代码时基于所收集的统计优选选择所述第一程序代码分段或所述第一替选程序代码分段中的一个。
7.如权利要求4所述的方法,其中所述代码片段在被所述处理器执行时能够操作以向服务器传送与观看所述网页的浏览器相关联的浏览信息,并且收集统计的所述步骤包括:
从所述浏览器接收浏览信息;并且
对所述浏览信息进行汇编以提供与相应代码分段和网页相关联的统计。
8.如权利要求1所述的方法,进一步包括:
接收多个替选程序代码分段;
其中所提供的代码片段在被所述处理器执行时能够操作以确定是执行所述第一程序代码分段还是执行所述多个替选程序代码分段中的一个。
9.如权利要求8所述的方法,其中所提供的代码片段通过从所述第一程序代码分段和所述多个替选程序代码分段中随机或伪随机地选择分段来确定是执行所述第一程序代码分段还是执行所述多个替选程序代码分段中的一个。
10.如权利要求9所述的方法,其中对程序代码分段的随机或伪随机选择对于与执行代码的所述处理器相关联的用户是透明的。
11.如权利要求1所述的方法,其中所述方法由在一个或多个服务器上执行的软件执行。
12.一种计算机可读介质,能够操作以使得一个或多个数据处理装置执行包括以下的操作:
识别程序代码,所述程序代码具有至少一个分段;
接收第一程序代码分段的标识;
接收与所识别的第一程序代码分段相关联的第一替选程序代码分段的标识;以及
提供代码片段,所述代码片段在被处理器执行时能够操作以确定是执行所述第一程序代码分段还是所述第一替选程序代码分段。
13.如权利要求12所述的计算机可读介质,能够进一步操作以使得一个或多个数据处理装置执行包括以下的操作:指示与所述程序代码相关联的编程者将所述代码片段***到所述程序代码中。
14.如权利要求12所述的计算机可读介质,其中所述程序代码嵌入在网页内。
15.如权利要求14所述的计算机可读介质,能够进一步操作以使得一个或多个数据处理装置执行包括以下的操作:
收集与所述第一程序代码分段和所述第一替选程序代码分段相关联的统计;
其中所述统计包括识别观看具有相应代码分段的网页的用户选择指定链接的比率的量度。
16.如权利要求15所述的计算机可读介质,其中所述代码片段在被所述处理器执行时能够操作以向服务器传送与观看所述网页的浏览器相关联的浏览信息,并且收集统计的所述步骤包括:
从所述浏览器接收浏览信息;并且
对所述浏览信息进行汇编以提供与相应代码分段和网页相关联的统计。
17.如权利要求12所述的计算机可读介质,能够进一步操作以使得一个或多个数据处理装置执行包括以下的操作:向所述用户提供所收集的统计。
18.如权利要求12所述的计算机可读介质,其中所述统计被用来基于一个代码分段优化网页的性能,所述一个代码分段基于从所述统计得出的性能量度而优于其它代码分段。
19.如权利要求12所述的计算机可读介质,其中所提供的代码片段从所述第一程序代码分段和所述替选程序代码分段中随机或伪随机地选择用于执行的分段。
20.如权利要求12所述的计算机可读介质,其中所述方法由在一个或多个服务器上执行的软件执行。
21.一种***,包括:
界面,所述界面能够操作以识别包括一个或多个分段的程序代码,并且所述界面能够进一步操作以识别来自所述一个或多个程序代码分段的指定分段以及一个或多个替选程序代码分段;和
代码片段引擎,所述代码片段引擎能够操作以提供代码片段,所述代码片段在被处理器执行时能够操作以确定要执行所指定的程序代码分段或者所述一个或多个替选程序代码分段中的任意一个中的哪一个。
22.如权利要求21所述的***,其中所述界面能够进一步操作以向与所述程序代码相关联的编程者提供所述代码片段引擎以便***到所述程序代码中。
23.一种方法,包括:
将一个或多个替选程序代码分段***到包括一个或多个程序代码分段的程序代码中;
识别与所述一个或多个替选程序代码分段相关联的特定程序代码分段,所述特定程序代码分段是从所述一个或多个程序代码分段中选择的;
将代码片段***到所述程序代码中,在所述代码片段执行时,所述代码片段能够操作以使得处理器选择并执行包括所述特定程序代码分段或者所述一个或多个替选程序代码分段中的任意一个中的一个的代码;以及
基于分别与所述特定程序代码分段和所述一个或多个替选程序代码分段相关联的性能量度,向所述特定程序代码分段提供所述一个或多个替选程序代码分段中的一个。
CN2009801132448A 2008-02-19 2009-02-19 基于代码的网站实验 Pending CN102007488A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/033,364 US20090210863A1 (en) 2008-02-19 2008-02-19 Code-based website experiments
US12/033,364 2008-02-19
PCT/US2009/034563 WO2009105574A2 (en) 2008-02-19 2009-02-19 Code-based website experiments

Publications (1)

Publication Number Publication Date
CN102007488A true CN102007488A (zh) 2011-04-06

Family

ID=40956351

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009801132448A Pending CN102007488A (zh) 2008-02-19 2009-02-19 基于代码的网站实验

Country Status (7)

Country Link
US (1) US20090210863A1 (zh)
EP (1) EP2257891A4 (zh)
JP (1) JP2011516939A (zh)
CN (1) CN102007488A (zh)
AU (1) AU2009215520A1 (zh)
IL (1) IL207711A0 (zh)
WO (1) WO2009105574A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107357706A (zh) * 2017-07-17 2017-11-17 深圳天珑无线科技有限公司 数据处理方法、装置及非临时性计算机可读介质

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8234632B1 (en) 2007-10-22 2012-07-31 Google Inc. Adaptive website optimization experiment
US8966446B1 (en) * 2010-09-29 2015-02-24 A9.Com, Inc. Systems and methods of live experimentation on content provided by a web site
US9292902B1 (en) * 2011-03-30 2016-03-22 Google Inc. Remote rendering control objects
JP5383923B1 (ja) * 2011-12-26 2014-01-08 株式会社Murakumo 情報処理装置、情報処理システム、情報処理方法およびプログラム
US9497276B2 (en) * 2012-10-17 2016-11-15 Google Inc. Trackable sharing of on-line video content
US9454364B2 (en) * 2013-07-17 2016-09-27 Accenture Global Services Limited Mobile application optimization platform
US20150082286A1 (en) * 2013-09-18 2015-03-19 Microsoft Corporation Real-time code instrumentation
US11615017B2 (en) * 2021-01-30 2023-03-28 Bby Solutions, Inc. Discovery and aggregation of multivariate test experiments

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870559A (en) * 1996-10-15 1999-02-09 Mercury Interactive Software system and associated methods for facilitating the analysis and management of web sites
US6605120B1 (en) * 1998-12-10 2003-08-12 International Business Machines Corporation Filter definition for distribution mechanism for filtering, formatting and reuse of web based content
AU6494701A (en) * 2000-05-24 2001-12-03 Match Craft Inc Online media exchange
US20020023112A1 (en) * 2000-05-24 2002-02-21 Nttx Corporation Graphical web page editor
US6826594B1 (en) * 2000-07-15 2004-11-30 Commission Junction Method and system for remote content management of a designated portion of a web page
US7058582B2 (en) * 2000-09-19 2006-06-06 Irn, Inc. Method for performing programming by plain text requests
US7093193B1 (en) * 2000-10-30 2006-08-15 Microsoft Corporation String template pages for generating HTML document
US7844907B2 (en) * 2002-10-16 2010-11-30 William Watler System and method for dynamic modification of web content
US7574691B2 (en) * 2003-03-17 2009-08-11 Macrovision Corporation Methods and apparatus for rendering user interfaces and display information on remote client devices
US20040250236A1 (en) * 2003-04-30 2004-12-09 O'malley Austin Establishing and maintaining a relationship between a three-dimensional model and related data
US7178101B2 (en) * 2003-06-24 2007-02-13 Microsoft Corporation Content template system
US8015239B2 (en) * 2004-10-19 2011-09-06 Ebay Inc. Method and system to reduce false positives within an automated software-testing environment
US7617486B2 (en) * 2004-10-19 2009-11-10 Ebay, Inc. Method and system to automate software testing using sniffer side and browser side recording and a toolbar interface
US7975000B2 (en) * 2005-01-27 2011-07-05 Fmr Llc A/B testing of a webpage
US7594189B1 (en) * 2005-04-21 2009-09-22 Amazon Technologies, Inc. Systems and methods for statistically selecting content items to be used in a dynamically-generated display

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107357706A (zh) * 2017-07-17 2017-11-17 深圳天珑无线科技有限公司 数据处理方法、装置及非临时性计算机可读介质
CN107357706B (zh) * 2017-07-17 2021-01-08 深圳天珑无线科技有限公司 数据处理方法、装置及非临时性计算机可读介质

Also Published As

Publication number Publication date
WO2009105574A2 (en) 2009-08-27
EP2257891A2 (en) 2010-12-08
WO2009105574A3 (en) 2009-10-15
IL207711A0 (en) 2010-12-30
EP2257891A4 (en) 2011-04-20
US20090210863A1 (en) 2009-08-20
JP2011516939A (ja) 2011-05-26
AU2009215520A1 (en) 2009-08-27

Similar Documents

Publication Publication Date Title
CN102007488A (zh) 基于代码的网站实验
US11838350B2 (en) Techniques for identifying issues related to digital interactions on websites
CN109074263B (zh) 移动应用活动检测器
US20140074622A1 (en) Systems and methods for rule based inclusion of pixel retargeting in campaign management
US8296643B1 (en) Running multiple web page experiments on a test page
CN103947216B (zh) 视频分段呈现跟踪
CN103597509A (zh) 利用用户交互分组聚合转化路径
CN110944048B (zh) 业务逻辑配置方法及装置
US8234632B1 (en) Adaptive website optimization experiment
CN104067274A (zh) 用于改进对搜索结果的访问的***和方法
JP5452229B2 (ja) 検索機能を備えたバナー広告提供方法およびシステム、またはこの方法を実行させるためのプログラムを記録したコンピュータ読取可能な記録媒体
CN104428765A (zh) 减少重定向
CN103608834A (zh) 报告优先级维度数据转化路径
CN103748608A (zh) 路径浏览器可视化
CN103443781A (zh) 数据递送
CN103890799A (zh) 转化/非转化比较
WO2011097328A9 (en) Method and system for test-duration estimation
JP2014522060A (ja) コンバージョンタイプからコンバージョンタイプへのファネリング
CN107545018B (zh) 在基于反馈的***效能确定中的时延降低
CN103608807A (zh) 路径长度选择器
US8429535B2 (en) Client utility interaction analysis
CN109584084A (zh) 保险产品订单信息与代理人信息关联方法、装置和设备
US20130019152A1 (en) Method and Apparatus for Tracking Exit Destinations of Web Page
CN103607415A (zh) 一种请求资源分配的方法、客户端和服务器
JP7405969B2 (ja) コンテンツへのセキュアウォーターマークの組込み

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20110406