MCT TRIATHLON INTERNSHIP

MCT Triathlon is a startup company
◦ Focusing on Triathlon coaching

They had a limited website to introduce their
business

Develop an iPhone Application
◦ Generates an exercise plan
◦ Keeps track of user progress

Currently everything is done manually…

Our Application will change that by:
◦ Helping to organize the company
◦ Eliminating unneeded work
◦ Helping to extend the MCT Triathlon business

Client-Server
◦ Client
 Collect the user’s information
 Keep track of the user’s progress
◦ Server
 Generate the exercise plan based on the information
 Provide alternative plans when the original plan cannot
be fulfilled
 Collect the progress information for the coach
 Manage the payments

What it consists of
◦ Login and registration pages
◦ Questionnaire pages for generating the plan
 Receiving questions from server
 Sending information to server
◦ Plan displaying pages
 Daily, weekly and monthly
 Options to choose alternative plans
◦ Our hopes and dreams that one day this will pay off

Model View Controller
◦ Model contains an abstraction of our data
 Handles communication to the server
◦ View decides the GUI’s appearance
 Buttons, Labels, Test fields
◦ Controller handles the components behaviors

Observer Design Pattern
◦ Handles communication between the MVC

Some challenges we faced:
◦ Learning Objective-C and iPhone programming
from scratch
◦ Working in a team
◦ Working with a start up company

How we solved them:
◦ Group meetings every week with status updates
◦ Research Objective-C code solutions
◦ Learned/used Xcode Storyboards

What it consists of
◦ Databases of user information




Basic Account Information
Current Exercise Plans
Exercise Responses
Payment Status
◦ Algorithms/Logic to generate plans
◦ Management console for Coach’s

Based on widely-used frameworks
◦ Django Web Framework
◦ Django REST Framework


Provide a clear RESTful Interface to the client
Model-(Template)-View
 Model: Queries to database with Django’s ORM
Framework
 View: Use the APIView classes of Django REST
Framework to provide a RESTful access to operations

Design the algorithm for plan generation
◦ Collaborated with the coach
◦ Create formulas based on the coach’s knowledge

Design the models/database structure
◦ How to store the account information
◦ How to store the plans and responses

Learn Django and REST interface