System Architecture

System Architecture

The UniVote system is made up of five components: a server application, a client application, a front end, a central database and web service and a web administration site.

Server Application

The server application is a small Java (J2SE) application which listens for incoming connections via Bluetooth from mobile phones running the client application. Once connected, the server application sends lists of questions to the client, retrieves any incoming votes and updates the central database by means of the web service.

Client Application

The client application is a Java (J2ME) application which allows Java and Bluetooth-capable mobile phones to cast a vote.

Front End

The front end is an attractive interface by which users interact with the UniVote system. It is developed using Macromedia Director and can run either as a stand-alone application or over the Internet using the Macromedia Shockwave Player.

Central Database & Web Service

The central database is built on the MySQL platform, and is remotely hosted at Hosting this component remotely allows the UniVote system to be deployed at any location with Internet access. The web service provides a means of transferring data between the database and the server application and front end, via PHP scripts.

Web Administration Site

The web administration site is remotely hosted at and allows system administrators to configure a UniVote display (and the questions shown on it) without physical access to the computer running the display. Voting statistics can also be viewed and displays voting can be simulated with a virtual phone.