Computer Engineering Department Islamic University of Gaza ECOM 9301 Special Topics (Ubiquitous Computing) PhD Course Spring 2022-2023 Syllabus & Course Overview Mohammad A. Mikki Professor of Computer Engineering College of Engineering Islamic University of Gaza, Gaza, Palestine Instructor’s Info. Mohammad A. Mikki Professor of Computer Engineering College of Engineering Islamic University of Gaza, Gaza, Palestine Email: mmikki@iugaza.edu.ps Homepage: http://site.iugaza.edu.ps/mmikki Tel.: +970-08-2644400 Ext. 2850 Office: Admin. Building Room B347 Office Hours TBA and by Appointment Course Information Course Code: Course Name: Number of credits: ECOM 9301 Special Topics (Ubiquitous Computing) PhD Course 3 Course Description Pervasive computing is a term describing the concept of integrating computation into the environment, rather than having computers which are distinct objects. Promoters of this idea hope that embedding computation into the environment would enable people to move around and interact with computers more naturally than they currently do. “Pervasive computing represents a major evolutionary step in a line of work dating back to the mid-1970’s. Two distinct earlier steps in this evolution are distributed systems and mobile computing. Some of the technical problems in pervasive computing correspond to problems already identified and studied earlier in the evolution. In some of those cases, existing solutions apply directly; in other cases, the demands of pervasive computing are sufficiently different that new solutions have to be sought. There are also new problems introduced by pervasive computing that have no obvious mapping to problems studied earlier.” Pervasive Computing is also commonly known as Ubiquitous Computing (although some view Ubiquitous Computing as the most advanced stage of Pervasive Computing). Other, less (and much less) popular equivalents include Invisible Computing, Ambient Informatics, and Everyware. The Ubiquitous Computing course was one of the first of its kind when it was created back in 2003. Its goal is to train students in software development for mobile devices. Initially, the course used the Windows mobile platform; programming included not only smartphones, but also custom-made sensors, such as 3D accelerometers that were Bluetooth enabled. With the introduction of the iPhone in 2008, the UC course was one of the first nationwide to switch platforms. The iPhone brought a revolution in mobile computing by redefining the user-interface and incorporating a number of sensors, such as 3D accelerometer and GPS, in the device itself. introduces the field of ubiquitous computing, including sensors, ambient displays, tangibles, mobility, and location- and context-awareness. In addition, course addresses wireless and mobile computing, interaction devices being woven into our daily life and invisible, has created boundless opportunities for in-the-world computing applications that can transform our lives. Course Description Ubiquitous computing is a multidisciplinary research area that draws from sensors, machine learning, signal processing, human computer interaction, as well as psychology and sociology. These topics are explored from a user-centered design perspective, focusing on how a situated models of computing affect requirements gathering, interaction design, prototyping, and evaluation. Students gain mastery with contemporary Ubiquitous Computing technologies and learn to incorporate them into a user-centered design process. This class combines lectures, quizzes and research papers presentations, reading state of the art research papers, class discussions and a final project. Mobile and Ubiquitous Computing are often referred to as the third generation of computing where users continuously interact not with just one but many computing devices. The latter are thereby embedded into the everyday environment of their users in such a way that users—ultimately—will not even be aware of their interaction with computers. Course will focus on aspects of how to actually make, that is build and deploy, mobile and ubiquitous computing systems. Course Description The aim of this class will be to introduce you to ubiquitous computing (ubicomp). We will focus on how traditional topics of computing have evolved to support the vision of a connected, portable, and human-centric computing environment. Because ubicomp is an applied field, the course covers contributions across various fields: human-computer interaction, embedded computing, computer vision, distributed systems, machine learning, and electrical engineering. You will gain practical experience in developing sensing systems for activity recognition and gestural interaction. The course will be a combination of lectures, tutorials, class discussions, and demonstrations. You will be evaluated on your class participation, reading summaries, and individual assignments/mini-projects (6 assignments in total). Occasional tutorials on necessary skills will be provided at the first half of the class-time (e.g., Android and Arduino programming). The rest of the class time will be used for discussions on the required readings. You are allowed to work in groups to learn the material, but are required to complete and submit individual work. There are no pre-requisites for the course. Course Objectives To understand the characteristics and principles of Pervasive computing To introduce to the enabling technologies of pervasive computing To understand the basic issues and performance requirements of pervasive computing applications To learn the trends of pervasive computing Course Tentative Topics Overview of the field and past, present, and future of Ubiquitous Computing Prototyping mobile and ubiquitous computing technology Sensors and sensor data analysis including applied machine learning Eye and gesture based interaction Evaluation of mobile and ubiquitous computing systems Smart homes and Infrastructure Mediated Sensing Overview of wearable computing: Challenges and design processes Head mounted displays Location technologies and how to use them Privacy in mobile and ubiquitous computing Context aware computing Real world applications: implications and challenges Course Learning Outcomes This course aims to provide students with an overview and the foundations of the research field of the third generation of computing (and beyond). Through active, practical explorations the course aims to provide an appreciation of the practical potential the field offers for researchers and practitioners. Intended Outcomes Knowledge Upon successful completion of the course students will be able to: Build on the foundations of mobile and ubiquitous computing to develop practical applications; Discern the capabilities of different components of mobile and ubiquitous computing, which allows for informed decisions on the usefulness and usability of resulting interface and potential technical challenges; Exploit the potential of mobile and ubiquitous computing techniques for real-world applications. Describe the important issues and concerns on security and privacy in ubiquitous computing. List and exemplify the key technologies involved in the development Ubicomp systems Understand the aspects of context awareness Skills Through active course participation the students will gain: The ability to appreciate and analyze the foundations of the third generation of computing (Mobile and Ubiquitous Computing) The ability to use methods of mobile and ubiquitous computing in innovative, real-world practical applications. Course Website http://moodle.iugaza.edu.ps http://site.iugaza.edu.ps/mmikki/ “Facebook” course page: Spr2023-UbiquitousComputing Class Information Section 101 201 Days Mon. Mon. Time 15:00-18:00 15:00-18:00 Location I418 I418 Required Textbooks We will put more focus on scientific articles rather than on a single textbook. Ubiquitous Computing: Smart Devices, Environments and Interactions, Stefan Poslad, John Wiley and Sons, Ltd., 2009 Ubiquitous Computing Fundamentals, John Krumm, CRC Press, 2010 Fundamentals of Mobile and Pervasive Computing, Frank Adelstein, Sandeep Gupta, Golden Richard III, Loren Schwiebert, McGraw Hills, 2005 Pervasive Computing Concepts Technologies and Applications, Minyi Guo, Jingyu Zhou, Feilong Tang, Yao Shenm, 2017 Reference Books: Pervasive Computing, Jochen Burkhardt, Horst Henn, Stefan Hepper, Klaus Rindtor, Thomas Schaeck Pearson, Eighteenth Impression, 2014. Pervasive Computing and Networking, Mohammads, Obaidait, Denko, Woungang John, Wiley & Sons, 2011 Context-Aware Computing Pervasive Systems, Seng Loke, Auerbach Pub., New York, 2007 Handbook On Mobile And Ubiquitous Computing Status And Perspective, Laurence T. Yang, CRC Press, 2012 Required Papers See “Class Schedule” slides Class Schedule Week Topic 1 Sat. 11.02 Course Introduction 2 Sat. 18.02 3 Sat. 25.02 4 Sat. 04.03 Textbook/Reading Material Assignment Presenter Syllabus Course Overview Introduction to course project Chapter 1 of Pervasive Computing Concepts Technologies and Applications-Minyi Guo, Jingyu Zhou-2017 Ubiquitous Chapter 1 of Ubiquitous Computing: Smart Devices, Computing Basics Environments and Interactions, Stefan Poslad, John Wiley and Sons, Ltd, Publication, 2009 The Computer for the 21st Century, Mark Weiser, Scientific Ubiquitous American, 1991 Computing Basics Beyond Weiser From Ubiquitous to Collective Computing-2016 (Cont.) Introduction to Ubiquitous computing-2015 Applications and Requirements Chapter 2 of Ubiquitous Computing: Smart Devices, Environments and Interactions, Stefan Poslad, John Wiley and Sons, Ltd, Publication, 2009 Instructor Instructor Instructor Quiz1 on Ubiquitous Computing Basics Project Proposal (Video) Instructor Class Schedule Week 5 Sat. 11.03 6 Sat. 18.03 7 Sat. 25.03 8 Sat. 01.04 Topic Applications and Requirements (Cont.) Textbook/Reading Material Ubiquitous Computing in Sports and Physical Activity—Recent-2022 Designing for the Ubiquitous Computing era-Pierrick Thébault-France-2011 Ubiquitous computing Applications and research opportunities-2016 Smart Devices and Services: - Wearable computing: Glass and Augmented Reality, EyeTracking, Digital Pen and Paper Assignment Presenter Instructor Chapter 4 “Smart Mobiles, Cards and Device Networks” of Smart Devices, Environments and Interactions, Stefan Poslad, John Wiley and Sons, Ltd, Publication, 2009 Quiz2 on Applications and Requirements Students Statement of work (Video+PDF) Use-Smart Devices-UBIQUITOUS COMPUTING SMART DEVICES AND SERVICES-2015 Smart Devices and Use-Smart Devices-Enabling Pervasive Computimg Services With Smart Phones-2005 (Cont.) Use-Smart Devices-Typical Sensors needed in Ubiquitous and Pervasive Computing Students Human Computer Interaction Chapter 5 “Human–Computer Interaction” of Smart Devices, Environments and Interactions, Stefan Poslad, John Wiley and Sons, Ltd, Publication, 2009 Quiz3 on Smart Devices and Services Students Project Update #1 (Video) Class Schedule Week 9 Sat. 08.04 10 Sat. 15.04 11 Sat. 22.04 Topic Textbook/Reading Material Human Computer Interaction (Cont.) The Human Experience-ieee2002 Interface and Infrastructure Design for Ubiquitous Pen-Based Interaction on Paper-2007 An Overview of Human-Computer Interaction Patterns in Pervasive Systems Quiz4 on Ubiquitous Computing Human Chapter 11 “Ubiquitous Communication” of Smart Networking Computer Devices, Environments and Interactions, Stefan - NFC, Wireless Interaction Poslad, John Wiley and Sons, Ltd, Publication, 2009 LAN Context Awareness Quiz5 on Chapter 7 “Context-Aware Systems” of Smart - Location aware Ubiquitous Devices, Environments and Interactions, Stefan computing, Computing Poslad, John Wiley and Sons, Ltd, Publication, 2009 - Developing Networking Chapter 8 “Context-Aware Computing “ of Context-aware Ubiquitous Computing Fundamentals, John Krumm, Project Update Applications #2 (Video) CRC Press, 2010 12 Sat. 29.04 Assignment Context Awareness (Cont.) Context Modeling and Context-Aware Service Adaptation for Pervasive Computing Systems-2008 Location Systems for Ubiquitous Computing-IEEEAug.2001 Contexts enabled Decision Making using sensors to perceive Environment-2018 Presenter Students Students Students Students Class Schedule Week 13 Sat. 06.05 14 Sat. 13.05 15 Sat. 20.05 16 Sat. 27.05 Wed. 31.05 Topic Textbook/Reading Material Middleware for Ubiquitous Computing Chapter 5 “Introduction to Mobile Middleware” of Fundamentals of Mobile and Pervasive Computing, Frank Adelstein, Sandeep Gupta, Golden Richard III, Loren Schwiebert, McGraw Hills, 2005 Middleware for pervasive computing A survey-2012 A Survey on Middleware in Pervasive EnvironmentsDec2013 Security in Ubiquitous Computing - Privacy and security in ubiquitous computing Ubiquitous Computing Challenges Assignment PRIVACY IN UBIQUITOUS COMPUTING-2009-44pg Quiz6 on Context Awareness Students Project Update #3 (Video) Quiz7 on Middleware for Students Ubiquitous Computing Chapter 13 “Ubiquitous System: Challenges and Outlook” of Smart Devices, Environments and Quiz8 on Interactions, Stefan Poslad, John Wiley and Sons, Ltd, Security in Publication, 2009 Ubiquitous Towards Robust Ubicomp A Comprehensive Review Computing on the Grand Challenges of Ubiquitous ComputingJul.2021 Quiz9 on In-class Project Presentations Ubiquitous Project Final Report (PDF) Computing Project Poster Challenges Last Day of Classes Presenter Students Students Deliverables and Grading Quizzes 30% Lecture presentation 20% Project with publishable paper deliverable (six presentations: 5 video submissions, 1 in-class) Graded individually, everyone must participate 2 written reports (No late submissions accepted) 50% Quizzes To ensure that students understand the theory, a quiz will be administered of each topic (on Moodle). It will cover material from the previous week(s). The quizzes are either Multiple Choice or True/False or both. Duration of each quiz is 10-15 minutes. Lecture Presentations • • • • • Each student will be required to give presentation of few technical papers/Textbook material during the semester. These presentations are conducted individually where each student is assigned different papers/Textbook material to present. . Each student will have approximately 30 minutes to present the paper/Textbook material. As specified in the syllabus, this presentation is worth 20% of your course grade. Lecture Presentation Evaluation: – 20% of the presentation grade will be based on your visuals aids. This does not mean you need a PowerPoint slide show, but you may use one if you would like. If your presentation consists of you reading the text off of your visual aid, you will lose some points in this category. – 30% of your grade will be based on presentation skills. This will be evenly divided between organization, timing and communication skills. – 50% of the grade will be based on depth and accuracy of technical content. Your audience is students who have taken this class. Therefore, do not spend more than a minute or two on material already covered in class. However, also do not assume Ubiquitous Computing knowledge beyond what has been covered in class. Course Project Students will work on practical projects that address cutting edge real world problems and will develop innovative solutions to it through means of ubiquitous computing. Existing programming skills are of benefit (for mobile platforms, and/or for lower level device control; for web platforms). For some projects experience with data analysis frameworks such as Python, R, or Matlab is of benefit. Other projects will build on foundations of electrical engineering and manufacturing. Projects will mostly belong to the “selected areas” identified or accepted by the instructor. There will be three basic types of projects: Modeling projects, simulation projects, or implementation projects. All projects will be developed under instructor’s supervision. Project Teams Students will form project teams of at least two — as soon as the semester starts. Work on team research projects. Students are responsible for forming their own teams based on common interests and/or complementary skills. Teams have the option to come up with their own suitable project topic, In either case, student teams are encouraged to work closely with the instructor to identify a project topic. All members of a project team will fill a team contract in which they formulate their goals and objectives, their anticipated roles within the project, and their overall ambitions. This contract is a required deliverable (pass / fail grade) and will be used throughout the project to keep track of project progress and especially the individual contributions of all team members. Project Ideas Some of the projects will require rapid prototyping with microcontrollers, sensors, and common items like safety glasses and straws. For the prototyping exercise, as well as for general prototyping activities, the following kit, can be purchased at the beginning of the class. Name ELEGOO UNO Project Super Starter Kit with Tutorial and UNO R3 Compatible with Arduino IDE Description Starter kit for Arduino-like prototyping containing breadboard, jumper cables, selection of sensors and actuators, power supply, tutorial etc. Compatible with Arduino UNO R3, MEGA 2560 R3, NANO. Purchasing option https://tinyurl.com/MUChardware (Amazon, likely to be available elsewhere as well) Approximat $35 e cost Note If students already have access to similar hardware, then there is no need to purchase. Project Ideas Project ideas will be provided by the instructor but can also be defined by the students. All projects need to be discussed with and approved by the instructor. Teams will start exploring the wider area of ubiquitous computing in order to get an understanding of what interests them and what direction their project could go. Ideally it should be challenging to push students out of their comfort zone and thus to enable learning, whilst at the same time not being unrealistically over-ambitious. This is an advanced programming project and thus, time-consuming by its nature. List of Project areas: Context-aware computing Proactive computing Mobile and real-time data/media management Multimedia data and sensing dissemination Mobility management Location-dependent query processing, and positioning. Context- Driven HCI Service Selection, Scenario Study: Video Calls at a Smart Office, A Web Service– Based HCI Migration Framework . Pervasive Mobile Transactions: Mobile Transaction Framework, Context-Aware Pervasive Transaction Model, Case Studies: iCampus Prototype, IPSpace: An IPv6-Enabled Intelligent Space. research projects in the areas including opportunistic networks (a specialized kind of pervasive ad hoc networks, a.k.a. opportunistic resource utilization networks), smart office and home spaces, and sensornets. Project deliverables Project with publishable paper deliverable Each team will provide the following deliverables through the semester. Through the semester, teams will prepare multiple project presentations and written reports as follow. Project Proposal: As with any research project, the team will start by doing a literature survey to study the related work in their chosen project area. The team will be responsible for preparing and giving a brief presentation describing their project area, the related work, and a high-level proposal to extend beyond the state of the art. Statement of Work (SoW): Once the initial background and project idea is established, teams will work to properly scope their project and identify a set of tasks/milestones to target through the semester. Each team will give a brief presentation of their expected project tasks and outcomes in a SoW presentation and submit a corresponding report. Project Progress updates (3 updates): Teams will prepare a sequence of brief presentations to update their progress toward their expected outcomes, discuss any roadblocks or challenges faced, present any changes to the SoW, and give a brief demonstration if appropriate. Final Presentation (in-class) and Report: Each team will present their final project outcomes, including a brief demonstration if time permits, as final presentations are strictly limited in time. Each team will also submit a final report detailing their project goals and outcomes, including a conference-style paper and poster. Submission Instructions: All submissions should be made via Moodle. For group submissions, at least one member of each team should submit on behalf of the group; if multiple group members submit a group deliverable, the latest submission will be taken as final. All team member names should be included on the first page/slide of each deliverable. Guidelines for writing proposals, report, demo, slide and video presentations will be available on Moodle and Google Drive. Project deliverables Project details: Teams of about 2-3 students Identify your project team and topic (with my help) Due date #points Deliverables Project Proposal Week4 10 Video (5 min.) Statement of work (SoW) Week6 20 PDF + video Project Update #1 Week8 10 Video (5 min.) Project Update #2 Week11 10 Video (5 min.) Project Update #3 Week13 10 Video (5 min.) Final presentation in-class week16 40 Final report Week16 80 Word or PDF