(SpringerBriefs in Business Process Management) Learning Analytics Cookbook_ How to Support Learning Processes Through Data Analytics and Visualizatio
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
7.3 Preparation 79
when the user leaves the platform and opens an external web page to check a term at
www.linguee.it, for example, all actions that occur on this page are outside the scope
of the Moodle operator, so he or she cannot track what the user is doing without
installing special tracking software on the user’s computer.
To overcome this problem, we implemented a proxy service that keeps the user
on our server, allowing us to log his or her activities. We make our system, the Web
Analytics Proxy Service, available to other researchers under the domain www.
waps.io. When a user follows a link to an external website like www.linguee.it, we
redirect him or her to a subdomain on our server www.linguee.it.waps.io.
Our service will issue a request to the actual web resource at www.linguee.it and
forward the response to the user. The same HTTP header information that we receive
from the user (e.g., the preferred language, type of browser, cookies) is also sent to
the actual resource. Otherwise, the user could retrieve a different response
(e.g. another language) than he or she would get with the proxy service.
The returned page is likely to contain links to other pages on the same or other
domains. To ensure that the user does not leave our proxy, which would interrupt the
tracking, we modify all hyperlinks on the page to point to our proxy service.
7.3.4 The Tracker
The tracking framework allows teachers to track all pages a student views during a
learning session without requiring changes to the students’ computers. This system
also tracks external websites like Wikipedia and Google. It is also not limited to
classrooms, so students can access it from home and use online resources just as they
normally do, so the system is much less obtrusive than previous approaches. We also
track users’ mouse movements and keyboard inputs to detect when they actively
interact with a web page.
The proxy server can create logs that contain simple information, such as the
browser model, the URL, and the date when the user visited a website. To gather
more fine-grained information, we use JavaScript to record all inputs the users make,
including mouse movements, scrolling, clicking, and typing. We also record when
the browser window loses the focus, that is, when the user switches to another
browser tab or puts the whole browser window into the background. For each input
action, we record the time and the curser position on the page.
To limit the log size and the amount of transferred data, we record up to three
cursor positions per second while the mouse is moving. The log data is accumulated
into batches and sent asynchronously to our tracking server so the tracker does not
influence the browsing experience. This data is used to calculate how active a user
was on a page, so we treat all subsequent actions that take place within a sliding
window of five seconds as one continuous action and assume that the user was active
during the whole time between the first and last actions. For each log entry, the
system can show statistics, including how much time the user spent on a site and how
long he or she was active (moved the mouse, scrolled, clicked, or typed).