Friday 2 December 2011

WP 2 Meeting - December 2nd 2011

On the 2nd December 2011 Farhi and Eamonn met to discuss progress within Work Package 2 and to discuss targets which have been achieved as well as set milestones for the upcoming weeks.

First of all, here are WP2 Work package deliverables which have been achieved already:

  1. Implementation of the eRaUI widget (Portable Content Search Widget) in such a way that it is portable and deployable upon any web application or interface. The widget enables content search which intelligently adapts to the content of the interface on which it is deployed.
  2. Implementation of click / mouse movement heat maps which provide rich analytics based upon users' interaction with the interface upon which eRaUI is deployed.
  3. Implementation of user Ontology, a catalogue of keywords and strings which are matched to weightings that indicate their relevance to the various user categories defined for the interface. The nearest neighbour algorithm is used in conjunction with this to determine the categories of new users.
  4. Text Mining which filters user selection from the e-Research tool services has been implemented at the point of data collection, which occurs in real-time.
  5. Implementation of the Machine Learning-Nearest Neighbour- algorithms within eRaUI - so as to match users' patterns of behaviour to categories as defined in the site category meta-dictionary.

The following WP2 deliverables have yet to be achieved; they have been enumerated below along with their respective deadlines:


  1. Breadth Search - featuring the use of window panes so as to allow users to preview other relevant e-Research tool services related to those he / she searched for. We intend to implement this before the middle of January 2012.
  2. Workflow Capabilities - We intend to implement a means by which we can guide users between content using workflow-based logic. We aim to have this completed by the middle of January 2012.

We also discussed the possibility of implementing a separate meta-explorer interface which would be separate from the eRaUI widget and based upon the data collected within the analytics and text-mining components of the software.

WP1 Meeting 2nd December 2011

On the 2nd December 2011 Eamonn and Farhi met to discuss WP1 deliverables and progress:

  • We discussed moving eRaUI and all associated systems to the university server. We have allocated up to two weeks to complete this fully and ensure that everything is working properly.
  • Christmas meeting - we decided that we should try to arrange a meeting before the end of the term in order to review progress. This would take place somewhere outside of the university.
  • We are also proud to unveil the new official eRaUI logo, which sports the colours of London Metropolitan University in addition to aspects of the university logo. Here it is:

Tuesday 29 November 2011

Testing and Evaluation of initial eRaUI Prototype - WP4

On Monday the 28th November 2011 we undertook the first formal testing of an eRaUI protoype using MSc students at the London Metropolitan University Faculty of Computing. This was a very small initial test and involved 4 students, none of whom had any prior experience of eRaUI or the concepts related to this project.

The testing process consisted of assigning a set of 8 questions to each of the 4 participants. The participants answered a subset of these questions using a proxy version of the NaCTeM website on which the eRaUI widget was embeded, and another subset consisting of a proxy of the website without the widget. eRaUI recording and analysis tools were deployed on both proxy websites. The questions were divided up so that each participant answered 4 questions using the website with the widget and 4 questions on the version without the widget. Users were given a maximum of 2 minutes to complete each question, and the results and completeness of users' answers were recorded so as to allow comparison of the efficacy of embeding the eRaUI widget on the NaCTeM interface as compared to using the interface without the widget.

Upon completion of the 8 questions, participants were asked to complete a quick questionnaire asking questions as to which version of the website facilitated a better perception of user experience. The participants were then invited to give feedback by means of a brief informal spoken interview.

This intitial testing process has yielded some very useful feedback and data which can be analysised so as to best know how to go forward with the research and development of the eRaUI widget tool. Results of this analysis, which will include the recordings produced by the eRaUI analysis tools, are pending and will be disseminated in a forthcoming blog post.

Thursday 24 November 2011

WP2 Meeting - 24th Nov 2011

On the 24th November 2011 Eamonn and Farhi met to discuss work package 2 deliverables and progress. We discussed the implementation of Nearest Neighbour algorithms within eRaUI to match content to particular users based on automatic user categorisations. We also showed how text mining has been implemented in such a way that we are able to extract information from user sessions and structure the information so as to inform automatic categorisation of users. The process of extracting and structuring information is undertaken in realtime as users navigate the interface on which eRaUI has been deployed.

We also discussed testing plans for the prototype eRaUI widget. We shall be testing the widget next week.

Thursday 17 November 2011

WP2 Meeting 16th November

Farhi and Eamonn met up on the 16th November to discuss Work Package 2 deliverables and progress. First of all we discussed the proposed eRaUI logo which is currently under development. We have decided to adopt an arrow design using some elements from the London Metropolitan University logo, including the colours. This logo will be unveiled shortly once final considerations have been addressed.

The next point of discussion centred around the design and implementation of Nearest Neighbour algorithms within eRaUI. We discussed a current model which is now operational, and also considered a new model which will involve attributing a weighting to each link within a web application. These weights will then be summed wherever there is a 1 to 1 match between a user's click history and each previous existing use case. This will form the kernel of a sophisticated algorithm which should enable us to classify users most effectively.

Thursday 10 November 2011

Work Packages 1 and 2 - Meeting

Today (10th November) Farhi and Eamonn met to discuss Work Package 1 and 2 deliverables and progress. Primarily our conversation centered on the following two areas:
  • Configuration of the university server to host the NaCTeM codebase. Difficulties have been encountered in enabling PHP short tags so as to allow the current codebase to execute correctly. This problem has now been resolved and the code is running according to expectations.
  • Implementation of nearest neighbour algorithms within eRaUI in order to classify users into the correct level. Work has been done on this already, and we decided that we should store in the database a historical record of users matched to url clicks and categories. This can be used to generate a case-base which will then be used to categorise users as novice, student, expert etc.
We have also proposed a test plan for the eRaUI widget (see previous blog post) which forms a component of our WP4 deliverables.

eRaUI Testing and Prototype Evaluation Plan - Work Package 4

As part of our Work Package 4 deliverables we require a means of testing and evaluating eRaUI to try to quantify the effectiveness of the prototype which has been developed so far. Although we cannot yet gain interactive user feedback in regard to the finished software, it would be useful to test the efficacy of the current model in regard to enhancing user experience and productivity on the NaCTeM website. To this end, we propose to do the following:

1) Assemble a test group of subjects, perhaps only 4 persons for the initial test. These could be staff, students or Ph.D. students, although it would be preferable not to involve persons who have direct experience with eRaUI already.

2) Decide upon a set of three tasks which could be performed on the NaCTeM website. These would vary in complexity and could for instance involve:
  • Sending some feedback via the feedback form.
  • Looking for a paper using the text mining tools on the NaCTeM website.
  • Downloading U-Compare and learning how to use it to complete a simple text-mining task.
3) Divide the test group into two halves. One half would be asked to complete the three tasks on a NaCTeM clone website without the widget enabled, and the other would be asked to complete the task on a version of the site with the widget.

4) Using the recordings produced from the test user interaction along with times taken and verbal feedback, we could assess to what extend the eRaUI widget improves the experience of interaction with the NaCTeM website, and to what extent it improves the times taken and the correctness of results obtained using the site alone as opposed to using the widget-enabled version.

This simple method of testing should hopefully enable us to glean some insights into the initial reactions to eRaUI and will form a vital part of our Work Package 4 deliverables. Later as the software develops we can expand this testing methodology so as to incorporate a larger test group and a wider range of tasks.

Thursday 3 November 2011

Meeting 3rd November - WP1 and WP2

Farhi and Eamonn met up today (3rd November 2011) to discuss WP1 and WP2 deliverables and progress. We discussed the various softwares which might be required for extending the functionality of eRaUI. We are in need of a solution which can programatically replicate the action of a web browser as a background task so as to assist in the server-side generation of heat maps. We also discussed the need to port the current code base from its existing server to the universities own equipment. This task shall hopefully be completed within the next several days.

Wednesday 2 November 2011

eRaUI FoC Seminar - 2nd Nov 2011

On the 2nd of November we gave our first seminar demonstrating the concept and software of eRaUI for an audience of around 30 professors, students and staff from London Metropolitan University. This gave us an opportunity to gain useful feedback as to the current concept of eRaUI and to unveil some of the features we have been working on for the past weeks.

First Farhi Marir gave a slide presentation outlining the concept of eRaUI along with screenshots of the widget and administrative interface. After this we proceeded to a technical demonstration of most of the currently working aspects of eRaUI, including the analytics (recordings, heatmaps etc.) and the widget. We also included a live demonstration of eRaUI inviting members of the audience to connect to the NaCTeM website using their smartphones so as to monitor their activity. We saw a demonstration of the 'live chat' aspect of eRaUI in this way, with members of the audience sending and receiving messages via the widget.

The seminar gave us the opportunity to gauge overall interest in the project which has been on the whole overwhelmingly positive. We were also able to field some interesting questions and suggestions from members of the audience. A particularly interesting question considered the feasibility of making eRaUI accessible to users via any website. This is indeed technically feasible using a browser extension or toolbar although it raises some obvious privacy concerns because of the nature of the data collected.

There have been no weekly meetings for two weeks due to preparations for this seminar and work to complete the initial eRaUI prototype. After the seminar the eRaUI team met to discuss the feedback received during the seminar and to consider ways in which we shall progress. It has been established that we shall attempt to consolidate our WP2 goals by the introduction of Nearest Neighbour algorithms and data mining techniques to match users to the the content they require.

Wednesday 19 October 2011

Weekly Technical Meeting - WP3 - 19th October 2011

Today Sahithi and Eamonn met for one hour to discuss the progress of Work Package three of eRaUI. We discussed a number of areas related to the interface of the widget and related functionality. Firstly, we agreed that the scenario screens which are to be developed, giving details of use cases of eRaUI and associated screenshots, is to be postponed until some further development work is completed. We also agreed that in relation to testing and evaluating eRaUI, it would require at least another two to four weeks of development before we are at a stage to effectively do this.

We looked at the use of live-stream user activity monitoring which has been implemented on the eRaUI admin user interface. We discusse the possibility of displaying miniaturised user sessions within iFrames, which would be an exciting and novel way to present user activity. However we agreed that there are a number of technical limitations which would make it difficult to achieve, viz. the lack of an effective cross-browser technique to miniaturise a webpage within an iFrame (currently only IE supports this to any extent) and also the performance issues which would entail from displaying so many user sessions simultaneously.

We discussed the current weighting system used to delineate terms into categories (i.e. Novice, Student, Expert) and agreed that it is better to make this an automatically generated system - using machine-learning algorithms to automatically assign weightings to each category. We will of course have a means of manually overriding these settings - and this has been built in to the current admin interface of eRaUI.

We discussed the admin-user live communication facility and decided it would be excellent to have peer-peer chat ability enabled also. We discussed some novel ways of presenting user activity to the user. This would create the impression of a virtual community on the site.

Monday 17 October 2011

WP3 – Meeting with Sahithi Siva on 12th October 2011

On the 12th October 2011 Eamonn and Sahithi met to discuss the progress on Work Package 3. We discussed the means by which we can generate different scenarios for the use of eRaUI, viz.

  • · Highlighting and greying of page elements in relation to relevance to user level
  • · Search results displayed within the widget.
  • · Administrator intervention to guide the user remotely
  • · A combination of the above facilities

We agreed that it is important to define the visual aspects of the user interface of eRaUI. Primarily, we agree that the widget will occupy the right-hand space of any page upon which it is deployed while the existing page content (i.e. a copy of the nactem site in its current form) will reside on the left-hand side.

We also plan this week to generate scenario screens for different uses of eRaUI.


WP2 Meeting 13th October: Designing & implementing Machine learning algorithms, workflow based interface and content-based algorithms

On the 13th October 2011 Farhi Marir and Eamonn met to discuss progress regarding Work Package 2 deliverables. We began with a demonstration of the present functionality of eRaUI, including the new ontology editing tools which have been created, whereby administrators can edit terms within a dictionary (ontology) which are matched to weightings indicating their specificity to a category (i.e. novice, student, expert). We also saw a demonstration of the new ‘term highlighting and hiding’ proposed by Sahithi, whereby users are presented with the content most suited to their requirements in highlighted form, while less relevant content is greyed out.

Within the new editable ontology terms are incremented automatically according to frequency of clicking. This is a provisional system, and it has been proposed that this is made admin-changeable only. We discussed a simple provisional algorithm for determining the overall category of a term, whereby the component weightings are divided by the sum of all components to give an ‘average relevance’. Furthermore, we discussed the use of ‘dynamic categories’, whereby administrators are able to decide which types of user can be present in the system (i.e. novice, expert, student or other). This makes eRaUI into a more generic tool than it would be otherwise. We decided that for dynamically created categories, the administrator must be able to specify a sort order for these categories to appear in.

The widget is designed to attempt to determine the user’s category (i.e. level of expertise) while they are browsing. While the widget displays the predicted level and allows this to be changed, we agree that this shall be kept for informational purposes only in later prototypes.

We also saw a rudimentary demonstration of the real-time user stream, whereby the administrator can detect and examine user sessions in real-time. We agreed that we should be able to demarcate users currently using the system by user level and country, to facilitate analysis and administrator intervention if necessary.

Lastly we discussed the use of window panes, whereby we can display items of content related to search terms entered into the widget. We noted that we must create a new ontology of terms to support this mechanism. For instance, searching for ‘Seminars’ might also yield ‘workshops’ and ‘conferences’, which will be placed into their own window panes as a preview.

Wednesday 12 October 2011

Technical Meeting - WP4 – Notes for blog – Meeting with Yanguo Jing on 10th October 2011

In terms of test and evaluation, we discussed the user of PhD students, researchers in or outside of Londonmet. JISC may help to recommend people in the NaCTeM community who may want to participate in the evaluation. We also discuss the measurements need to be established and to be used to measure the effectiveness of eRaUI. A comparative evaluation study will be carried out to evaluate the usefulness of eRaUI. We discussed also the means by which eRaUI has been tailored for easy integration with any website by means of adding a single line of code. Thus we have ensured that integration is considered right from the outset of the project.

Technical Meeting - WP3 – Meeting with Sahithi Siva on 5th October 2011

On the 5th October 2011 Sahithi and Eamonn met to discuss progress so far, and consider some new ideas which we might implement within eRaUI. First of all, we saw a demonstration of the new DOM element-relative user behaviour tracking, which has been designed to greatly improve the accuracy of tracking versus the previous system which was page-relative. We viewed the action of eRaUI user behaviour tracking on the current NaCTeM feedback form, and saw how it is possible to track user keypresses.

We discussed producing some new video demonstrations of the current functionality of eRaUI including a tour of the mechansism by which data is recorded into the eRaUI central database. These shall be available on the eRaUI blog shortly.

We considered a couple of different ways to broaden the functionality of eRaUI in such a way as to make the interface upon over which it is deployed more adaptive to user needs. The first method involves manipulating the DOM of the web page currently being viewed in such a way as to change the visual precedence of items which are likely to be of more interest to the user, based upon their current interaction with the interface so far. For instance, elements which are unlikely to be of interest could be obscured completely while elements of likely interest could be made larger or highlighted. This can all be achieved dynamically via javascript manipulation of DOM elements.

