project with header spring 2015

111
MSc Project Portfolio Spring 2015 For all 2014/2015 MSc cohorts except January 2015 Network Security (INS)

Upload: pavan-sandeep-v-v

Post on 27-Jan-2016

230 views

Category:

Documents


0 download

DESCRIPTION

projetcs

TRANSCRIPT

Page 1: Project With Header Spring 2015

MSc Project Portfolio Spring 2015

For all 2014/2015 MSc cohorts except

January 2015 Network Security (INS)

Page 2: Project With Header Spring 2015

i

Instructions for completing the Project Choice Form

1. If you have an agreed project and supervisor, then you do not need to submit a project choice form. Otherwise:

2. Please choose FIVE projects.

3. Do not choose more than TWO projects from any one member of staff.

4. Please return your completed form to the labelled

coursework box by Monday May 11th, 2015.

5. See the notes overleaf for further explanation.

Page 3: Project With Header Spring 2015

ii

Notes

1. Many projects are available to all students. However, some projects are labelled as (e.g.):

Suitable for: INS students only Suitable for: Oil & Gas students only Suitable for: Students who started in Jan 2016 only (because of staff availability).

Therefore, you should only choose a project with a “Suitable for” restriction if you’re studying on the specified course(s).

2. For each project you choose, please enter the full title, the name of the

proposer (if given) and the page number within the portfolio where the project appears. Some projects have very similar titles, and providing these details will ensure that I interpret your requests correctly.

3. Please do not choose more than two projects proposed by any one member

of staff.

If a project doesn’t specify a supervisor name, then this restriction does not apply.

4. Before submitting your choices, you are advised to contact the proposer(s)

of the projects you are interested in where possible, to find out in more detail what the project will involve. However, you should note that the project proposer will not necessarily be the eventual supervisor, since we must ensure that the supervisory load is fairly distributed between staff.

5. Submitting an incomplete form is NOT a good way of ensuring you get the

project you want. Students who submit fewer than five choices will be treated with lowest priority whenever there is a conflict (i.e., whenever two or more students want the same project).

Page 4: Project With Header Spring 2015

iii

MSc Project Choice Form

Name:

Matric. Num. Course

1st Title

Proposer Page

2nd Title

Proposer Page

3rd Title

Proposer Page

4th Title

Proposer Page

5th Title

Proposer Page

Page 5: Project With Header Spring 2015

1  

Hatem Ahriz 

 Robert Gordon University,  School of Computing Science and Digital Media 

 Project Specification  

 

Title  Ad‐blocking software and SSL compromises 

Supervisor  Dr. Hatem Ahriz, [email protected] 

Suitable for  INS Students ONLY 

 Key Techniques Computer and Network Security  Background  Ad‐blocking software (e.g., PrivDog [1]) has recently been in the news (e.g., [2]) after some researchers identified that it can pose a threat to the SSL (Secure Socket Layer) protocol. Other research has also shown that a growing list of software, including anti‐malware and parental control software, can also compromise SSL security. The aim of the project is to investigate some of these software products and the claim they could compromise SSL protocol security.   Objectives 

To investigate the SSL protocol and its vulnerabilities (e.g., man‐in‐the‐middle attacks) 

To investigate Ad‐blocking and anti‐malware software and their interaction with SSL   

To design/implement/test/evaluate an experimental setup to demonstrate SSL compromises by such software 

 References [1]  http://www.privdog.com/ [2]  https://blog.hboeck.de/archives/865‐Software‐Privdog‐worse‐than‐Superfish.html    

Page 6: Project With Header Spring 2015

2  

Hatem Ahriz 

  Robert Gordon University,  School of Computing Science and Digital Media 

 Project Specification  

 

Title  Botnet Analysis and Detection 

Supervisor  Dr. Hatem Ahriz, [email protected]  

Suitable for  INS students ONLY 

 Key Techniques Computer and Network Security, Programming  Background  Botnets are one of the most sophisticated and popular types of cybercrime today. They allow hackers to take control of many computers at a time, and turn them into “zombie” computers to spread viruses, generate spam, etc. [1]  The aim of the project is to investigate botnets and develop an application/environment that can simulate a botnet behavior and detect its presence.   Depending on the student’s programming skills, this project could either involve developing an application (in a language of the student’s choice) that can simulate a bot’s behavior and interface with an Intrusion Detection System (IDS) such as snort [2] in order to simulate the detection of the bot’s activity. Alternatively, the project can focus mainly on setting up the virtual environment for running an actual bot and evaluating the efficiency and effectiveness of the IDS in detecting the bot’s activity.   Objectives * To investigate the different types of botnets, methods of infection and detection methods…  * To design/implement (or setup)/test/evaluate an experimental setup to demonstrate the use 

of the application in simulating bot activity and its detection.  References [1]  http://uk.norton.com/botnet [2]  https://www.snort.org/     

Page 7: Project With Header Spring 2015

3  

Hatem Ahriz 

Robert Gordon University,  School of Computing Science and Digital Media 

 Project Specification  

 

Title  HoneyPots 

Supervisor  Dr. Hatem Ahriz, [email protected]  

Suitable for   INS students ONLY 

 Key Techniques Computer and Network Security  Background  In computer terminology, a honeypot is a trap set to detect, deflect, or, in some manner, counteract attempts at unauthorized use of information systems. [1]  The aim of the project is to investigate the use of honeypots to secure information systems and networks.    Objectives * To  investigate the different types of honeypots, how they are deployed, why they are used, and how effective they are…  * To  investigate  the  legal  and  ethical  issues  around  deploying  honeypots  (using  the  UK context, for example), and to design a check list for organisations considering the use of honeypots * To  design/implement/test/evaluate  an  experimental  setup  to  demonstrate  the  use  of 

honeypots  References  [1] http://en.wikipedia.org/wiki/Honeypot_(computing)     

Page 8: Project With Header Spring 2015

4  

Hatem Ahriz 

Robert Gordon University,  School of Computing Science and Digital Media 

 Project Specification  

 

Title  Evaluation of Intrusion Detection Systems (IDS) 

Supervisor  Dr. Hatem Ahriz, [email protected] 

Suitable for  INS students ONLY 

 Key Techniques Computer and Network Security  Background  Intrusion detection is the process of monitoring the events occurring in a computer system or network and analyzing them for signs of possible incidents. [1]  The aim of the project is to design a framework for evaluating IDS and conducting such an evaluation on selected IDPS.   Objectives * To  investigate the various types of IDS, how they are used  in organisations, and the types of threats they can defend against…  * To identify the metrics that can be used in the evaluation of IDS * To  investigate  the  tools  that can be used  to generate background and attack  traffic  for  IDS 

evaluation * To  design/implement/test/evaluate  an  experimental  setup  for  IDS  evaluation  for  a  chosen 

type of attack.  References [1]  K. Scarfone, P. Mell, Guide to Intrusion Detection and Prevention Systems (IDPS), National Institute of Standards and Technology (NIST), 2007.    

Page 9: Project With Header Spring 2015

5  

Hatem Ahriz 

 Robert Gordon University,  School of Computing Science and Digital Media 

 Project Specification  

 

Title  Web Application Firewalls (WAF) 

Supervisor  Dr. Hatem Ahriz, [email protected]  

Suitable for  INS students ONLY 

 Key Techniques Computer and Network Security, Web Technologies (HTTP…)  Background  A Web application firewall (WAF) is an appliance, server plugin, or filter that applies a set of rules to an HTTP conversation [1].   The aim of the project is to investigate Web Application Firewalls (WAF) and evaluate the effectiveness of selected WAFs in preventing common attacks such as XSS (cross‐site scripting) and SQL injection.   Objectives * To investigate common web application attacks  * To analyse the functionality, benefits and limitations of WAFs * To  design/implement/test/evaluate  an  experimental  setup  to  demonstrate  the  security 

features of WAFs  References [1]   https://www.owasp.org/index.php/Web_Application_Firewall    

Page 10: Project With Header Spring 2015

6  

Hatem Ahriz 

  Robert Gordon University,  School of Computing Science and Digital Media 

 Project Specification  

 

Title  Migration to IPv6 

Supervisor  ??? 

Suitable for  INS students ONLY 

 Key Techniques Computer Network Protocols, Security  Background Organisations are considering what needs to be done in migrating from IPv4 to IPv6. One area of particular interest is security. According to an InformationWeek Analytics report on IPv6 security: “There are black hats out there who see IPv6 as a once‐in‐a‐lifetime opportunity.” [1]  The aim of the project is to investigate the threats to IPv6 traffic and propose a roadmap for a secure, and cost‐effective, transition from IPv4 to IPv6.   Objectives * To  investigate how organisations and vendors are planning for  IPv6 migration and to survey the key issues that are at stake in this migration  * To analyse the effect on network security of such migration * To  design/implement/test/evaluate  an  experimental  setup  to  demonstrate  how  such  a 

migration can take place  References  [1]  http://stuff.is‐a‐geek.net/OnlineDocs/Pending/ipv6‐security.pdf   Note:  This project was obtained by Hatem Ahriz, but will NOT be supervised by him.      

Page 11: Project With Header Spring 2015

7  

Inés Arana 

 

MSc Project Proposal

Project Title : A demonstrator for data analysis and visualisation using Tibco

Spotfire.

Supervisor:.Ines Arana, [email protected], Tel: 01224262716

Key Words: Data visualisation, data analysis.

Background

Companies currently collect substantial amounts of raw data. Data often needs to be cleaned up, summarised and analysed before it can be visualised and interpreted, and finally used in business decision-making. Tibco Spotfire is a sophisticated tool for data visualisation and analysis which is widely used in industry. Aims This project aims to produce a demonstrator of the various stages of data processing to aid in business decision making using Tibco Spotfire. Objectives

1. To investigate existing work and tools used in data analysis and visualisation. 2. To select a number of datasets for the project in a domain of interest to the student. 3. To become proficient in the use of the Spotfire data visualisation and analysis tool. 4. To analyse, design, implement, test and evaluate a demonstrator for data visualisation and analysis

using Spotfire. Required Skills

1. Strong programming skills. 2. Basic understanding of statistics.

Bibliography

E. Tufte, The Visual Display of Quantitative Information, 2nd Ed., Graphics Press LLC, 2001

E Tufte Visual Explanations, Graphics Press LLC, 1997

Tools for data analysis and visualisation

1. TIBCO Spotfire http://spotfire.tibco.com/ [ accessed 29/8/2014]  

 

 

 

 

 

 

 

   

Page 12: Project With Header Spring 2015

8  

Inés Arana 

 

SchoolofComputingThe Robert Gordon University 

 

Project Specification  

 

Title  A geoscience tutor 

Proposer  Dr Inés Arana – Room N432e, Riverside East, [email protected] 

Suitable for  Oil & Gas students ONLY 

 

Key Techniques Web‐Based Systems, tutoring systems. 

BackgroundGeoscience is a key topic in the Oil and Gas industry.  

Aim 

To develop an educational site to enable people to learn about about geoscience. 

 

Objectives 

- To learn about tutoring systems, with particular focus on geoscience tutoring systems - To design a suitable web‐based system (including a user interface) to teach users about a 

selected area of geoscience. - To implement the system - To test and evaluate the system - To document the system. 

 

References 

1. ULLMAN, L.,2010 Effortless E−Commerce with PHP and MySQL. New Riders. 2. World Wide Web Consortium, Web Design and Applications, http://www.w3.org/standards/webdesign/  , 

accessed 24/4/2015 

3. MySQL, www.mysql.com , accessed 24/4/2014  

 

 

 

Page 13: Project With Header Spring 2015

9  

Inés Arana 

Title An OilSim support tool Proposer Inés Arana – Room N432e Riverside East, [email protected] Suitable for Oil & Gas students ONLY Key Techniques Key techniques may vary depending on what support tool is developed but will include GUI techniques. Background OilSim by NeXT is a software tool aimed at teaching users about all aspects of the Oil and Gas Industry, from initial exploration through to decommissioning. The tool simulates the real process taken in the industry and includes the following stages: geology study, prospecting, exploration and drilling, depletion plan, facilities plan, construction, production and decommissions. OilSim is available via a web browser and includes a wide variety of information sources such as interactive maps, geological surveys, simulated drilling, etc. Thus, the user will explore vast amounts of information and may require a software tool to keep track of the data and assist with decision-making. Aims To develop a suite of software tools to help the user keep track and make decisions related to an OilSim simulation. Objectives To analyse OilSim To investigate tools and techniques which can be used in order to produce a set of

tools to keep track of data and make decisions in an OilSim simulation To design, implement, test and evaluate a set of tools to help with an OilSim simulation To document the implemented system Note: the tools developed will be independent from the OilSim software, i.e., the tool will not be added to OilSim (accessed via a web browser) but simply launched at the same time on the local machine. References [1] OilSim Software page http://www.nexttraining.net/immersive-learning-

programs/OilSim.aspx [accessed 24/04/2015]

Page 14: Project With Header Spring 2015

10  

Robin Boswell 

 

Title A program to play Mancala games

Proposer Robin Boswell ([email protected])

Keywords

Game-playing, minimax search.

Background

The name “Mancala” denotes a class of games where beans or other small objects are moved (“sown”) around an array of holes [Parlett 1999]. The object of the game is to capture beans and remove them from the board. Figure 1 shows a Sengalese hand-made board with a game in progress.

Aim The aim of the project is to create a program that would allow the computer to play games of the mancala family in an intelligent fashion against a human opponent. The AI technique of minimax search [Nilsson 1998] is applicable to 2-player games of this type. Issues

The mancala family includes a wide range of games. This project does not aim to create a program which can play all of them, but it should allow the user some choice in the form of the game he or she wishes to play. A more sophisticated approach might include an interface which allows the user to define a variety of existing or new forms of the game by choosing appropriate parameter values.

Part of the pleasure of playing the game derives from the physical experience of holding

and sowing the seeds. This would necessarily be lost in a computer application; however some thought needs to be given to the design and implementation of an attractive graphical interface, which might include animation or sound.

Figure 1: A Senegalese Mancala board  [ALDEN et al  2012]

Page 15: Project With Header Spring 2015

11  

Robin Boswell 

References ALDEN et al 2012. Mancala board. In: BoardGameGeek. Available from http://boardgamegeek.com/image/1069131/mancala [ Accessed April 19th, 2012] NILSSON, N. 1998. Artificial Intelligence: A new synthesis. Morgan Kaufmann. San Francisco, CA. PARLETT, D., 1999. The Oxford History of Board Games. Oxford University Press, Oxford.    

Page 16: Project With Header Spring 2015

12  

Robin Boswell 

Title Information retrieval from a music database

Proposer Robin Boswell ([email protected])

Keywords

Information retrieval, music

Background

There are various ways in which music can be represented in paper or electronic formats.

Conventional staff notation is human readable, but not convenient for searching or editing

without the use of specialised application software. Alternative notations have therefore

been developed which aim to provide the convenience of a purely text-based representation

while being understandable to someone familiar with conventional notation. The most

well-known is probably sol-fa. Another is the ABC notation [Walshaw 2006]. A number

of tune databases in ABC notation are available on the internet: Walshaw (2006) provides

an index of over 3000 publicly available ABC databases.

It is generally straightforward to search an on-line music collection for a tune whose name

is known. What is much harder is to search for the tune itself; that is, for a given sequence

of notes .There are a number of difficulties associated with music retrieval. The most

fundamental is that most people do not have perfect pitch, so that even if someone can

remember a tune, she probably won’t remember the pitch at which she heard it. Hence, to

be of any use, a retrieval tool must be able to match a query in one key with a target tune in

a different key.

A second difficulty is inaccuracy of recall. People trying to recall tunes from memory may

do so inaccurately, making mistakes in both pitch and time, and omitting or adding notes.

Secondly, folk tunes in particular may exist in many slightly different forms, so there is no

one “correct” version. A retrieval system should therefore incorporate some form of fuzzy

matching. Ideally, this fuzzy matching should take account of the ways in which human

memory and recall tend to mutate tunes.

The existence of on-line databases and the desirability of a mechanism for identifying tunes

motivates this project, whose goal is to build a music retrieval system.

Page 17: Project With Header Spring 2015

13  

Robin Boswell 

Objectives

To investigate on-line music databases, and the representation schemes they use.

To investigate techniques for storing and retrieving tunes.

To design and implement a music retrieval tool which will use retrieve tunes from a

database given a query provided by the user.

There are a several features which would make the tool more useful.

The ability to tune the fuzzy matching algorithm, e.g., by specifying how “close”

retrieved tunes must be to the query.

The ability to order results according to their similarity with the query

The facility for the user to enter a query in different ways, e.g., in one of the various

available forms of textual notation, or via a virtual keyboard, …

The detailed specification for the tool will be developed by the student during the

