The internet of things is a computing vision where everyday physical objects will be connected to the internet and to identify themselves to other devices.
The internet of things is significant because an object than can represent itself digitally becomes something greater than the object itself. No longer does the object relate to just its user, but it is now connected to surrounding objects and a database.
By installing a device with GPS, 3D Accelerometer and GSM modem into a car’s on-board computer one can stream several metrics into the clouds. Such data appeals to many business models and applications including:
Such information would be useful to various parties including, business’ with company fleets of vehicles, insurance companies, or even parents concerned about their children's driving.
CarCloud will be a mobile and web based desktop application that focuses on supplying car owners with access to trip information and setting alerts for trip events. This will be displayed as points on a map, each point will have various metrics associated with it, this includes things such as speed, RPM, mileage, stopping time, etc.
Advances in client side technologies are changing the role of today's web application server. Android, iOS and browsers are powerful computing platforms. Their success has led to a reevaluation of 'classic' web applications. As such client side front end model view controller (MVC) frameworks have been developed, As a result developers can build powerful and compelling user interfaces.
By implementing MVC functionality at client side, it reduces the complexity of the server and results in applications composed around well-defined APIs.
CarCloud will be less focused on application functionality and more interested in modern application design and best practices. The aim of the project is to learn how to develop a scalable, flexible and well-defined RESTful API, Build a modern single page web application and experiment with hybrid mobile application development solutions.
The project will entail both frontend and backend development. One will be required to learn about the Spring Framework for creating the backend and PhoneGap for creating the mobile application.
The backend application will be developed in Java. It will be deployed on Apache Tomcat 7.
The client web based application will be built to support Google Chrome.
The hybrid mobile app will be tested on Android 4.4.
It is likely the client side application will function on other browsers(Safari, Firefox and Internet explorer) and platforms (iOS) however for the sake of this assignment they will not be officially supported.
The device for reporting the car metrics will be supplied by http://munic.io.