Fall 2023 - CIS 443/543 User Interfaces
Syllabus

Table of Contents
      1. Course Overview
      2. Expected Learning Outcomes
      3. Your Responsibilities
      4. Assessment of Work
      5. Grades
      6. Course Policies

1. Course Overview

Tuesdays & Thursdays, 10AM-11:20AM
Location: B042 PSC (in the Science Library)
CRN: 11466 (for 443), 11477 (for 543), Credits: 4
CS Web Pages: https://classes.cs.uoregon.edu/23F/cs443/
Canvas Web Pages: https://canvas.uoregon.edu/courses/230817

Instructor

Anthony Hornof, Professor
356 Deschutes
hornof@cs.uoregon.edu
Office hours: Tuesdays and Thursdays noon-1PM, or by appointment.
      The scheduled office hours will be held simultaneously
            (1) in person in 356 Deschutes, and
            (2) on Zoom at: https://uoregon.zoom.us/j/6792271357

The Point of the Course

This class will help you to adopt a user-centered approach for designing, building, and evaluating computer systems. You will learn a perspective, a vocabulary, and methodologies for analyzing computer systems in terms of their usability and learnability. You will capture, annotate, and communicate real-world task situations. You will design an interactive system, with usability and learnability as a central goal. You will evaluate the usability of the system. You will redesign your system based on the results of your user-centered evaluation.

2. Expected Learning Outcomes

Students should learn...

  1. How to conduct a task analysis. More specifically, students should learn how to conduct a requirements analysis with a special emphasis on (a) using techniques such as interviews and direct observation to learn the procedural knowledge that a user needs to accomplish a piece of work and (b) writing down a clear and concise description of that procedural knowledge.
  2. How to write computer code that creates a new user interface that supports aspects of a task better than current existing commercial software.
  3. How to analyze human-computer interactions from the perspective of cognitive psychology, based on a fundamental understanding of auditory and visual perception; cognitive processing, including concepts such as stimulus-response compatibility; memory, such as procedural versus declarative memory, and short-term versus long term memory; and motor activity, such as the planning and execution of eye movements and hand movements.
  4. Fundamentals of good visual design, good auditory design, and good interaction design, specifically with regards to how aspects of good design can be derived from, and understood based on, an understanding of fundamental human cognitive processes.
  5. How to conduct a user-centered participatory iterative design process using techniques such as prototyping and formative usability studies.
  6. How to run a valid user observation study to evaluate whether people can use a computer interface to quickly and accurately accomplish a real-world task.

Textbook

Cooper, Reimann, Cronin, & Noessel. (2014). About Face: The Essentials of Interaction Design. Wiley. A digital copy of the textbook is available through the UO Library website. Other readings will be provided.

3. Your Responsibilities

Do All of the Assigned Reading

You are expected to gain easy access to the book, such as by purchasing it, and to do all of the assigned reading (in the course schedule.pdf PDF) before class, and to come to class ready to discuss the reading, with questions about what you read. You are expected to take notes on what you read, understand the material, and to look up words that you don't know in a dictionary. Do not just read each sentence in order, but instead, please follow this guidance on how to read textbooks effectively. Use Good Questions for the Midterm (PDF) and Good Questions for the Final Exam (PDF) to help motivate your reading.

Attend Class

You are expected to attend class, do well on all quizzes, and participate in all in-class activities.

To master the course material, you must attend and participate in every course-related activity. The "participation" portion of your grade for the class will be based on the number of classes you attend, your performance on quizzes, and your participation in in-class activities.

The UO Course Attendance and Engagement (policy) requires faculty to determine which engagement opportunities in a course (such as attendance, assignments, group activities, exams, and quizzes) can be missed or “made up” without jeopardizing a student’s opportunity to meet the expected learning outcomes for the course. Consistent with this UO policy, the instructor of this class has determined that there are no engagement opportunities that a student could miss and still gain mastery of the course material.

It would be impossible, for example, to “make up” a live in-person lecture. Here is what happens in every meeting of this class:

Everything. Contained in this classroom
is a microcosm of human experience
assembled for you to query and examine and ponder

(Excerpted from Tom Wayman in “Did I Miss Anything?”, 1993)

Exams in the class are “standardized” (AERA, 2014). If you miss the midterm or final exam, it would be difficult or impossible to create for you the pedagogical benefits of all students taking the same test, in-person, at the same time and the same place.

However, if you miss the midterm or the final exam, you can "make up" the exam by copying, by hand, the reading that was assigned for that exam, and by videotaping the copying process, following a specific procedure that I will provide to you upon request. If you meet all the requirements of the copying procedure, you will be awarded a grade of 70% for the missed exam.

Please get to know, and share contact info with, other students in the class so that, if you have to miss a class and miss out on "everything", another student can learn a little of what you missed. (Both of you would benefit from this review.) I am sorry but it would be impossible for me to recreate a class for you.