investigation phase of the project, in discussion with the supervisor.

References BARLOW, H. and MORGENSTGERN, S., 1949. Dictionary of musical themes. London: Ernest Benn NELSON, L., 2010. Contemplations from the Marianas Trench/Folk Music of Britain, Ireland & America.[online]. Available from http://www.contemplator.com/ [Accessed 14th April 2010] WALSAW, C., 2006. The abc home page. [online]. London: University of Greenwich. Available from: http://abcnotation.org.uk/ [Accessed 12 December 2012]

Page 18: Project With Header Spring 2015

14  

Robin Boswell 

Title Project assignment tool using network flow optimisation

Proposer Robin Boswell ([email protected])

Keywords

Optimisation problems, minimum cost network flow, task allocation

Background

Every year, between 100 and 150 honours and MSc students have to undertake an

individual project. Since no two students are allowed to work on the same project, each

student is asked to submit a list of project choices, after which the project co-ordinator will

assign projects to students with the aim of satisfying as many students as possible. This is

a complex task for a human, but the underlying problem is to which a variety of

computational techniques are applicable. Project assignment is therefore a domain in

which it would be both feasible and useful for a student to develop an automated tool to

assist the project co-ordinator.

Technology

One technology that is particularly suitable for modelling the project assignment problem is

that of network flow optimisation, specifically the minimum cost flow problem. A network

can be constructed to represent the project assignment task, where nodes represent students

and projects, and arcs link students to their chosen projects. Arcs to projects further down a

student’s list of choices will be assigned increasingly high costs. Additional arcs can be

used to represent staff quotas. An optimal flow through this network will correspond to an

optimal assignment of projects to students.

The chief advantage of representing project assignment as a minimum cost flow problem is

that efficient algorithms exist for solving this problem (Lawrence and Pasternack 2002) and

software is freely available which implements these algorithms (Eikland and Notebaert

2010).

Objectives

Since software for network flow optimisation already exists, the student will not need to

implement any optimisation algorithms. Instead, he or she will create a project assignment

tool that performs the following steps:

Page 19: Project With Header Spring 2015

15  

Robin Boswell 

o Input all the data related to projects, staff and students.

o Generate the corresponding network.

o Run the optimisation software.

o Interpret the results.

o Display the corresponding project assignments.

The minimum requirement for such a tool is that it should be able to read a file containing a

list of student choices and generate a set of project assignments. There are a number of

other features which would make the tool more useful.

A further constraint on project assignment is the need to balance staff supervision

loads. The tool should be able to take staff loads into account in some way, e.g., by

imposing a limit on the number of students each member of staff is asked to

supervise.

There is a trade-off between giving as many students as possible a project occurring

anywhere in their list, and giving students projects near the top of their list. Is it

better to give four students their first choice and a fifth student none of his chosen

projects, so that he has to choose again, or to give all five students their last choice?

The tool should allow the user to adjust assignment costs to reflect different

policies.

The user may wish to assign certain projects by hand, or to prevent certain

assignments. The tool should allow this option if required.

Note that the above points are only suggestions. A detailed specification would be

developed by the student during the research phase of the project, in discussion with the

supervisor.

Finally, prospective students should note that, although the project assignment problem can

be simply stated, creating a tool to solve it for a realistic number of students and projects is

a non-trivial task. If you choose this project, you will be expected to use the proposed

technology. Past experience shows that students who ignore existing work and devise their

own algorithms from scratch are extremely unlikely to be successful.

Page 20: Project With Header Spring 2015

16  

Robin Boswell 

References LAWRENCE, A.J. and PASTERNACK, B. A., 2002. Applied management science. Hoboken, NJ: John Wiley & Sons, Inc. EIKLAND, K. and NOTEBAERT, P. , 2010. Lpsolve., [online]. Sourceforge. Available from: http://sourceforge.net/projects/lpsolve/files/lpsolve/ [Accessed 18 December 2013].  

 

 

 

 

Page 21: Project With Header Spring 2015

17  

Michael Crabb 

A User-Based Research Experiment System

Dr Michael Crabb

In user based research it is important to have consistency between experimental sessions. One method that can be used to aid in this is to rely on software to guide participants and facilitators through a session. Aspects such as obtaining informed consent from participants, gathering demographic information, and the order in which experiment tasks are carried out are all important when conducting these types of experiments. Within experimental sessions, a common technique used to gather information is through questionnaires. These can be used obtain information to compare between different systems. The data collected in these questionnaires needs to accurate, correct, and consistent between participants

The purpose of this project is to create a system that will be used in future research experiments. This system must be able to:

Obtain informed consent from participants (text for this will be provided) Gather demographic information from participants Gather information from quantitative questionnaires from participants. Provide a guide for participants/facilitators as to the tasks that are being accomplished Export all data into a suitable format (e.g. .csv) once an experiment is completed.

In terms of the front and backend web programming languages that will be used, this can be decided upon by the student. The end result, however, must be cross-browser compatible, not require any additional plug-ins (i.e. Java) and should be easy for a non-computer expert to use. Data collected in the system should be easily exported into a .csv file (or similar).

For further information on this project please contact Dr Michael Crabb ([email protected])

 

 

 

 

 

 

 

 

 

 

 

 

 

   

Page 22: Project With Header Spring 2015

18  

Michael Crabb 

 

Boggle

Dr Michael Crabb

Boggle is a word game that is played using 16 lettered dice that are arranged in a 4x4 grid. The purpose of the game is to create words by using the letters in the grid. Only adjoining letters can create words. The figure below shows some sample words that are acceptable.

Each of the 16 lettered dice have pre-determined letters. The letter that appears, and the order in which they appear on the board changes in every game. This means that every game is different.

The purpose of this project is to create a web based version of this game. An outline of possible steps is detailed below:

Basic

1. Each of the 16 dice has specific letters attached to them

2. A random letter from each die needs to be selected for each ‘game’

3. The letters need to then be placed in a random pattern using 4x4 grid

4. A timer should be implemented so that each game lasts a certain amount of time

Advanced

1. Players should be able to enter words and have these verified in real time by the computer

2. The computer should keep track of the players score

3. At the end of the game, the computer will be able to determine all possible words that were available (using a dictionary) on a given board

In terms of the front and backend web programming languages that will be used, this can be decided upon by the student. The end result, however, must be cross-browser compatible, not require any additional plug-ins (i.e. Java) and should be easy for a non-computer expert to use.

For further information on this project please contact Dr Michael Crabb ([email protected])

   

Page 23: Project With Header Spring 2015

19  

Michael Crabb 

 

Creating A Website from Wikipedia

Dr Michael Crabb

Wikipedia is an online encyclopedia that contains articles that are created and edited by its members. Articles vary in length and the increasing length can pose a problem to some users. The purpose of this project is to create a system that takes a Wikipedia entry and then generates a fully functional website from this.

Wikipedia pages can be exported in an XML format in order to be used for other reasons. An example XML output from Wikipedia can be found here:

http://en.wikipedia.org/wiki/Special:Export/Robert_Gordon_University

The XML file will need to be parsed, interpreted, and then a website created from the results. The website should have separate pages based on the different sections and subsections of a given Wikipedia page. Images should also be copied across. In order to complete this project, students will need to acquire an understanding of the MediaWiki language, develop their front and back end web programming skills, and have excellent project management.

In terms of the front and backend web programming languages that will be used, this can be decided upon by the student. The end result, however, must be cross-browser compatible, not require any additional plug-ins (i.e. Java) and should be easy for a non-computer expert to use.

There are many possibilities to extend this project, and these will depend on the areas of interest shown by the student. Possibilities include:

Creating browser plugins to generate these ‘meta-websites’ when they are requested by users browsing Wikipedia

Examine the linking of multiple website together to create an even larger network of articles Creating accessibility and usability adaptions to the finished website to make it more suitable for users

with different abilities and needs.

For further information on this project please contact Dr Michael Crabb ([email protected])

 

   

Page 24: Project With Header Spring 2015

20  

Michael Crabb 

Visualisation of European Energy Data

Dr Michael Crabb

Suitable for Oil & Gas students ONLY

Open access data sets are available online containing energy statistics for the European Union. A particularly good source for this data can be found at ec.europa.eu/eurostat/data/database Examples of data that is available here include:

Prices of natural gas and electricity by country Oil stock levels Energy imports and exports Energy Infrastructure

Data is freely available to download in a number of formats (xls, csv…) and lends itself to a variety of data visualisation tasks. The purpose of this project is to create an interactive visualisation of this data. During this project, students will be expected to:

Examine datasets available and select suitable sources for creating a visualisation Use suitable APIs that combine different online sources together (Google maps etc.) Present the final visualisations in a meaningful way that is easy to understand

In terms of the front and backend web programming languages that will be used, this can be decided upon by the student. The end result, however, must be cross-browser compatible, not require any additional plug-ins (i.e. Java) and should be easy for a non computer expert to use.

Note - the brief for this project is intentionally left very wide to give students the chance to examine datasets before deciding what to create. The purpose, therefore, is find interesting ways to visualise large amounts of data and to present this in a method that is easily interpretable.

