Final Touch Up Before Submission

Today was spend doing some final touch ups on both the client and server side of the applications before we submitted the code to our supervisor.

Conor thoroughly tested all functionality of the server side and gave me his opinions on any little improvements that could be made at the last minute.

I did the same for the android app. There wasn’t a whole lot that needed to be done just some slight improvements in aesthetics as well as implementing an undo button incase data was entered incorrectly.

Full Communication Between Client & Server

We now have full communication working between the client and the server.

Conor has added a button to the action bar in the app. When this button is clicked it prompts the user to log in with their S.L.S. registered email and password. Once the user is logged in there is a new option on the screen to push data to the cloud. The user just enters their unique match identifier that they are given when creating the match online.

Again we used http post here to send the data. We originally tried to send json formatted data but ran into a few issue doing this, because of the tight time constraints on the project we settled to send strings of data that could then be parsed to ints.

Once the data is received by the   server it is stored in the match data table. The unique match identifier is used to link the match data table with the matches table. The matches table is where information about such as the opponent, date and team is stored, where as the match data table just has the metrics and scores.

Below are images that will give you and idea of the table structures:

Screen Shot 2015-03-19 at 19.59.38 Screen Shot 2015-03-19 at 19.59.33

Considerable Progress

We made a considerable amount of progress in the last week.

I have a basic admin dashboard up and running. I used a bootstrap template that I found here to get thing off the ground. This template includes a really flexible javascript graphing library morris.js.

There was a little bit of work involved in learning how it worked but I found the documentation to be very comprehensive and easy to follow.

Below are two images from the past match analytics view in the dashboard:

Screen Shot 2015-03-19 at 19.50.49

Screen Shot 2015-03-19 at 19.51.03

We also got the first bit of communication between the server side and the android app working. The user is now able to log into the app with their email and password that they created during registration.

On the android app we used http post to send the email and password to a php script which checks the email and a md5 hash of the password against the information in the database.

We’re aware that this isn’t necessarily the most secure way to handle login and we will work on a more secure way if time permits.

Met With Supervisor

We met with Mark again.  This time we had a basic prototype to show him. Conor had the basic functionality of the android app working. Which had counters for each player on the field and buttons to switch between metrics.

I was able to show him the login / registration system and we discussed my provisional plans for the dashboard once users had logged in.
Discussed adding more functionality with a focus on providing the user with a logged in mode and and scaled down not logged in mode.
Set up a meeting for the following week.

Progress with Server Side

While working on our communications module (CA360) we made some good progress with the app. While Conor worked on the XML file which outlined the layout I got to work on the log in / registration system.

I found a html template log in form that I was able to customise to our needs using bootstrap. The user is only presented with two initial options these are to either login or to register.

Screen Shot 2015-03-19 at 19.29.34

 

When designing the registration system I wanted to verify that the email users were signing up with was valid. In order to do this I implemented a simple check. When the user registers the form data is stored in a temp_users table in the database. Along with the form data a unique (md5 hash) value is associated with the user. An email is sent to the user with a link that contains this unique value. When the user clicks on the link a php script will take the data out of the temporary users table and store it in the users table, thus completing registration and verifying the email is in use.

Januarys Progress

A lot of my time in January was taken up studying for exams but any spare time I had was spent working on the initial stages of the project.

We decided to use Codeigniter (https://ellislab.com/codeigniter) as the php framework to develop the server side code. We choose Codeigniter because there are some great tutorials online and the documentation is very thorough.

We decided to use Bootstrap (http://getbootstrap.com) as the front end framework. We  decided to use bootstrap because of its wide industry use and the abundance of tutorials and templates that can be used to speed up development.

After a bit of research I decided to install NetBeans (https://netbeans.org/) as the IDE to develop the project.  I also set up MAMP (http://www.mamp.info/en/) so that I could develop and test the server side code locally.

We finished exams on the 23rd and met up on the 26th to restart the work on the project.
We set up a meeting with our supervisor, Mark Roantree for the 5th of Feb.

Decembers Progress

During the month of December the sheer amount of work due for other modules resulted the the project being put on the back-burner temporarily.

Conor and I decided we would be more productive with our time if we both picked an aspect of the project and build up some technical proficiency in that area. Conor decided to focus more on the Android side and I started to learn the web technologies that we would need to implement the web side of things.

I spent any free time I had learning the basics of php and researching potentially useful libraries, templates and frameworks.

Presentation

 

Tomorrow we are scheduled to give our presentation to staff. Unfortunately I’m in work at the time we are scheduled for so Conor will have to give the presentation on his own.

For the last three days we have been working non-stop to polish off the presentation. I have used photoshop to develop a prototype UI to give the members off staff an idea of what it will be like to use.

Data input view:

Input Graphic

 

Data representation view:

App Statistic Graphic

Choosing A Project

Today Conor and I met with Mark Roantree to pitch him our project idea. Mark thought that our original idea didn’t have enough work involved for two people. We were eager to have him as a supervisor so we discussed other potential ideas.

He suggested that we build a real time sports statistics application. Conor is an avid hurler and I have a background in GAA myself so we agreed to take the project on.

The aim of the app is to collect detailed statistics on a match from the sideline and display the information in real time. This data can be used as a basis for managerial decisions throughout the game.