CN103262049A - 带有事件属性的电子表单数据的采集方法 - Google Patents

带有事件属性的电子表单数据的采集方法 Download PDF

Info

Publication number
CN103262049A
CN103262049A CN2011800521107A CN201180052110A CN103262049A CN 103262049 A CN103262049 A CN 103262049A CN 2011800521107 A CN2011800521107 A CN 2011800521107A CN 201180052110 A CN201180052110 A CN 201180052110A CN 103262049 A CN103262049 A CN 103262049A
Authority
CN
China
Prior art keywords
event
hurdle
electronic spreadsheet
data
user
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
CN2011800521107A
Other languages
English (en)
Other versions
CN103262049B (zh
Inventor
B·费兰
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.)
BANQUE ACCORD
Original Assignee
BANQUE ACCORD
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 BANQUE ACCORD filed Critical BANQUE ACCORD
Publication of CN103262049A publication Critical patent/CN103262049A/zh
Application granted granted Critical
Publication of CN103262049B publication Critical patent/CN103262049B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • G06F9/45512Command shells
    • 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/3438Recording 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 monitoring of user actions
    • 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
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/174Form filling; Merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time 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
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/86Event-based 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)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Debugging And Monitoring (AREA)
  • User Interface Of Digital Computer (AREA)
  • Document Processing Apparatus (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

经由具有至少一个输入外围设备的用户终端(10)对能在应用服务器(2)上获取的电子表单进行管理的方法,该方法包括以下步骤:从通过用户终端(10)加载电子表单起,识别(11)电子表单的能够与用户交互有关的栏;检测并存储与在识别出的栏中的每一栏上产生的任何事件有关的数据;在提交电子表单时下载存储的数据;分析所下载的数据。

Description

带有事件属性的电子表单数据的采集方法
本发明涉及在线服务的技术领域,且更特别地涉及用户与在线电子表单的交互研究。
在Internet和/或Intranet的广义使用中,在线服务的数量不断发展:例如电子商务、电子银行、电子学习、电子政务。因此,越来越多的企业—尤其是银行领域—倾向于通过在线应用程序以电子方式推出其服务。因而从此可远程在线完成银行和金融交易。
为了满足经济和商业前景,这些在线服务使用各种信息资源,从简单的(如“联系我们”电子邮件或电子表单),到复杂的(如可与Web2.0对接的通信工具(即时通信或“聊天”、社交网络、博客、“Wiki”型动态网站))。
在这种背景下,电子表单被视为在线服务的主要促进因素之一。表单实际上允许:
-较强的反应性:借助下拉式菜单或复选框,可加速数据录入—对比,例如电子邮件的应用;
-获得可自动加入数据库的预格式化数据;
-在录入需要的信息时协助上网者:必填数据(例如识别码、密码)或非必填数据(例如地址、职业、年龄、电子地址),遵照的程序(例如识别、支付、检验、确认);
-节省用户信息的转录(尤其不同于需要提取和转录用户信息的聊天或电子邮件,因为在转录时可能存在错误的风险);
-获得相关信息,例如,通过引导用户在根据在线服务管理员之意预设的清单中进行选择。
这正是为什么电子表单无论是信息性、咨询性或交易性,都能成为用于在线服务的一项信息资源。
然而,在线服务管理员费力设计性能良好且易于操作的表单,没有来自用户的评论反馈:必须使用户填写满意度表单,而这会构成恶性循环。
鉴于电子表单的人机工程质量(对于让注册在线服务的上网者接收是基本的)通常仅能以不完整的方式被评估,这是由于缺少对上网者填写表单方式的满意度研究。
不言而喻,在填写表单时,上网者的行为根据年龄、性别、社会职业类别、终端类型、所使用的浏览器的不同而变化。然而,不仅由于商业原因,同样也由于道德原因,不能设想对需要填写表单的在线服务的访问要依赖于预先识别上网者属于哪一类别:原则上,任何上网者都应能填写表单从而获取服务。
无论如何,上网者面对表单的反应是多样而复杂的。因此,如果待填写的栏的组织是基本的,则可注意到逻辑根据个体而不同。而且,这种逻辑可能与服务提供商的利益相违背。因此,如果对于某些服务提供商,用户的年龄是决定服务提供的基础数据(例如仅向成人提供而禁止向儿童提供的服务),表格头部“年龄”栏的存在,可以一上来就拒绝用户,使其放弃该项服务。
类似地,录入方法是基本的,并且在统计上讲,至今仍存在很少的与上网者录入所要求信息的方式有关的数据。
本发明的目的在于改进电子表单的人机工程学,从而便于上网者访问通过提交这些表单来限定的在线服务。
为此,按照第一方面,本发明涉及经由具有至少一个输入外围设备的用户终端对能在应用服务器上获取的电子表单进行管理的方法,该方法包括以下步骤:
-从通过用户终端加载电子表单起,识别电子表单的能够与用户交互有关的栏;
-检测并存储与在识别出的栏中的每一栏上产生的任何事件有关的数据;
-在提交电子表单时下载存储的数据;
-分析所下载的数据,该分析步骤包括对表示用户交互的相继事件序列的区分步骤。
按照第二方面,本发明涉及一种事件记录器,用来经由具有至少一个输入外围设备的用户终端对能在应用服务器上获取的电子表单进行管理,该事件记录器的特征在于被配置为:
-从通过用户终端加载电子表单起,识别电子表单的能够与用户交互有关的栏;
-检测并存储与在识别出的栏中的每一栏上产生的任何事件有关的数据;
-在提交电子表单时,把存储的数据下载到作为目的地的分析服务器,所述分析服务器被配置为在这些存储的数据中区分表示用户交互的至少一个相继事件序列。
按照第三方面,本发明还涉及在存储器介质上执行的计算机程序产品,其能在信息处理单元内部实施且包括用来实施上述总结的方法的指令。
在阅读以下参考附图对优选实施方式的说明后,本发明的其它特征和优点将更清楚且具体,在附图中:
图1示意性示出实施方式的非限定性功能示图;
图2示意性示出实施变型。
图1示出用户1申请,通过用户终端10,访问应用服务器2上的内容和/或在线服务。
用户终端10(计算机、数字平板、智能手机、或更一般地,可允许用户1与远程服务器交互的任何设备)尤其带有输入外围设备和显示装置(屏幕)。在此,输入外围设备是指可允许向用户终端10发送指令(例如录入文本、定向)的任何设备。用户终端10的输入外围设备的例子是键盘、触摸屏、数字键、操纵杆、鼠标、追踪球、触摸板、图像手写板或以上这些的任何组合。
此外,用户终端10配备了Web浏览器(例如FireFox
Figure BDA00003113952800031
,Fennec
Figure BDA00003113952800032
,Opera
Figure BDA00003113952800033
,Opera Mobile
Figure BDA00003113952800034
,Internet Explorer
Figure BDA00003113952800035
,Google Chrome
Figure BDA00003113952800036
)或者允许通过应用服务器2查阅上线网站的任何其他装置。该Web浏览器被布置成可用来传送对在线服务和/或内容的访问请求,并布置成显示应用服务器2对所传送的请求的响应。
用户终端10和应用服务器2之间的通信按照同步支持浏览协议(例如http、https、WAP)构建。
应用服务器2允许访问(或接待)包含电子表单的至少一个Web站点(或WAP站点)。作为非限定例子,应用服务器2推出在线服务,如在线银行贷款申请,需要由希望享受该服务的用户填写电子表单。
在其经由应用服务器2与在线内容交互中,用户1向应用服务器2传送访问电子表单的申请120。作为答复,应用服务器2向用户1返回含有事件记录器的所申请的电子表单121。
事件记录器是加入到由用户1申请的电子表单中的计算机程序产品(也就是表示指令的一组代码行)。按照特别的实施方式,事件记录器被加入在电子表单的源代码中。
然而,需注意,事件记录器独立于由用户1申请的电子表单,且可以被加入任何其它电子表单中。
事件记录器旨在允许随时间而建立由用户1填写所申请的电子表单的方式。为此,可区分三个阶段:
-初始化阶段,允许清查可能涉及用户交互的电子表单的所有栏;
-执行阶段,在该阶段过程中,事件记录器检测并存储电子表单的所清查的各栏上产生的任何事件;
-下载阶段,在由用户提交电子表单时,允许加入存储到电子表单中的数据。
电子表单的“栏”在此是指电子表单的任何构成部件,或更一般地,电子表单中所含的任何图形界面组件(例如图标、按钮开关、复选框、单选按钮、命令菜单、快捷菜单、选项标签、滚动条、文本区、提示框、对话框、浮动窗口、超链接)。此外,“用户交互”在此是指用户1经由用户终端10的输入外部设备或通过计算机程序产品(例如机器人)启动的任何指令(例如选择、录入、定向)。
一旦由用户1加载含有事件记录器的电子表单121,在初始化阶段中,事件记录器:
-对电子表单执行扫描(图1的步骤11),从而识别可由用户1修改值的所有栏(例如录入区、滚动菜单、复选框、单选框、按钮、指向另一文件的链接),并且
-存储(图1的步骤12)所识别栏的属性;例如对于所识别的各栏,存储名字、类型(例如按钮、复选框、文件、隐藏、图像、密码、选项(radio)、重置、单选、多选、提交、文本、文本区),以及初始值(例如清空、勾选)。
因此,事件记录器构建了表征由用户1加载的电子表单中存在的所有栏的详细参考。
在特别的实施方式中,事件记录器扫描电子表单,由此从中提取结构(也就是说,电子表单中存在的所有栏),从而把其存储在表Structure[]中,形式如下:
Figure BDA00003113952800051
电子表单的各栏因此通过电子表单的号码及其在该电子表单的结构中的出现号码被编索引。
在执行阶段中,收听器(特别地,listener)与电子表单的编索引的各栏相关联,目的在于检测在该栏上产生的任何事件,并因此启动对该事件的存储。以非限定的事件为例,可列举:
收听器 描述
keydown按下按键 按下按键
keypress压住按键 “压住”按键
keyup松开按键 “松开”按键
focus对焦 栏捕捉到焦点
Blur失焦 栏失去焦点
select选中 列表的一项被选中
paste粘帖 事件“粘帖”发生在栏中
Cut剪切 事件“剪切”发生在栏中
Copy复制 事件“复制”发生在栏中
Change改变 栏的内容改变值
Click单击 栏被单击
Dblclick双击 栏被双击
Contextmenu快捷菜单 栏上启动快捷菜单
Mousedown鼠标按下 栏上按下鼠标按钮
Mouseup鼠标松开 栏上松开鼠标按钮
Resize调整大小 用户重新确定电子表单窗口的尺寸
Mouseover鼠标悬停 鼠标到达栏上方
Mouseout鼠标移开 鼠标离开栏
特别地,当选中编索引的栏时,发生“对焦”事件。一旦栏失去“对焦”,发生“失焦”事件。特别地,这两个事件允许知道用户1执行了从电子表单向另一文件的切换(swap)。“对焦”和“失焦”两事件在不同的事件中,提供了关于用户1对电子表单注意力的情况。
被编程用来检测“对焦”和“失焦”事件的收听器,在DOM(文档对象模型)的“窗口”对象中实施,从而允许启动与“窗口”对象相关联的存储功能。
事件“调整大小”由借助浏览器的以下功能之一重新设定电子表单的窗口大小而引起:“操作条(poignée)”(通常可在浏览器右下角中得到)、“全屏”、“下方”或者“放大”(后三种通常位于浏览器右上角)。
通过与当前时间一起提供的变量进行时间管理,从而允许计算出两连续事件之间经过的时间(毫秒)和/或事件的持续时间(通常为毫秒)。
在特别的实施方式中,任何捕捉到的事件都被存储在表Trace[]中,包括以下属性:
属性 描述
i 事件的顺序号码
dh 从之前事件开始经过的毫秒数
ctrl 发生事件的对象的索引
Keycode 在按键型事件上的键码或字符代码
selTxt 在“文本”或“文本区”类型的栏中选中的文本
selDeb 所选中文本开端栏中的偏移
selFin 所选中文本结束栏中的偏移
new_val_vide 允许知道栏的新值为“空”的指示
Special_key 允许知道在发生事件时是否按下特殊键
evenement 突发事件代码
new_val 栏的新值
mouse 事件发生前鼠标最后已知的位置
优选地,与所发生事件相关且由收听器捕捉到的存储数据包括:事件、事件发生的栏、从之前事件开始经过的时间(毫秒)、从输入外围设备向用户终端传送的指令(也就是说,键盘的按下按键的值,或鼠标的按下的按钮)、选中的文本/选项内容、选中文本的上标和/或下标、栏的新值、栏值的改变、如“CTL”、“ALT”、“SHIFT”等特殊键的状态。
此外,当给定事件由以下操作产生时:
-点击鼠标,然后其被识别(点击左键、点击中键、点击右键);
-按下按键(事件keydown-keypress和keyup),然后识别按键的“键码”(对于事件keydown和keyup)或“字符代码”(对于keypress事件)。
此外,当事件以“special_key”属性生成时,还存储在一个或多个特殊键上的按压,即例如按键“CTL”、“ALT”、或“SHIFT”。例如“ctrl”属性因此与事件发生的栏相关联。如果事件涉及电子表单的窗口本身,则对于该窗口(按照表Structure[],i=0,j=0),存储“对焦”或“失焦”事件。如果事件涉及一类未知栏(起因可能是浏览器程序设计错误),为“ctrl”属性赋予“none”值,从而使事件脱离事件表Trace[]。
举例而言,如果事件涉及“文本”、“文本区”或“密码”型部件,且选择的是文本,将存储以下信息:
-selTxt:选择的文本;
-selDeb:选择开始部件中的偏移;
-selFin:选择结束部件中的偏移。
如果事件涉及“单选”或“多选”类型的部件,则给出“new_val”属性,其将按以下方式被格式化为一系列选中的部件:
字符‘[’
对于各选中的选项:
选项顺序号码,
选项的文本,其中用“&pipe”代替字符“I”并且用“&slashe”代替“/”,
字符“/”
字符“]”。
如果事件涉及“选项”或“复选框”类型的栏,则把“1”或“0”赋予“new_val”属性(1:勾选或选中,0:相反)。
最后,对于所有定义了“value”属性(文本、文本区、密码)的其它栏,通过把字符“I”替换为“&pipe”来为“new_val”属性给出部件值。尤其,如果新值为空而之前的值不同于该空值,则把属性“new_val_vide”设成1。最后,为栏的“ex_val”属性赋予新值。
在一个实施方式中,在“事件”属性中存储与事件关联的字母字符,这种字母字符的初创遵守某种命名法则,例如以下所示:
事件 事件编码
Keydown按下按键 A
Keyup松开按键 B
Keypress压住按键 C
Focus对焦 D
Blur失焦 E
Select选中 F
Paste粘帖 G
Cut剪切 H
Copy复制 I
Change改变 J
Click单击 K
Dblclick双击鼠标 L
Contextmenu快捷菜单 M
Mousedown鼠标按下 N
Mouseup鼠标松开 O
Resize调整大小 P
Mouseover鼠标悬停 Q
Mouseout鼠标移开 R
其它 Z
需注意,所存储的数据基于的是用户1与电子表单交互的方式,而不是其交互的内容(也就是说,录入的文本)。
由用户1向应用服务器2提交电子表单(图1的步骤122),提交操作启动下载阶段,从而允许把所存储的数据加入电子表单中。
特别地,下载阶段允许:
-对在初始化阶段和用技术踪迹的执行阶段期间存储的数据格式化;
-在动态创建的区中把技术踪迹加入待提交的电子表单中。
为此,首先,为了避免对具有某些“特殊”字符(例如“<”、“?”类型)的技术踪迹的任何解释问题,优选地,通过遵守某种命名法则(如下面所述)来替代这些特殊字符:
Figure BDA00003113952800091
技术踪迹随后被格式化,从而能包括头、结构和已经被存储的事件踪迹。
由“entete”和“/entete”型的标识符限定的头,丰富了包含在事件踪迹中的、并且未穷举例而言包括以下表格部件的信息:
名称 描述
Version版本 记录器版本(例如,1.0)
Host主机 主机名称,事件记录器在该主机上运转(例如www.oney.fr)
Pathname路径名 网站上的页面路径(例如,/ouverture/carte.php)
Search搜索 网址可能的一系列参数(例如?mode=souscription)
Date_Deb 日期—加载表单的时间
Date_Fin 日期—执行职能的时间
appCodeName 浏览器代码名称(例如,Mozilla)
appMinorVersion 浏览器最小版本类型
appName 浏览器完整名称(例如Netscape)
appVersion 浏览器版本(例如5.0(Windows;U;Windows NT6.1)
cookieEnabled 显示浏览器是否接受信息记录程序(cookies)的布尔值
cpuClass 处理器类型
Language语言 浏览器语言(例如fr)
Online在线 显示浏览器是否连接到互联网的布尔值
Platform平台 操作系统的名称(例如Win32)
systemLanguage 操作系统的代码语言
userAgent 浏览器多信息串联(例如,Mozilla/5.0(Windows;U)
userLanguage 浏览器代码语言
availHeight 屏幕垂直分辨率有效像素数量
availWidth 屏幕水平分辨率有效像素数量
colorDepth色彩深度 以比特数表示的色彩深度
Height高度 屏幕真实垂直分辨率
Width宽度 屏幕真实水平分辨率
innerHeight内高 浏览器可视内容区的像素高度
innerWidth内宽 浏览器可视内容区的像素宽度
XOffset 水平方向上页面在浏览器中的位置(升降)
YOffset 垂直方向上页面在浏览器中的位置(升降)
以下给出技术踪迹的头的示例(在文本所含的各属性中,字符“I”由“&pipe”替代):
<entete>1.0|www.pcaba.fr|/test-
cagnotte/lab_coordonnees.php||1269965021999|1269965154646|Mozilla|;SP3;|MicrosoftInternet Explorer|4.0(compatible;MSIE6.0;Windows NT5.1;SV1;.NET CLR2.0.50727;.NETCLR1.1.4322)|true|x86|undefined|true|Win32|fr|Mozilla/4.0(compatible;MSIE6.0;
Windows NT 5.1;SV1;.NET CLR2.0.50727;.NET CLR
1.1.4322)|fr|996|1280|32|1024|1280|881|1229|0|0</entete>
技术踪迹的结构由<structure>和</structure>类型标识符界定,包括电子表单的编索引的栏的说明,如下所示:
Figure BDA00003113952800111
以下给出一个技术踪迹的结构的示例(在文本所含的各属性中,字符“I”由“&pipe”取代):
<structure>0/0|window||X|||0/1|eventid||D||suivant|0/2|civilite|civilite|I|[0:]|[1:Monsieur]|0/3|prenom|prenom|L||Benoit|0/4|nom|nom|L||Ferlin|0/5|nomJeuneFille|nom-jeune-fille|L|||0/6|dateNaissanceJour||I|[0:--]|[22:22]|0/7|dateNaissanceMois||I|[0:--]|[6:06]|0/8|dateNaissanceAnnee||I|[0:----]|[30:1963]|0/9|paysNaissance|pays-
naissance|I|[1:France]|[1:France]|0/10|departementNaissance|departement-
naissance|I|[0:Choisissez]|[69:Morbihan]|0/11|villeNaissance|ville-
naissance|L||GUER|0/12|numeroRue|numero-rue|L||1RUE
NATIONALE|0/13|residenceBatiment|residence-
batiment|L|||0/14|etage|etage|L|||0/15|codePostal|code-
postal|L||59000|0/16|lieuDit|lieuDit|L|||0/17|commune|commune|L||LILLE|0/18|teleph
oneFixe|telephone-fixe|L|||0/19|telephoneMobile|telephone-
mobile|L|||0/20|email|adresse-email|L||bferlintest.fr|</structure>
索引 名称 类型 val_ini val_fin
0/0 Window X(窗口)
0/1 Eventide D(隐藏) Suivant
0/2 Civilite I(单选) [0:] [1:Monsieur]
0/3 Prenom L(文本) Benoit
0/4 Nom L(文本) Ferlin
0/5 nomJeuneFille L(文本)
0/6 dateNaissanceJour I(单选) [0:--] [22:22]
0/7 dateNaissanceMois I(单选) [0:--] [6:06]
0/8 dateNaissanceAnnee I(单选) [0:----] [30:1963]
0/9 paysNaissance I(单选) [1:France] [1:France]
0/10 departementNaissance I(单选) [0:Choisissez] [69:Morbihan]
0/11 villeNaissance L(文本) GUER
0/12 numeroRue L(文本) 1RUE NATIONALE
0/13 residenceBatiment L(文本)
0/14 Etage L(文本)
0/15 codePostal L(文本) 59000
0/16 lieuDit L(文本)
0/17 commune L(文本) LILLE
0/18 telephoneFixe L(文本)
0/19 telephoneMobile L(文本)
0/20 Email L(文本) bferlintest.fr
事件踪迹包括在表单执行阶段过程中的一组突发事件,且其可以由标识符“<trace>”和“</trace>”界定。踪迹由分别被字符“I”区分的以下部件构成:
Figure BDA00003113952800121
Figure BDA00003113952800131
出于保密的原因,优选地,事件踪迹被加密。尤其,技术踪迹的结构内容也可以被加密。
在事件踪迹加密的非限定性实施方式中,加密密钥由事件记录器以随机方式计算且被存储在系统变量“window.name”中。有利地,该加密方法对同一浏览器上加载(即打开的)所有电子表单都能保存同样的加密方法。
为此,在优选的实施方式中,从用户终端的输入外围设备(键盘)的三个不同区开始确定三个加密矩阵:
-矩阵A(mA):按键F1到F12;
-矩阵B(mB):主键盘的按键1到0以及数字键盘的相同按键;
-矩阵C(mC):按键A到Z。
按照按键加密表格编号码的按键允许获得由与各区相关的按键构成的加密矩阵。
各矩阵用其相应的按键号码而被初始化,例如:
mA:数字1到11;
mB:数字17到26;及
mC:数字31到40+数字45到54+数字59到64。
对于由此构成的各矩阵,可对各矩阵元素进行大量(例如1000)两两置换。
这些矩阵随后保存在变量“window.name”中。以下例子示出该变量的格式(在此仅以说明为目的来使用数字):
[mA=new Array(2,12,8,1,6,3,10,9,7,5,4,11);
mB=new Array(19,20,22,24,17,21,23,25,26,18);
mC=new Array
(48,60,64,31,39,47,45,50,63,54,40,46,49,62,35,36,38,53,61,59,37,32,51,33,52,34);]
一旦加载事件记录器,就会生成加密矩阵mA、mB及mC。如果,当后面加载事件记录器时如果在变量“window.name”中检测这些矩阵的存在,则重新加工序列以便删去开括号与闭括号,且对序列的简单估算就允许通过保存相同的置换来加载矩阵。
为了通过遵照这些子块(bloc)来构成混合的按键表,按照0到105编索引的名为tcp[]的表重建矩阵mA、mB和mC:
Figure BDA00003113952800141
需注意,在按下按键时,发生三个事件:
-keydown:按下按键,且按键的键码被截取;
-keypress:压住按键,且按键的字符代码被截取;
-keyup:松开按键,且按键的键码被截取。
特别地,最好保持“键码-字符代码”的值与录入字符值之间的相关性,从而允许例如检测用户1通过颠倒上次录入的两字符修改了其名字。
以下给出表示加密方法的示例,其中,按照按键加密表的两个按键,例如53(L)和64(N),在创建加密矩阵时已经被颠倒:
按键编号n° 键码 字符代码 字符 字符代码M 字符
53 76 108 l 76 L
64 78 110 n 78 N
以下两表,分别表现部件及其按键编号之间的对应关系以及按键编号及其部件之间的对应关系,通过加密方法被使用。
部件及其按键编号之间的对应表因此可显示为:
Figure BDA00003113952800142
按键编号及其部件之间的对应表因此可显示为:
名称 说明 示例
Tkd 按键编号n°和键码之间的对应关系 tkd[64]=78
Tkc 按键编号n°和字符代码之间的对应关系 tkc[64]=110
Tkcm 按键编号n°和“大写”字符代码之间的对应 tkcm[64]=78
Tc 按键编号n°和小写字符之间的对应 tc[64]=‘n’
Tcm 按键编号n°和大写字符之间的对应 tcm[64]=‘N’
事件keydown和keyup之后的键码加密包括以下步骤:
-从表kd出发,采集与待加密键码相关的按键编号:在该示例中,kd[76]=53;
-在表tcp中,读取有关按键的置换:在该示例中,tcp[53]=64;
-在表tkd中,搜索与所获取的按键编号相关的键码,在该示例中,tkd[64]=78。
事件keypress之后的字符代码加密包括以下步骤:
-从表kc出发,采集与待加密字符代码相关联的按键编号(如果未定义该部件,就在表格kcm中采集该按键编号):在该示例中,kcm[76]=53;
-在表tcp中,读取有关按键的置换:在该示例中,tcp[53]=64;
-在表tkc中,搜索与所获取的按键编号相关联的字符代码,在该示例中,tkd[64]=78。
把设成大写的字符与字符本身的比较,允许获知字符是否为小写或大写(除了特殊字符,例如“à”,“ù”或“
Figure BDA00003113952800151
”)。举例而言,按照上述示例,因为[‘L’]=53,则tcp[53]=64在tcm中对应于‘N’,也就是说,tcm[64]=’N’。
当然,也可以使用事件踪迹的其它加密方法。
在实施方式中并且出于安全性的原因,格式化的技术踪迹以隐藏的方式(“hidden”型部件)被加入要由用户1向应用服务器2提交的电子表单中。
在另一实施方式,即便用户1取消或放弃了提交电子表单(例如从浏览器返回、关闭电子表单页面),技术踪迹也被发送至应用服务器2(图1的步骤122)或分析服务器3(图1的步骤130)。在该情况下,技术踪迹允许定位在其中用户1中断的表单区域。这例如允许识别对用户完成其交易构成障碍的栏。
在一个实施方式中,应用服务器2带有插件21,其被编程用来从提交的表单中提取技术踪迹并且把其转移至分析服务器3。特别地,该转移旨在不干扰应用服务器2的运行,应用服务器2专门用来处理提交的表单内容。
因此,对技术踪迹的管理被留给分析服务器3,从而不会有损于应用服务器2对用户1所提交的表单内容的处理时间。
作为变型,技术踪迹被直接传输至分析服务器3(图1的步骤130)。
分析服务器3被配置用来:
-检验技术踪迹的一致性(图1的步骤31):例如踪迹的结构、头信息的存在;
-分析技术踪迹中所包含的事件踪迹(图1的步骤32);以及
-在数据库30中存储(图1的步骤33)对技术踪迹的分析。
事件踪迹的分析步骤32尤其包括以下步骤:
-通过例如删除取决于由用户1所使用的浏览器的多余事件,使事件踪迹规范化(例如,从一个栏过渡到另一个栏,会在InternetExplorer中生成“窗口获取焦点”的事件);
-区分表达用户交互的一系列连续事件,例如对应于动作“借助上下文菜单在区域中粘帖”的“鼠标按下-鼠标松开-上下文菜单-粘帖”;
-点击动态估算(正常点击:按下按键-压住按键-松开按键,快速点击:相继的松开按键与按下按键之间的时间,重复点击:压住按键持续时间)。
按照一个特别的实施方式,通过用所谓“常规表达式”的技术分析踪迹,可以区分表达用户交互的一系列连续事件:把字母表的字母与踪迹的各事件相关联,并形成由所有事件构成的字符序列,一组接着另一组。在一系列事件中搜索每个常规表达式,并且当找到常规表达式时,就关联“分析标记,从而允许知道这些基础事件对应于特定动作。
在该分析中,事件踪迹被分解为易于理解的事件,换言之,用户交互:例如按键被按下,栏经受“粘帖”动作,或勾选了一个框。
有利地,把事件踪迹中所包含的所有事件表达成用户交互,允许随时间重建由上网者1填写电子表单的方式。更确切地,该步骤允许通过跟踪来重建用户交互(例如复制-粘帖、录入文本、选择项、页面置换),且尤其考虑到时间方面(用户交互的时长/顺序)或填写电子表单所依据的场景。
通过对各踪迹事件进行计算,来进行点击的动态估算,“Levenshtein”距离(也叫编辑距离)(或按照两事件链之间任何其它相似性测量)源自事件发生所在区域值的改变。“Levenshtein”距离使从一个字变为另一个字的算法成本量化。
该点击的动态估算步骤允许识别填写电子表单的栏方式。实际上,可区分三类点击:
-正常点击:根据事件“keydown+keypress+keyup”,栏被修改;
-快速点击:当用户1快速敲击键盘时发生该事件;顺序表征为:按压第一按键的“keyup”事件还未发生,而下一个按键的“keydown”事件已经发生了。该项分析有助于证明完成了录入的用户有通过键盘录入信息的习惯;
-重复点击:当用户长时间按压一按键且启动重复为栏提供相同的字符时,发生该事件。
此外,技术踪迹的分析还允许识别借助某些浏览器提供的“自动完成”技术的“复制/粘帖”,或借助例如机器人而被修改的栏。
该分析步骤允许重建由用户1填写电子表单的方式。例如,用户1:
-已经点击了“名字”栏,并借助键盘的按键,通过执行X次正常录入、Y次快速录入、Z次纠正完成了填写;
-借助跳格键,从“名字”栏跳向“地址”栏;
-切换到不同于电子表单的另一窗口(电子表单的窗口失去“焦点”,且随后发生事件“失焦”);
-重新激活电子表单的“地址”栏(在“地址”栏上发生“对焦”事件);
-借助上下文菜单在“地址”栏内粘帖内容(在“地址”栏中发生下面事件序列:“按下鼠标-松开鼠标-上下文菜单-粘帖”)。
根据在该分析时获得的数据,(例如通过诸如营销管理处等的人员组4)做出用来修改表单的人为决定,比如如果统计数据证明对某些用户正确或足够快速地填写表单存在困难。为此,被准许进入分析服务器3的人员可例如每日查看(图1的步骤41)被记录在分析服务器3的数据库30中的技术踪迹恶分析,并因而确定(图1的步骤42)行动计划。
按照图2所示的另一实施方式,应用服务器2可申请(图2的步骤231)其已经转交给分析服务器3的技术踪迹的分析(图2的步骤232),用来随后对提交的表单进行处理(例如,在电子银行表单的情况下,用于接收或拒绝银行交易)。
在该实施方式中,分析服务器3被配置为自己应用表单处理规则(图2的步骤34)。
以上描述的系统和方法尤其允许在用户交互行为(匿名)统计分析的基础上修改表单的架构,从而改善人机工程质量,而无需在硬件方面与软件方面改变用户终端。
用户的行为特征尤其包括用户使用输入外围设备(例如键盘和/或鼠标)的方式。
同样也可以想到,根据假设的用户表现,把多种类型的表单设成在线。不同类型的表单因此可包括不同的各种功能(尤其,例如通过滚动菜单而非自由录入窗口,帮助填写)。
此外,不言而喻,可设计不同的实施变型。由此,应用服务器2可保证分析服务器3的功能。

Claims (11)

1.一种经由具有至少一个输入外围设备的用户终端(10)对能在应用服务器(2)上获取的电子表单进行管理的方法,该方法的特征在于包括以下步骤:
-从通过用户终端(10)加载电子表单起,识别(11)电子表单的能够与用户交互有关的栏;
-检测并存储与在识别出的栏中的每一栏上产生的任何事件有关的数据;
-在提交电子表单时下载存储的数据;
-分析所下载的数据,该分析步骤包括对表示用户交互的相继事件序列的区分步骤。
2.按照权利要求1所述的方法,其特征在于,识别的步骤包括对识别出的栏的属性的存储步骤。
3.按照权利要求1或2任一项所述的方法,其特征在于,该方法还包括把收听器与电子表单的识别出的每个栏相关联的步骤,用来检测在该栏上产生的所有事件。
4.按照上述权利要求中任一项所述的方法,其特征在于,要被检测的事件在以下事件中选择:按下按键、压住按键、松开按键、对焦、失焦、选择、粘帖、剪切、复制、改变、单击、双击、上下文菜单、鼠标按下、鼠标松开、调整大小、鼠标悬停、鼠标移开。
5.按照上述权利要求中任一项所述的方法,其特征在于,与在识别出的栏上产生的事件有关的存储的数据在以下中进行选择:产生的事件、产生事件的栏、从前一事件起经过的时间、从输入外围设备向用户终端传送的指令、栏的新值、栏的值的修改、输入外部设备的特殊键的状态。
6.按照上述权利要求中任一项所述的方法,其特征在于,存储的数据的下载步骤包括存储的数据的格式化操作以及把格式化的数据结合到电子表单的操作。
7.按照权利要求6所述的方法,其特征在于,存储的数据被格式化成包含产生的事件的头、结构以及踪迹。
8.按照权利要求7所述的方法,其特征在于,产生的事件的踪迹被加密。
9.一种事件记录器,用来经由具有至少一个输入外围设备的用户终端(10)对能在应用服务器(2)上获取的电子表单进行管理,该事件记录器的特征在于被配置为:
-从通过用户终端(10)加载电子表单起,识别(11)电子表单的能够与用户交互有关的栏;
-检测并存储与在识别出的栏中的每一栏上产生的任何事件有关的数据;
-在提交电子表单时,把存储的数据下载到作为目的地的分析服务器(3),所述分析服务器被配置为在这些存储的数据中区分表示用户交互的至少一个相继事件序列。
10.按照权利要求9所述的事件记录器,其特征在于,响应于从用户终端(10)发出的、对通过用户终端(10)请求的电子表单的访问请求(120),该事件记录器被加入该电子表单。
11.一种在存储器介质上实施的计算机程序产品,其能够在信息处理单元内部实施并且包括用来实施按照权利要求1至8中任一项所述的方法的指令。
CN201180052110.7A 2010-09-02 2011-08-30 带有事件属性的电子表单数据的采集方法 Expired - Fee Related CN103262049B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR1003511A FR2964484B1 (fr) 2010-09-02 2010-09-02 Procede de recueil de donnees a caracteres evenementiel de formulaires electroniques
FR1003511 2010-09-02
PCT/FR2011/051983 WO2012028817A1 (fr) 2010-09-02 2011-08-30 Procède de recueil de données a caractères événementiel de formulaires électroniques

Publications (2)

Publication Number Publication Date
CN103262049A true CN103262049A (zh) 2013-08-21
CN103262049B CN103262049B (zh) 2016-12-28

Family

ID=44247921

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180052110.7A Expired - Fee Related CN103262049B (zh) 2010-09-02 2011-08-30 带有事件属性的电子表单数据的采集方法

Country Status (7)

Country Link
US (1) US20130227386A1 (zh)
EP (1) EP2612236A1 (zh)
CN (1) CN103262049B (zh)
BR (1) BR112013006365A8 (zh)
FR (1) FR2964484B1 (zh)
RU (2) RU2013114686A (zh)
WO (1) WO2012028817A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106354875A (zh) * 2016-09-21 2017-01-25 中体彩科技发展有限公司 数据调度装置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2717143B1 (en) * 2011-05-31 2019-07-10 Rakuten, Inc. Information processing system, processing method for information processing system, program, and recording medium
CN104008115B (zh) * 2013-02-27 2018-11-13 腾讯科技(深圳)有限公司 一种wap页面标题栏显示方法及系统
US10409904B2 (en) 2014-06-26 2019-09-10 D2L Corporation Methods and systems for providing an electronic form
WO2017197188A2 (en) * 2016-05-11 2017-11-16 Aclipsa Mobile Video Solutions, Llc System and method for analyzing content usage events
CA3123916C (en) 2020-03-26 2023-03-14 Citrix Systems, Inc. Microapp functionality recommendations with cross-application activity correlation
WO2021203403A1 (en) 2020-04-10 2021-10-14 Citrix Systems, Inc. Microapp subscription recommendations
US11553053B2 (en) * 2020-04-16 2023-01-10 Citrix Systems, Inc. Tracking application usage for microapp recommendation
CN112860561B (zh) * 2021-02-23 2022-05-27 汇链通产业供应链数字科技(厦门)有限公司 一种自动化性能测试方法及终端装置
US11797623B2 (en) 2021-12-09 2023-10-24 Citrix Systems, Inc. Microapp recommendations for networked application functionality

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1428733A (zh) * 2001-12-27 2003-07-09 鸿富锦精密工业(深圳)有限公司 信息采集及监控系统
US6968509B1 (en) * 2002-06-05 2005-11-22 Microsoft Corporation Recording of user-driven events within a computer application
US20100107049A1 (en) * 2008-10-23 2010-04-29 International Business Machines Corporation Dynamic Generation of Data Entry Metadata

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6535912B1 (en) * 1999-08-31 2003-03-18 Lucent Technologies Inc. Method for creating and playing back a smart bookmark that automatically retrieves a requested Web page through a plurality of intermediate Web pages
US20040100507A1 (en) * 2001-08-24 2004-05-27 Omri Hayner System and method for capturing browser sessions and user actions
US7716322B2 (en) * 2002-09-23 2010-05-11 Alcatel-Lucent Usa Inc. Automatic exploration and testing of dynamic Web sites
US7552445B2 (en) * 2002-12-13 2009-06-23 Savvis Communications Corporation Systems and methods for monitoring events from multiple brokers
US7523391B1 (en) * 2003-03-25 2009-04-21 Microsoft Corporation Indicating change to data form
US8281026B2 (en) * 2006-03-18 2012-10-02 Metafluent, Llc System and method for integration of streaming and static data
EP1903452B1 (en) * 2006-09-25 2012-08-22 Software AG Method and system for processing the input in an XML form
US8095476B2 (en) * 2006-11-27 2012-01-10 Inquira, Inc. Automated support scheme for electronic forms
RU2378987C1 (ru) * 2008-07-14 2010-01-20 Закрытое акционерное общество "ЮНИК" Способ знакомства в сети интернет посредством психологического теста

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1428733A (zh) * 2001-12-27 2003-07-09 鸿富锦精密工业(深圳)有限公司 信息采集及监控系统
US6968509B1 (en) * 2002-06-05 2005-11-22 Microsoft Corporation Recording of user-driven events within a computer application
US20100107049A1 (en) * 2008-10-23 2010-04-29 International Business Machines Corporation Dynamic Generation of Data Entry Metadata

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106354875A (zh) * 2016-09-21 2017-01-25 中体彩科技发展有限公司 数据调度装置
CN106354875B (zh) * 2016-09-21 2020-02-21 中体彩科技发展有限公司 数据调度装置

Also Published As

Publication number Publication date
US20130227386A1 (en) 2013-08-29
EP2612236A1 (fr) 2013-07-10
BR112013006365A8 (pt) 2018-06-12
RU2640715C1 (ru) 2018-01-11
WO2012028817A1 (fr) 2012-03-08
RU2013114686A (ru) 2014-10-10
CN103262049B (zh) 2016-12-28
FR2964484B1 (fr) 2015-09-18
FR2964484A1 (fr) 2012-03-09
BR112013006365A2 (pt) 2016-06-28

Similar Documents

Publication Publication Date Title
CN103262049A (zh) 带有事件属性的电子表单数据的采集方法
Chen et al. Storydroid: Automated generation of storyboard for Android apps
JP4093012B2 (ja) ハイパーテキスト検査装置および方法並びにプログラム
US11645046B2 (en) Systems and methods for development and deployment of software platforms having advanced workflow and event processing components
US8756614B2 (en) Central registry for binding features using dynamic pointers
Dingli et al. An intelligent framework for website usability
CN108292304B (zh) 跨应用数字墨水库
US11017052B1 (en) Electronic forms interaction framework for a consistent user experience
US7587672B2 (en) File content preview tool
EP2862064A1 (en) Software localization through user contribution
US9087053B2 (en) Computer-implemented document manager application enabler system and method
KR102298395B1 (ko) 사용자 행위 분석 시스템 및 방법과, 이를 위한 이벤트 수집 에이전트
CN109804368A (zh) 用于提供上下文信息的系统和方法
CN107451049A (zh) 使用真实用户监测数据进行客户端瓶颈分析
US8375324B1 (en) Computer-implemented document manager application enabler system and method
JP2009134673A (ja) Gui画面操作シーケンス検証装置、方法、及び、プログラム
RU2762241C2 (ru) Система и способ выявления мошеннических активностей при взаимодействии пользователя с банковскими сервисами
JP4162035B2 (ja) ハイパーテキスト検査装置および方法ならびにプログラム
JP6515736B2 (ja) 情報処理装置及び情報処理プログラム
Usuba et al. Tappy: Predicting Tap Accuracy of User-Interface Elements by Reverse-Engineering Webpage Structures
CN116016683B (zh) 一种网站数据采集方法、装置、设备及存储介质
KR20120000045A (ko) 터치 스크린 가상 키보드 및 마우스 제어 방법 및 시스템
JP7536260B1 (ja) データ取得システム、データ取得方法、及び、データ取得プログラム
US20210248206A1 (en) Systems and methods for generating data retrieval steps
US20150339679A1 (en) Contextual information monitoring

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: French Croix

Applicant after: Auneau bank

Address before: French Croix

Applicant before: Banque Accord

COR Change of bibliographic data
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20161228

Termination date: 20180830