Download PDF:
IAT267-3b-2010.pdf
Credit Hours: 3
Instructors:
Helmine Serban
Location: SFU Surrey, Room 3310
Semester: Fall 2010
Course Description:
This course provides students with the understanding of the role of main hardware components of a computer system and how the operating system is enabling end user applications to utilize those components. The basic concepts necessary to understand an operating system are explained in the context of a rich media programming environment, focus being on the way end user applications use the services of the operating system to support media applications.
Next, the concept is extended with sensors and how they integrate with computer systems at the hardware and software levels.
Finally, the basic understanding of techniques for networking several systems to support complex media application is explored, including socket programming and UDP and TCP protocols.
Course Objectives:
The course will:
- develop a theoretical and practical foundation in the structure and operating principles of technological systems in general, with a focus on computer systems
- develop an understanding of various sensor devices by analyzing the underlying physical principles and example of use in applications
- study the Arduino platform, language and programming environment and the Processing programming language
- learn how to develop practical applications consisting of computer systems and sensors using Arduino and Processing
- study basic principles of computer networks with emphasis on issues relevant to complex media applications
Learning Outcomes:
After completing this course, students will be able to:
- explain the relationship between computer hardware and operating system
- explain the relationship between user applications and operating system
- understand how sensors integrate into computer systems through HW, OS and application development environment
- develop applications involving the computer system communicating with sensors, Arduino and the Processing language
- develop computer network applications
Delivery Method:
Lecture (LEC) and Tutorial (TUT)
Learning Activities + Evaluation:
Learning Activities:
The course's learning activities include:
- weekly lectures
- course readings (textbook, WebCT, electronic resources)
- in-class workshop activities
- in-class exercises, worksheets
- assignments consisting of application of learned theory, problem solving and independent reading activities and research
- programming project
Evaluation:
Assignments: 15% (3 individual assignments):
- Assignment 1: Computer systems - application of theory, problem solving
- Assignment 2: Sensors - research-based assignment
- Assignment 3: Networking - application of theory, problem solving
Workshop Activities: Lab activities, in-class worksheets, in-class demos: 20% (team-based)
Programming Project: 30% (team based)
The project will address a subject related to the use of sensors and Arduino and Processing in an application. An experimental component involving circuit implementation and in-class demo is required.
Exam: 35% (individual)
Closed book, 3-hour long exam.
Texts, Resources + Materials:
Recommended Text:
“Using Information Technology: A Practical Introduction to Computers and Communications” (2007) by Brian K. Williams and Stacey Sawyer; 7th Edition; McGraw-Hill; ISBN 9780072260717
Course content (lecture slides, in-class activities, assignments, project) are available on WebCT.
Physical computing [electronic resource]: sensing and controlling the physical world with
computers by Dan O'Sullivan, Tom Igoe (available in SFU Surrey Library).
Prerequisites:
CMPT 120 (or equivalent first programming course). Recommended: IAT 265 or other second year programming course. This course is equivalent to CMPT 267; students with credit for CMPT 267 may not take this course for further credit.
Last Updated: June 15, 2010
These course outlines are drafts and are subject to change.


