Twister is a ‘Twitter-like’ social networking system developed for the Service Oriented Architecture module (SOAR) at the University of York as part of an MSc in Advanced Computer Science.

The system provides users with their own account to post short statuses and follow others on a personal timeline. They can search all the users in the database and choose to follow or unfollow them, and view who they follow too.

The Service

I was tasked with creating this social network using Java web services learnt during the module. Several technologies were used to power the service, including:

  • Java
  • Apache Axis
  • Apache Tomcat
  • Web Services Description Language (WSDL)
  • SQL databases

The service provided stateless operations for the client to use, such as making and retrieving posts, creating an account and viewing profile information. The service also used Apache Synapse to provide load balancing and redundancy to the service. Service operations and faults have been designed to follow the SOA principles.

The Client

The client utilised the following technologies:

  • HTML and CSS
  • Java Servlets
  • JavaServer Pages
  • JavaScript

This was my first ever web development project in Java. I had used Microsoft’s WCF and SQL briefly before, but I really enjoyed learning the tools for front-end development here. I think I improved greatly over the few months the project was developed in. I received a mark of 85% in the assessment at York.

Twister screenshot The login screen, and choice to create a new account

Twister screenshot The home page, logged in as ‘epsilon’. Here is the custom timeline and the ability to post a new status

Twister screenshot The profile page of an example ‘Bill Gates’ account, showing follower statistics and a short bio