SCORE Project Topics

Please note that the official list of project ideas and abstracts is given here, but some full project descriptions may not be posted until later in February 2015 — they will be posted as they are completed. If you're interested in a project that still lacks a full project description, please contact the project's sponsor directly to ask for details.

DRisk: A Dynamically Configurable Risk Game

Risk is a turn-based board game, in which 2 to 6 players fight over the occupation of 42 territories in a political map, trying to achieve a secret mission that generally requires the control of the territories in the map.
Risk has several known playability limitations. One such limitation is that the map configuration is rigid, in the sense that both the number of territories and the neighboring relation between territories (which determines how the attacks between territories can be performed) are fixed for all game instances. Another limitation is that the granularity of the map (in particular, how many territories constitute it) is also fixed, making some game instances very lengthy, especially when a small number of players is involved.
The goal of this project is to develop a turn based client server Risk game, in which users play the game through a web site, and that offers high configurability, in particular: it allows users to define and upload map configurations, including not only the aesthetic aspects such as images, etc., but also specific numbers of territories and neighboring relations (and optionally stronger restrictions on the number of players); it allows for maps to automatically adjust granularity, by collapsing neighboring territories according to number of players and a user selected complexity for the game (e.g., easy, medium, hard).

Sponsor: Nazareno Aguirre

Full project description.

Agile TweetViz: Agile Tweet Visualization

The popularity of social media has made Twitter ( a reliable platform for measuring social opinion. Unfortunately, giving a meaning to a massive number of tweets is challenging, despite the significant potential for measuring public opinion.
This project is about creating an agile Tweet visualization engine. This engine should provide the ability to easily craft and tailor visualizations of a possibly large number of tweets. Visual patterns, emerging from the visualizations, will indicate facts.
Visualizations should provide a way to easily navigate and crawl over tweets.

Sponsor: Alexandre Bergel

Full project description.

mySOTD: My Shave of the Day

Every day, millions of men in the world remove their facial hair: for some this is a chore, for others it is a ritual. Wet shaving enthusiasts perform this ritual by using a combination of tools, ranging from hardware (shaving brush and razor) to software (shaving cream/soap and aftershave). The daily choice of these tools makes the SOTD (Shave of the Day), which is often shared online with other wet shavers. In this project, you will develop a mobile app that keeps track of the SOTDs of the user, as well as of his collection of tools.

Sponsor: Domenico Bianculli

Full project description.

StudentRecruiter: University Student Visit Management

For this project, develop a recruiting system for universities who manage the visits of high school students to their campus. This involves many stakeholders across many campus organizations (from administrative units to academic departments to room schedulers), and the coordination of many events and schedules (from large introductory sessions to individual department visits to career services to receptions). What sounds easy is actually very complicated!

Sponsor: Jeff Gray

Full project description.

UmpleGame: A Distributed Game in Umple

For this project your team will create a distributed multi-player game while exercising a maximum of features of the Umple modeling technology ( The goals of the project are: a) To demonstrate the power of Model Driven Development and Umple in software engineering; b) To uncover and help solve any issues with Umple in realistic projects.

Sponsor: Timothy Lethbridge

Full project description.

PhysioLib: A Library for Verifying Correctness of Physiotherapy Exercises

Patients affected by a spinal cord injury need rehabilitation to prevent complications, promote recovery, and make the most of remaining functions. The rehabilitation in all the spinal cord injuries is a long-term process requiring regular ongoing exercise. Among the different spinal cord injuries, we focus on paraplegia which is a complete or partial paralysis of the lower half of the body. Incorrect execution of physiotherapy exercises can have disruptive consequences on the control of the core (body minus legs and arms).
Recently, motion-based games have been used to assist patients during the execution of their rehabilitation programs. Motion-based games are fully controlled by the players’ movements that are captured through sensors (e.g., gyroscopes, infrared cameras, body scanners) provided by the game system. However, motion sensing input devices available on the market (e.g., Wii, Kinect) are not equipped with suitable software functionalities for controlling the execution of correct movements by patients affected by spinal cord injuries.
The PhysioLib project aims at providing a software library for motion sensing input devices able to recognise correct and wrong movements performed by individuals affected by paraplegia. The teams are required to acquire knowledge related to physiotherapy programs for paraplegic people, with a particular focus on identifying typical correct movements and potentially harmful ones. Developed libraries will be evaluated through the development of a motion based game exercising correct movements suggested by physiotherapy programs and leveraging a motion sensing input device chosen by the team members.

Sponsors: Liliana Pasquale and Paola Spoletini

Full project description.

Sana Modules: Contribute to an Open Source Medical System

Sana is an open source system for medical records and workflow, with active deployments around the developing world ( Sana is still being developed and has various needs that can serve as SCORE projects.

Sponsor: Derek Rayside

Full project description.

SE4YH: Smart Energy for Your Home

Standards are emerging for connecting smart home appliances in a network that allows users to monitor and control them through hw/sw gateways. One such standard is developed by the Energy@Home association (, with particular focus on energy management.
The goal of the project is to develop a system that allows users to define their own preferences and rules for the management of energy consumed by their appliances (e.g., conflicts, priorities, goals), and to manage the appliances in the house depending on them. The students are expected to survey potential users to understand and define the kind of management rules that are of interest for users, and to define a flexible infrastructure to allow them to express and run these rules in their home.

Sponsor: Matteo Rossi

Full project description.

Distributed Software Development: Team and Source Code Overview

This program aims to help students working in distributed software engineering projects to have a better overview of who is working on particular parts of the code, what tasks are associated to each file, and who is responsible for each file, as well as the working patterns for each individual, to allow for better communication. For example, student Smith might be responsible for a file, but she is working from Australia, therefore, only online between particular times. The program will run as an overlay over an IDE and will be continuously updated as changes happen to the code and responsibilities get allocated.

Sponsor: Claudia Szabo

Full project description.

CodeCoach: Coaching Best Coding Practices

This program will implement a coding coach aimed at teaching beginner programmers about the best practices. The CodeCoach will function like an assistant, similar to the Microsoft Office PaperClip. Once the beginner programmer finishes a program or a method/class, the CodeCoach will highlight best practices that could be applicable to the code that the beginner has written, and would suggest avenues for improvement of the code. The CodeCoach will also record metrics similar to those included in the PSP and offer advice at the end of coding sessions.

Sponsor: Claudia Szabo

Full project description.

DegreeOverview: A Course Definition System

This program will allow University lecturers to define and relate the learning outcomes of each course with other courses within the degree. Lecturers are also able to define the relationships between these outcomes and the course assessment, such that it will be possible to see for a particular assessment mark, how well the student achieved the desired outcomes. The students and lecturers will be able to visualise the dependencies between learning outcomes across a degree. Moreover, a student will be able to see his or her performance on various learning outcomes. Lecturers will be able to see aggregated results across a course or across a degree.

Sponsor: Claudia Szabo

Full project description.

MeetMe: A Better Meeting Planner

Planning meetings with Doodle ( is tedious and difficult with more than a few people who each have many constraints. For this project you should create a better meeting planner, one that fills the same purpose as Doodle, but more efficiently (in terms of user time and elapsed time to find a meeting time). It should draw from Google Calendar ( and/or other widely used calendaring applications to help choose prospective meeting times. It should work (although perhaps not as conveniently) for users who do not use the same calendaring application, or who choose not to share that information. It should respect privacy and security preferences. In particularly, it should make it possible to find a meeting time in common with minimum disclosure of schedule information. An analysis of privacy and security should be an integral part of the project.

Sponsor: Michal Young

Full project description.