Participate in Class

Students are expected to attend class, and to take handwritten notes at classes and meetings. Please bring paper and pencil to class. Students are expected to participate in class presentations and discussions. User interface design is an iterative process, often involving group discussions of design alternatives. The instructor may present work submitted by students to the class for critique and discussion. Your in-class participation may be supplemented by emailing the instructor with questions or comments, which he will try to incorporate into lectures.

Discuss Your Work in Class

User interface design is always a group activity. Consistent with this, the instructor will discuss student work in front of the class, such as to show exemplary work, or to identify opportunities for greater learning. Students should be open to and should participate in these discussions.

Please Put Away Digital Distractions

Please come to class ready to engage the material and to interact face-to-face with the other human beings in the classroom. Please power-down and put away all electronic devices before class starts. Activities such as texting, surfing the web, or checking email during class is inappropriate, discourteous, and distracting to other students and the instructor. Please use lecture time to practice your skill of pondering.

Program Computers

Students are expected to start the class proficient in Python. If you are not proficient in Python, then you will need to spend substantial time beyond the typical allocation of time for projects in this class in order to complete the programming projects for this class. Students are also expected to know how to compile, run, and install C projects such as Port Audio. This would include understanding, working with, and setting Unix paths and environment variables; working with and compiling using make files; determine what is your current Unix shell.

Maintain Computing Resources

For this course, you are expected to have either (a) a computer of your own on which you can run Python 3 or (b) a USB flash drive such that you can use the computers in Room 100 in a time-effective manner. If you are using a personal computer, this computer should have at least 3 GB of hard drivespace available for this class, and a up-to-date operating system. You should have basic system administration skills for your system, such as to be able to and install and configure software, and to maintain and troubleshoot the computer. Students are expected to maintain secure and reliable backups of all of there coursework such that (a) other students cannot access that data and (b) multiple independent copies of all important files are kept on independent geographically-separated drives.

Do the Projects

There will be four projects. Some of the projects may be broken down into smaller tasks that will be turned in separately from the final project. The final project will be due during the last week of classes.

Take the Exams and Quizzes

There will be a final exam in the time slot allocated on the UO examination schedule. The specific day and time will also be posted by Week 5 of the term in the entry for this class on the UO Class Schedule. (You can also click on the "CRN" links at the top of this document.) Pop quizzes and in-class exercises may further supplement learning and assessment. An absence at an exam, quiz, or in-class assignment will result in zero points for that assessment opportunity. During exams, a student may not continue to work on the exam after that student has left the room.

Utilize Course Materials

There are two websites associated with this class. Both are listed at the top of this document. They are:

  1. The CS web pages.
  2. The Canvas web pages.

Students in this class are expected to check Canvas for announcements daily. It appears as if you can have these announcements sent to you as email by issuing commands such as the following, in Canvas: "User Settings / Notifications / Announcement / Notify me right away."

Communicate Questions and Concerns

Please contact the instructor with any questions and concerns at all regarding the class, following these guidelines:

Students have the responsibility to communicate with the instructor about any questions, concerns, or problems that they have during the course. These might relate to any aspect of the class including lectures, group dynamics, communication breakdowns, or anything. Please visit the instructor during his office hours or set up an appointment to discuss any problem or concerns.

Students in CIS 543

Graduate students (enrolled in CIS 543) will have additional responsibilities including reading and responding to academic papers on class topics. Graduate students will be held to a higher expectation of quality in projects and exams.

Produce Good Writing

Projects will be evaluated in part based on the instructor's subjective assessment of the quality of the written materials submitted. A modern skilled technology expert must be able to communicate his or her ideas clearly and concisely.

The course web page on good technical writing provides important guidance on good writing, including some specific requirements for documents to receive full credit. PDFs of some excellent guides on good writing are available on the course Canvas site under "Files / Technical Writing".

Each artifact, document, source code file, README.txt, and so on, that you submit should include, at the top of the file, the names of all authors, and the date that the document was created or last modified. It should be immediately clear what this thing is, who created it, and when. All multi-page documents should have page numbers.

Being able to write handwritten notes that co-workers can read is an important job skill. If a student’s handwriting on an exam is determined to be difficult to read, there will be a 5% or 10% reduction in the score assigned to that exam. If your handwriting is not legible, please study Better Handwriting for Adults (PDF). If you have difficulty writing basic letters, please start with the exercises and worksheets at http://www.handwritingforkids.com/ or https://www.sightwordsgame.com/writing/handwriting/.

Produce Good Media

Any media that is submitted as part of coursework should be of good quality. Photographs should be sharp, properly exposed and cropped, and communicate what needs to be communicated. Videos should be the same, and with a stable image (such as by using a tripod), clear audio at good volume levels, and edited to remove extraneous content. Data files should be only as large as is needed to deliver the relevant content.

