Objective

The aim of this exercise is simply to demonstrate the way that you approach a problem and the general style of your coding.
The problem should not take more than one or two hours.The choice of language and/or framework is up to you, pick something you are familiar with.However, the work that Roar Software does is predominantly Object Oriented, and uses the Model-View-Controller (MVC) paradigm, so it would help your application to see those techniques employed.

Problem Description

A scrabble club requires a system to store members’ information and provide leader boards to show their top performing players.

For members we would want to store information such as the date they joined the club and their contact details.

All recorded scrabble games are head to head matches between 2 players, the player with the highest score at the end of the game wins.

You should provide, in order of priority:

  • Database schema definition (create table statements) for your solution
  • A member’s profile screen showing their
    • number of wins
    • number of losses
    • their average score
    • their highest score, when and where it was scored, and against whom
  • Interfaces (preferably browser based) to create and edit members’ details, such as name, contact number etc.
  • A leader board screen to list the members with the top 10 average scores, for those members who have played at least 10 matches.

There is no need for the candidate to produce interfaces to manipulate all the data in the database and adding test data manually is fine.

There is no requirement for users to login or be authenticated.

Hints

  • The description is deliberately a little vague, don’t worry about guessing exactly what we mean.
  • Don’t spend too long on the exercise, a small amount of well produced code tells us enough, we don’t need a complete solution.