For further information on this project please contact Dr Michael Crabb ([email protected]

 

 

 

 

Page 25: Project With Header Spring 2015

21  

David Davidson 

ProjectProposal

ASSETMANAGEMENTSYSTEMUSINGANDROIDMOBILEANDCAMERAASFRONT‐ENDQRCODEREADER

AIMTo design and implement an asset tracking system based on the use of an Android mobile phone and 

built‐in Camera as front‐end QR code reader. 

BACKGROUNDThis project will involve the use of an Android mobile phone and built‐in Camera which will be 

programmed to act as remote QR code reader. QR codes could be used to label School assets 

(although other application areas could be investigated e.g. student attendance monitoring). The 

Android mobile would connect via Wifi to a server with access to a central asset database for 

reading / updating information about individual assets.   

The Android mobile will be programmed in Java using Android Studio as the integrated development 

environment. 

PROJECTGOALSThe goals of the project are: 

1. Learn to program an Android mobile using Android Studio 

2. Identify a suitable library for QR decoding 

3. Develop software to enable decoding of QR codes and remote updating of asset history via Wifi. 

PREREQUISITES 

The student will require to learn Java programming for Android. 

REFERENCES 

http://developer.android.com/index.html 

for more information on Android software development. 

https://github.com/zxing/zxing  

for more information on a possible choice of QR code reading library 

 

D.G.Davidson 16/4/2015 

   

Page 26: Project With Header Spring 2015

22  

David Davidson 

ProjectProposal

ASSETMANAGEMENTSYSTEMUSINGRASPBERRYPIANDCAMERAASFRONT‐ENDQRCODEREADER

AIMTo design and implement an asset tracking system based on the use of the Raspberry Pi and Camera 

as front‐end QR code reader. 

BACKGROUNDThis project will involve the use of the Raspberry Pi and Camera which will be programmed to act as 

remote QR code reader. QR codes could be used to label School assets (although other application 

areas could be investigated e.g. student attendance monitoring). The Raspberry Pi would connect via 

Wifi to a server with access to a central asset database for reading / updating information about 

individual assets.   

The Raspberry Pi will be programmed in Python using a PC for remote development. 

PROJECTGOALSThe goals of the project are: 

4. Learn to program the Raspberry Pi and interfaces in Python 

5. Identify a suitable library for QR decoding 

6. Develop software to enable decoding of QR codes and remote updating of asset history via Wifi. 

PREREQUISITES 

The student will require to learn Python. 

REFERENCES 

http://www.raspberrypi.org/ 

for more information on the Raspberry Pi and its General Purpose IO interface. 

https://pypi.python.org/pypi/zbar 

for more information on a possible choice of bar code reading library 

 

D.G.Davidson 16/4/2015 

   

Page 27: Project With Header Spring 2015

23  

David Davidson 

ProjectProposal

ASSETMANAGEMENTSYSTEMUSINGRASPBERRYPIANDRFIDREADER

AIMTo design and implement an asset tracking system based on the use of the Raspberry Pi and RFID 

reader. 

BACKGROUNDThis project will involve the use of the Raspberry Pi and RFID reader. RFID tags could be used to label 

School assets (although other application areas could be investigated e.g. student attendance 

monitoring). The Raspberry Pi would connect via Wifi to a server with access to a central asset 

database for reading / updating information about individual assets.   

The Raspberry Pi will be programmed in Python using a PC for remote development. 

PROJECTGOALSThe goals of the project are: 

1. Learn to program the Raspberry Pi and interfaces in Python 

2. Identify a suitable RFID reader and Python library for controlling the RFID reader 

3. Develop software to enable reading of RFID tag data and remote updating of asset history via 

Wifi. 

PREREQUISITES 

The student will require to learn Python. 

REFERENCES 

http://www.raspberrypi.org/ 

for more information on the Raspberry Pi and its General Purpose IO interface. 

http://www.adafruit.com/products/364 

for more information on a potential choice of RFID/NFC reader 

 

D.G.Davidson 16/4/2015 

   

Page 28: Project With Header Spring 2015

24  

David Davidson 

ProjectProposal

DATALOGGINGSYSTEMUSINGRASPBERRYPIANDIOT(MQTT)PROTOCOLWITHWEBINTERFACE

AIMTo design and implement a distributed data logging system based on the use of a Raspberry for data 

acquisition, data transmission and data collection using an "Internet of Things" protocol MQTT. 

BACKGROUNDThis project will involve the creation of a distributed system comprising: 

Raspberry Pi hosting  a MQTT server  and web server 

Raspberry Pi collecting data and acting as MQTT client sending data to the MQTT server 

The Raspberry Pi's will be programmed in Python using a PC for remote development. 

PROJECTGOALSThe goals of the project are: 

1. Learn to program the Raspberry Pi and interfaces in Python 

2. Become familiar with IOT protocol MQTT. 

3. Develop an administrative web interface. 

PREREQUISITES 

The student will require to learn Python. 

REFERENCES 

http://www.raspberrypi.org/ 

for more information on the Raspberry Pi and its General Purpose IO interface. 

http://mqtt.org/ 

for more information on MQTT 

http://flask.pocoo.org/ 

for more information on a python web micro‐framework 

 

D.G.Davidson 16/4/2015 

   

Page 29: Project With Header Spring 2015

25  

David Davidson 

ProjectProposal

SECUREENTRYSYSTEMCONTROLLEDBYRASPBERRYPIANDNFCCARDREADER

AIMTo design and implement a secured entry control system based on the use of a Raspberry Pi and NFC 

card reader. 

BACKGROUNDThis project will involve the use of the Raspberry Pi and NFC Card Reader which will be programmed 

either to grant or deny access via  a (physical) door lock depending on the identity of the owner of 

the NFC card. (The door locking mechanism will be simulated). NFC cards will be programmed to 

identify the card owner. The Raspberry Pi would connect via Wifi to a web server with access to a 

central user ID database for reading / updating information about individual card owners (physical) 

access rights (i.e. to gain or be denied entry).   

The Raspberry Pi will be programmed in Python using a PC for remote development. 

PROJECTGOALSThe goals of the project are: 

1. Learn to program the Raspberry Pi and interfaces in Python 

2. Learn how to read and write data to NFC cards 

3. Develop an administrative web interface. 

PREREQUISITES 

The student will require to learn Python. 

REFERENCES 

http://www.raspberrypi.org/ 

for more information on the Raspberry Pi and its General Purpose IO interface. 

www.nxp.com/documents/data_sheet/MFRC522.pdf 

for more information on NFC card reading / writing 

http://flask.pocoo.org/ 

for more information on a python web micro‐framework 

 

D.G.Davidson 16/4/2015

Page 30: Project With Header Spring 2015

26  

Eyad Elyan 

BSc Project Proposal Project Title : Motion Detection and Analysis Supervisor: Dr. Eyad Elyan, [email protected] , Extension 2737

School of Computing Science and Digital Media Robert Gordon University

Key Techniques: Machine vision, image processing, machine learning Background

The project aims to develop a method to detect and track human movements in video files. The project requires using image-processing techniques such as segmentation, edge detection, etc, … In addition, a machine learning (classifier) approach will be used to classify these movements. The type of activity to be monitored is to be discussed with the student, and this should be a simple one. Alternatively, a public data set may be used. Note The student may use an existing open source software package (e.g. OpenCV, Python, R, etc…) instead of developing the entire software from scratch. Requirements 1. Investigating existing literature and software technologies 2. Chose, design and implement algorithms to meet the main objectives of the project 3. Write appropriate technical documentation. Required Skills

1. Good programming and mathematical skills 2. Ability and willingness to learn and work hard.

 

   

Page 31: Project With Header Spring 2015

27  

Eyad Elyan 

BSc Project Proposal Project Title : Body Shape Difference Visualisation Supervisor: Dr. Eyad Elyan, [email protected] , Extension 2737

School of Computing Science and Digital Media Robert Gordon University

Key Techniques: Computer Graphics, C++ Programming skills, Basic Mathematical Skills Background

The main objective of this project is to develop 3D software that enables the users to visualise difference between two 3D human body models (See Figure 1).

Figure 1. Different perspective views of a 3D human body model Aims In particular the software should be designed and implemented to address the following features

1. Read 3D and display 3D files of human body models 2. Allow the viewing of more than one 3D model at a time. 3. The software should provide the user with a mechanism to select a specific model and

transform it (e.g. translate, rotate, etc...) 4. Enable the users to interactively change the orientation of the model (e.g. frontal pose, side,

perspective, etc...), usually this is achieved by mouse click and drag 5. Enable the user to register the displayed models to the same pose and orientation. This is

necessary to simplify the visualizations of the difference (manual approach is acceptable) 6. Provide a way to visualise the difference between the two shapes (e.g. different colours and

shading, setting one model to be transparent, etc...), see Figure 1. Note The student may use an existing open source software package (e.g. Paraview, Meshlab, etc...) instead of developing the entire software from scratch. Requirements 1. Investigating existing literature and software technologies used in the 3D graphics area. 2. Chose, design and implement algorithms to meet the main objectives of the project 3. Write appropriate technical documentation. Required Skills

1. Good programming and mathematical skills (C++ and OpenGL and knowledge of Linear

Algebra are advantages). 2. Ability and willingness to learn and work hard.

Page 32: Project With Header Spring 2015

28  

Eyad Elyan 

Links Body Shape Visualization http://cs.brown.edu/~black/

 

   

Page 33: Project With Header Spring 2015

29  

Eyad Elyan 

BSc Project Proposal Project Title: Hand-written digits recognition Supervisor: Dr. Eyad Elyan, [email protected] , Extension 2737

School of Computing Science and Digital Media Robert Gordon University

Key Techniques: Machine vision, image processing, machine learning Background

The project aims to develop a method to classify hand-written digits. The project will involve developing the underlying algorithms for classifying digits as well as a front end to show when a correct / incorrect classification. Note The student may use an existing open source software package (e.g. OpenCV, Python, R, etc…) instead of developing the entire software from scratch. Requirements

1. Investigating existing literature and software technologies 2. Chose, design and implement algorithms to meet the main objectives of the project 3. Write appropriate technical documentation.

Required Skills

1. Good programming and mathematical skills 2. Ability and willingness to learn and work hard.

 

Page 34: Project With Header Spring 2015

30  

Mohammed Gaber 

Four projects from Dr Mohammed Gaber 

[email protected] 

Suitable for: 

Students who started their course in January 2016 only. 

These projects cannot be assigned to students from the September cohorts, 

since the supervisor will not be available over the summer. 

 

Adoption of Diversity Prediction Theorem in Ensemble Learning 

You  need  to  be  an  excellent  programmer  in  either  Java  or R  to  undertake  this  project. Diversity 

Prediction Theorem promotes the importance of diversity in numerical prediction. In this project, the 

student  will  mathematically  formalise  the  theorem  for  classification  problems  using  ensemble 

learning,  particularly  Random  Forests.  The  implementation  of  Random  Forest  that  uses  the  new 

mathematical  formalisation  will  be  used  to  assess  the  usefulness  of  diversity  when  taking  into 

consideration the predictive accuracy of individual classifiers. 

 

Implementing an R Package for Random Forest Pruning using Clustering 

You need  to be an excellent programmer  in  Java  to undertake  this project. You will also need  to 

learn the statistical computing language R, if you don’t already know it. 

CLUB‐DRF  is  a  new method  for  diversifying  and  pruning  Random  Forests,  using  clustering  of  the 

classification behaviour of  individual  trees  in  the ensemble. You will be  required  to develop an R 

package to convert an existing Java implementation of CLUB‐DRF to R. This task will be followed by a 

thorough experimental  study of  the method over a number of medical datasets. Datasets will be 

provided.  

 

Implementing an R Package for Boosting Diversity through Replicator Dynamics 

You need  to be an excellent programmer  in  Java  to undertake  this project. You will also need  to 

learn the statistical computing language R, if you don’t already know it.   

RD‐DRF  is a new method for diversifying Random Forests using the replicator equation. You will be 

required to develop an R package to convert an existing Java  implementation of RD‐DRF to R. This 

task will be  followed by a  thorough experimental  study of  the method over a number of medical 

datasets. Datasets will be provided.  

   

Page 35: Project With Header Spring 2015

31  

Mohammed Gaber 

 

Implementing an R Package for Diversified Random Forests (DRF) through Feature Clustering 

You need  to be an excellent programmer  in  Java  to undertake  this project. You will also need  to 

learn the statistical computing language R, if you don’t already know it. 

DRF  through  random  subspacing  is  a  new method  for diversifying Random  Forests. A number of 

subforests are  created, each with a different  randomised  set of  features. You will be  required  to 

develop  an R package  to  alter  the method  to partition  the  feature  space  into disjoint  clusters of 

features instead of using random subspacing. This task will be followed by a thorough experimental 

study of the method over a number of medical datasets. Datasets will be provided.  

Page 36: Project With Header Spring 2015

32  

Ayse Goker 

Dr Ayse Goker Social media projects Online social and news media generate rich and timely information about real-world events. It is also a forum where a considerable amount of discussion and follow-up debates around particular topics emerge. This large scale data available, the large number of users, along with the breadth of the user base, present challenges to online news systems. There are challenges in trending topic detection, filtering, and presentation of results, in addition to catering for different content perspectives and personalisation. In addition to dealing with fast stream content, there are challenges in dealing with heterogeneous and multimedia content. We have compared these with US Elections, Super Tuesday (USA Republican Party elections), and for FA Cup/ Football. We have implemented a version of the system for Scottish Referendum with different visualisation. For example, http://socialsense1.comp.rgu.ac.uk/scottish_independence_frontend/index.html For general information see also http://www.socialsensor.org/ There are opportunities in the following, for example: - to help evaluate news prototypes for online social networks with real-time content. - to analyse previously crawled Tweet data sets. - to investigate aspects of the social media activity around the Scottish Referendum. - to use and extend open-source components and code in this area.

Page 37: Project With Header Spring 2015

33  

Ayse Goker 

UXLabsMScprojectideas2015

 

These are five externally sponsored projects, co-ordinated by Dr Ayse Goker.

Contact Dr Goker for further details

 

InteractiveQueryExpansionAccording to the IDC whitepaper, The High Cost of Not Finding Information, knowledge workers spend 

2.5 hours per day searching for information. Assuming they either find what they are looking for 

eventually or stop and end up making a non‐optimal decision, there is a high cost to both outcomes. To 

address this problem, UXLabs is developing a radical alternative to traditional query formulation. We are 

creating a novel, visual framework which allows users to express information needs in a manner that is 

simple and intuitive, facilitating the expression of complex queries via a simple but powerful visual 

syntax. However, to become a viable proposition, we must solve the crucial problem of keyword 

selection: i.e. for a given query, how can we identify the optimal set of search keywords and phrases? 

The aim of this project is to develop an intelligent query generation engine which can expand an initial 

expression to include an optimal set of related terms and synonyms, going far beyond the limitations of 

traditional auto‐completion techniques. 

 DevelopingarobustmodelofqueryreformulationQuery reformulation is a common part of users' information retrieval behaviour, whereby search 

queries are adapted until the user fulfils their information need or abandons their search. Previous 

studies have shown that users display distinct patterns of query reformulation, and that these patterns 

can be used to define behavioural habits specific to individual users. However, previous approaches 

have generally been restricted to using patterns based on simple lexical transformations, i.e. adding or 

removing words & characters. In this project, we seek to extend that work to address more conceptual 

relationships such as those due to semantics or other types of higher‐level association. This could 

involve the use of knowledge based resources such as WordNet and/or machine readable dictionaries & 

thesauri. The outcome would be a more robust model of query reformulation behaviour that more 

accurately reflects the search habits and preferences of individual users. We have a number of 

transaction logs which could be explored. 

 AlanguageforsearchanddiscoveryThere has been much work on describing and modelling human information seeking behaviour. In one 

particular model, information behaviour is represented as a set of search modes that users employ to 

satisfy their information needs, such as ‘locate’, verify’, ‘monitor’, and so on. An interesting property of 

this framework is that modes do not occur randomly, but instead are seen to form distinct patterns or 

chains. The goal of this project is to analyse a collection of real‐world information needs and identify and 

visualize the patterns within them. In so doing we would hope to explore how the modes can be used as 

an elementary ‘language’ for describing information behaviour. We would also hope to extend the 

framework and explore its ability to accommodate new domains and scenarios. 

Page 38: Project With Header Spring 2015

34  

Ayse Goker 

CollaborativesearchMost search tools are predicated on the notion of a single user, single session interaction. 

However, there is increasing evidence to suggest that many of the tasks they support could be 

better facilitated via collaborative, social activity, involving multiple users working toward a 

common goal. In this project 

we seek to explore the use of UXLabs visual search framework but extending it to multi‐user interaction, 

using an expanded interaction canvas (e.g. 20 inch plus tablet devices). By studying search as a 

social phenomenon, we can address research questions such as:  

What kind of social interactions should we aim to support when there are two 

simultaneous users rather than one? 

What kind of human‐device interactions can best support multi‐user collaboration, and 

how will these differ from existing gestural vocabularies? 

How does the social & organisation context affect the interaction, and what kinds of 

contexts 

and tasks benefit most from collaborative search tools?  

  

MultimodalsearchUXLabs visual search framework allows users to express complex queries using a simple visual syntax 

that is simpler and more transparent than comparable text‐based query formulation methods. 

However, certain types of search task are inherently complex and require the invocation of 

functions that are not easily discoverable in the UI. In these cases, the use of an additional input 

channel in the form of speech would provide the ideal contextual signal to disambiguate the input, 

allowing a much more natural form of interaction. In this project, we seek to explore the 

combination of gestural interactions with speech input, addressing questions such as:  

What kinds of spoken interaction work best for search applications, and how should 

these complement the existing gestural language? 

How can we use linguistic context to help disambiguate the task context, and vice versa? 

How can we combine speech with other gestural commands, so that they 

work in a complementary (mutually supportive) manner rather than as 

independent inputs 

Page 39: Project With Header Spring 2015

35  

Jean‐Claude Golovine 

 Title Evaluation and Cognitive Modelling Supervisor Dr Jean Claude Golovine Suitable for: Students who started their course in January 2016 only.

This project cannot be assigned to students from the September cohorts, since the supervisor will not be available over the summer.

 Background Understanding human cognition with regard to computer interfaces has been a major research activity ever since the first computerised devices were developed many decades ago. These cognitive scientists realised that modelling human cognitive and motor functions was crucial to our understanding on how human interact with machines and their efforts culminated to the creation of powerful cognitive architectures such as ACT embedding human cognition. John Anderson developed ACT and was joined later by Lebierre who developed the human rationality aspect of the theory to produce ACT-R. Other scientists collaborated to integrate other modules to complete this architecture. Kerias integrated the motor functions whilst Salvucci integrated an advanced visual module. This collaboration led to the architecture that we know as ACT-R/PM. ACT-R-R/PM is now a mature architecture that is used by scientist all over the world. Software designers use the power of this cognitive architecture to design and optimise user interfaces in terms of usability by simulating users using CogTool. CogTool was developed by John and is a rapid prototyping toolkit that is dedicated to user interface optimisation through a process known as visual storyboarding and allows for user interaction demonstration on mock-up interfaces i.e. usually screenshots. The simulated user interaction is internally used to create ACT-R/PM cognitive models which when ran produce time predictions for the completion of sets of tasks. These latencies can then be used to compare with data obtain with real users completing the same series of tasks on the real interfaces.

 

 

CogTool project

Page 40: Project With Header Spring 2015

36  

Jean‐Claude Golovine 

Aims/Objectives  

The aims for this project is to ultimately use a set of user interfaces that both CogTool and real users can use. The set of tasks to achieve must be the same for both and replicable.  

1. To investigate how CogTool can be used to evaluate user interfaces.  

2. To implement a user interface in CogTool and describe relevant tasks.  

3. To design a heuristic evaluation questionnaire.  

4. To collect user evaluation data using CogTool and the questionnaire.  

5. To statistically analyse the relationship between CogTool and questionnaire data.    

For further information please email the supervisor: [email protected]

Page 41: Project With Header Spring 2015

37  

Sue Hodgson 

MSc Project Proposal Title: A software tool for drawing and annotating Conceptual models Proposer: S Hodgson Suitable for: Everyone Key Techniques: SSM, conceptual models, programming methods, 2D Graphics Background: SSM (Soft Systems Method) is one of many methodologies available to the systems analyst; incorporating various techniques and diagrams to help the analyst understand and model a system. One of the diagrams developed in SSM is the Conceptual Model, which uses which aims to depict a system using an ordered arrangement of subsystems. The model can be decomposed to reveal lower-order subsystems and activities. the Tool to be developed for this project would enable system developers to create and edit conceptual models. Aims:

To investigate SSM and Conceptual Models from a systems developers point of view To investigate and evaluate appropriate technologies To develop a software tool which will allow the developer to create, edit and

decompose Conceptual Models and save them to the computer To Test and evaluate the software tool Write appropriate technical documentation

Page 42: Project With Header Spring 2015

38  

Sue Hodgson 

Title A Customer Relations Management System Proposer S Hodgson External Sponsor Suitable for MScCST or CSTNM

Key Techniques: VB.NET development, Customer Relations Management (CRM), Database design, Multi-tier Application technologies, HCI and Interface Design Background The Dancliffe is a small independent 5 star luxury hotel located in Aberdeen. They currently have no means of capturing, storing or accessing information on their customers electronically, and all customer relations management is done manually. The proposed project will develop a prototype CRM system that will be used to capture information on current or prospective customers and their requirements, and provide a set of customer relations management services based on a graphical user interface to a relational database. The prototype CRM system will provide structured queries to target selected groupings of customers, generating lists of customer email addresses and providing appropriate information visualisations for management information. Aims

Investigate the use of the customer relations management as a means of marketing

and advertising and promoting commerce. Investigate the company’s requirements, analyse the requirements and design the

structure of the database and a complementary set of customer relations management services.

Develop a prototype CRM system. Test and evaluate the system with a sample end-users

Write appropriate technical documentation.

Page 43: Project With Header Spring 2015

39  

Michael Heron 

ThisprojectaimstodevelopanopensourceUnitytoolthattakesanXML/JSONfileandrenderitintoagrid‐based3Drepresentationinthestyleofold‐fashioneddungeoncrawlergamessuchasDungeonMaster,andmoremoderntitlessuchasLegendofGrimrock.Theintentionistocreateaself‐containedUnitymap‐rendererthatcanbeusedasadrop‐intoolforASCIIbasedtextgames.Therenderingengineshouldbeabletohandledoors,movementwithinconstraints,anddifferingtexturesforfloorsandwalls,withnoassumptionoflookorfeelbeyondthatdefinedintheprotocol.Thereisastandardprotocolexpectedfromtherenderingtool,andtheintentionistodeployitinanexistingtextgame.Hencethereisafixedexpectationofhowthetoolwilllookandfunction.ThetoolwillbedevelopedasaUnityasset,anddesignedsoastoallowmapstobereadfromfilesonahard‐drive,orthroughstandardinputstreamsovertheinternet. AscenefromDungeonMaster(TheMeanMachinesArchive2015)Note:Unityisacross‐platformgameenginewhichcanbeprogrammedinavarietyoflanguages,includingJavaScript.ReferencesTHEMEANMACHINESARCHIVE,2015ThemakingofDungeonMaster.[online].http://www.meanmachinesmag.co.uk/upload/media/scans/retrogamer_dungeonmaster.pdf[Accessed26April2015].

ProjectTitle ASCIIMapParser

Supervisor MichaelHeron–RoomN432– [email protected]

Page 44: Project With Header Spring 2015

40  

Michael Heron 

ThisprojectaimstodevelopanopensourceunitytoolthatcanbeplacedinanyUnityscene.Itwillserveasageneralframeworkforidentifyingmousegesturesandhavingthesetriggerin‐gameactions.Exampleusesare:triggeringgamespellsviacombinationsofgestures,orwritingnumbersormathematicalformulaeonascreen,wherethecorrectformulaisrequiredinordertoprogress.Thetoolwillbedevelopedasaself‐containedUnityassetthatcanbedeployedinanyotherappropriateapplicationwithminimaleffortonthepartofthedeveloper.Alladeveloperhastodoistowritehandlersforeachgestureandhookthemuptothegestureasset.Thetoolshouldallowthedevelopertodefineagesturelanguagethrougheitherthedefiningofbitmapspritesinmemoryorcomparisonbitmapimagesontheharddrive.Thiswouldallowthedevelopermaximumflexibilityindecidingwhatconstitutevalidgestureswithintheirgames.Note:Unityisacross‐platformgameenginewhichcanbeprogrammedinavarietyoflanguages,includingJavaScript.

ProjectTitle UnityGestures

Supervisor MichaelHeron–RoomN432–[email protected]

Page 45: Project With Header Spring 2015

41  

Michael Heron 

TheSchoolofComputingresearchcentre(IDEAS)usesadatabasetotracktweetsrelatedtoselectedtopics,basedonhashtagsandsignificantusers.TheyalsohaveaShinyAppsfront‐endwhichisusedforgeneratinggraphsandwordclouds.(ShinyAppsisaplatformfordevelopingwebapplicationsfordatavisualisation).However,thescriptsthatrunthisfront‐endaresomewhatinefficient,andthesoftwareoftentimesoutwhenworkingwithlargerdatasets.Thisprojectwillcarryoutarewriteofthesoftwarefront‐end,alongwithsomeinternalreworkingofthetweetcollectionscripts(writteninJava)tooptimisethestorageandanalysisofthetweets.Thiswillinvolveworkingwithalegacysystemandmulti‐gigabytedatasets,soitwillrequireacarefulapproachandamethodicaltechniquetoensurethatexistingdataisnotcompromised.ThedatabaseusedisMongoDB,whichisaNoSQLdatabase(“NotOnlySQL”).NoSQLdatabasesaretypicallyusedforbigdataandreal‐timewebapplications.TheysupportSQL‐likequerylanguages,buttheyuseavarietyofdatamodels(suchasnetworks)asanalternativetothetablesusedbyrelationaldatabases.Nonetheless,therearesufficientsimilaritiesbetweenNoSQLandrelationaldatabasesthatastudentfamiliarwithrelationaldatabasesshouldhavenoprobleminlearningMongoDB.ReferencesTHEHUFFINGTONPOSTUK,2013,DavidCameron'sEUReferendumSpeechCondensedIntoAWordCloud.[online].http://www.huffingtonpost.co.uk/2013/01/23/david‐cameron‐speech‐wordle_n_2532047.html[Accessed26April2015].

ProjectTitle Front‐endtoolsforatweetdatabase

Supervisor MichaelHeron–RoomN432– [email protected]

        A word cloud (The Huffington Post UK 2013) 

Page 46: Project With Header Spring 2015

42  

Michael Heron 

TheSchoolofComputingresearchcentre(IDEAS)needsasuiteofgeneraltwitterutilitiestobeusedwithinitssocialmediaresearchprojects.ThisprojectwilldevelopanapplicationthatallowscertainqueriestobesubmittedinbatchesviatheTwitterAPI.Suchqueriesmightinclude:

LookuptwitterusernamesfromIDs; Queryauser'sprevioustweetsandstoretheresultsinadatabase; PerformsentimentanalysisusingtheexistingAlchemyAPI.

AlloftheseAPIsareratelimited(theyarerestrictedtoafixedmaximumnumberofTwitterqueriesperhour),andyetweoftenneedtoworkwithverylargenumbersoftweets,usersandusernames.WearecurrentlytrackingmillionsoftweetsusingaMongoDB1databaseinstallation,andwerequiregood,solidtoolsforextractingsetsoftweets,cleaningthemup,andpresentingtheminaformatsuitableforanalysis.Ifyouchoosethisproject,youwillfirstneedtofamiliariseyourselfwiththeexistingsoftware,andthendevelopanapplicationthat:

Interactswithourexistingdatabases, Presentselementsofextractedtweetsinanappropriateform,and Managesratelimits.

                                                            1 See previous project. 

ProjectTitle Twitterutilities

Supervisor MichaelHeron–RoomN432– [email protected]

Page 47: Project With Header Spring 2015

43  

Kit Hui 

The Robert Gordon University

School of Computing Science & Digital Media

MSc Project Proposal

Title: A Cloud-based Attendance Monitoring System Proposer: Dr. Kit-ying Hui Key Techniques

1. Database design and programming 2. Web programming (e.g. Ajax) 3. Java programming

Background Most lecturers agree that a student’s attendance to classes has a positive correlation to his/her result in a taught module. A continuous monitoring of class attendance allows the School Office to identify students who have difficulty and refer them to assistance as early as possible. The current attendance monitoring process is a manual one, where staff has to visually scan for abnormality. This is a tedious process which is liable to errors. Data are centrally kept in a few spreadsheets and information is not readily available to module lecturers or tutors. An online system available to all staff will make attendance monitoring more effective. The system could also automatically scan for abnormality in students’ attendance record and notifies the class tutors pro-actively Traditionally these systems require the set up of local servers. With the rise of cloud computing, both data storage and web application hosting can now be moved into third-party cloud service providers. The stored data, however, will need to be protected (e.g. by encryption) as they are sensitive. Another challenge is to represent the “abnormality detection knowledge” as portable reusable knowledge blocks which can be distributed and used locally in a web browser, instead of running everything on the application server. This “fragmentation” also allows the modular maintenance of detection knowledge, making the system more flexible. Aim To develop a cloud-based web application that monitors students’ attendance to classes. Objectives

To design and build a database that stores students’ class attendance data in a cloud data storage service.

To protect stored data using encryption.

Page 48: Project With Header Spring 2015

44  

Kit Hui 

To design and implement a web interface that allows staff to input and view student attendance data online.

To design and implement knowledge modules that detect abnormal patterns in student’s attendance data.

References

Google App Engine: https://developers.google.com/appengine/ Amazon Web Services: http://aws.amazon.com/

   

Page 49: Project With Header Spring 2015

45  

Kit Hui 

The Robert Gordon University School of Computing Science & Digital Media

MSc Project Proposal

Title: Drone Delivery Scheduling Proposer: Dr. Kit-ying Hui Key Techniques

1. Artificial intelligence (e.g. Genetic algorithm, constraint solving) 2. Web programming (e.g. Ajax) 3. Java programming

Background Recently, the use of Unmanned Autonomous Vehicles (UAV, aka drone) is a hot topic. With the advances in technologies and the fall in prices, drone has opened up the door to fast and autonomous courier. Big companies, like Amazon and Google, have been exploring the use of drones for delivery. Despite the hype, delivery by drones has many limitations:

A typical drone can only carry a limited weight. E.g. 1kg. Depending on the battery capacity, a typical drone has a flight time of 10-30

minutes. The flight time is also dependent on the weight. Drones are affected by the weather. Flying against the wind means using more

power and a shorter flight time. There are areas where drones should not be flying (e.g. near power lines,

airports). Some destinations are not suitable for drone delivery (e.g. a flat without a landing

space). Given a fleet of drones and a set of delivery orders, the problem of scheduling drones for delivery has challenges at different levels:

At the top level, a company wants to deliver all orders in the shortest time. This is a typical optimisation problem which can be solved by genetic algorithm or constraint solving.

To take into consideration the effect of weather on a drone’s performance, the wind speed and direction along the flight path need to be included and modeled in the flight time estimate. Weather information of different locations are readily available from online resources (e.g. openweather.org)

Instead of simply specifying the starting and ending locations, a drone accepts a flight path defined by a sequence of way points. An intelligent system can include geographical factors into the scheduling process.

Page 50: Project With Header Spring 2015

46  

Kit Hui 

Aim To investigate, design and implement a system for scheduling drone delivery. Objectives

To model the drone delivery problem, taking into consideration the characteristics (e.g. load capacity, flight time) of different drones in the fleet.

Solve the drone delivery problem using AI techniques. Optionally, include weather information in the flight time estimation model. Optionally, generate flight plans for drones instead of making simple task

allocations. References

Open Weather API: http://openweathermap.org/api Wikipedia’s entry on Constraint Satisfaction Problem:

http://en.wikipedia.org/wiki/Constraint_satisfaction_problem A quick introduction to Genetic Algorithm:

http://www.doc.ic.ac.uk/~nd/surprise_96/journal/vol1/hmw/article1.html The Arducopter website: http://copter.ardupilot.com/

   

Page 51: Project With Header Spring 2015

47  

Kit Hui 

The Robert Gordon University School of Computing Science & Digital Media

MSc Project Proposal

Title: LEGO Building as a Constraint Satisfaction Problem Proposer: Dr. Kit-ying Hui Key Techniques

1. Artificial Intelligence (e.g. constraint satisfaction) 2. Java programming

Background LEGO is a popular plastic construction toy consists of bricks of specific sizes. One primary attraction of LEGO is its endless possibility in using simple bricks to build complex 3D objects. A very good example is the Legoland tourist resort in the U.K. Using LEGO bricks to build a 3D object usually involve slicing the 3D design into multiple layers with each layer stacking on top of another. In a layer, for two adjacent bricks to stay together, they have to be joined by a third brick in the layer above or below. The following diagram explains this requirement in a 1-dimensional layer:

As LEGO bricks are of different sizes, we have many choices for the joining brick C. Choosing a brick C affects the choices of other bricks in the layers above and below. This process of using LEGO bricks to build two stacking layers can be modeled as a constraint satisfaction problem. If we divide a layer into primitive bricks of size 1, it becomes the problem of deciding if adjacent size-1 bricks should be merged. Merging two size-1 bricks mean a size-2 brick. So we have a set of variables whose value can be true or false (meaning the size-1 bricks are merged or not). The following diagram explains the idea:

C

A B

Page 52: Project With Header Spring 2015

48  

Kit Hui 

If V1-2, V2-3, V3-4 are all true, and if the biggest brick size is 4, then V4-5 must be false. This means VA-B must be true. This idea can be extended to 2-dimension layers of bricks and with the brick colour as another requirement. The end result is a vast network of connected boolean variables which are to be assigned the value of true or false. Aim To investigate, design and implement a system to build an arbitrary 3D object with LEGO bricks. Objectives

To investigate the feasibility of solving the LEGO building problem of 1-dimensional brick layers.

To extent the problem solving method to 2-dimensional brick layers. To implement a tool to illustrate the problem solving method.

References

Wikipedia’s entry on Constraint Satisfaction Problem: http://en.wikipedia.org/wiki/Constraint_satisfaction_problem

List of Java libraries for constraint solving: http://www.constraintsolving.com/solvers/constraint-libraries

   

1 2 3 4

V1‐2

{T,F}

V2‐3

{T,F}

V3‐4

{T,F}

V4‐5{T,F}

5 6

A B

VA‐B{T,F}

Page 53: Project With Header Spring 2015

49  

Kit Hui 

The Robert Gordon University School of Computing Science & Digital Media

MSc Project Proposal

Title: Database for sound Proposer: sound Point of Contact: Dr. Kit-ying Hui Key Techniques

1. Database design and programming 2. Web programming (depends on client requirement) 3. Java programming (depends on client requirement)

Background “sound” is Scotland’s annual festival of new music, which takes place in late October and early November throughout Aberdeen and Aberdeenshire. There are between 40 and 60 events with 30 project partners and 20-30 different venues. A certain number of other events and education projects take place outwith the festival. sound currently uses the Artifax system for its data needs. Throughout the years Artifax is found to be too heavy for the task and does not fit well with the requirements of the organisation. sound is thus planning to migrate to another database management system and at the same time exploring the possibility of applying the same system to other festivals and events in Scotland. Apart from the major database designing task, the followings are potential sub-tasks in the project:

Migrate data from the existing system to the new one. To design and building a user interface to the new database. Optionally design and implement an access portal to data stored in the new

system. Note: This project enquiry is received through the University’s Talent Exchange project (http://www.rgu.ac.uk/talentexchange). Student is expected to work with sound to discover the data need and explore the application domain. Aim To investigate, design and implement a data solution for sound. Objectives

To investigate the data storage requirement of sound. To explore and select an appropriate database management system. To design and implement a database for sound.

Page 54: Project With Header Spring 2015

50  

Kit Hui 

To design and implement a user interface for the database. References

sound website: http://www.sound-scotland.co.uk/    

Page 55: Project With Header Spring 2015

51  

Kit Hui 

The Robert Gordon University School of Computing Science & Digital Media

MSc Project Proposal

Title: Website for Assured Occupational Health Proposer: Assured Occupational Health Point of Contact: Dr. Kit-ying Hui Key Techniques

1. Web programming 2. Database design

Background Assured Occupational Health (AOH) is a new business start up offering all types of medical checks for all industry sectors, including oil and gas, aviation, and construction. They also offer sickness absence assessments, pre-employment health checks and other occupational health medical consultations. AOH currently has no website and needs to develop one to take bookings and payments. Note: This project enquiry is received through the University’s Talent Exchange project (http://www.rgu.ac.uk/talentexchange). Student is expected to work with AOH to explore the application domain and requirement details. Aim To design and implement a website for Assured Occupational Health. Objectives

To discuss with AOH on the project requirements. To design and implement a website to fulfil the requirements.

Page 56: Project With Header Spring 2015

52  

John Isaacs 

Project Title  Easy Sensor Platform 

Supervisor  John Isaacs ‐ [email protected] 

Suitable for  INS students ONLY 

 

Background 

Crowd sourcing and citizen science is changing the way scientific data is collected. Previously costly 

sensors system needed to be in place to record data at specific, often restricted locations. For 

example the whole air pollution levels for a city may have been collected at a single spot in the city, 

which would not accurately reflect the whole environment. 

Crowd sourcing has meant that a lot more data can be collected; however it is often from different 

types of sources and is not always verifiable.  To work properly crowd sourced information must 

trusted in terms of accuracy and source. 

Embedded systems such as the raspberry pi, the Arduino or the intel Galileo could be used to create 

common sensor platform that is easy to set up by the data collector, uses a standard set of sensors 

and can communicate the data back to a central cloud based system. The main idea here is that a 

user simply turns the sensor platform on, connects some sensors and the data is transmitted 

automatically, creating a large network of connected sensors and access to the aggregated data via a 

simple map based user interface. 

This project will look at the creation of such as sensor system ( 5 intel Galileo  (generation 2 models) 

are available for testing) 

Objectives 

Investigate embedded system technologies to determine a viable hardware platform. 

Research methods of detecting and auto connecting to the sensor network. 

Investigate the appropriate communication protocols and methods for transmitting logged 

data efficiently. 

Research methods of giving user access to and displaying the collected data. 

Design, implement and test a prototype sensor platform and associated central data store. 

Skills 

Knowledge of embedded systems (PI, Beaglebone etc) 

Some programming skills 

Knowledge of networks and mobile communication technologies 

Further Info 

http://www.intel.com/content/www/us/en/do‐it‐yourself/galileo‐maker‐quark‐board.html 

http://postscapes.com/internet‐of‐things‐cloud 

http://www.instructables.com/id/PART‐1‐Send‐Arduino‐data‐to‐the‐Web‐PHP‐MySQL‐D3js/ 

   

Page 57: Project With Header Spring 2015

53  

John Isaacs 

Project Title  Map Based Temporal Visualisation 

Supervisor  John Isaacs ‐ [email protected] 

Suitable for  Any 

Background 

Large amounts of data are collected everyday coving aspects of finance, politics and transport. Much 

of this data is presented either temporally or geographically but not both.  For example many 

financial graphs will show aggregated stock prices over time, but will not show where in the world 

the companies are. A company falling in the US may correspond to a company gaining in Asia, which 

may be missed on a simple temporal graph.  

The image below shows a single time point of a visualisation of air traffic over Europe, on its own the 

image looks great but does not really convey the movement in the data set. When you watch the 

video you can see how important the temporal aspect is. 

 

https://www.youtube.com/watch?v=SrZSelcIxWM 

The idea of this project is to investigate methods where large datasets can be shown interactively on 

a map based system which can include temporal effects on the data. 

There are a number of possible data sets that could be used such as election data, bus or train 

tracking, oil and gas data or the students own suggestions. 

Objectives 

Identify an appropriate data set for visualisation 

Research visualisation platforms such as d3.js, webgl and google maps. 

Investigate the appropriate visualisation methods (eg colour, shape, size) 

Design, implement and test a prototype visualisation of the selected data set. 

Skills 

Some programming skills  

Knowledge of internet based development such as php, javascript, mysql and html would be 

an advantage 

Further Info 

http://gephi.github.io/ 

http://d3js.org/

Page 58: Project With Header Spring 2015

54  

David Lonie 

 

 

Background 

In the Oil and Gas industries the role of Trading Operations is very important. Producers, consumers 

and governments are all subject to financial risks from changes in oil and gas prices: governments 

through their reliance on taxation revenues; producers are adversely affected by decreases in prices; 

consumers are adversely affected by increases in prices. To manage financial risk from oil price 

movements there is a huge market in oil and gas futures and associated financial options or 

derivatives.   

Project Aims 

To design, implement, test and document a software tool which can perform pricing and associated 

visualisation related to futures and options products based on the Oil or Gas market prices.  

Project Objectives 

To investigate the important aspects of Oil and Gas trading, and the role of futures and 

options in the Oil and Gas markets; 

Investigate the pricing models used to establish the fair price of oil and gas market futures 

and options, and the role of Historic oil and gas prices, and energy market price shocks in 

those models; 

Design, implement, test and document a software solution for that can manage and visualise 

historic oil and gas price data, and which can be used to calculate prices for a range of user‐

specified oil and gas option contract types. 

Skills required 

good programming skills (in any programming language) 

familiarity with data visualisation techniques  

willingness to become familiar with some basis financial terminology and to understand 

some mathematical concepts used in the pricing models 

 

References 

Financial derivatives: pricing and risk management, Ed.  Kolb, Robert W., 

              [Electronic resource, RGU Library]  

Understanding oil prices, Carollo, S.   [electronic resource, RGU Library] 

http://en.wikipedia.org/wiki/Energy_derivative     

Project Title A Software Tool for Pricing Futures and Options in Oil and Gas 

Markets 

Supervisor  David Lonie – Room N432  – [email protected] 

Suitable for  COG students, or others with an interest in Oil and Gas 

Page 59: Project With Header Spring 2015

55  

David Lonie 

http://en.wikipedia.org/wiki/Derivative_(finance)     for a brief overview 

   

Page 60: Project With Header Spring 2015

56  

David Lonie 

 

Background 

Oil and Gas drilling operations generate vast amounts of data of interest to decision makers who 

may be at geographically distant from either the drilling site or the HQ where data is stored and 

processed. A tool for allowing decision makers in drilling operations to access key data in a reliable, 

current and easily interpreted form from mobile devices would allow them to remain part of the 

decision making process from remote locations.  

Project Aims 

To design, implement, test and document a software solution that allows oil and gas personal to 

access and visualise well drilling data from a mobile device. With the purpose of providing decision 

makers current and easily interpreted access to key data associated with the drilling process.  

The tool would need to perform at least the following main tasks: 

Access a WITSML server to access WITSML data 

Allow the user to select fields and categories of data they wish to access. 

Visualise the data in a clear and appropriate format.   

Project Objectives 

Investigate the factors of interest to key decision makers related to the oil and gas field 

drilling process; 

Investigate appropriate technologies for accessing WITSML server held data (e.g. JWitsml 

library or use of Standards DevKit); 

Investigate appropriate visualisation techniques, suitable for implementation on a mobile 

device; 

Design, implement, test and document a software solution for visualising data from a 

WITSML database on a suitable platform (a standalone application, a mobile device or web 

browser would all be possible depending on interests and skills of the student). 

Skills required 

programming skills in a suitable language 

interest in data visualisation 

willingness to investigate the WITSML standard, and associated technologies such as the 

JWitsml and Standard Devkit libraries  

 

References 

Project Title  A tool for providing visualisation of WITSML data 

Supervisor  David Lonie – Room N432  – [email protected] 

Suitable for  COG students only 

Page 61: Project With Header Spring 2015

57  

David Lonie 

www.energistics.org for an overview of WITSML (and associated standards)  http://www.energistics.org/standards‐devkit for details of the .NET Standards DevKit http://www.jwitsml.org for details of the JWitsml library 

   

Page 62: Project With Header Spring 2015

58  

David Lonie 

 

 

Background 

Modern smartphones are equipped with a wide range of physical sensors including very sensitive 

microphones. There are many potential applications in which a smartphone could be used by 

teachers and students in a classroom. An aspect of modern educational practice is to encourage 

cross‐curricular thought, especially through open‐ended investigations by students. For this, 

teachers and students could benefit from well‐designed, and easily assessable tools to assist in such 

investigations. The idea for this project is to have an easy to use app that allows interesting sound 

samples (such as speech, musical phrases from different instruments, environmental noise, etc.) to 

be captured, displayed and analysed so that students can investigate and compare the nature and 

properties of sound from different sources. 

Project Aims 

To create a smartphone application aimed at students and teachers that captures and stores 

audio samples and which can then perform analysis and visualisation of the sound’s 

waveforms and frequency spectrum. The main functionality could be supplemented by 

explanation and background theory or links to external resources. Some method of 

extracting data or graphs from the smarthphone to a PC would be useful for students 

wishing to include results of investigations in written reports or presentations 

Project Objectives 

Investigate the capabilities available on a smartphone of your choice; 

Research the aspects of sound appropriate for inclusion in an app designed for school level 

students; 

Design, implement, test and document a smartphone application for use in a teaching or 

project. 

Skills required 

investigate and develop programming skills in mobile computing environment of your choice 

(Android or iPhone) 

interest in educational matters  

 

Further information 

http://developer.android.com/guide/topics/sensors/sensors_overview.html  

 “Smartphones put the app into physics apparatus”, New Scientist,  29 August 2012 

Project Title  Smartphone App for  Capturing and Analysing Sound Samples 

Supervisor  David Lonie    Room N432   [email protected] 

Page 63: Project With Header Spring 2015

59  

David Lonie 

http://www.intuitor.com/student/Android%20Phone%20Site/AndroidIntroduction.php  

   

Page 64: Project With Header Spring 2015

60  

David Lonie 

 

Background 

As very recent history has demonstrated, Oil and Gas prices are liable to significant fluctuations in 

value, causing problems for regions and nations reliant on revenues and jobs derived from 

hydrocarbon production. A wide variety of econometric techniques have been applied to the 

problem of modelling the supply, demand and price of oil and gas. The idea for this project is to 

create a software tool that would enable a student or researcher with an economics background to 

manage datasets and investigate econometric models. 

Project Aims 

To design, implement, test and document a software tool which can be used to manage time‐series 

data and perform a variety of econometric analyses and model‐fitting procedures to that data for a 

user with a non‐computing background.  

Project Objectives 

To investigate the important aspects of Oil and Gas economics and some of the econometric 

models that have been applied to these markets; 

Design, implement, test and document a software solution for that can manage and visualise 

historic oil and gas price data, and which can be used to apply econometric and statistical 

model‐fitting and forecasting using that data. 

It is envisaged that the application will connect to a database to store the economic data, 

and make use of appropriate libraries to connect from a front‐end to an existing statistical 

package such a R to facilitate the econometric and statistical calculations. 

Skills required 

good programming skills (in any programming language) 

familiarity with data visualisation techniques  

willingness to become familiar with some economics terminology and statistical techniques 

 

References 

BP: Energy Economics & Statistical Review  http://www.bp.com/en/global/corporate/about‐bp/energy‐economics.html  

Crude Oil Price Forecasting: a comprehensive review of literature.  https://caia.org/sites/default/files/3.RESEARCH%20REVIEW.pdf  

JRI Java/R interface http://www.rforge.net/JRI/  RCaller https://code.google.com/p/rcaller/wiki/About    

Project Title Software Tool to facilitate the econometric analysis of Energy 

markets  

Supervisor  David Lonie – Room N432  – [email protected] 

Suitable for  COG students, or others with an interest in Oil and Gas 

Page 65: Project With Header Spring 2015

61  

Rob Lothian 

MastersProjectSpecification2015

Title AComputer‐BasedLearningToolforLinearAlgebra

Supervisor RobLothian

Background Linear algebra is the study of matrices and vectors. Matrix and vector methods are widely used in mathematics, engineering, computer science and many other fields.

It would be useful to have a computer-based tool to support the learning of this discipline. It would be especially helpful to find creative ways to support the learning of those who are not specialist mathematicians.

Aim To design and develop a computer-based learning tool to support the learning of (some aspects of) linear algebra.

Skills Required

Good programming skills in the language of your choice. A working knowledge and understanding of linear algebra.

   

Page 66: Project With Header Spring 2015

62  

Rob Lothian 

MastersProjectSpecification2015

Title GoProgram

Supervisor RobLothian

Background Go is an ancient board game involving the placement of stones on a grid of squares. The object is to 

control the majority of the territory, which may involve the capture of opposing stones. The AI 

challenge is of quite a different nature to that involved in chess or checkers. 

 

Aim To create a program to play the game (in an intelligent manner) against a human opponent. The 

student would require to research and/or devise AI approaches to the problem.  

 

Skills Required

Familiarity with the rules and basic strategies of the game. 

Good programming skills in the language of your choice. This should include an appreciation of data 

structures and the way that algorithms can exploit these structures. 

Capacity for critical engagement with the research literature. 

   

Page 67: Project With Header Spring 2015

63  

Rob Lothian 

MastersProjectSpecification2015

Title Scrabble‐PlayingProgram

Supervisor RobLothian

Background Scrabble ® is a board game in which players score points by placing letter ‘tiles’ on the board to 

create words. Special squares multiply scores and there is a bonus for using all (seven) tiles in one 

turn. 

 

Aim To create a program to play the game (in an intelligent manner) against a human opponent. The 

student would require to research and/or devise AI approaches to the problem.  

 

Skills Required

Familiarity with the rules and basic strategies of the game. 

Good programming skills in the language of your choice. This should include an appreciation of data 

structures and the way that algorithms can exploit these structures. 

 

Capacity for critical engagement with the research literature. 

 

   

Page 68: Project With Header Spring 2015

64  

Rob Lothian 

MastersProjectSpecification2015

Title TimeSeriesProject

Supervisor RobLothian

Background The time series is a common and important type of data. There are a large number of analytic 

techniques that may be applied to time series, often with the goal of predicting future values. 

Aims  

1) To find some interesting time series data.  

2) To develop a tool to store, display and analyse the data.  

3) To carry out an analysis of the data using the tool.  

