Internet of Things adalah visi komputasi di mana objek fisik sehari-hari akan terhubung ke internet dan mengidentifikasi dirinya ke perangkat lain.
Internet of Things penting karena suatu objek yang dapat merepresentasikan dirinya secara digital menjadi sesuatu yang lebih besar dari objek itu sendiri. Objek tidak lagi berhubungan dengan penggunanya saja, tetapi sekarang terhubung dengan objek di sekitarnya dan database.
Dengan memasang perangkat dengan GPS, Akselerometer 3D, dan modem GSM ke komputer terpasang di mobil, seseorang dapat mengalirkan beberapa metrik ke awan. Data tersebut menarik bagi banyak model bisnis dan aplikasi termasuk:
Informasi tersebut akan berguna bagi berbagai pihak termasuk, para pelaku bisnis dengan perusahaan armada kendaraan, perusahaan asuransi, atau bahkan orang tua yang peduli dengan cara mengemudi anak-anaknya.
CarCloud akan menjadi aplikasi desktop berbasis seluler dan web yang berfokus untuk memberikan pemilik mobil akses terhadap informasi perjalanan dan mengatur peringatan untuk acara perjalanan. Ini akan ditampilkan sebagai titik di peta, setiap titik akan memiliki berbagai metrik yang terkait dengannya, termasuk hal-hal seperti kecepatan, RPM, jarak tempuh, waktu berhenti, dll.
Kemajuan teknologi sisi klien mengubah peran server aplikasi web saat ini. Android, iOS, dan browser adalah platform komputasi yang kuat. Keberhasilan mereka telah menyebabkan evaluasi ulang terhadap aplikasi web 'klasik'. Dengan dikembangkannya kerangka pengontrol tampilan model ujung depan (MVC) sisi klien, sebagai hasilnya pengembang dapat membangun antarmuka pengguna yang kuat dan menarik.
Dengan mengimplementasikan fungsionalitas MVC di sisi klien, hal ini mengurangi kompleksitas server dan menghasilkan aplikasi yang disusun berdasarkan API yang terdefinisi dengan baik.
CarCloud akan kurang fokus pada fungsionalitas aplikasi dan lebih tertarik pada desain aplikasi modern dan praktik terbaik. Tujuan dari proyek ini adalah untuk mempelajari cara mengembangkan RESTful API yang dapat diskalakan, fleksibel, dan terdefinisi dengan baik, Membangun aplikasi web satu halaman modern, dan bereksperimen dengan solusi pengembangan aplikasi seluler hibrid.
Proyek ini akan memerlukan pengembangan frontend dan backend. Seseorang akan diminta untuk mempelajari tentang Spring Framework untuk membuat backend dan PhoneGap untuk membuat aplikasi seluler.
Aplikasi backend akan dikembangkan di Java. Ini akan diterapkan pada Apache Tomcat 7.
Aplikasi klien berbasis web akan dibangun untuk mendukung Google Chrome.
Aplikasi seluler hybrid akan diuji pada Android 4.4.
Kemungkinan besar aplikasi sisi klien akan berfungsi di browser lain (Safari, Firefox dan Internet explorer) dan platform (iOS) namun demi tugas ini aplikasi tersebut tidak akan didukung secara resmi.
Perangkat untuk melaporkan metrik mobil akan disediakan oleh http://munic.io.