Syllabus Schedule My home page

SWE 205 Software Usability Analysis and Design
Course Syllabus — Spring 2022 (Draft)

Professor:Paul Ammann
Office: Nguyen Engineering Building 4428
Class Hours:Mondays and Wednesdays 12:00-1:15, Buchanan Hall D023
Format:This class meets in person, face-to-face. This is NOT an online class.
Prerequisite:ENGL 101 or ENGL 100
Office Hours: Monday 2:00-3:00; Tuesday 2:00-3:00 online
Office Hours Zoom:  My Personal Room. Waiting room enabled. (Passcode: 1uL2qf)
GTA:Damola Oluyemo, office hours Tuesdays 2-3, online.

SWE 205 is part of the BS in Applied Computer Science, concentration in Software Engineering, and the Minor in Software Engineering. SWE 205 is also suitable for all students interested in usable computing applications, including students in psychology/human factors, computer science, math, physics, and all engineering fields.


Principles of user interface design. Concepts for objectively and quantitatively assessing the usability of software user interfaces. Outcomes include knowledge of quantitative engineering principles for designing usable software interfaces and an understanding that usability is more important than efficiency for almost all modern software projects, and often the primary factor that leads to product success. Major topics include cognitive models for human perceptions and needs, which are used as a basis for analytical and critical thinking about user interfaces; specific engineering principles for designing usable menus, forms, command languages, web sites, graphical user interfaces and web-based user interfaces. Assessments will include written analytical evaluations of existing user interfaces, exams, and HTML-based design projects.

  1. Knowledge of quantitative engineering principles for how to build software interfaces that are usable.
  2. Understanding that usability is more important than efficiency for almost all modern software projects, and often the primary factor that leads to product success.
  3. The ability to critically analyze existing user interfaces and express their positive and negative aspects in engineering terms, both verbally and written.

After completing this course, students should understand how to design and evaluate software interfaces that are appropriate for the user. The class will rely on critical thinking to understand what makes a computer UI usable. We will look at many example UIs and discuss what they do right and what they do wrong. SWE 205 will not require programming.



Every student needs to be part of a group. I would prefer that groups stay stable throughout the semester, but if there is a good rationale to reconfigure a group or two, we'll do that. Group size: 3-4 students.

Group creation mechanism: As a default, we'll drop students into groups at random. If you are happy with your random group, great! If you prefer a different group, during the first week you will have the option to re-group. If your group dwindles to two students, you'll both need to join another group.

At the end of the semester, each student will provide an assessment the promptness, reliability, and engagement of other students in their group. Students will not assess competence; this is about showing up, doing your share of the work, and being a good citizen.

This assessment will determine the "Group Functioning" part of the grade. Generally, this works out to full credit for the majority of students. But for students who are MIA, this works out to zero credit. Occasionally, there are a few "partial credit" students. Please don't do that to your group.

Groups can communicate internally through any mechanism they choose: zoom, discord, google docs, whatever.

Readings are on the schedule web page. Most readings are fairly short. Sometimes the reading is a chapter in a required text (e.g. "Ko Chapter 2"). Sometimes the reading is a webpage (e.g. "Schneiderman's 8 Rules"). Either way, I expect you to read the relevant material before class; that way you are ready for class. Specifically, this means reading the actual text, and not just surfing the slides, should there happen to be slides for that particular reading assignment. To help you do the readings on time, your group will complete weekly reading reflections on BB.


  • Since I use the reading reflections to prepare for (the Monday) class, reading reflections are due Sundays at midnight.
  • The reflections are not assessments. You are not expected to have mastered the material. You are expected to have reviewed the material and reflected on it within your group. Hence, these are not graded as assessments.
  • There are no make-ups.
  • Please! Only one submission per group.
  • Everyone in the group (who participated) gets the same credit.
  • This mechanism has worked really well in the past.

I place great emphasis on in-class learning in all of my classes. Here's why. For this particular course, in-class learning is even more important.

Hence, I expect students to be in class. To enforce this, the GTA will capture attendance and I will factor it into your final grade.

Here's the algorithm: we have 28 scheduled meetings. The first 21 meetings you attend don't earn any credit. After that, each class attended earns 20% of the attendance grade. If you work this out, you'll discover that you can miss two classes and still earn full credit.

I understand that we are still in a pandemic.

For the vast majority of students, this policy works fine. In exceptional circumstances, it doesn't. If necessary, contact me for a discussion.

We will have assignments every week. Generally these require a short written report. For credit, you must share homework solutions with the class via public posting on Piazza. Homework solutions must be submitted before class on the day they are due to be counted as on time. To keep Piazza navigation reasonable, homeworks should all appear under the same thread in Piazza (e.g. "Assignment 4 Solutions"). Failure to do so will earn a smarty-pants rebuke and a deduction in marks on the assignment.

For each assignment, some groups (possibly volunteers; otherwise chosen at random) will present their solutions. We'll cycle through groups; everyone will have multiple chances to present homework solutions. Because of the nature of the assignments, it's unlikely that any two solutions will be exactly the same.

Presentations should last just a few minutes. I discourage slide decks and videos for these presentations, but you will often find it helpful to display images. You can simply put these on Piazza with your report and display them if called upon.

Important: Everyone in the group should participate in the presentation. I'm specifically looking for statements connecting principles discussed in class to specific details in the homework. You can program these into your presentation, or you can have me prompt you for them during the presentation.

You are encouraged to work on the assignments collaboratively both within your group and across groups (e.g. through Piazza).

Assignments are generally open-ended enough that there is no reason for assignments to be super similar.

The course project explores creating and evaluating alternate designs for a specific interface. Details will be provided later in the semester, but the project will be a gropu project. The project will be due in three separate milestones.


I find anonymous discussions unhelpful in this class; here learning is predicated on interactions. Plus, part of your education is to learn to stand behind your questions and ideas. That's how employees function in the working world. Piazza allows partial, but not complete, control of anonymous posts. Should someone post anonymously, I will ask the poster to change the visibility and ask the class not to respond to the anonymous version.

Most classes will feature in-class exercises . Some will involve writing and some will involve modest problem solving. Some will be based on the day's reading and some will be based on a previous class meeting.

Late homework submissions lose 20% per week. I want you staying on track.

Office hours are times that I commit to being in my office, (virtual) door open, first come, first served. You do not need an appointment, and no appointments are made. If you cannot make my office hours, then we can try to set up an appointment. I will post a note on Piazza if I have to miss office hours.

As with all GMU courses, SWE 205 is governed by the GMU Honor Code.

If you have academic accommodations, please contact me. All academic accommodations must be arranged through the Disability Services Office.

Details of Mason's pandemic policies are available on Mason's Safe Return to Campus page. Because everyone has a right to a safe classroom, deviance from Mason's policies will not be tolerated in this classroom.

If you are not cleared to come to campus, STAY HOME!

If the pandemic protocols force you to miss class for an extended period, contact me. In particular, we will work out a schedule for you to take oral assessments as an alternative to the weekly quizzes. Note that other class deliverables can be completed remotely.

If you have pandemic-related accommodations that I need to know about, please share those with me promptly.

At this time, the provost has directed that in-person classes remain that way. Hence, you should not expect a transition to a different format.