ECE 413
Web Development and the Internet of Things
Required course: No
Course Level
Units
Prerequisite(s)
Course Texts
zyBook: learn.zybooks.com/zybook/ARIZONAECE413513HongFall2021
Schedule
Course Description
Specific Course Information:
2021-2022 Catalog Data: This course focuses on the design, integration, and programming of web applications for the Internet of Things (IoT). Course topics include client-side dynamic web page development with HTML, CSS, JavaScript, and Ajax; server-side web application development with Node.js, MongoDB, and RESTful interfaces; and IoT device-side development using formal state-based programming and publish-subscribe interfacing. Additional topics include token-based user authentication, password hashing, responsive design, and relational databases. IoT applications covered in this course include connected cars, connected health, wearables, smart grids, smart homes, and remote measurement, among others.
Learning Outcomes
Specific Goals for the Course:
Outcomes of Instruction: By the end of this course the student will be able to:
- Understand web programming (HTML, CSS, and JavaScript) techniques for front-end applications.
- Understand fundaments of RESTful interfaces and a database for back-end applications.
- Understand techniques of the connections between the front-end and the back-end applications.
- Understand embedded programming techniques to develop IoT system firmware.
- Design and implement full-stack web applications with IoT devices
In addition to the above outcomes, graduate students enrolled in ECE 513 will be able to develop more advanced web applications as well as more complex embedded system firmware.
Course Topics
Brief list of topics to be covered:
- HTML, CSS, and JavaScript
- Forms, dynamic webpages, and Event-driven programming
- Ajax and third-party web APIs
- jQuery and third-party JavaScript libraries
- Node.js and Express
- MongoDB and RESTful APIs
- Token-based user authentication and password hashing
- Embedded programming
- Responsive Design
- Using the above techniques, design and implementation of a full-stack system
Relationship to Student Outcomes
ECE 413 contributes directly to the following specific electrical and computer engineering student outcomes of the ECE department:
1. An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics.
2. An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors.
4. An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts.
5. An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives.
6. An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions