Menu

Tree [ca4dfb] default tip /
 History

Read Only access


File Date Author Commit
 .metadata 2012-01-13 hubertvogten hubertvogten [59a68b] Moved files to correct location
 .settings 2012-03-26 matijaobreza matijaobreza [e4f887] Added SiteMembership to ATL model (service.xml)
 dist 2012-02-10 matijaobreza matijaobreza [5c52c1] Fixed #2268
 docroot 2013-01-11 Matija Obreza Matija Obreza [ca4dfb] indexes.properties cannot contain comments
 test 2013-01-07 Matija Obreza Matija Obreza [1cf351] License applied
 .classpath 2012-04-19 Matija Obreza Matija Obreza [77165f] Rebuilt services
 .hgignore 2012-01-13 matijaobreza matijaobreza [642f23] Synced with hg default tip
 .hgtags 2012-02-10 matijaobreza matijaobreza [5c52c1] Fixed #2268
 .project 2012-01-13 hubertvogten hubertvogten [59a68b] Moved files to correct location
 COPYING 2013-01-03 Jules Alberts Jules Alberts [b14fef] Add GPL and LGPL3 text to project.
 COPYING.LESSER 2013-01-03 Jules Alberts Jules Alberts [b14fef] Add GPL and LGPL3 text to project.
 IMPLEMENTING-ATL-ALGORITHMS 2012-02-10 matijaobreza matijaobreza [5c52c1] Fixed #2268
 ISSUES 2012-02-10 matijaobreza matijaobreza [5c52c1] Fixed #2268
 MIGRATION 2012-01-13 hubertvogten hubertvogten [59a68b] Moved files to correct location
 README 2012-02-10 matijaobreza matijaobreza [5c52c1] Fixed #2268
 build.xml 2012-08-16 Jules Alberts Jules Alberts [e81de6] Replace + sign for DOS compatibility

Read Me

== ICE ATL portlet ==

An IceFaces 2 based ATL implementation supporting Locator algorighm
plugins via MessageBus.

Project has two portlets: atl-ineed-help and atl-tickets. 


== Configuration ==

These settings in portal-ext.properties control email sending behavior:

nl.ou.openu.atl.development=true
nl.ou.openu.atl.emailRecipient=some@addre.ss

If development is set to true, all emails from ATL will be sent to emailRecipient
instead of user's email address.


= ATL I need help =

A simple portlet that renders user's active tickets within scope, a button
to post a new question and list of tutoring requests. All actions redirect
the user to the core ATL Tickets portlet with normal HTTP GET.

It renders a "I need help" button, redirecting the user to ATL tickets 
portlet "New ticket" form.

= ATL Tickets =

Central Tickets management portlet, supporting group scope (community, 
organization). It allows to view active tickets, create new tickets, list 
all tickets within configured scope and check tutor response to invites.

= Permissions =

Anyone that can view the Tickets portlet can create new tickets and view their
own ticket data and tutor requests.

To allow people access to others' tickets, ALL_TICKETS permission must be 
granted to the user.

Permission MANAGE_TICKETS allows user to view tutoring invites and see detailed
ATL algorithm logs. Is used to grant someone complete overview of things. Could
use the existing CONFIGURE permission?


== ATL Matching Algorithms ==

An ATL algorithm produces a list of most appropriate tutors based on input.
Input consists of actual question, information on learner and optionally the
topic. 

The algorithm will do its magic over the entire set of available tutors and 
generate a list of top N most appropriate tutors for given input.

= Algorithm settings =

As algorithms are implemented in various WAR packages and do not share a common
ClassLoader, each algorithm must manage its preferences in its own scope. PortletPrefs
can be used to store the configuration.

= Mutiple instances with different settings =

Configuration portlet can manage multiple configurations. On application startup, these
settings are loaded and for each configuration a separate instance of ATL algorithm class
is created, each with own preferences. Each instance has to provide a unique 
algorithm name to ATLListener which will load the appropriate class and provide the 
selected configuration information.


== Compound Algorithm ==

A "super" algorithm that takes results of other matching algorithms and calculates
a summary score for each provided tutor by applying weight to each individual algorithm
result. 

This requires the algorithms to return a 2-D array: column 1 contains tutorId (long), 
column 2 contains algorithmScore (float).

As each algorithm only returns top N most appropriate tutors as configured in ATL portlet
preferences, individual algorithms will return different tutor lists.

MongoDB Logo MongoDB