With the term analytics we refer to the collection, processing and presentation of data concerning the user activity.
Analytics can be related to many very different goals; among them:
- the evaluation of the level of activity inside CommonSpaces and inside individual communities /projects
- the identification of the most popular contents
- the identification of the preferred functionality and / or the most frequent problems met by the users.
Even if the analytics functionality is being developed largely in a pragmatic way, by putting brick above brick, we think that at some time all pieces could be re-assembled in a better thought-out way, according to explicit pedagogical principles. In particular, we envisage a point where individual "learning paths" could be extracted from the data and used to define or improve proposed "learning pathways".
Data of interest
We plan to collect both data related to generic user interaction, that is to what the user does with the CommonS Platform, and data concerning interactions among users, that is system mediated communication and collaboration.
From a practical viewpoint, we can distinguish data according to how they are collected:
- data naturally resulting from user activity, mainly falling in what is called user generated content (UGC); examples are educational resources such as OERs and Learning Paths, forum posts, blog articles; as a rule, the CommonS Platforms adds to them metadata telling when and from whom each piece of content was created or modified
- data expressely collected and saved in the database to track user activity, through an ad hoc monitoring functionality; in specifying and implementing this type of user / activity tracking, we could prefer to collect redundant data, that is data already available in form of UGC, just to have more freedom in choosing their granularity and organization; basically, we are creating a kind of journal (or log, or timeline, or activity stream) where all kinds of actions are recorded in a uniform way.
The Activity Stream
The activity stream - this is the term that we will use here to refer to the journal or log of user actions - is a stream of simple data records, each including the following components or fields:
- a time reference
- an actor reference, usually matching an identified user
- a verb, roughly identifying the class a specific action belongs to
- an object reference; the object could correspond to a project, an educational resource, a communication message .. ; in some cases the reference to an object type (e.g. OERs) will be present instead
- an optional target reference could be added to include some more context; for example, when a membership application is accepted, we want to have also a reference to the project.
Obviously, the model above will fit better some cases and worse other cases; its goal is only to force some regularity in the data being collected and in the processing functions.
Some action verbs
We are starting with a first set verbs:
Some object types
The object types currently considered are
- user profile - edit, search, view
- private message - create
- project / community - create, edit, submit (propose), approve (open), search, view (1)
- document - create (upload to folder)
- membership (in project / community) - submit, approve (1)
- source repository (of OERs) - create, edit, submit, approve, search, view
- OER - create, edit, submit, approve, search, view (1.5)
- learning path - create, edit, submit, approve, search, view, play (2)
- path node - create, delete, edit, play (1)
- forum - create (1)
- forum topic - create, view (1)
- chatroom - create (1)
- blog entry (article) - create, edit, submit, approve.
In parentheses, current values of the factors used in computing activity and popularity indexes (see below).
The raw view of the activity stream
Currently, the activity stream is presented in a very raw form, by date in inverse order. It is available
- filtered by user, from the user dashboard, known also as user home
- filtered by project, from the project home; provisional criteria are used to associate an action to a project; currently, all logged-in users can access this view;
- unfiltered, from the Analytics menu; currently only the CommonSpaces Community Manager and the Administrators of the top-level Communities can access this menu.
At some time it will be possible to set preferences for some parameters affecting the content, the size and the paging of a view of the activity stream; this are the current fixed choices:
- no paging is applied
- a maximum of 100 items is shown for each view
- the unfiltered view lists actions of last 24 hours, while the others show a window of the last 7 days.
Computed indexes of activity and popularity
Besides information on last instances created of the various object types, we compute some indexes to give a rough idea of the level of activity inside project and of the popularity of projects, resources and other contents.
The algorithms are parametric on the time span. Please note that
- activity and popularity ranks are strongly dependent on the time span considered
- the activity tracking has started recently, the tracking of some activity / object types has started even more recently
- the time spans yielding the results in the homepage are not yet stable.
A list of newest objects is computed for Projects, OERs and Learning Paths. The first in each list is shown in the homepage.
A rank of the most active Projects is computed based on the activity concerning the project themselves and the resources created inside them. Currently, the activity index is computed as a sum of addends, each being the square root of the product of a factor related to the type of action (verb) and a factor related to the object type. The most active project is shown in the homepage.
The verbs considered are:
- Create (1)
- Edit (0.5)
- Delete (1)
- Submit (1.5)
- Approve (2)
In parentheses, current values of factors used in computing activity and popularity indexes.
Popular Projects and resources
A rank of the most popular Projects is computed based on the activity concerning the project themselves and the resources created inside them. Similarly, ranks are created for the most popular OERs and Learning Paths. The first in each rank is shown in the homepage.
The verbs considered are:
- View (1)
- Play (2)