The project must have a strong software development component, so it is no enough to read data 

into an existing tool such as R Studio. It is, however, permissible to incorporate library routines into 

your own code or to actually program in a statistical language rather than a general language. The 

element of data analysis may be small if the software development  element is sufficiently 

substantial. 

 

The student will be required to find data and choose techniques of analysis and visualisation as part 

of the investigation phase.  

 

Skills Required

Good programming skills in the language of your choice. 

 

Page 69: Project With Header Spring 2015

65  

Rob Lothian 

Ability to narrow down this broad proposal into something more specific and willingness to take 

ownership of the resulting project. 

 

Some basic grasp of mathematics and statistics. 

 

Note for Oil and Gas Students 

You will already have seen some basic time series analysis in CMM020, but you will be expected to 

investigate and implement techniques beyond the scope of that module. You should try to find time 

series data that is relevant to the energy sector. 

Page 70: Project With Header Spring 2015

66  

Stewart Massie 

The Robert Gordon University School of Computing

MSc Project Specification Title: Personalised Tourist Itineraries Proposer: Stewart Massie, Room N426, [email protected] Key Techniques

Case-Based Reasoning Recommender Systems Software Development/web application development (Java/php) User interface design

Background The next generation of information tools will be required to provide users with a greater ability to formulate solutions rather than simply retrieving relevant information. One task in which the requirement to provide solutions is already prevalent is in the provision of personalised tourist itineraries (PTI’s). PTI’s can be thought of as an assembly of recommendations where each recommendation is a tourist attraction. Mahmood et al. adopt an interactive approach to recommend tourism destinations that are relevant to users’ needs. Rather than individual attractions, this project aims to recommend a set of attractions and assemble them as an itinerary that balances the relevance to the user’s interests, the quality or rating of the attraction, and any other prevailing constraints e.g. time available. There is a wide range of potential tourist attraction types and locations that could be used for this project. But it is envisaged that a locally relevant choice would be most interesting with possible attraction types including but not limited to visits to castles, whiskey distilleries, or golf courses. Information on tourism attractions and completed itineraries are available from web sources. One source is social network sites, such as Twitter and Flickr, which allow posts to be stamped with time and mapped to points of interest by location data or tags. Leveraging this information would allow us to assemble itineraries. This project will investigate approaches that reuse knowledge captured in existing itineraries to assist in the creation of new recommendations or PTI’s. The proposed methodology is Case-Based Reasoning (CBR) and recommender systems. In CBR new problems are solved by retrieving similar cases from a database of previously solved problems and reusing the retrieved solutions. Agile CBR, where individual components of the solution are solved iteratively and then assembled into a complete solution, may be particularly applicable to this problem. Hence, when a new itinerary is being created, features that characterise the route and the attractions will be compared with those of existing

