Syllabus Schedule Project Evaluation Checklist Handouts My home page
It is easy to make things hard. It is hard to make things easy.
- A. Chapanis, 1982
August 2018

SWE 632: User Interface Design and Development
Course Syllabus
Fall 2018

Professor: Jeff Offutt
Office: 4430 Engineering Building
Email: offutt(at)
Class Hours: Wednesdays 4:30-7:10 Innovation Hall 134
Prerequisite: SWE 619 and SWE Foundation material
Office Hours: Anytime electronically, Tuesdays 3:30-4:30, or by appointment
GTA:Sivani Tadepalli,


Principles of user interface design, development, and programming. Includes user psychology and cognitive science, menu system design, command language design, icon and window design, graphical user interfaces, web-based user interfaces.

This course will teach students how to design usable and effective user intefaces. Concepts in human factors will be covered, specifically in terms of designing software interfaces. We will also study guidelines for designing computer interfaces of various styles, including command interfaces, menus, desktop views, and GUI interfaces. After completing this course, students should:
  • be able to design software interfaces that are appropriate for the user
  • be able to evaluate objectively the usability of a software interface
  • know a variety of interface design strategies

You must be able to program using OO concepts, and have general knowledge of software engineering. If you did not take the prerequisites, please do not ask for “permission.” Instead, read my thoughts on prerequisites.

Office hours are times that I commit to being in my office, door open, first come, first served. You do not need an appointment, and no appointments are accepted. If you cannot make my office hours, then we can try to set up an appointment. Please note that I am seldom available after 5:00 pm. I will inform you in class or on the discussion board if I have to miss office hours.

I expect you to read the relevant material before class. The lectures may not cover everything in the readings and will often include material not found in the readings.

There will be a final exam, closed-book in class.

Unless arrangements are worked out in advance, missed tests cannot be made up, and 10% per week will be deducted for late submissions. I understand that your job may occasionally take you out of town; so does mine. If you are going to be forced to miss class on the day something is due, let me know ahead of time by email or in writing. Some graded work can only be done in class; there will be no makeups for in-class work. Per GMU policy, all homeworks and projects must be submitted before the beginning of final exams (12 December).

Each student will evaluate several software interfaces by analyzing a UI and then submitting a written report. You should submit homework on paper and in class if possible. If you miss class, you may submit via email (no zip files please). Evaluations must be submitted before class on the day they are due to be counted as on time. We will discuss evaluations in class and they will be covered on the final.

You are allowed to work on the evaluations (and any other assignments) collaboratively using one of two models:
  1. Collaborate while analyzing the user interface, then develop the final evaluation reports independently. In this model, each person will turn in a separate document. The submissions must include a section that lists everybody you worked with and what each person contributed. You can work with as many classmates as you like with this model, but only other students in SWE 632 this semester.
  2. Collaborate from start to finish with at most two other students in SWE 632. You must submit one solution and each person will get the same grade.
Note: You are NOT ALLOWED to include “guest names.” Every person listed as a collaborator must contribute. If someone is listed as a collaborator but did not contribute, all will be given a zero on the assignment and reported to the university honor committee.

Each student will implement a moderate-sized project to build a user interface system. More details on the project will be given the second week of class.

All students will be enrolled in the discussion forum for SWE 632 on Piazza. You will receive a invitation to this free resource via your GMU email. We will use the discussion board throughout the semester.

Students must be actively engaged with this class throughout the semester. Students must attend class, participate in classroom discussions, and participate in the online bulletin board (Piazza). This is an easy, but essential part of your grade.

The tentative, subject to change, participation scoring will be as follows. Accumulate up to 60 points (slightly over 5.5 per week). Participation is worth 20% of the overall grade, so 60 points is the full 20%, 45 points is 15%, etc. Point assignment will follow the formula:

  • Participation in class meetings: 1 point for attending, 1 point for completing an in-class assignment, 2 points for contributing to a discussion.
  • Participation on Piazza.
    • 3 points: Usability posting
      1. Real-life usability failures (#badusability): Start a discussion about a usability problem that you found. Tell us what happened, how it affected users, and how it could be corrected.
      2. Real-life usability successes (#goodusability): Start a discussion about a very effective UI that you found. Tell us specifically what the designers did that was effective for the intended users.
      3. Post questions about the concepts (#usability). They will be answered by your instructor, TA, or classmates. (Basic questions are encouraged, but only “interesting” questions will earn credit.) Correct answers will also earn credit.
    • 1 point: Comment on one of the above (a comment with content)
    • 2 points: Terminology posting
    • 1 point: Assigned forum checkins
No more than 10 points may be earned on Piazza in any single week and all points must be earned before the reading period. That is, don’t wait until the last minute.

We will have weekly in-class exercises. Some will involve writing and some will involve modest problem solving. Some will be based on the day’s lecture and some will be based on a previous class meeting. Not all will be announced ahead of time. These will graded on a “done / not done” basis and count towards participation. Important: Credit can only be received if done in class, although if you miss class, you should do the posted assignments on your own to prepare for the quizzes and final exam.

Lectures in this class will be computer free. Computers, whether in the form of laptops, tablets, or mobile phone/pocket-computers, may not be used while I am lecturing. I have a detailed explanation why, but here is the short summary: Computers interfere with your classmate's ability to concentrate on the educational material, my concentration, and your learning. Multitasking is a myth promulgated by inefficient people. Taking notes by hand is much more effective than typing notes on a computer. If you have to check your email or text messages, or take a phone call, please sit near the door so you can unobstrusively step out. I will ask you to close your computers, and if that doesn’t work, will ask you to leave the classroom. (Computers will be used during in-class exercises, discussions, and examples.)

I always accept linkedin requests from current and former students—we clearly have a professional relationship. I tweet random thoughts irregularly about software engineering @jeffoffutt. Out of respect, I do not initiate facebook requests from students, but usually accept them.

As with all GMU courses, SWE 632 is governed by the GMU Honor Code. In this course, all assignments, exams, and project submissions carry with them an implicit statement that it is the sole work of the author, unless joint work is explicitly authorized (for example, thorugh the “collaboration” paragraph above). Help may be obtained from the instructor or other students to understand the description of the problem and any technology, but the solution, particularly the design portion, must be the student's own work. If joint work is authorized, all contributing students must be listed on the submission. Any deviation from this is considered an Honor Code violation, and as a minimum, will result in failure of the submission and as a maximum, failure of the class.

If you need academic accommodations, please see me and contact the Disability Resource Center (DRC) at 993-2474. All academic accommodations must be arranged through the DRC.

Writing Center: A114 Robinson Hall; I strongly encourage you to seek help with at least one of your evaluations, especially if English is not your first language.
University Libraries “Ask a Librarian”
Counseling And Psychological Services (CAPS): (703) 993-2380;

I occasionally send important announcements to your Mason email account, so you must read it regularly. Professors are required to use your Mason email, not a personal email account. Email sent to the professor or TA should have a subject that starts with “swe 632.” If not, we may not notice it. Non-personal class questions should be posted on the discussion board, not sent through email.