home page
team members
about the client
tools page
progress
news
release 1
release 2
comments

Release 1 Completed

Introduction

Croquet Tasmania currently uses a unique system of managing and calculating handicaps for its members, designed and run by Maurice Woodmansee. In an effort to increase the usability of the software, changes now include a modern graphical user interface, with mouse support. The system is designed using PHP, MySQL, JavaScripts and Java. The system runs on an apache web server and displays via a web browser, it will be relatively easy to convert the system to run via the Internet.


Graphical User Interfaces

The graphical user interfaces have been implemented in HTML to enable them to run in a web browser.  This is to meet the requirement that the system should be easily transferable to a completely web-based environment, if that is necessary in the future.

The interfaces are driven by PHP scripts that access a MySQL database and then retrieve information to be displayed. 

As requested by the client, the graphical user interfaces contain point and click mouse-driven icons and buttons for improved useability over the text based menus of the existing system.  These have been implemented in HTML as buttons and hyperlinks.

A facility has also been implemented in JavaScript to detect the monitor settings of any computer accessing the system which changes the size of the GUIs displayed.  This was done to allow the user interfaces to fit on our client’s computer where their preferred display setting is 640x480.


Security

Security is enforced by compulsory user authentication when logging on to the system. This is achieved by a login page that is the first thing to load upon starting the system. Every HTML page and PHP function and script will call a function to check the user's authentication to prevent anyone from typing in the URL of a page and accessing privileged information. 

The user authentication required to access the database and all database queries requires user authentication from the script(s) running them.


Database

A MySQL database has been created to store and manage all the information, with the main classes and their attributes represented as tables. The tables created include:
•    A player’s table with personal and contact details, as well as club,                 merit points and handicap information.
•    A game’s table with Game ID, Date and Handicap game(Y/N).
•    An Event table with Event ID, and Event name.
•    An honours table with Honour ID and the Honour name.
•    A Club’s table with Club ID, Club name and Club phone.
•    A Player's club table with Date joined and Active(Y/N).
•    A Results table with Score, Merit Points and Win or Loss.


Maintaining Player List

The first release allows an authenticated user (having logged in) to enter new players into the system.  The system automatically allocates a unique player reference number, providing the next available reference number from the database.


Game data text files

An authenticated user enters game result data into a form generated by a java applet, which is embedded in HTML code. The form is a stand alone program which is not connected to the main Handicapping System, and will be based on each club's computer. Data is stored in a basic uniform text format, and can be sent via email (as an attachment) to the administrator.


Reporting


All the reports from the existing system will need to be replicated in the new system. After choosing the required report from the menu system the report will be generated from the database and displayed on-screen. The report can then be printed or emailed using the web browser.

The only  report created in Release 1 was the 'Player List' report, which generates a list of players matching criteria selected by the user such as number of games played or whether the player is currently in competition or not.





image courtesy www.croquet.com