Το προτεινόμενο έργο έχει ως σκοπό να σχεδιάσει, υλοποιήσει και αξιολογήσει μία αρχιτεκτονική ΙτΠ που θα παρέχει την δυνατότητα ασφαλούς και ενεργειακά αποδοτικού απομακρυσμένου προγραμματισμού (ΑπΠ) σε ετερογενείς συσκευές. Η υπηρεσία θα παρέχεται ως «ΑπΠ ως Υπηρεσία» (ΑπΠΥ) και η αρχιτεκτονική της θα αποτελείται από τρία επίπεδα: (1) έξυπνες συσκευές, (2) πύλες, (3) συσκευές νέφους. Οι πύλες είναι συσκευές (πχ Raspberry Pi, BeagleBone) με αυξημένες δυνατότητες σε σχέση με τις έξυπνες συσκευές, και χρησιμοποιούνται για να τις υπερ-συνδέουν με τις συσκευές νέφους. Γενικά, ο ΑπΠΥ θα περιλαμβάνει υλικό και λογισμικό υλοποιώντας: (1) διαχείριση χρηστών, (2) ασφαλή ΑπΠ, (3) εισαγωγή ακολουθούμενων πολιτικών για ΑπΠ (πχ δράσεις σε περίπτωση που αποτύχει ο ΑπΠ μιας συσκευής), (4) αναφορά και παρακολούθηση κατά τη διάρκεια του ΑπΠ, (5) ανίχνευση και ανάκτηση σε περίπτωση σφαλμάτων και (6) οπτικοποίηση της όλης διαδικασίας. Επίσης το προτεινόμενο έργο, σε συνδυασμό με τον ΑπΠΥ, θα σχεδιάσει, υλοποιήσει και αξιολογήσει κατάλληλη υποδομή για τη παροχή «Μεταγλώττισης ως Υπηρεσία» (ΜεΥ). Η υπηρεσία αυτή θα δίνει την δυνατότητα στο χρήστη να γράφει κώδικα, πχ γλώσσα C για Contiki, χρησιμοποιώντας τον περιηγητή του υπολογιστή του, και έπειτα η μεταγλώττιση θα γίνεται σε συσκευή νέφους. Η υπηρεσία αυτή θα έχει διάφορα οφέλη όπως μεταγλώττιση σε διάφορες γλώσσες χωρίς την ανάγκη εγκατάστασης μεταγλωττιστή από το χρήστη, μείωση του κόστους για τον εξοπλισμό του χρήστη, ταχύτερη αναβάθμιση των μεταγλωττιστών στην πιο πρόσφατη έκδοση, κ.λπ. Το έργο δεν έχει σκοπό να μελετήσει νέες τεχνικές στο τομέα των μεταγλωττιστών, αλλά να σχεδιάσει και να υλοποιήσει τις κατάλληλες διεπαφές και σημασιολογικά μοντέλα για την παροχή ΜεΥ χρησιμοποιώντας την υπάρχουσα τεχνολογία μεταγλωττιστών. Το προτεινόμενο έργο θα συνδυάσει τις υπηρεσίες ΑπΠΥ και ΜεΥ παρέχοντας μία ολοκληρωμένη λύση για την απομακρυσμένη μεταγλώττιση λογισμικού και τον προγραμματισμό συσκευών ΙτΠ με αυτό το λογισμικό. Το έργο θα υλοποιήσει φιλικές προς τον χρήστη διεπαφές χρησιμοποιώντας τεχνολογίες Διαδικτύου, μέσα από τις οποίες θα μπορεί να κάνει αποτελεσματικά και ασφαλές μεταγλώττιση του κώδικα, και έπειτα να προγραμματίσει τις επιθυμητές συσκευές με το παραγόμενο λογισμικό.