The second method considered to make the interface more adaptive is to allow an element of administrator-user interaction via the widget. Administrators could be made able to view users' interactions with the interface in real-time and assist those users who might be in need of help, for instance by means of a text chat area. This is standard practice in many commercial websites already, however eRaUI tracking capability could make it far easier for administrators to become aware of the precise nature of users' difficulty in navigating or using an interface for a specific task. Mouse pointer emulation in real-time could be used to allow adminstrators to demostrate to users how to perform specific tasks.

We also discussed the use of window panes with eRaUI in order to present information which the user might be looking for in a cascading window format. The precise form this will take is yet to be established.

We have therefore decided upon four separate ways in which it would be possible to enhance the adaptability of a user interface so as to serve the needs of individual users. These are:

- suppression and highlighting of elements with the DOM of the interface web-page according to user-relevance.

- facilitation of administrator-user assistance by means of text conversation and mouse emulation

- suggestion of relevant links and autocomplete capability of the eRaUI widget search box

- A combination of all of the above approaches.

It has been established, therefore, that current development of eRaUI will focus upon the prototype implementation of the above 4 mechanisms of enhancing interface adaptability. Once completed to prototype level, we shall attempt to discover the viability and usefulness of each of these options by getting users to try them.

Technical Meeting - 6th October - WP2: Designing & implementing Machine learning algorithms, workflow based interface and content-based algorithms

We discussed the implementation of two main WP2 functionalities of eRAUI: machine learning algorithms to model the behaviour of user and content-based algorithm to support the user in his search.

First of all, we saw Eamonn demonstration of the new DOM element-relative user behaviour tracking, which has been designed to greatly improve the accuracy of tracking versus the previous system which was page-relative. We viewed the action of eRaUI user behaviour tracking on the current NaCTeM feedback form, and saw how it is possible to track user keypresses. We discussed producing some new video demonstrations of the current functionality of eRaUI including a tour of the mechanism by which data is recorded into the eRaUI central database. These shall be available on the eRaUI blog shortly. Farhi asked Eamonn to consider the implementation of ontology of terms which would be used to match commonly searched-for keywords and the anchor text of links to levels of user expertise. Since the anchor text of links clicked on within NaCTeM are recorded automatically in the back-end database, these can be stored in a dictionary which an administrator can then classify according to expertise level. This will facilitate the classification of users, for instance, into novice, expert and PhD level. During the meeting, Eamonn was able to prototype and demonstrate the workability of this feature. Farhi suggested that the user's level of expertise is not explicitly alterable from within the interface of the eRaUI widget - instead a system of internal classification - viz. that of the ontology mentioned above - shall be used instead.

We also discussed the use of window panes with eRaUI in order to present information which the user might be looking for in a cascading window format. The precise form this will take is yet to be established.

Eamonn suggested collaboration between E-research admin and individual users. We also decided that we shall give a presentation of the current functionality of eRaUI to the faculty of computing at London Metropolitan University on the 2nd November 2011. Further to this, we have got some of our MSc students involved in the project with the CPP103N Software Engineering module (Large Scale OODB Development). These students are currently working upon aspects of eRaUI from a software engineering context.

Technical Meeting - 6th October WP1: Project management & Dissemination

On the 6th October 2011 Farhi (leader of WP1 & WP2) & Eamonn met to discuss progress of WP1 progress.

• Farhi informed Eamonn that there will separate weekly WP meeting involving at least the leader of WP and the research associate. Eamonn will be reporting the minutes of each WP meeting on the Blog.

• Farhi & Eamonn will prepare the first presentation (out of three planned during the next two months) to FoC seminar on the 2nd of November to get feedback from the faculty researchers on two WP2 functionalities: implementation of some machine learning algorithms to model user behaviour and content and collaborative techniques to support the user in his/her search.

• Farhi reported that some parts of eRAUI work packages are given as a coursework to his MSc Software Engineering students taking the module CPP103N (Large Scale OODB Software Development). These students are currently working upon aspects of eRaUI from within a software engineering context.

• Farhi & Eamonn also discussed about the organisation of the first steering committee meeting and it was decided the meeting will be happening at the end of November or the beginning of December 2011. In this meeting eRaUI team will be reporting on the progress of each WP and demonstrating the first eRaUI prototype to get feedback from the steering committee.

We discussed the proposed implementation of an ontology of terms which would be used to match commonly searched for keywords and the anchor text of links to levels of user expertise. Since the anchor text of links clicked on within NaCTeM are recorded automatically in the back-end database, these can be stored in a dictionary which an administrator can then clasify according to expertise level. This will facilitate the classification of users, for instance, into novice, expert and PhD level.

We also discussed making it so that the users level of expertise is not explicitly alterable from within the interface of the eRaUI widget - instead a system of internal classification - viz. that of of the ontology mentioned above shall be used instead.

Wednesday 5 October 2011

eRaUI weekly technical meeting - Thursday 29th September

The eRaUI team met on Thursday 29th September to discuss the progress so far. We saw a demonstration of the means by which key presses can now be captured and played back using the eRaUI interaction playback tool. We also discussed the details of the revisions which have been made to the mechanisms of capture for user interactions with the web interface. Previously all user interaction captures were made relative to the document body, however this causes issues with different browsers and platforms which render elements in different positions. Much of the work this week has involved revising the mechanism of capture to work in a way which is relative to individual DOM elements. This means, among other things, altering the DOM of each document so as to give a unique ID attribute to every element which is to be rendered.

Thursday 29 September 2011

eRaUI user tracking tool - Video Demonstration

We have put together a brief video demonstration of the eRaUI tracking system. This is already promising to be a useful standalone component which would be beneficial for anyone wanting to track user behaviour on their website. The demo shows how after visiting the NaCTeM website and performing a series of actions, we are able to play back the exact behaviour of the user (which has been recorded in our remote database). Currently we are able to capture and play back the following browser events:

  • Mouse Movements
  • Mouse Clicks
  • Field Focus Events
  • Change of window.location.href
  • Precise timings of events
  • browser viewport resize
  • scroll events
  • keypress events

Wednesday 28 September 2011

Weekly Technical Meeting - 22nd September 2011

The eRaUI team met again on Thursday 22nd September for our weekly technical meeting. During the course of this meeting, we saw a demonstration of some of the current developments within eRaUI so far. This included a brief tour of the data collection, recording, playback and heatmap tools so far created. These tools already have significant useful functionality, despite being in an early alpha stage of development. Currently, the analytical component of eRaUI is able to:

1) Record a user's interaction with a web-application, including all clicks, mouse movements, key events and scroll events.

2) Identify recurring visitors across domains and determine essential analytics regarding their platform, browser and OS.

3) Play back their interaction with a web application; using a jQuery based 'replay' system.

4) Generate a heatmap indicating mouse clicks within the application - thus highlighting the areas within an application which are often visited / clicked.

We also discussed the following points:

User Identities within eRaUI - one of the difficulties with the current eRaUI proposal is the need to track individual users who may visit a website on multiple occasions. The currently proposed mechanism of cookie-based tracking makes it difficult to reliably keep track of the precise identity of users. However, it is possible, using cookies, to identify patterns of usage particular to recurring visitors in a way which is imprecise yet still meaningful. In order to address this difficulty, it is proposed that we consider a login system whereby users of eRaUI-enabled interfaces can uniquely identify themselves.

We discussed ways in which it might be possible to categorise users into levels (i.e. expert, novice etc) using ontologies. This method (essentially a dictionary of keywords corresponding to levels of use) would need to be specific to a particular field of website or web-application (i.e. research), which somewhat limits the generic applicability of eRaUI. It has been discussed that there may be more non-application-specific mechanisms by which to determine user type.

Another mechanism by which it may be possible to categorise user ability level is by monitoring users' behavioural pathways as they seek particular content items within the website. For instance, a novice user may take a long time to locate a particular tool within the NaCTeM website compared to an experienced user. By comparing the times taken to reach the same item, we can make inferences as to their experience level and categorise them accordingly. A short path to a particular item would mean an experienced user.

It has been suggested that the newly-created heatmap analytics system be made so that links within heatmaps can be followed to generate heatmaps of the pages which they link to. This will always be possible provided that data is available within these pages to generate a heatmap.

The analytics (heatmap and recording) systems are currently somewhat separate in terms of proposed functionality to the widget aspect of eRaUI. For this reason, it has been proposed that eRaUI might be implementable in an 'analytics only' form for users who may wish to benefit from the analytical data without placing a widget on their web-application.

It has also been proposed that we ensure that code is adequately commented so as to make our deliverables as redistributable and configurable as possible for end-users.

Monday 19 September 2011

Weekly Technical Meeting - 15th September 2011

On Thursday 15th September 2011 the eRaUI team (Farhi, Eamonn, Yanguo and Sahithi) met up to discuss progress so far. We discussed some of the achievements so far for September:
  • Producing a storyboard and development of the eRaUI blog. We also discussed the comments which have been made so far on the blog.
  • Jisc Usability UK meeting on the 31st of August - this proved to be very informative and gave us insights into a tool which promises to be greatly beneficial in terms of connecting developers and web application designers to persons who are knowledgeable in the field of usability. Since usability is an essential facet of eRaUI, this could prove to be a very helpful tool. The meeting also enabled us to meet other people involved in Jisc funded projects.