Do Not Use Generative AI (ChatGPT)

Generative AI (such as ChatGPT) is an exciting development in computer science, artificial intelligence, and the philosophy of knowledge. However, this is a class on technical writing, not prompt-writing. Submitting text generated by Generative AI will be considered a violation of academic honesty, a rude prank, and a waste of educational resources. If it can be determined that you have submitted any text generated by Generative AI, you will fail the class.

4. Assessment of Work

Evaluation Criteria

Projects will be assessed against a set of evaluation criteria that will be made available with each project. Read these criteria carefully because they reflect the aspects of the projects that are important given the pedagogical goals of the class.

Subjective Assessment

While much in the discipline of computer science is objective (such as whether a computer program will compile and produce a specified answer), most of the material that is covered in this class will be concepts, ideas, terminology, conventions, and practices that cannot be defined in pure objective language such as that of a computer program. Exams, quizzes, and projects are graded based on the instructor's subjective assessment of the accuracy and completeness of the answers and materials provided by the students.

The instructor will apply an understanding of the material that he has established from (a) thirty years of academic research experience and thirty-six years of professional experience working with the concepts and ideas covered in the class, (b) twenty-two years of managing funded research projects on the topics covered in the class, (c) writing funding proposals pertaining to the course material, which have won $2.9 million in funding from federal agencies, (d) serving as a program director at the National Science Foundation for two years during which he contributed to decisions to award roughly $50 million of federal funding on topics discussed in the course, and (e) routinely serving on the technical program committees of the top human-computer interaction conferences.

5. Grades

Assessment Units

Grades will be determined based on your performance on the following assessment units: projects, exams, quizzes, and in-class exercises. If any of the projects (or other assessment units) are assigned and executed as a group project, your grade for that project will be based on the group's performance for that project.

Your final grade will be weighted across the assessment units as follows:

Each of the Four Projects: 14%
Midterm: 14%
Final Exam: 20%
In-Class Participation, Quizzes, and Exercises: 10%

Each Project and Exam Will be Graded to a Criterion Set for that Project or Exam

The course will be graded in a manner that does not limit the number of good grades (such as As and Bs) that will be awarded, and may result in nobody getting a bad grade (such as a D or an F). You will be graded based on the extent to which you have mastered the material that is assessed in each project or exam, with the highest possible level of mastery for each project and exam determined by the top 10% of the overall scores that students receive for that project or exam. For example, if the top two scores on an exam in a class of 20 students are are 75% and 85%, then the criterion will be set at 80%. And the scores for all students in the class for that project will be scaled up as if 80% correct counted as 100% correct. If you scored a 76%, your score will be scaled up to a 95% (76 / 80 = 95), and you got an A on that exam. The scaling will be assigned to each assessment unit in the class, with a separate numerical criterion determined for each unit.

After scores are scaled up, letter grades will be assigned as follows:

90% and higher = A
80-89.9% = B
65-79.9% = C
50-64.9% = D
49.9 and below = F

For grades of A, B, and C, scores in the top third of each range will receive a "+" and the bottom third a "–".

Late Assignments and Grading Discrepancies

Assignments submitted late will be subjected to a full letter grade penalty (10% after the score is scaled up).  Assignments will be accepted no more than 48 hours past the due date and time. Any grading discrepancies (such as a miscounting of points on an assignment) must be resolved within a week after the assignment is returned.

6. Course Policies

Diversity Welcome

The modern technology workplace is diverse, international, and intercultural. This course welcomes and values these differences as an opportunity to increase our awareness of the contemporary global society, how to work better in groups, and how to build better computer systems.

Students with Disabilities

If you have a documented disability and anticipate needing accommodation in this course, please provide the instructor with your letter of accommodation from the UO Accessible Education Center during the first week of classes. He will make a reasonable attempt to assist the University in providing your accommodation. You may also provide the instructor with additional written information regarding your situation, either on paper or electronically. Please allow two weeks for the implementation of your accommodation.

Prerequisites

The CIS 443 section of this course has a prerequisite of CIS 313. If you are enrolled in the CIS 443 section, you must be have completed CIS 313 in a previous term with a grade of C- or better. Otherwise, you will not receive credit for this course.

Recording

It is requested that you inform the instructor before audio or visual recording the class.

Academic Honesty

Students who are found to have committed an academically dishonest act in this course will receive an F for the course.

Academic honesty includes the following. You should do all of the following:

Academic dishonesty includes the following. You should not do any of the following:

All evidence of academic dishonesty will be pursued following the Faculty Guide for Addressing Suspected Academic Misconduct.

Changes to the Syllabus

Students will be notified in writing of any changes to the syllabus.

A. Hornof 9/26/23