Guitar Hero Dashboard

Overview

Guitar Hero Dashboard is an internal reporting tool that allows business users to view realtime usage statistics for Guitar Hero iPhone. The iPhone app itself records and stores various usage metrics like time spent in various menus, number of songs played, etc., for the purpose of providing additional enhancements and a more engaging user experience in future games. The amount of information collected from this process is immense and Guitar Hero Dashboard provides users with the ability to triage that data with reports that are customized to their individual business requirements.

Partnering with Spiral Design Studio for the design and user experience, Gavant provided the full implementation and integration effort in delivering a final solution to Vicarious Visions.

Architecture

Guitar Hero Dashboard is an internal-use web application, built from the ground up with an MVC-style architecture using the Java Struts framework. Extensive use of YUI and AJAX provide for a modern and responsive user experience. The system relies heavily on multithreading for realtime import and storage of usage statistics.

The solution was deployed on internal Linux servers configured with Apache, Tomcat and MySQL. While user load is low given the internal exposure of the application, the data volume is quite high, recording as many as tens of millions of rows per day on average. Slicing and partitioning is relied on to balance the large data set with a responsive user experience.

Integration

DemonWare houses the data collected from the app. The application imports this data via a REST interface on a throttled interval. Data like usage metrics, artist catalogs and leaderboards are imported and stored for immediate visibility by custom user reports.

Highlights

  • Internal web application with views of realtime usage statistics
  • Fully customizable report builder to search usage statistics according to defined metrics
  • Support for high volume storage and data manipulation

Technologies

  • Java, JSP/Servlet, JSTL
  • AJAX, HTML, JavaScript, CSS
  • MySQL
  • JSON
  • Apache Struts · MVC web framework
  • YUI Library · JavaScript framework
  • JMeter · Automated testing
  • Selenium · Automated testing

Integrations

  • DemonWare · Realtime data import