Module Code: H9SAI
Long Title Software Applications for Internet of Things
Title Software Applications for Internet of Things
Module Level: LEVEL 9
EQF Level: 7
EHEA Level: Second Cycle
Credits: 10
Module Coordinator: CRISTINA HAVA MUNTEAN
Module Author: CRISTINA HAVA MUNTEAN
Departments: School of Computing
Specifications of the qualifications and experience required of staff  
Learning Outcomes
On successful completion of this module the learner will be able to:
# Learning Outcome Description
LO1 Compare and contrast the features and the support provided by various hardware development boards and platforms that support development of IoT applications
LO2 Design, develop and test IoT services/ applications using the underlying hardware components
LO3 Investigate how IoT services/applications can be deployed on the Web
Dependencies
Module Recommendations

This is prior learning (or a practical skill) that is required before enrolment on this module. While the prior learning is expressed as named NCI module(s) it also allows for learning (in another module or modules) which is equivalent to the learning specified in the named module(s).

No recommendations listed
Co-requisite Modules
No Co-requisite modules listed
Entry requirements  
 

Module Content & Assessment

Indicative Content
Introduction hardware development boards and software platforms forIoT
Introduction into hardware development boards and software platforms for IoT (10%) • Role, features and functionalities of hardware development boards • Programming language support ( e.g Python , Node.js) • Examples of hardware development boards and platforms for IoT (e.g. Intel Galileo, Arduino, Raspberry Pi, etc.)
Python Programming language
Python Programming language (20%) • Python Basics: Numbers, Variables, loops, if and while statements, • Strings, Modules, Classes and Methods • Files, Pickling, Internet • Example of applications implemented with Python
Application Development for Raspberry Pi
Application Development for Raspberry Pi (20%) • Device description and practical usage (e.g. home automation control of lights, bicycle odometer) • Commonly used OS on Raspberry Pi (e.g. Raspbian, Linux, Android) • Setup requirements ( e.g. Load OS, setup SSH server, setup LAN connectivity) • Interfacing hardware: various ways of connecting the PI to electronic devices though GPIO • Extending the functionally of Raspberry Pi with Arduino • Examples of real-life applications developed for Raspberry Pi making use of the hardware device and/or device emulator tool
Application Development for Intel Galileo
Application Development for Intel Galileo ( 20%) • Device description and practical usage (e.g. WiFi based applications, sensors, tags) • Arduino Linux OS and setup requirements • Arduino Integrated Development environments ( e.g. Visual Micro for Microsoft Visual Studio) • Example of real-life applications developed for Intel Galileo making use of Arduino IDE
Software Applications for Information Processing
Software Applications for Information Processing (30%) • Processing information transmitted by smart sensors ( e.g. healthcare sensors, weather/temperature sensors) • Interacting with tags and processing information transmitted by intelligent tags (e.g. NFC, RFID) • Linking Arduino with Google App Engine ( e.g. developing webapp using Google App Engine in order to make available on the web the information processed by the Arduino • Visualise the Arduino web deployed information on various computing devices ( e.g. laptop, PC, smartphones)
Assessment Breakdown%
Coursework100.00%

Assessments

Full Time

Coursework
Assessment Type: Assignment % of total: 60
Assessment Date: n/a Outcome addressed: 1,2,3
Non-Marked: No
Assessment Description:
Continuous assessment will consist of a project and on-going assessments (e.g. in class quiz-based assessment, practical lab exercises) In class assessments will evaluate learners’ understanding of hardware equipment and IDE tools that may be used to develop IoT services/applications.
Assessment Type: Project (0050) % of total: 40
Assessment Date: n/a Outcome addressed: 1,2,3
Non-Marked: No
Assessment Description:
Practical work will be conducted throughout the semester to assess the learner’s skills in terms of design, application development for a given case study IoT service, using an hardware development board and its IDE. Practical work will involve working in a team
No End of Module Assessment
No Workplace Assessment
Reassessment Requirement
Coursework Only
This module is reassessed solely on the basis of re-submitted coursework. There is no repeat written examination.

NCIRL reserves the right to alter the nature and timings of assessment

 

Module Workload

Module Target Workload Hours 0 Hours
Workload: Full Time
Workload Type Workload Description Hours Frequency Average Weekly Learner Workload
Lecture No Description 2 Every Week 2.00
Tutorial No Description 2 Every Week 2.00
Independent Learning Time No Description 17 Once per semester 1.42
Total Weekly Contact Hours 4.00
Workload: Part Time
Workload Type Workload Description Hours Frequency Average Weekly Learner Workload
Lecture No Description 2 Every Week 2.00
Tutorial No Description 2 Every Week 2.00
Independent Learning Time No Description 17 Once per semester 1.42
Total Weekly Contact Hours 4.00
 

Module Resources

Recommended Book Resources
  • Simon Monk. (2013), Programming the Raspberry Pi: Getting Started with Python, Tab Electronics.
  • Mark Lutz. (2011), Programming Phyton, 4th. O'Reilly Media.
  • Simon Monk. (2012), Programming Arduino Getting Started with Sketches, Tab Electronics.
Supplementary Book Resources
  • Sean McManus. (2013), Raspberry Pi For Dummies, 1st. John Wiley & Sons.
  • John Nussey. (2013), Arduino For Dummies, 1st. John Wiley & Sons.
This module does not have any article/paper resources
Other Resources
Discussion Note: