Course Title: Programming Internet of Things
Part A: Course Overview
Course Title: Programming Internet of Things
Credit Points: 12.00
171H School of Science
Sem 2 2018,
Sem 1 2019,
Sem 1 2020
Course Coordinator: Shekhar Kalra
Course Coordinator Phone: +61 3 9925 9500
Course Coordinator Email: email@example.com
Course Coordinator Location: City Campus, Building 14, Level 10, Room 10A
Course Coordinator Availability: by appointment
Pre-requisite Courses and Assumed Knowledge and Capabilities
Enforced Pre-requisite courses
Successful completion of:
COSC1295 - Advanced Programming (Course ID 004316)
COSC2820/COSC3015 - Advanced Programming for Data Science (Course ID 054137)
Note: it is a condition of enrolment at RMIT that you accept responsibility for ensuring that you have completed the prerequisite/s and agree to concurrently enrol in co-requisite courses before enrolling in a course.
For your information go to RMIT Course Requisites webpage.
General knowledge of Linux operating system, networking basic principles
The Programming Internet of Things (PIoT) course will teach you how to program with current and leading IoT technologies for building IoT solutions for Smart Homes, Smart Campus etc., using IoT sensor and devices.
What will you learn:
- gain an an understanding of using Raspberry Pi and appropriate programming frameworks as the base to build all the projects,
- learn the fundamentals of IoT and then build a standard framework for developing all the applications
- learn to capture data using sensors, and the basics of analysis and visualisation of the data in the cloud.
- gain an understanding of other concepts around IoT such as security
The course will be hands-on with students expected to work in groups to build complex and fun smart applications.
This course requires the student to have their own laptop and Raspberry Pi kit.
Objectives/Learning Outcomes/Capability Development
This course contributes to the following Program Learning Outcomes for Masters of Computer Science (MC061) and Masters of Information Technology (MC208).
PLO1: Knowledge - Apply a broad and coherent set of knowledge and skills for developing user-centric computing solutions for contemporary societal challenges.
PLO2: Problem Solving - Apply systematic problem solving and decision-making methodologies to identify, design and implement computing solutions to real world problems, demonstrating the ability to work independently to self-manage processes and projects.
PLO4: Communication - Communicate effectively with diverse audiences, employing a range of communication methods in interactions to both computing and non-computing personnel.
PLO5: Collaboration and Teamwork - Demonstrate effective teamwork and collaboration by using tools and practices to manage and meet project deliverables.
PLO6: Responsibility and Accountability - Demonstrate integrity, ethical conduct, sustainable and culturally inclusive professional standards, including First Nations knowledges and input in designing and implementing computing solutions.
On completion of this course you should be able to:
- Understand IoT principles, design and abstraction of developing IoT systems
- Develop on a variety of open source devices and software services
- Integrate a variety of IoT devices, sensors and services to build complex applications
- Learn the basics of Raspberry Pi and compatible programming frameworks
- Present and demonstrate the developed system
Overview of Learning Activities
The learning activities included in this course are:
- Lectures: key concepts will be explained in lectures where material will be presented and the subject matter will be illustrated with practical examples, demonstrations, online questionnaires and guest visitors from ICT industry.
- Tutorial/labs and/or group discussions (including online forums) focused on projects and problem solving will provide practice in the application of theory and procedures, allow exploration of concepts with teaching staff and other students, and give feedback on your progress and understanding;
- Assignments, as described in Overview of Assessment (below) and Assessment Tasks (part B course guide for this Teaching Period), requiring an integrated understanding of the subject matter; and assignment work requires active team participation and effective communication, which provides practice in these skills.
Overview of Learning Resources
You will need your own laptop do this course. You will be able to access course information and learning materials through myRMIT and Canvas LMS.
Lists of relevant reference texts, resources in the library and freely accessible Internet sites will be provided.
Overview of Assessment
This course will be assessed via group assignments, individual tests and a written examination.
Assessment for this course is based on face-to face demonstration of practical assignment work.
Note: This course has no hurdle requirements.
Assessment Task 1: Written Assignment – part 1
This assessment task supports CLOs 1, 3 and 4.
Assessment Task 2: Written Assignment – part 2
This assessment task supports CLOs 1, 3, 4 and 5.
Assessment Task 3: Lab Tests
This assessment task supports CLOs 2 and 4.
Assessment 4: End-of-semester Examination
This assessment supports CLOs 1, 2, and 4.