In the meeting we also discussed the following objectives:
  • Machine-learning algorithms - while at present the focus of eRaUI is on the mechanism of data-collection from clients upon which eRaUI is embedded, we also discussed some of the uses to which the data can be put once collected. There are a number of methods which could be used to organize this data and make it 'learnable' in such a way as to inform the functionality of an intelligent search client.
  • User Profiling - we have already implemented some basic mechanisms in eRaUI for tracking users. A challenge is to divide users up into categories such as 'Novice', 'Expert', 'Researcher'. We discussed the respective merits of making this categorisation internal as opposed to explicit (i.e. requiring user-interaction to specify the category). We also discussed the possibility of making the categorisation customisable on a per-application basis - i.e. a business web application may wish to divide users by attributes such as 'business type' - i.e.. small, medium, global, etc. While the categorisation of users is a good starting point for matching users to content, the eventual aim is to match users to the content according to more subtle analytics which will evolve as more and more users interact with the application.
  • We saw a brief demonstration of eRaUI so far - demonstrating its potential for scalable collection of user data across web applications with minimal difficulty to embed in any user interface. We also saw a working prototype of the predictive search mechanism which will aim to guide users to the content they require.
  • We discussed the possibility for categories of user to evolve as the user interacts with eRaUI.
For next week we aim to produce a working realisation of the data collection (user-profiling/behaviour) which has so far been worked upon. This will take the form of an 'analytics' style playback of user interaction with web applications upon which eRaUI has been embedded, along with click-heatmap inspired indications as to user preferences in terms of preferred content.

Saturday 17 September 2011

eRaUI prototype - challenges

eRaUI prototype - challenges

An interesting challenge which has arisen while building the prototype is the difficulty in allowing the widget to communicate via ajax with the eRaUI domain while the widget itself is embedded on a website residing on a different domain / server. Due to cross-domain restrictions, it is not normally possible to communicate within a webpage with a domain other than that from which the page originated. Fortunately, there is a workaround which involves:
  • Instead of sending a simple data POST to the eRaUI server, we dynamically create a 'script' tag embedding a request for a target .js file. The data is sent to the .js in the querystring of the url.
  • The response from the server takes the form of a javascript call to a function pre-defined within the widget code, which accepts the data and makes it available for processing. Thus we circumvent cross-domain javascript restrictions which are fortunately not applicable to embedded requests for .js scripts, even when the script resides on a different domain.
  • Cookies can be handled too by means of an embedded iFrame. The iFrame creates a request for a page on the eRaUI server to which a uniquely generated id is sent by the widget. This could in theory be used to maintain user tracking across any domain in which the widget is embedded.
Deployment of eRaUI is simple - a single javascript include allows for the above functionality, thus making eRaUI easy to deploy upon any website.

Sunday 11 September 2011

Meeting on Thursday 8th Sep

Eamonn, Farhi and Sahithi met on the 8th September to discuss the direction of the project and consolidate progress so far. We discussed the objectives for September and came up with the following:

  • Eamonn will work on the project report (see September objective no. 1)
  • Investigate the use of heat maps for user modelling.
  • User groups for evaluation of eRaUI - we have decided that each test group will contain 6 members.
  • Creation of web server account for the deployment of a website simulating the functionality of NaCTeM. This would require the availablity of PHP and MySQL.
  • Possibility for PhD research opportunities arising out of this project were also discussed.

Thursday 8 September 2011

Ideas

The following features could be integrated into eRaUI (when running in widget form) to enhance the user experience.

  • Social Networking Icons – i.e. facebook and twitter (like / tweet)
  • Print Page Icon
  • Translate
  • Contact Us
  • Bookmark
  • Feedback and bug reporting capabilities

Existing Softwares which place a widget (toolbar) within the browser window:

Mechanisms of Deployment:

  • · The most simple and feasible mechanism to deploy a browser-based widget is probably to add a javascript include (single line of code) to the section of a webpage.
  • · Another possibility is to create a Wibiya Application – allowing eRaUI to be deployed inside Wibiya.
  • · Could also feasibly be run as a Browser Extension (like the Google Toolbar) so that it could work with any website or web application.

Algorithms and methods for machine learning

Machine learning algorithms could be used to determine which features of eRaUI are being used on a website and which are redundant. Thus the application could switch features on and off according to the extent to which they are made use of. This might be particularly useful when taking into account detected User-Agent or resolving a client’s IP address to their geographic location. Machine learning algorithms could be used to determine what elements of eRaUI are best for presenting to the user.

Types of Machine Learning Algorithms:

  • · Supervised Learning – less suitable because of the need for an element of human supervision.
  • · Semi-Supervised Learning – same issues as Supervised Learning in terms of requiring an element of human supervision.
  • · Reinforcement Learning – possible
  • · Genetic Algorithms – it may be possible to allow the underlying algorithms to modify themselves in such a way as to present the most useful information to the user.

http://www.obitko.com/tutorials/genetic-algorithms/

  • · K-Nearest Neighbour algorithm – this is a possibility – although it is the most simplistic of all machine learning algorithms
  • · Cluster Analysis – although not an algorithm in itself, this could help with the process of separating user actions in such a way as to make them amenable to certain techniques.
  • · Bayesian Methods

Monday 5 September 2011

September Objectives

The objectives for August have been successfully achieved, and we are currently working on a prototype implementation of eRaUI based upon the specifications outlined in my previous blog post.

Here are the objectives and deliverables which we intent to achieve by the end of September 2011:
  1. Write a report about August achievements and activities.
  2. Investigate machine learning algorithms to carry out user modelling.
  3. Design and implement this feature of machine learning user modelling into eRaUI prototype.
  4. Organise at least 3 weekly technical meetings and one monthly meeting for evaluating the implementation of machine learning for user modelling in the eRaUI prototype.
  5. Produce an evaluation / testing plan for eRaUI machine learning module.

        Tuesday 30 August 2011

        eRaUI Implementation Outline and Storyboard

        1. Scenarios for implementing eRaUI.

        · A web application or website is in place which has many pages and resources. Users of the website typically want to search for particular items, often the same item. eRaUI can be added on top of the website in order to make it straightforward for people to locate the resource they want.

        · A web application with a poorly designed interface is causing difficulty for its users. eRaUI can be added to the website as a widget in order to make the application more navigable.

        · A new web application is required and it is unknown how users will interact with it until it is in use. The pathways which users are likely to take through the site are likely to change with time. eRaUI can be added to the homepage and other pages in embedded format to make it easier for people to navigate the site and find the resources they need.

        2. eRaUI as a widget over an existing interface – Storyboard

        Here is an example of the way in which eRaUI can be added to an existing interface as a browser widget. The interface chosen is that of the NaCTeM website, which provides access to sophisticated research tools but in a way which is not intuitive to newcomers.

        Fig 1. The current NaCTeM web interface / portal to services

        By adding a few simple files and a line of code to the web pages of the NaCTeM portal, we add eRaUI as a widget:

        Fig 2. eRaUI added to NaCTeM as a widget

        As can be seen in the screenshot above, eRaUI has been added in widget format to the existing interface. A user coming to NaCTeM will now have the option to:

        · Conduct an intelligent search (tailored to the user using machine learning algorithms) using the search box.

        · Choose a ‘go to’ suggestion.

        · Preview a ‘go to’ suggestion without leaving the current page.

        · Specify their user level – i.e. ‘novice, expert etc’ so as to improve the specificity of eRaUI to their particular needs.

        Fig 3. The user types a search term into the search box

        Searching is easy – just type a term in the search box as shown above. Suggestions are dynamically updated via ajax and commonly searched for suggestions are proposed in the box while the user types. The user may wish to hide the eRaUI search box – in which case they should click the small arrow at the top-right:

        Fig 4. eRaUI can be hidden in case it is obscuring material on the page by using the arrow at the top-right

        A user may find that the suggestions made by eRaUI are too advanced or simplistic for their needs, in which case they can choose from a serious of pre-set options to specify their user level.

        Fig 4. The user can specify their user level to tailor their experience – i.e. by selecting ‘Novice Researcher’

        eRaUI is able to provide dynamic previews of content in an adjacent pane, in order to assist in guiding the user towards the content they need. A preview can be generated by clicking the ‘eye’ icon next to a ‘go to’ link:

        Fig 5. eRaUI can generate dynamic previews of suggested content

        3. eRaUI embedded in an interface

        Some developers may wish to add eRaUI to their website or web application as an integrated part of the existing interface. This can be achieved with almost as much ease as the widget implementation. For instance, the screenshot below illustrates an embedded eRaUI on the NaCTeM homepage:

        Fig 6. eRaUI embedded on the NaCTeM homepage

        The embedded implementation allows for a more seamless experience, and gives the user more options in terms of the style and layout of eRaUI.

        Fig 7. Search and dynamic preview on an embedded eRaUI

        Thus it can be seen that there are a two principal means in which eRaUI can be implemented over an existing website interface. Adding eRaUI to a website should be very simple for webmasters, typically involving only a line or two of code and possibly the copying of some files on to the target web server. Once implemented, eRaUI makes it easier for users of a website or service to locate the material they are looking for.

        4. Proposed technical specifications for eRaUI

        · eRaUI would be able to be plugged into any web-based system or website. It would not replace the existing system's interface, but would reside on top of it. In practical terms, this would mean that eRaUI would reside as a helper widget in the corner of a broswer window. An embedded implemtation would also be available, allowing eRaUI to ingrate seamlessly with the target website.

        · eRaUI would provide a search box. Putting a query into the box would cause suggestions to be dynamically generated and displayed beneath the box.

        · eRaUI would learn from previous searches, and the behaviour of users having made searches. This learning would be reliant upon the data collected on a centralised server over time as users interact with eRaUI.

        · eRaUI would also allow the user to choose content by means of links beneath the search box. These links would by dynamically generated according to the contents of the box, the activity of the user and the user's cookie info, IP and other factors.

        · eRaUI would be receptive to conditions such as IP address (resolving to a particular country), browser http headers etc.

        · eRaUI could show previews of web content by means of cascading windows or some similar mechanism.

        · eRaUI would be based around jQuery on the client side for maximum browser acceptance. On the server side, eRaUI would employ PHP (for non-persistent requests) and Java. IFrames may play a significant role in the implementation of eRaUI.

        · eRaUI would be configurable to particular types of system, but would also work 'out of the box' for novice installers.

        · The eRaUI back end activity could be handled by a single centralised server. This could enable machine-learning across a wide variety of systems.

        5. eRaUI – ease of use and deployability

        · Generic - can work not only with NaCTeM and MapTube but with any system.

        · Practical - could be installed with minimal difficulty on top of any existing interface and improve the usability of an otherwise hard to navigate system.

        · The system can make extensive and practical use of machine-learning algorithms.


        Project Plan - Work Plan, JISC Slides and Storyboard

        The following documents help to define the eRaUI project. They are the Work Plan, Project Storyboard and PowerPoint slides illustrating the aims and objectives of eRaUI, which will be presented at tomorrow's JISC meeting.





        Saturday 27 August 2011

        eRaUI Meeting - Eamonn, Sahithi and Yanguo

        On Friday the 25th Aug Eamonn, Sahthi and Yanguo met up to discuss the initial prototype for the eRaUI research tool. The meeting was productive and we discussed the following points:

        • The forthcoming JISC meeting on the 31st Aug, and the materials, format of presentation which needs to be prepared.
        • Reflections upon the current prototype of the eRaUI tool, and areas in which we might need to revise the prototype.
        • The interoperability of NaCTeM and other research tools with the current eRaUI prototype.
        • Recent new ideas for an implementation / architecture for the eRaUI tool.
        The meeting was primarily an introductory chat and it was excellent to get everyone's point of view regarding the project. We three agreed loosely that the implementation ideas outlined in my previous blog post might be a good starting place for planning the development of the tool.


        Thursday 25 August 2011

        Thoughts on eRaUI

        After some consideration I have come up with a possible architecture for the eRaUI tool, which I think might be a strong candidate for fulfilling the aims of the proposal. It would also allow us to create an open-source tool of significant practical value. I shall summarise the system by means of bullet points:
        • eRaUI would be able to be plugged into any web-based system or website. It would not replace the existing system's interface, but would reside on top of it. In practical terms, this would probably mean that eRaUI would reside as a helper widget in the corner of a brower window, rather like the Google Translation widget and other similar tools.
        • eRaUI would firstly provide a search box, rather similar to Google's site search. Putting a query into the box would cause suggestions to be dynamically generated and displayed beneath the box. Submitting the contents of box could conceivably bring up a larger window for in detail search.
        • eRaUI would learn from previous searches, and the behaviour of users having made searches.
        • eRaUI would also allow the user to choose content by means of links beneath the search box. These links would by dynamically generated according to the contents of the box, the activity of the user and the user's cookie info, IP and other factors.
        • eRaUI would be receptive to conditions such as IP address (resolving to a particular country), browser http headers etc.
        • eRaUI could show previews of web content by means of cascading windows or some similar mechanism.
        • eRaUI would be based around jQuery on the client side for maximum browser acceptance. On the server side, eRaUI would employ PHP (for non-persistent requests) and Java.
        • eRaUI would be configurable to particular types of system, but would also work 'out of the box' for novice installers.
        • eRaUI back end activity could be handled by a single centralised server. This could enable machine-learning across a wide variety of systems.
        If implemented would have the following positive aspects:
        1. Generic - can work not only with NaCTeM and MapTube but with any system.
        2. Practical - could be installed with minimal difficulty on top of any existing interface and improve the usability of an otherwise hard to navigate system.
        3. The system can make extensive and practical use of machine-learning algorithms.
        Please let me know your thoughts!

        Wednesday 17 August 2011

        eRaUI Project Chart - First Draft

        Here is the first draft of the project plan for eRaUI. This Gantt chart indicates the expected start and completion dates for the various deliverables which make up this project.





        Monday 8 August 2011

        Meeting with eRaUI Developer

        Hi,

        Eamonn and myself met today for around 3hours to discuss and kick off eRaUI JISC project.In this meeting we went through the bid document and discussed and shared the understanding of the aim and each of the objectives of the eRaUI project.

        We also set some tasks and deliverables for August 2011:
        1. Eamonn will develop in a week a detailed Gnatt chart for each of the workpackages updating the dates from within August 2011 till March 2011 (One week).
        2. Sart developing the project plan according to JISC project plan guide and also Ben's e-mail for the blog (one Months)
        3. Introduce Eamonn to NaCTeM team so they can discuss ways of collabarating with them and also discuss the possibilities of how to integrate eRaUI and NaCTeM. Eamonn may travel to NaCTeM team in Manchester if that is required.
        4. Start prototyping eRaUI interface reflecting the different objectives of the project and also accessing related research papers on machine learning and content based retrieval and also browse through open source codes such as Taverna, Kartoo, etc...

        Regards,

        Farhi

        eRaUI Project Development

        As from the 1st August I have been hired to work on the eRaUI project, and am looking forward to getting underway with this exciting new project!

        First tasks will be to familiarise myself with the project, the documentation and so forth. The next priority will be to concentrate on some components of Work Package 1, such as the project plan in the first month, and also develop use-cases for eRaUI, so that we can find ways in which we can maximise the usefulness of the project.

        If you have questions regarding the eRaUI project, please feel free to contact me.

        Eamonn

        Friday 10 June 2011

        Welcome to our JISC eRaUI blog Farhi

        Programme meeting

        Sahithi and Yanguo attended the project programme meeting on 1 June 2011 in London. Good to see a number of interesting projects in the same programme call.