-
Οσο πιο ενεργή (και ουσιαστική) είναι η συμμετοχή σας εδώ τόσο καλύτερος ο βαθμός της τελικής εργασίας. Δεν γίνονται δεκτές αλλαγές για λογαριασμό άλλου.
-
Το κάθε μέλος είναι υπεύθυνο για την σωστή καταγραφή των στοιχείων του (όνομα, φωτογραφία, AM, email, παραδοτέα).
Η επίβλεψη των απαλακτικών εργασίων θα γίνει τόσο από τον διδάσκοντα όσο και από τους βοηθούς του μαθήματος.
Η εργασία αποτελείται από τα παρακάτω παραδοτέα με τις αντίστοιχες προθεσμίες:
Μικρές αλλαγές στο θέμα στην διάρκεια του εξαμήνου για την αντιμετώπιση τεκμηριωμένων και αναπάντεχων αντικειμενικών προβλημάτων βαθμολογούνται θετικά. Μεγάλες ατεκμηρίωτες αλλαγές για αδικαιολόγητους προσωπικούς λόγους βαθμολογούνται αρνητικά. Η δήλωση θέματος γίνεται προσωπικά στον διδάσκοντα στις ώρες του μαθήματος και συνοδεύεται από την δημιουργία της σελίδας φοιτητή σύμφωνα με τις οδηγίες.
Παρουσίαση επιλογής εργαλείων, εκτέλεση/αλλαγές παραδειγμάτων, και προδιαγραφές εφαρμογής. Οι εργασίες με το Scratch θα πρέπει να παρουσιάσουν ένα δείγμα δουλειάς όπου θα φαίνεται η εφαρμογή ενός οι περισσότερων από τα παρακάτω: αφήγηση, διάδραση, κίνηση (π.χ., gem-game). Οι εργασίες με App Inventor θα πρέπει να βασίζονται στις μοναδικές ιδιότητες που έχει ένα κινητό τηλέφωνο, όπως GPS, compass και κυρίως στο γεγονός ότι ο χρήστης βρίσκεται σε κίνηση και όχι σε κάποιο γραφείο.
Παρουσιάσουν του τελικού λογισμικού-αποτελεσμάτων και ενός τελικού πρόχειρου της αναφοράς, ώστε να πάρετε σχόλια για την βελτίωση και σωστή παράδοση της τελικής αναφοράς..
Η τελική αναφορά πρέπει να περιλαμβάνει τις παρακάτω ενότητες: τίτλο, σύνοψη, εισαγωγή, επιλογή εργαλείων, διαδικασία ανάπτυξης, διάγραμμα λειτουργίας συστήματος, ενδεικτικές οθόνες, συμπεράσματα. Η τελική αναφορά μπορεί να αποτελείται από τα διορθωμένα προηγούμενα παραδοτέα με όσες αλλαγές έγιναν και την προσθήκη τίτλου, σύνοψης, συμπερασμάτων. Συνολικά θα πρέπει να είναι 500-1000 λέξεις.
Σημ. Δεν προβλέπεται ούτε παράταση ούτε αλλαγή της παρουσίασης για κανένα παραδοτέο. Αν κάποιος δεν ενημερώσει την σελίδα του ή δεν μπορεί να βρεθεί σε κάποια ημερομηνία μπορεί να έρθει στην αμέσως επόμενη (ή ακόμη καλύτερα την αμέσως προηγούμενη), αν αυτό συμβεί περισσότερο από μια φορά τότε μόνο θα έχει επίπτωση στον βαθμό. Οι αναφορές θα πρέπει να γράφονται στην ίδια σελίδα με κείμενο και εικόνες. Τα επισυναπτόμενα επιτρέπονται μόνο κατ'εξαίρεση όπως για παράδειγμα στην παράδοση του τελικού πηγαίου κώδικα src. Τα επισυναπτόμενα με εικόνες ή εκτελέσιμο κώδικα, καθώς και η κακή χρήση του συστήματος (π.χ., σκόρπιες σελίδες) βαθμολογούνται αρνητικά, ενώ οι τελικές αναφορές που δεν βρίσκονται στην σωστή θέση πριν την προθεσμία δεν βαθμολογούνται.
Η εργασία του μαθήματος είναι ατομική και απαλλακτική.
###1. Internet of Things
H πλατφόρμα ThinkSpeak σας επιτρέπει να αναπτύξετε "Internet of Things" εφαρμογές. Μέσω του ThinkSpeak API μπορείτε να δημιουργήσετε cloud εφαρμογές, που βασίζονται στο HTTP πρωτόκολλο επικοινωνίας και αλληλοεπιδρούν με αισθητήρες και συστήματα ελέγχου. Το ThinkSpeak API είναι σε θέση να διασυνδεθεί με συσκευές όπως Arduino, Raspberry Pi, ioBridge, iPhone και Android κινητά, ρομπότ, οικιακά και βιομηχανικά συστήματα ελέγχου κ.τ.λ. Το ThinkSpeak επίσης επιτρέπει, μέσω του ThingHTTP app, την επικοινωνία με web services όπως Twitter, Prowl, Twilio, WeatherBug, και Foursquare.
Σκοπός της παρούσας εργασίας είναι να δημιουργήσετε μια Internet of Things εφαρμογή κάνοντας χρήση της πλατφόρμας ThinkSpeak. Αρχικά θα πρέπει να γίνει η επιλογή – ανάπτυξη του συστήματος μέσω του οποίου θα συλλέγονται και θα αποστέλλονται τα δεδομένα στα κανάλια της πλατφόρμας. Στην συνέχεια θα πρέπει να αναπτύξετε την κατάλληλη εφαρμογή ώστε να κάνετε χρήση των δεδομένων που βρίσκονται στα κανάλια της πλατφόρμας.
Το τελικό παραδοτέο θα πρέπει να περιλαμβάνει αναλυτική περιγραφή του υλικού και τον κώδικα του project. Επίσης το νέο κανάλι που θα δημιουργήσετε για την εφαρμογή σας στην πλατφόρμα θα πρέπει να είναι δημόσιο.
Περισσότερες πληροφορίες μπορείτε να βρείτε στο Tutorial και στο Forum.
Ιδέες για projects μπορείτε να βρείτε εδώ ενώ χαρακτηριστικά project αποτελούν:
###2. Multi-touch chord communication app
Σε αυτή την εργασία καλείστε να δημιουργήσετε μια εφαρμογή για κινητά που να αντιλαμβάνεται τον αριθμό των δακτύλων που ακουμπάει ο χρήστης στην οθόνη και να στέλνει το αντίστοιχο event μέσω δικτύου σε έναν υπολογιστή ή σε μία άλλη συσκευή. Με τη βοήθεια μιας server εφαρμογής που θα ακούει και θα περιμένει για τις απαντήσεις (δηλαδή τα αντίστοιχα events που θα στέλνουν τα κινητά) θα μπορούσαμε να έχουμε πολλούς χρήστες οι οποίοι θα επιλέγουν διαφορετικά ή θα κάνουν διαφορετικές ενέργεις αναλόγως των των ακόρντων που θα σχηματίζουν στο κινητό τους. H υλοποίηση της εφαρμογής μπορεί να γίνει σε όποια προγραμματιστική γλώσσα σας εξυπηρετεί.
###3. Προτείνετε το δικό σας ubiquitous project
Σε αυτή τη περίπτωση μπορείτε να πάρετε ιδέες από παλαιότερα projects που έκαναν φοιτητές στο μάθημα:
Strobbio - Sending data from smartphone to Arduino
Multi-touch library for large screens
Η επίβλεψη των εργασίων θα γίνει τόσο από τον διδάσκοντα όσο και από τους βοηθούς του μαθήματος.
Σχετικές σελίδες για την την διδακτική και την ανάπτυξη έργων λογισμικού:
Teaching Real-World Programming