Page 71: Project With Header Spring 2015

67  

Stewart Massie 

itineraries in the case library for each component of the itinerary, possibly as a sequence of interactive recommendations. Aims and Objectives The aim of the project is to assemble novel itineraries by organising retrieved fragments of stored examples into a balanced solution that meets the users’ requirements and matches with their interests. The process may be interactive with the user solving and confirming one part of the PTI before looking at recommendations for a different part. The system may be developed using existing CBR frameworks (e.g. JColibri or myCBR) or from scratch. The project objectives include:

Understanding the Recommendation/CBR processes and in particular the representation of cases, the similarity between cases and nearest-neighbour retrieval;

Capturing knowledge of available attractions from web sources and developing approaches that match these with user requirements;

Developing representations that capture previous itineraries along with any other knowledge sources in an effective, integrated model;

Develop software to rank or display recommended tourist attraction candidates and allow the assembly of effective PTI’s;

Designing user-interfaces to allow entry of PTI requirements as an input and recommended tourist attractions or itinerary as an output;

Evaluating the effectiveness of the system-generated itineraries. References

Mahmood, T., Ricci, F., Venturini, A., and Höpken, W. (2008) Adaptive Recommender Systems for Travel Planning. Information and Communication Technologies in Tourism, Vol 1:1-11

JColibri (http://gaia.fdi.ucm.es/projects/jcolibri/) myCBR (http://mycbr-project.net) Lopez de Mantaras et al. (2005). Retrieval, reuse, revision and retention

in case-based reasoning, Knowledge Engineering Review 20(3): 215-240. Craw, S. (2009). Agile case-based reasoning: A grand challenge towards

opportunistic reasoning from experiences. Proceedings IJCAI-09 Workshop 12, pp33-39.

Witten, I. H. & Frank, E. (2005), Data Mining: Practical Machine Learning Tools and Techniques, 2nd edn, Morgan Kaufmann.

Deitel, Harvey (2005) Java : how to program Downey, T. (2007). Web Development with Java, Springer.

   

Page 72: Project With Header Spring 2015

68  

Stewart Massie 

The Robert Gordon University School of Computing

MSc Project Specification Title: Time Series Analysis and Forecasting Proposer: Stewart Massie, Room N426, [email protected] Key Techniques

Case-Based Reasoning Knowledge representation Software Development/web application development (Java/php) User interface design

Background A time series is a sequence of data points, typically consisting of successive measurements made over a time interval. Examples include sensor data from medical or engineering applications, financial market data, and commodity prices. Here, we are interested in time-series forecasting, which involves the use of a model, to predict future values of the series, based on previously observed values. Methods of analysis are divided into two distinct classes: frequency-domain methods and time-domain methods. In this project the focus is on time-domain methods and the task is to develop a standard framework for forecasting future values in time-series data. The proposed methodology is Case-Based Reasoning (CBR). In CBR new problems are solved by retrieving similar cases from a database of previously solved problems and reusing the retrieved solutions. Hence, when a new time series is being created, features that characterise the current period will be compared with those of existing portions of the time series stored in the case library. Analysing the Time Series is an important task which requires segmentation, the process of splitting a time-series into a sequence of shorter parts. Often, the complete time-series is split into fixed window segments to create a sequence of individual segments, each with its own characteristic properties. Alternatively, only prototypical segments, representative of specific events identified in the time series, may be stored as the case base. Whichever approach is taken to segmentation, comparisons are required between the current part of the time series (the query) and those stored in the case base, to identify the most similar previous examples. Dynamic Time Warping (DTW) is one approach for measuring similarity between two temporal sequences. DTW is a method that calculates an optimal match between two given sequences. While, the standard algorithm has high complexity, less complex approximations, such as Fast DTW, have been developed and are available as standard algorithms in Java, R and Python among others.

Page 73: Project With Header Spring 2015

69  

Stewart Massie 

Aims and Objectives The aim of the project is to develop a framework that supports time series analysis. The focus of the software could be either: to identify significant events in, for example, sensor data; or, to predict future values, for example, in financial market data. A range of standard datasets are available. The software should accept one or more time series as inputs and apply suitable segmentation before processing a more typical CBR cycle. The system may be developed using existing CBR frameworks (e.g. JColibri or myCBR) or from scratch, and may be a stand-alone application or a web application. The project objectives may include:

Understanding the CBR processes and in particular the representation of cases, the similarity between cases and nearest-neighbour retrieval;

Developing approaches to representation that can capture and segment time series data to form a case-base of segments;

Developing software to calculate similarity between the current query and the stored time series segments using dynamic time wrapping, and then ranks and reuses the retrieved segments to generate forecasts;

Designing user-interfaces to allow input of the time series and any associated parameters for segmentation and similarity, and provide a solution or prediction as an output;

Evaluating the effectiveness of the system-generated solutions. References

Madsen, H. (2007). Time series analysis. CRC Press. Berndt, D. and Clifford, J. (1994). Using dynamic time warping to find

patterns in time series. AAAI Workshop on Knowledge Discovery in Databases, pp. 229-248.

Keogh, E. (2002). Exact indexing of dynamic time warping. In 28th International Conference on Very Large Data Bases. pp. 406-417.

JColibri (http://gaia.fdi.ucm.es/projects/jcolibri/) myCBR (http://mycbr-project.net) Lopez de Mantaras et al. (2005). Retrieval, reuse, revision and retention

in case-based reasoning, Knowledge Engineering Review 20(3): 215-240. Witten, I. H. & Frank, E. (2005), Data Mining: Practical Machine Learning

Tools and Techniques, 2nd edn, Morgan Kaufmann. Deitel, Harvey (2005) Java : how to program Downey, T. (2007). Web Development with Java, Springer.

   

Page 74: Project With Header Spring 2015

70  

Stewart Massie 

The Robert Gordon University School of Computing

MSc. Project Specification Title: System for Visual Search and Exploration of Document Collections Proposer: Stewart Massie, Room C49h, [email protected] Key Techniques

Case-Based Reasoning or Information Retrieval Software Development (Java) User interface design

Background We increasingly rely on our ability to search and retrieve documents, both on the internet and in organisational repositories, in order to access information and solve problems. In Information Retrieval (IR), document retrieval typically uses a keyword-based query as an input. This approach works well when the information being looked for can be precisely defined in a few terms. However, where users are unaware of their exact requirements the process is less effective. A user may start with a vague search term, then open and read some of the retrieved documents to identify more specific terms, before refining the query by adding new keywords in a new search. This refinement process may be repeated for several iterations. Similar problems are found in Textual Case-Based Reasoning (TCBR). In TCBR, the problem and solution are presented text form but may also be represented in a more structured format for similarity comparison. A query is usually the problem part of a new text document and then, the quality of the retrieval set will depend on how well the representation and similarity knowledge capture the context of the current task. As a result, manual input is often required to refine the retrieval set and to ensure it contains a diverse spread of possible solutions. This requires the user to open, read and assess the relevance of each retrieved document. The key challenge in both IR and TCBR is to provide users with an overview of a document without it having to be opened and read in detail. One approach is to use Natural Language Programming (NLP) techniques to summarise documents. However, this is hard and the approaches are computationally demanding making it difficult for real time systems. A more promising approach may be to take advantage of the advances in text visualisation techniques, such as tag clouds, to provide an overview as a visualisation. The overview may be of individual documents or of clusters of similar documents. This project will investigate an interactive approach to exploring, searching and retrieving documents in which visualisations of the retrieved documents are presented to the user. User interactions will then be used to provide an input for the next stage of the retrieval process, for example, to refine the search query or to increase diversity in the retrieval set.

Page 75: Project With Header Spring 2015

71  

Stewart Massie 

Aim The aim of the project is to design and implement a prototype system in which documents retrieved for a query are presented as a visualisation and user interactions initiate the next stage of the retrieval process. Objectives The main objectives are:

to understand the IR/TCBR processes involved in retrieval, in particular the representation of text, the similarity between documents and nearest-neighbour retrieval;

to investigate available text visualisations techniques;

to assemble a document repository in a suitable domain;

to develop software that given a query will present retrieved documents visually and then refine the retrieval process in response to user interactions; and

to evaluate the effectiveness of the visual approach to retrieval.

It is envisaged that Java will be used as the development language because open source libraries are available to support much of the work. For example, Lucene provides an existing IR framework on which to conduct the basic text retrievals; numerous visualisation packages or web services are for text; and data on which to develop the system should be available from previous research activities or from the web. References

Spence, R. (2001) Information visualization, 2nd Addison-Wesley.

Lucene (http://lucene.apache.org/)

OpenCloud (http://opencloud.mcavallo.org/index.jsp)

Lopez de Mantaras R., et al. (2005). Retrieval, reuse, revision and retention in case-based reasoning, Knowledge Engineering Review 20(3): 215-240.

Deitel, Harvey (2005) Java : how to program

Downey, T. (2007). Web Development with Java, Springer.

   

Page 76: Project With Header Spring 2015

72  

Stewart Massie 

The Robert Gordon University School of Computing

MSc Project Specification Title: Interactive Visual Summary of Textual Reviews Proposer: Stewart Massie, Room N426, [email protected] Key Techniques

Textual Case-Based Reasoning (TCBR) or Information Retrieval (IR) Data Mining Software Development (Java) User interface design

Background Information retrieval tools often have difficulty dealing with the sheer volume of information. One task in which information overload is already an issue is in looking at product reviews. Product reviews are available from many sources: commercial companies ask customers for feedback on product purchases; specialised product review sites record reviews or provide recommendations; and the explosion in social network sites has led to a further increase in the availability in product reviews on specialist community sites. However, the abundance of product review information creates a problem for users who want to access them to support informed decision making. As many individual opinions need to be read, it can be time-consuming for a user to acquire an overview or consensus view of the important aspects of a product and the associated sentiment towards each aspect of interest. For example for an hotel a user may be interested in sentiment relating to aspects such as hotel location and room cleanliness but not food quality. IR/TCBR approaches can help. Typically, a keyword-based query identifies an aspect of interest to the user and acts as a filter to retrieve reviews referring to that aspect of the product. However, a large number of reviews may still be retrieved and users are often initially unaware of which aspects are of interest to them. The key challenge is to provide users with an overview of the reviews without having to open and read them in detail. One approach is to use Natural Language Programming (NLP) techniques to summarise documents. However, this is hard and the approaches are computationally demanding making it difficult for real time systems. More recently, aspect-based sentiment analysis has been applied but the accuracy associated with sentiment analysis is not yet sufficient. A simpler, but more promising approach may be to take advantage of the advances in text visualisation techniques, such as tag clouds, to provide an overview as a visualisation. The overview may be of all the reviews or of documents created from clusters of aspect-based similar sentences. It is envisaged that the user could start with an general overview of all reviews and then could drill down into reviews by selecting more specific aspects relevant to both the product and user.

Page 77: Project With Header Spring 2015

73  

Stewart Massie 

This project will develop an interactive approach to exploring, searching, summarising and retrieving reviews in which visualisations of the retrieved documents are presented to the user. User interactions will then be used to provide an input for the next stage of the retrieval process, for example, to refine the search by selecting more specific aspects associated with the product. Aim The aim of the project is to design and implement a prototype system in which reviews retrieved for a query are presented as a visualisation and user interactions initiate the next stage of the process. Objectives The main objectives are:

to understand the IR/TCBR processes involved in retrieval, in particular the representation of text, the similarity between documents, and existing aspect-based sentiment analysis approaches;

to investigate available text visualisations techniques (e.g. tag clouds) and the availability of open source approaches;

to assemble a review repository in a suitable domain e.g travel;

to develop software that given a query will present reviews visually and then refine the retrieval process in response to user interactions; and

to evaluate the effectiveness of the visual approach to retrieval.

It is envisaged that Java will be used as the development language because open source libraries are available to support much of the work. For example, Lucene provides an existing IR framework on which to conduct the basic text retrievals; numerous visualisation packages or web services are available for text; and data on which to develop the system is be available from previous research activities or from the web. References

Spence, R. (2001) Information visualization, 2nd Addison-Wesley.

Lucene (http://lucene.apache.org/)

OpenCloud (http://opencloud.mcavallo.org/index.jsp)

Lopez de Mantaras R., et al. (2005). Retrieval, reuse, revision and retention in case-based reasoning, Knowledge Engineering Review 20(3): 215-240.

Deitel, Harvey (2005) Java : how to program

Downey, T. (2007). Web Development with Java, Springer.

Page 78: Project With Header Spring 2015

74  

Christopher McDermott 

Four projects from Christopher Mcdermott

Email: [email protected]

These projects are suitable for INS students ONLY

Project 1: LAN Security using a DMZ (Demilitarized Zone)

Project 2: Secure Network Design

Project 3: Remote Site Management and Security

Project 4: Layer 2 Security in Cisco Devices

Page 79: Project With Header Spring 2015

75  

Mathew Nicho 

Project title APT Vulnerabilities and Mitigation Supervisor Mathew Nicho [email protected] Suitable for INS students ONLY

Background One of the most serious and persistent threats that had emerged in recent years combining technical as well as non-technical skills is the Advanced Persistent Threat known commonly as APT where the hackers circumvent the organizational defences and instead target the naivety of the employees in making an unintentional mistake. While this threat has gained prominence in recent years, research on its cause and mitigation is a scant area of research. Analysis of high profile cases during the last three years where it (APT) had gained prominence revealed that unintentional mistakes of employees and the persistence of the attackers in using social engineering methods have largely contributed to this threat.

Project Objectives 1. Find out the different modes of APT attacks 2. Find out the vulnerabilities – both technical as well as non-technical 3. Come up with a set of configuration for mitigation Skills Required 1. Networking skills 2. Basic programming Further resources: 1. C. Tankard, "Persistent Threats and How to Monitor and Deter Them," Network Security, pp. 16-19, 2011.

2. M. Liebowitz. (2011, 7 July, 2011). 2011 Set to Be Worst Year Ever for Security Breaches. SecurityNews. Available: http://www.securitynewsdaily.com/2011-worst-year-ever-security-breaches-0857/

4. Symantec. Norton Cybercrime Report 2012 [Online]. Available: http://now-static.norton.com/now/en/pu/images/Promotions/2012/cybercrime/

5. Encode. (2012, June). Demystifying Advanced Persistent Threats: Encode Extrusion Testing Facts and Statistics. Available: www.encodegroup.com/colutions.aspx?page=APT

6. Symantec. (2011, May). Advanced Persistent Threats: A Symantec Perspective. Available: http://www.symantec.com/content/en/us/enterprise/white_papers/b-advanced_persistent_threats_WP_21215957.en-us.pdf

7. Fireeye. (2012, June). FireEye Advanced Threat Report Available: http://www2.fireeye.com/advanced-threat-report-1h2012.html

8. Wright, K. (2014). "UK is the No. 1 Target for Advanced Persistent Threat cyber attacks." Retrieved 20th October, from http://www.itgovernance.co.uk/blog/uk-is-the-no-1-target-for-advanced-persistent-threat-cyber-attacks/

Page 80: Project With Header Spring 2015

76  

Mathew Nicho 

Project title Implementation Issues in PCI DSS Supervisor Mathew Nicho [email protected] Suitable for INS students ONLY

Background The Payment Card Industry Data Security Standards (PCI DSS) is the very first industry-wide standard that aims at achieving a strong protection of sensitive consumer and cardholder data, and prevents major security issues. The growing dependence on online transactions has forced merchants dealing with credit cards to comply with PCI DSS or face huge penalties for non-compliance. With more and more transactions based on credit cards, merchants are finding it costly and increasingly difficult to implement and interpret the PCI standard. One of the top reasons cited for merchants to fail PCI audit, and a leading factor in data theft, is the failure to adequately protect stored cardholder data. Hence while implementation of the PCI DSS is not a guarantee for perfect protection, effective implementation of the PCI standards can be ensured through the divergence of the PCI standard into the wider information security governance to provide a comprehensive overview of information security based not only on security but also security audit and control.

The PCI DSS tends to specify technologies quite loosely, making requirements at a higher level, and often only including technologies as a suggestion. The technologies involved include IPS and IDS, firewalling technologies, two-factor authentication, and more unusual controls such as file integrity monitoring and centralized log analysis tools. This complicates compliance programs somewhat, as the standard is not actually presented in such a fashion that a series of tickboxes can be easily completed. Project Objectives 1. Find out the major implementation issues in PCI DSS implementation 2. Find out the most relevant and difficult requirement (out of the 12) one to implement 3. Come up with a set of recommendations and suggestions for effective implementation Skills Required 1. Knowledge of Security standards 2. Basic knowledge of networking Further resources: 1. Nxumalo, Z. C., Tarwireyi, P., & Adigun, M. O. (2014, October). Towards privacy with

tokenization as a service. In Adaptive Science & Technology (ICAST), 2014 IEEE 6th International Conference on (pp. 1-6). IEEE.

2. Palmer, E. (2014). The Importance of Payment Card Industry Data Security Standards for Startup Companies.

3. EL ALLOUSSI, H., FETJAH, L., & CHAICHAA, A. (2014). Securing the Payment Card Data on Cloud environment: Issues & perspectives. IJCSNS, 14(11), 14.

Page 81: Project With Header Spring 2015

77  

Mathew Nicho 

Project title Creating a Taxonomy of Security Issues in Cloud Computing

Supervisor Mathew Nicho [email protected] Suitable for INS students ONLY

Background Cloud computing encompass many technologies namely distributed computing, virtualization technology and other computing technologies. The basic concept of cloud is based on the premise that instead of having selected information systems resources like software and data stored locally on a user’s or organization’s computer systems, these resources can be stored on Internet servers, named as “clouds,” and accessed as a paid service on the Internet from anywhere through Internet. While there are numerous papers on security in cloud computing a complete taxonomy is lacking in the literature Project Objectives 1. Find out all the security issues and concerns in the different cloud services and platforms. 2. Come up with a taxonomy Skills Required 1. Knowledge of IS security 2. Basic knowledge of networking Further resources: 1. Grover, J., & Sharma, M. (2014, July). Cloud computing and its security issues—A

review. In Computing, Communication and Networking Technologies (ICCCNT), 2014 International Conference on (pp. 1-5). IEEE.

2. Fernandes, D. A., Soares, L. F., Gomes, J. V., Freire, M. M., & Inácio, P. R. (2014). Security issues in cloud environments: a survey. International Journal of Information Security, 13(2), 113-170.

3. Xiao, Z., & Chen, J. (2015, January). Cloud Computing Security Issues and Countermeasures. In Proceedings of the 4th International Conference on Computer Engineering and Networks (pp. 731-737). Springer International Publishing.

Page 82: Project With Header Spring 2015

78  

Prof Babs Oyeneyin 

 

MSc OIL& GAS IT PROJECTS – 

                                     2015  

 

Professor Babs Oyenyin  

Mail: [email protected] Mobile: 07828285245 

 

 

 

Professor Babs Oyenyin has supplied 7 Oil & Gas related project proposals. 

There are some general aims which are shared by all these projects. Professor Babs has also stated 

some requirements for the way in which the project will be conducted. Any student choosing one 

of these projects needs to accept these requirements. 

 

 These aims and requirements are listed on the following two pages, followed by the list of projects. 

 

Please note that these projects are available for September 2014 Oil & Gas students ONLY. 

 

 

 

 

 

   

Page 83: Project With Header Spring 2015

79  

Prof Babs Oyeneyin 

KEY AIM FOR EACH PROJECT  

   

• To develop appropriate software support system for each 

of the topical areas  

•  System should be versatile enough to be a standalone system 

for Integrated Petroleum Engineering Solution  •  Candidate to source, test and validate relevant Engineering 

model(s)  •  Integrate into relevant user friendly software platform  •  Scope to include development and testing  

•  Alpha version should be a standalone system for application in 

the oil & gas industry   •  Looking for candidates with initiative and drive    

Page 84: Project With Header Spring 2015

80  

Prof Babs Oyeneyin 

 

        REQUIREMENTS          (conduct of project) 

 

•  Project Proposal  •  Work Package  •  Progress Meeting Schedule  •  Individual Progress Meetings 

 

– Fortnightly  – Preceded by 2‐Page Progress Report 

 

• Objective for the period, Action, Highlights of Results  

• Monthly Formal Presentations    

Page 85: Project With Header Spring 2015

81  

Prof Babs Oyeneyin 

         PROJECT LIST & CANDIDATES 

       Suitable for SEPTEMBER 2014 Oil & Gas students ONLY  

S/N  PROJECT TITLE No. 

OF STUDENTS

1  Real‐time Hydrocarbon Production Data Management System 

Student 1 : to focus on development of PDM that can also be used for 

Real‐Time Reservoir pressure , pressure decline and flowing bottom 

hole pressure prediction  

Student 2 : To focus on use of  PDM that can also be used for future 

production forecast prediction with comparison of Decline Curve Analysis 

with Material Balance  Student 3: To focus on use of  PDM that can also be used for real‐time 

Scale & Hydrate prediction 

2  Real‐Time Textural Properties Prediction from Petrophysical Data – 

Phase II 

3  Real‐time System for Formation Compressive Strength  prediction 

while drilling 

4.  Variable Density Managed Pressure Drilling  Hydraulics Management 

System 

5  Real‐Time System for Sand Production Rate Prediction  from Well Logs  1 

 

If you wish to choose one of these projects, please specify the page number (81),  

project number (1 – 5),  and title. 

 

Page 86: Project With Header Spring 2015

82  

Iain Pirie 

MSc Project Specification

Title Decision Theory Package Supervisor Iain Pirie Background A university lecturer, with limited computing skills, is in need of software to replace some of the lectures he gives on decision theory. (A typical decision theory problem is that a manager must decide upon the number of units of a product to manufacture when there is uncertainty concerning the likely demand for that product.) The lecturer wants the software to provide: interactive tutorials, and a facility for students to enter problems and apply different techniques. The role of this lecturer will be assumed by the supervisor. Aim To provide a decision theory software package suitable for use by students who are being taught about decision theory for the first time. Objectives

To conduct background research on decision theory techniques and relevant computer based learning.

To design and implement an interface that provides access to interactive material on several decision theory techniques.

To allow the user to enter information regarding, for example, the possible decision alternatives, states of nature, and corresponding payoffs for a given problem. For certain problems, the user will also have to be able to enter relevant probabilities.

To allow the user to enter answers for a given (user-entered) problem and to check those answers.

To provide worked solutions to user-entered problems. For problems involving Bayesian analysis of additional information, to provide the

user with output such as: the optimal decision strategy, the expected value of sample information, and the efficiency of sample information.

To provide, where appropriate, graphical representations of solutions in the form of a decision tree.

To allow the user to construct a decision tree for a specific problem and to obtain the solution from that decision tree.

To provide the user with appropriate guidance in using the package. Skills Required Good programming skills in the language of your choice.

Page 87: Project With Header Spring 2015

83  

Iain Pirie 

Bibliography Iain Pirie’s lecture notes on decision theory. Dennis T. L. & Dennis L. B., 1991. Management Science. West.    

Page 88: Project With Header Spring 2015

84  

Iain Pirie 

MSc Project Specification Title Inventory Management system Supervisor Dr Iain Pirie Background Companies that supply parts and equipment to (the oil) industry often have large storage facilities which comprise warehouses and yards. In order for such a business to run efficiently, good management of the processes associated with procuring goods from suppliers, storing those goods and dispatching orders to customers is essential. Aim To create a generic Inventory Management System that could be tailored to satisfy the requirements of any large supply company. Objectives

To research existing inventory management systems. To create a database that can be populated with information about goods, suppliers,

customers, etc. To construct a tool that allows the user to ‘map’ the storage facility so that item

locations and available space can be easily identified. To design and implement an interface to interact with the database and run

additional tools. To update inventory levels automatically upon receipt and dispatch of goods and to

provide automatic warnings of low inventory levels. To maintain sales records. To provide an economic order quantity calculator. To provide a system that manages purchases and orders efficiently. To allow the user to generate relevant reports.

Skills required Database design and programming skills. Specific software tools and platform    

Page 89: Project With Header Spring 2015

85  

Iain Pirie 

MSc Project Specification Title Inventory Models Software Package Supervisor Iain Pirie Suitable for Oil & Gas students, but OK for students on other

courses as well Background A university lecturer, with limited computing skills, is in need of software to augment the lectures he gives on inventory models. He wants the software to be educational and to allow his students to explore different models without the burden of excessive number crunching. The role of this lecturer will be assumed by the supervisor. Aim To provide an inventory models software package suitable for use by students who are being taught about stock control for the first time. Objectives

To obtain a sound knowledge of inventory models and a good understanding of computer based learning (CBL).

To provide the user with appropriate background information, perhaps in the form of interactive tutorials.

To provide an interface that allows the user to choose between several different inventory models.

To provide the user with appropriate guidance to help the user identify the appropriate model for a given scenario.

To allow the user to enter information regarding, for example, the annual demand for a product, and the holding and ordering costs associated with that product.

To provide the user with output such as: the optimal order quantity, the corresponding annual cost, and other relevant output.

To provide appropriate (interactive) graphical presentations: to enhance the students’ understanding of the models, and to help guide the user towards a practical near-optimal solution.

Skills Required Good programming skills in the language of your choice. Bibliography Iain Pirie’s lecture notes on inventory models. Dennis T. L. & Dennis L. B., 1991. Management Science. West.

Page 90: Project With Header Spring 2015

86  

Iain Pirie 

   

Page 91: Project With Header Spring 2015

87  

Iain Pirie 

MSc Project Specification Title Management Science Suite Supervisor Dr Iain Pirie Suitable for Oil & Gas students, but OK for students on other

courses as well Background Many large companies are faced with problems that can be solved using Management Science (or Operational Research) techniques. For example: a transportation problem arises when a particular product is manufactured at several supply locations and must then be distributed to several demand locations at minimum cost; a shortest route problem arises when the minimum distance is to be covered while making deliveries to several locations; a maximal flow problem arises when, say, oil is to be distributed from a source to a final location via a network of pipes of differing capacities. Aim To create a Management Science suite of programs that will solve a range of problems commonly encountered in industry.  

Objectives

To research Management Science techniques including transportation and network models.

To research any existing Management Science software tools. To design and build a package with algorithms to solve transportation-type problems

and network problems. (It is possible to implement certain algorithms using linear programming and/or genetic algorithm techniques.

To design and build a package with algorithms to solve network problems. To design an interface that will allow the user to input and edit a problem

specification as easily as possible. To represent a problem solution graphically in the form of a network. To provide built in user-guidance.

Skills Required  

Good programming skills in the language of your choice.

Bibliography Dennis T. L. & Dennis L. B., 1991. Management Science. West.

Page 92: Project With Header Spring 2015

88  

Olivier Regnier‐Coudert 

MSc Project Proposal

Project Title : Human in the loop Evolutionary Algorithms

Supervisor: Dr. Olivier Regnier-Coudert, [email protected] ,

Extension 2571

Key Words: Optimisation, Problem Solving, Evolutionary Algorithm, Graphical User Interface, Java

Background

Evolutionary Algorithms (EAs) are methods that iteratively generate and evolve solutions to a given problem. Examples of EAs include Genetic Algorithms, Ant Colony Optimisation, Particle Swarm Optimisation and are often nature-inspired. EAs have proved successful at solving problems ranging from resource allocation to routing. Despite their overall ability to efficiently solve complex real-world problems, EAs may sometimes exhibit difficulties as a result of premature convergence to non-optimal solutions or the exploitation of sub-optimal areas of the search space. Restart procedures or mutation kicks are possible solutions to these issues. In this project, an alternative approach will be investigated: a human intervention, which will enable manual alterations of solutions or addition of new solutions during the search. In addition to helping with convergence issues, the human in the loop method may yield alternative solutions to the problems, by blending evolved and man-made features. Aims This project aims to develop a optimisation tool to enable human intervention along the search of an EA. The student will initially choose a population-based algorithm and a classic optimisation problem for the purpose. The tool should include:

an implementation of the chosen EA; a graphical user interface to allow tuning of the algorithm parameters and problem instance selection; a component to allow the EA to be paused;

The tool may also include:

additional EAs, allowing algorithm comparison; additional problems.

Requirements

Investigation of existing literature on EAs and their applications; Investigation of existing literature on human in the loop and human assisted EAs; Design and implementation of GUI modules; Design of tests to assess the potential benefits of human interventions in EAs; Writing technical report.

Required Skills

Strong programming skills in Java; Basic knowledge of EAs and strong interest in the field; Interest in research.

Resources

Page 93: Project With Header Spring 2015

89  

Olivier Regnier‐Coudert 

Farooq, H. and Siddique, M.T. (2014). A Comparative Study on User Interfaces of Interactive Genetic Algorithm. Procedia Computer Science, 32 pp. 45-52, available from http://www.sciencedirect.com/science/article/pii/S1877050914005961

Brownlee, J. (2011). Clever Algorithms: Nature-Inspired Programming Recipes. Available from http://www.cleveralgorithms.com/nature-inspired/index.html

 

Page 94: Project With Header Spring 2015

90  

Olivier Regnier‐Coudert 

MSc Project Proposal

Project Title : Job Data Visualisation for Truck Operations

Supervisor: Dr. Olivier Regnier-Coudert, [email protected] ,

Extension 2571

Key Words: Logistics, Scheduling, Graphical User Interface, Web programming, Databases, Visualisation

Background

In collaboration with industries from Aberdeen, data has been collected on truck operations. Trucks are used on a daily basis to carry goods from different locations around Aberdeen. Although any type of goods may be transported, oil and gas related cargos account for the largest part of the haulage and consequently, a large part of the activities of the activity is centered around the harbour, where platform supply vessels can be loaded and unloaded. Following operations of a haulage company, data on trucks and jobs has been gathered. For a particular job, the data contains its collection and delivery details, its client, or its allocated resource. This data may also be linked with geolocation data to understand what route was used for the job. Because of the typical large vehicle fleet size and the large number of jobs, the volume of job data is difficult to process and well though visualisation and statistics tools need to be developed. Aims This project aims to develop a visualisation tool for the truck operation job data. The tool should include:

software components to retrieve data from a MySQL database software components to filter the data based on different features (eg. time window, specific trucks,

specific customer …) software component to visualise filtered data on a map software component to output statistics on the selected data a web-based graphical user interface to allow users to gather all above software components;

The tool may also include:

a software component able to estimate and generate artificial data from data profiles and statistics resulting from the above aims (e.g. generate operational data for customer X, on day Y).

Requirements

Understand truck operations and the dataset at hand Design and implementation of the different software components using model-view-controller patterns.

This stage requires comparing different libraries for MVC software development Design and implementation of a GUI (web-based). This stage requires comparing different libraries for

mapping data (eg. Google Maps) and outputting statistics Writing technical report.

Required Skills

Strong programming skills, in web technologies (javascript, MySQL); Interest in data visualisation.

Resources

Examples and tutorial for MVC libraries: http://todomvc.com/

Page 95: Project With Header Spring 2015

91  

Olivier Regnier‐Coudert 

Andrienko G, Andrienko, N and Wrobel, S. Visual Analytics tools for analysis of movement data. ACM SIGKDD Explorations Newsletter - Special issue on visual analytics. Vol 9(2). Pp. 38-46, 2007. Available from http://dl.acm.org/citation.cfm?id=1345455

 

Page 96: Project With Header Spring 2015

92  

Olivier Regnier‐Coudert 

MSc Project Proposal

Project Title : Resource Data Visualisation for Truck Operations

Supervisor: Dr. Olivier Regnier-Coudert, [email protected] ,

Extension 2571

Key Words: Logistics, Scheduling, Graphical User Interface, Web programming, Databases, Visualisation

Background

In collaboration with industries from Aberdeen, data has been collected on truck operations. Trucks are used on a daily basis to carry goods from different locations around Aberdeen. Although any type of goods may be transported, oil and gas related cargos account for the largest part of the haulage and consequently, a large part of the activities of the activity is centered around the harbour, where platform supply vessels can be loaded and unloaded. Following operations of a haulage company, data on trucks has been gathered. For a particular vehicle, the data contains for regular time stamps its coordinates, its trailer, the jobs it is performing and other features such as speed or orientation. Because of the typical large vehicle fleet size, the volume of resource data is difficult to process and well though visualisation and statistics tools need to be developed. Aims This project aims to develop a visualisation tool for the truck operation resource data. The tool should include:

software components to retrieve data from a MySQL database software components to filter the data based on different features (eg. time window, specific trucks, …) software component to visualise filtered data on a map software component to output statistics on the selected data a web-based graphical user interface to allow users to gather all above software components;

The tool may also include:

a software component able to trim the data without information loss. This will be valuable with respect to the current large data volume.

Requirements

Understand truck operations and the dataset at hand Design and implementation of the different software components using model-view-controller patterns.

This stage requires comparing different libraries for MVC software development Design and implementation of a GUI (web-based). This stage requires comparing different libraries for

mapping data (eg. Google Maps) and outputting statistics Writing technical report.

Required Skills

Strong programming skills, in web technologies (javascript, MySQL); Interest in data visualisation.

Resources

Examples and tutorial for MVC libraries: http://todomvc.com/

Page 97: Project With Header Spring 2015

93  

Olivier Regnier‐Coudert 

Andrienko G, Andrienko, N and Wrobel, S. Visual Analytics tools for analysis of movement data. ACM SIGKDD Explorations Newsletter - Special issue on visual analytics. Vol 9(2). Pp. 38-46, 2007. Available from http://dl.acm.org/citation.cfm?id=1345455

Page 98: Project With Header Spring 2015

94  

Nirmalie Wiratunga 

ExplanationsinSocialRecommenderSystemsDr Nirmalie Wiratunga, Reader, Computing, RGU [email protected],  

www.comp.rgu.ac.uk/staff/nw/ 

KeyTechniquesandSkills Text Mining  

Recommender Systems 

Web Development Skills 

Java programming 

BackgroundSocial recommender systems help users locate attractive and relevant items by analysing social 

content such as online product  reviews.  In  recent years,  recommender systems have come  to  

provide not only a  list of relevant content to the users but also explanations of why a specific 

item  is recommended.     Some of  the explanations proposed  in the  literature are average user 

rating,  neighbours’  ratings  and  histogram with  grouping  interface  [4].  In  this  project we will 

explore how different explanation approaches might be applied to improve recommendation. In 

particular, we  generate  explanations based on  sentiment of  the product  aspects  from online 

product  reviews.  We  analyse  the  influence  of  such  explanations  in  recommendation  and 

evaluate the effectiveness of the proposed explanations in a social recommender system. 

AimandObjectivesThe overall aim is to explore the application of sentiment driven explanation in social recommender 

systems. Project objectives include: 

1. To carry out a survey on explanation in recommender systems. 

2. Develop a recommender system using methodology in [3]. 

3. Develop sentiment driven explanations in the recommender system. 

4. Compare the sentiment driven explanations with other existing explanation approaches in 

top‐N recommendation task. 

References[1] Tintarev, N., Masthoff, J.: A survey of explanations in recommender systems. In: Proceedings 

of the 2007 IEEE 23rd International Conference on Data Engineering Workshop, ICDEW ’07, 

pp. 801–810. IEEE Computer Society, Washington, DC (2007) 

[2] Herlocker, J.L., Konstan, J.A., Riedl, J.T., 2000. Explaining collaborative filtering 

recommendations. In: Proceedings of the 2000 ACM Conference on Computer Supported 

Cooperative Work (CSCW000), Philadelphia, Pennsylvania, USA, pp. 241–250. 

Page 99: Project With Header Spring 2015

95  

Nirmalie Wiratunga 

[3] Yoke Yie Chen, Xavier Ferrer, Nirmalie Wiratunga, and Enric Plaza. Sentiment and preference 

guided social recommendation. In Case‐Based Reasoning Research and Development, pages 

79‐94.Springer, 2014. 

[4] Gedikli, F., Jannach, D., & Ge, M. (2014). How should I explain? A comparison of different 

explanation types for recommender systems. International Journal of Human‐Computer 

Studies, 72(4), 367‐382. 

 

 

 

   

Page 100: Project With Header Spring 2015

96  

Nirmalie Wiratunga 

 

Data and Text Analytics Dr Nirmalie Wiratunga 

Reader School of Computing and Digital 

Media [email protected]   

 Social Media Mining 

 Using state of the art text mining algorithms you can develop applications that allow a local authority such as the Aberdeen City Council to track the opinions of people on a variety of services. For example by analysing tweets given a period of time ascertain whether they enjoyed the bon fire night? What traffic safety problems are being identified by people and in which areas of the city? 

 To develop such functionality you will need a good grasp of programming skills and appreciation of computing algorithms. From a technology point of view you have the flexibility to develop this as a web or mobile application using php, java script or Mongo DB. 

 

  Data Mining Analysing traffic safety from incident statistics. All accidents and incidents in the UK are currently being recorded and made available publicly through the SATS19 database. In this project your task is to use this database to present a variety of statistics about road safety in the UK. For instance you can find out what are the most common causes for reported fatalities by pedestrians, cyclists or cars? Which age groups, modes of transport appear to be most vulnerable? Which areas report the greatest fatalities and what can you infer in terms of socio demographic data? To develop such an app you will need to be passionate about data mining. It will also be helpful to good GUI skills because this would allow you to present trends and statistics using relevant data visualisation tools. 

    Recommender Systems 

 Much of the online retail industry now relies on intelligent algorithms to assist online shoppers. 

Consider popular sites such as Amazon, TripAdvisor or Expedia. These are all a rich source of data 

from which you can deliver useful apps. For instance there reviews generated by users, 

descriptions of products and information about which products were actually purchased after 

viewing a specific product. Could you for example develop a system that can analyse all reviews (in 

a given time windows) for a given  product to extract all the positive and negative reasons detailed 

by customers? Or you could extract the viewed and purchased product relationships to draw a 

graph to visualise people’ s purchase behaviour.  

To develop such functionality you need to appreciate the need for data and text mining and 

have very good programming skills with a passion for retrieval algorithms. 

   

Page 101: Project With Header Spring 2015

97  

Nirmalie Wiratunga 

ImprovingtheefficiencyofkNNwithPageRankDr Nirmalie Wiratunga, Reader, Computing, RGU. 

[email protected],  www.comp.rgu.ac.uk/staff/nw/ 

KeyTechniquesandSkills Data and Text Mining  

kNN and similarity metrics 

Excellent Programming Skills 

BackgroundPageRank  is  commonly  used  to  identify  authoritative  nodes  in  graphs.  Its  most  famous 

application  is the ranking of documents for Google. This algorithm assigns an  importance score 

to a node  in a direct‐graph by taking into account the outward and inward links of a node. The 

Pagerank  score  of  a  node  is  proportional  to  the  Pagerank  scores  of  its  incoming  links  and 

inversely proportional to the scores of its outgoing links.  The general intuition is that nodes that 

are important will have a greater influence on nodes linked to them. The algorithms is iterative 

and applicable to any form of directed graph.  

 

In this project we will explore how the above Pagerank algorithm might be applied to  improve 

the efficiency of a kNN algorithm.  For instance we will use the competence modelling metrics of 

reachability and coverage of a case to define  its  in and out  links, and then apply the Pagerank 

algorithm to score cases. These scores can be used to identify the core cases, thereby reducing 

the number of pair‐wise case comparisons at run‐time.  

AimandObjectivesThe overall aim is to explore the application of PageRank with kNN 

5. To carry out a survey on competence modelling, kNN and PageRank. 

6. Develop the PageRank algorithm. 

7. Integrate the outcome of 2 with kNN. 

8. Compare the indexing mechanisms with other traditional kNN case reduction techniques. 

References Smyth, B., McKenna, E.: Building compact competent case‐bases. In Klaus‐Dieter Althoff, 

Ralph Bergmann, and L. Karl Branting, editors, Proceedings of the Second International 

Conference on Case‐Based Reasoning Springer (1999) 329–342 

Wiratunga, N., Massie, S., & Lothian, R. (2006).: Unsupervised Textual Feature Selection. 8th 

European Conference on Case‐Based Reasoning (ECCBR‐06), Springer, pp 340‐354. 

Brin, S. and Page, L. (1998) The Anatomy of a Large-Scale Hypertextual Web Search Engine. In: Seventh International World-Wide Web Conference (WWW 1998), April 14-18, 1998, Brisbane, Australia. 

   

Page 102: Project With Header Spring 2015

98  

Nirmalie Wiratunga 

ThreeProjectsinSentimentAnalysisDr Nirmalie Wiratunga, Reader, 

Computing, RGU. 

[email protected],   

www.comp.rgu.ac.uk/staff/nw/  

KeyTechniquesandSkills• Text/Data Mining 

• System development, interface and integration 

• Excellent Programming Skills (e.g. Java)  

  Sentiment analysis is a recent area of text mining driven by the need to unearth patterns from 

both positive and negative user opinions on the social Web [6]. Unlike traditional Information 

Retrieval and text classification, the focus is not on ”topic”, but rather on the polarity (positive or 

negative) and the strength of sentiment expressed [7].  

 Vocabulary alone is not usually enough to reliably assess sentiment and extract phrases. 

Additional information, such as part‐of‐speech (POS) tags, grammatical analysis to identify 

negation terms and lexical valence shifters can further improve performance on this task. 

Research has shown that certain tag sequence patterns (e.g. centred on the adjective tag) are 

good extractors of sentiment‐rich phrases [8]. Furthermore, the relevant patterns for any 

particular domain can be learned automatically. With social content, non‐lexical terms such as 

emoticons and hashtags can also be exploited. Interested students can explore projects in the 

following directions: 

 Project‐1.  Sentiment Classification: Develop a sentiment classifier for an identified theme on social media  (twitter,reddit etc.) [1,2,5] 

  

Project‐2.  Sentiment Aspect Extraction: Develop an algorithm to extract key aspects from 

user reviews and generate sentiment over each of these aspects. A suitable domain 

might be reviews on trip advisor. [3,5] 

 Project‐3.  Twitter Emotion Analysis with Distance Supervision: Explore how emoticons 

can be utilised to develop an emotion classification algorithm for social 

media content. [4,5] 

 

            

Page 103: Project With Header Spring 2015

99  

Nirmalie Wiratunga 

 

References 

 1.  Mukras, R., Wiratunga, N., & Lothian, R. Selecting Bi‐tags for sentiment analysis of text. in Proc of 27th 

International Conf on Innovative Techniques and Applications of Artificial Intelligence, 2007, Springer. 

2.  F. Sebastiani. Machine Learning in Automated Text Categorization, ACM Computing Surveys, 34(1), 2002. 3.  Minqing Hu and Bing Liu. "Mining and Summarizing Customer Reviews". Proceedings of 

the 10th ACM International Conference on Knowledge Discovery and Data Mining 

(SIGKDD‐2004), Seattle, USA, August 

2004. 

4.  Alec Go, Richa Bhayani, Lei Huang. 2009. Twitter Sentiment Classification using Distant Supervision. 

Technical Report , Stanford 

5.  Christopher D. Manning, Prabhakar Raghavan and Hinrich Schütze, Introduction to 

Information Retrieval, Cambridge University Press. 2008. 

http://nlp.stanford.edu/IR‐book/information‐retrieval‐book.html  

 

Page 104: Project With Header Spring 2015

100  

Mark Zarb 

 

 

Title  A Booking System for Arduino Components 

Supervisor Suitable for 

Dr Mark Zarb CST / CSTNM / Oil & Gas students ONLY 

 

BackgroundArduino components (such as Arduino Pro Mini boards, LEDs, resistors, magnetometers and PIR 

sensors) are used in a number of contexts in the RGU undergraduate program: for example, they are 

used as part of the teaching for the CM1016 module, can be requested for use in Honours projects, 

and could be taken away to form a number of workshops (both internally and externally). 

Currently, there is no way to ‘track’ components or their whereabouts. 

 

AimThis project would be looking at a number of potential “check‐out” solutions (ideally some kind of 

web site/database) which would list all the components and allow users to check components out, 

and return them. Additionally, the system would be able to send out periodic reminders asking users 

to return their components should they be urgently required, or after they have been “checked‐out” 

for a certain period of time. 

 

SkillsRequired An awareness of project management 

Gathering system requirements 

A working knowledge of implementing web and database systems 

   

Page 105: Project With Header Spring 2015

101  

Mark Zarb 

 

Title  An App to Monitor Stock Prices  

Supervisor  Dr Mark Zarb 

Suitability  Oil & Gas students only  

BackgroundCurrently, prices for oil and gas are in a state of flux, and it has been recently reported that the oil 

price has dropped to its lowest point for six years.  

 

AimThis project would involve the creation of an app (tablet or phone) which would allow for easy 

monitoring of stock prices for user‐requested oil/gas companies, as well as other information (e.g. 

the current price of crude oil and gas), or display the retrieved stock prices as a visualisation/chart. 

It is expected that this project would involve an element of external research which would allow the 

student to determine areas that would benefit from being monitored, and an appropriate 

implementation for the chosen system. 

(This project could also involve a separate element at the start, dealing with organising a set of focus 

groups with potential users of this app, to derive system requirements or user stories.) 

 

SkillsRequired An awareness of project management 

A technical ability in developing app‐based solutions (e.g. tablet/phone; OS tbd by student) 

An understanding of the oil and gas industry 

 

ReferencesA number of datasets are available at https://www.gov.uk/oil‐and‐gas‐uk‐field‐data 

   

Page 106: Project With Header Spring 2015

102  

Mark Zarb 

 

Title  A Framework to Implement Programming Concepts in Processing 

Supervisor Suitable for 

Dr Mark Zarb Anyone 

 

BackgroundThe Processing language is often seen as a basic tool built for visual design communities, and it is 

built on the Java language. This allows instructors to demonstrate more complex code written with 

this simple tool: with little effort, concepts such as arrays, objects and inheritance can be 

demonstrated in Processing.  

A number of workshops have been developed, which allow students to write their own code (e.g. 

designing and coding individual fish, and animating them). Once all students complete this task, they 

are asked to e‐mail the instructor with their code. At this stage, the instructor then writes additional 

code to bring all these code snippets together (e.g. all fish designed during a workshop are animated 

in an aquarium) – however, this requires the instructor to spend a considerable amount of time 

refactoring the individual code – however, this is not always feasible.  

 

AimThis project can take one of two forms, depending on student preference. 

1) To design and implement a framework to support this process in a simpler way;  

2) To design and implement a series of workshops which visually engage learners whilst 

introducing certain programming concepts. 

This project may require the use of a certain degree of user testing in its final stages. 

 

SkillsRequired Knowledge of basic and advanced programming techniques (e.g. inheritance and abstract 

classes) 

Knowledge/willingness to learn the Processing language 

An understanding of user testing 

Research techniques 

   

Page 107: Project With Header Spring 2015

103  

Mark Zarb 

 

Title  A System allowing Practice of Intermediate‐Level Programming Concepts 

Supervisor Suitable for 

Dr Mark Zarb Anyone 

 

BackgroundFollowing an initial introduction to programming, students are often quickly exposed to a number of 

intermediate techniques which they find to be more complex to understand (e.g. class structure, 

inheritance, abstract classes, etc…).  

 

AimThis project aims to firstly understand which concepts students struggle with, through interviews 

and focus groups. The knowledge derived from this process should then be targeted in an adequate 

solution.  

It is currently anticipated that the proposed solution would be a ‘tutorial‐based’ system, however, 

this is a very flexible requirement: these concepts could be introduced in a more abstract or passive 

way, for example, through development of an app, or a game. 

 

SkillsRequired Project management 

Knowledge of more complex programming techniques (e.g. inheritance and abstract classes) 

An understanding of how to gather user requirements 

Research techniques 

 

Page 108: Project With Header Spring 2015

104  

Inés Arana 

 Title  Knowledge Hub ‐ Web‐portal 

Proposer  Independent Data Services Holdings Pte Ltd – Singapore  

Supervisor  Contact Inés Arana for further details   [email protected] 

 Background  Independent Data Services (IDS) delivers web‐based data and knowledge management solutions to the upstream Oil and Gas Industry. IDS specialise in Reporting and Analytics, which is driven by its DataNet framework. DataNet is web‐based and can be accessed via any flash enabled web‐browser.   As an extension of IDS services, IDS wish to aid their users in learning how to navigate, use and learn from their tailored IDS solution. This has led to discussions around the creation of a ‘knowledge hub’ consisting of training materials, glossaries and guides. This content management system (CMS) should interface with the IDS software ticketing system – Jira.  Aims  To plan, design and implement a knowledge portal integrated in the IDS customer facing website which is based on Joomla (other technologies may be recommended with sufficient reasoning and requirement). IDS at this point has licenses for Joomla, ZenDesk, SugarCRM and JIRA. All these tools should be evaluated and the most fit for purpose selected as the management tool   

Objectives  

To plan, design, implement, test and evaluate a ‘knowledge hub’ environment 

To investigate, design and implement an interface with Jira and ZenDesk 

To create a ‘feature future’ road map 

To fully document the implemented system  Key Techniques  Key techniques may vary from project management, service delivery, software development, software interfacing and/or integration, human computer interaction considerations and advanced graphical user interface skills.  Notes  

IDS will provide access to the content management system that is to be used. 

IDS offices and staff can be used to brainstorm ideas, and work on the project within office hours. 

IDS standard software applications should be used and will be provided. Note:  This project was obtained by Inés Arana, but a supervisor has not yet been assigned.     

Page 109: Project With Header Spring 2015

105  

Inés Arana 

 

Project Specification  

Title  Data Management – Investigation on Data Completeness 

Proposer  Independent Data Services Holdings Pte Ltd – Singapore  

Supervisor  Contact Inés Arana for further details  [email protected]  

 Background Independent Data Services (IDS) delivers web‐based data and knowledge management solutions to the upstream Oil and Gas Industry. IDS specialise in Reporting and Analytics, which is driven by its DataNet framework. DataNet is web‐based and can be accessed via any flash enabled web‐browser.  IDS currently store its customer’s data on hosted web‐servers (via an external cloud) and can access all of this information in order to perform statistical analysis and learning from its vast amount of data. IDS require an investigation into how ‘complete’ their customer’s data sets are.  Aims Investigate, analyse and document fields, which are commonly captured in the IDS DataNet suite. Find trends in data capture and investigate the data set to find trends that are not already known to IDS or the Industry. A full write‐up of the investigation should be provided to IDS containing a breakdown of techniques used, results, and possible completeness improvement methods.  Objectives 

To analyse the IDS DataNet system to find data completeness issues 

To investigate and compare data completeness across a number of IDS customers 

To fully document the investigation 

To document possible data completeness and product usability improvements 

ADDITIONAL: To design, implement, test and evaluate a software application that can be run on any IDS product to determine the completeness of data within its own realm. 

 Key Techniques Key techniques may vary from statistical analysis, database querying, software development, data management review, data modelling and project management.  

Notes  

IDS will provide access to the DataNet application as to investigate the suite 

IDS offices and staff can be used to brainstorm ideas, and work on the project within office hours. 

IDS standard software applications should be used and will be provided.  

Note:  This project was obtained by Inés Arana, but a supervisor has not yet been assigned.  

Page 110: Project With Header Spring 2015

106  

Inés Arana 

  

Title  E‐commerce solution ‐ IDS Marketplace 

Proposer  Independent Data Services Holdings Pte Ltd – Singapore  

Supervisor  Contact Inés Arana for further details  [email protected] 

 Background Independent Data Services (IDS) delivers web‐based data and knowledge management solutions to the upstream Oil and Gas Industry. IDS specialise in Reporting and Analytics, which is driven by its DataNet framework. DataNet is web‐based and can be accessed via any flash enabled web‐browser. Currently IDS Technical staff manually create ‘tailored solution’ (web) sites for each client.  IDS require an investigation into the creation of an e‐commerce “marketplace” environment where clients can self‐service and auto‐implement a working solution. 

 Aims Investigate and develop an e‐commerce environment where users can select capabilities, a pricing plan and auto‐implement a working solution consisting of IDS’s DataNet reporting and analytic capabilities.  

Objectives  To investigate current and emerging e‐commerce technologies 

Select most appropriate technology(ies) 

Design, develop and test a prototype e‐commerce system that can auto‐build a working DataNet2 solution from user selection capabilities. 

Fully document the investigation and development  Key Techniques Techniques include, but not limited as: 

Technology review 

Software prototype design, development and testing 

Project Management 

 Notes  IDS will provide access to the DataNet application as to investigate the suite 

IDS offices and staff can be used to brainstorm ideas, and work on the project within office hours. 

IDS standard software applications should be used and will be provided.  

Note:  This project was obtained by Inés Arana, but a supervisor has not yet been assigned.    

Page 111: Project With Header Spring 2015

107  

Inés Arana 

 

Project Specification Title  DrillNet Data Validation – An Investigation 

Proposer  Independent Data Services Holdings Pte Ltd – Singapore  

Supervisor  Contact Inés Arana for further details  [email protected] 

 Background  Independent Data Services (IDS) delivers web‐based data and knowledge management solutions to the upstream Oil and Gas Industry. IDS specialise in Reporting and Analytics, which is driven by its DataNet framework. DataNet is web‐based and can be accessed via any flash enabled web‐browser. There is currently limited validation in place within the IDS DataNet solutions, therefore relying on the user to be accurate when entering data. IDS require an investigation into possible validation methods that would improve the data accuracy, and final data integrity. 

  Aims  Investigate and document validation methods in the IDS DataNet environment to improve final data quality & integrity  

Objectives  

Review and analysis of IDS DataNet environment to identify opportunities for applying data validation 

Make recommendations based on investigation for introduction of data validation methods into IDS DataNet solutions. 

Fully document the investigation 

 Key Techniques  Techniques include, but not limited as: 

Data validation methods/techniques 

Software design, development and testing 

Project Management  

Notes  

IDS will provide access to the DataNet application as to investigate the suite 

IDS offices and staff can be used to brainstorm ideas, and work on the project within office hours. 

IDS standard software applications should be used and will be provided as necessary.  

Note:  This project was obtained by Inés Arana, but a supervisor has not yet been assigned.