Skip to content

Syllabus

Course Syllabus and Policies

The course is currently planned to be entirely in person for lectures and recitations. Most office hours will be in person, but some may be held over Zoom as well. The course uses Canvas and Gradescope for homework submission, grading, discussions, questions, and supplementary documents; slides and handouts are posted here on the course website; GitHub is used to coordinate group work. We also use Slack for communication and group work: check your email during the first week of classes for the Slack sign up link.

Waitlist

The class has a waitlist. We will add as many students as we can. Waitlists are processed in FIFO order. If you are on the waitlist, we recommend attending the first couple of weeks of class and attempting the first homework.

Prerequisites

There are two classes of prerequisites for this class: undergraduates and graduates.

For undergraduates, we strongly recommend that you have a good foundation in team-based software development. Thus, we expect you to have taken at least one of the following courses:

  • 05-410/610 UCRE
  • 05-430/630 PUI
  • 05-391/891 DHCS
  • 67-272 Application Design and Development
  • 67-240 Mobile Web Design and Development
  • 17-437/637 Web Application and Development

In addition, you should have taken or currently be taking 17-313 Foundations of Software Engineering.

For graduate students, we do not have specific course requirements, but you must have experience or be willing to engage in either software development tasks or user studies. You need not be strong in both to take this class.

If you have questions, please reach out to the class instructors.

Communication

The primary form of communication within this course is through Slack. We will make announcements through a dedicated channel in Slack, and also provide channels for homework clarifications and team-based communication. As such, we highly recommend that students install Slack on their phones / desktop with notifications enabled.

The instructors will hold weekly office hours to provide support with course materials and projects. You can find the office hours schedule updated weekly here on the course website.

You can contact the course instructors and graders via both Slack and email. When contacting instructors, please email/message all instructors/both TAs at the same time, or your communication will be rejected, unanswered.

Teamwork

Teamwork is an essential part of this course. Projects are done in teams of 5 students. Teams will be self-organized and stay together for the entirety of the class. Choose your teammates wisely. Make sure your team has some good programmers and some good user researchers. You'll need both for a successful project.

Being able to address team issues in software projects is one of the core learning objectives of this class. Guidance on teamwork, reflection, and conflict resolution will be provided throughout the semester and are an essential component of the class. We expect significant efforts in attempting to address the team issues before asking instructors to step in. When you get stuck, we are always available to provide advice on how to navigate these issues.

Textbook

Various readings throughout the semester are available online or through the library; we do not have a single textbook but rather assemble readings from different sources.

Assessment

Evaluation will be based on the following distribution: 25% homework, 60% project, 15% participation. Project points will be divided into half related to the project deliverable and half peer assessment.

Homework Points Breakdown (tentative)

Project # Days Given Points % of homework grade % of total grade
HW1 7 75 21% 5%
HW2 8 100 29% 7%
HW3 7 100 29% 7%
HW4 8 75 21% 5%
TOTAL 350 100% 25%

Project Points Breakdown (tentative)

Project # Days Given Points % of project grade % of total grade
P1 12 84 10% 6%
P2 3 42 5% 3%
P3 14 168 20% 12%
P4 21 168 20% 12%
P5 12 168 20% 12%
P6 17 210 25% 15%
TOTAL 840 100% 60%

Regrades

Regrade requests can be submitted via Gradescope. The regrade period is open for one week after grades have been released for a particular assignment.

Late Work and Absence Policy

Participation

Class attendance and participation are important parts of the learning in this course. To account for this, a portion of the final grade is based on your regular attendance and active participation (see Assessment section). That said, we also recognize that students may need to miss class for a variety of reasons (religious observance, job interview, university-sanctioned event, or illness). For that reason, all students are permitted two class absences without any impact on the final grade. When you must miss class, please notify the instructors on Slack (at least 24 hours in advance except for illness/emergency), so that we can discuss alternative arrangements for catching up on class and associated work. If you encounter extenuating circumstances and must miss more than two classes, please come and discuss the issue with the instructors; we would like to find a way to support you.

If you find yourself in a situation that calls for an extended absence for other reasons, please have your academic advisor reach out to the instructors, and they will work to find a solution on a case by case basis.

Projects

Late work will receive feedback but no credit. Due to heavy emphasis on planning & teamwork in this course there are no late days; we expect that you anticipate unexpected events in your planning, and coordinate with your teammates when they arise. Exceptions to this policy will be made only in extraordinary circumstances, almost always involving a family or medical emergency, with your academic advisor or the Dean of Student Affairs requesting the exception on your behalf.

Time Management

This is a 12-unit course, and it is our intention to manage it so that you spend close to 12 hours a week on the course, on average. In general, 4 hours/week will be spent in lectures & recitation and 8 hours on readings and projects. Notice that most projects are done in groups, so please account for the overhead and decreased time flexibility that comes with group work. Throughout the semester, please feel free to give the course staff feedback on how much time the course is taking for you.

Writing

Describing tradeoffs among decisions and communication with less technical stakeholders are key aspects of this class. Most projects have a component that requires discussing issues in written form or reflecting about experiences. To practice writing skills, the Global Communications Center (GCC) offers one-on-one help for students, along with workshops. The instructors are also happy to provide additional guidance if requested.

Policy on use of Generative AI for Writing

You may use generative AI technologies such as ChatGPT or CoPilot for assisting in code development or client communications, unless the question specifically prohibits it. However, any use of AI comes with two caveats: (1) you must clearly indicate the use of such technology (and name the tool) in every homework question or source code file where an AI tool was used as a form of attribution, just as you would if you had taken help from a friend; (2) you are liable for factually inaccurate answers or unspecific rambling produced by AI tools; it is your responsibility to edit AI-produced content before submitting it for class purposes.

Recordings

For this course, we will be recording class sessions and making them available to you for your personal, educational use. Recordings of class sessions are covered under the Family Educational Rights and Privacy Act (FERPA) and must not be shared with anyone outside your course-section. The purpose of these recordings is so students in this course (and only students in this course) can watch or re-watch past class sessions. Feel free to use the recordings if you would like to review something we discussed in class or if you are temporarily unable to attend class.

Devices in Lecture and Recitation

Research shows that using devices on non-class related activities harms both the device user's learning, and other students' learning as well. Therefore, in general, we do not allow the use of any devices during lecture.

Academic Honesty and Collaboration

The usual policies apply, especially the University Policy on Academic Integrity. Many of the projects will be done in groups. We expect that group members collaborate with one another, but that groups work independently from one another, not exchanging results with other groups. Within groups, we expect that you are honest about your contribution to the group's work. This implies not taking credit for others' work and not covering for team members that have not contributed to the team. Otherwise, our expectations regarding academic honesty and collaboration for group work are the same as for individual work, substituting elevated to the level of "group."

If any of your work contains a statement that was was copied verbatim from an external source, you must put it in quotes and cite the source. If you are paraphrasing an idea you read elsewhere, you must acknowledge the source. If you are using a tool to help format or structure text significantly based on content and facts that you provided, you must acknowledge the use of such tools (see policy on generative AI tools above). Using existing material without proper citation is plagiarism, a form of cheating. If there is any question about whether the material is permitted, you must get permission in advance. We will be using automated systems to detect software plagiarism.

Any violation of this policy is cheating. The minimum penalty for cheating (including plagiarism) will be a zero grade for the whole assignment. Cheating incidents will also be reported through University channels, with possible additional disciplinary action (see the above-linked University Policy on Academic Integrity).

If you have any question about how this policy applies in a particular situation, ask the instructors for clarification.

Note that the instructors respect honesty in these (and indeed most!) situations.

Diversity Statement

Your classmates are your colleagues. This is particularly true in this course, where we aim to provide you with principles, practices, tools, and paradigms that will enable you to be an effective, real-world accessibility researcher. We ask that you treat one another like the professionals you are and that you are preparing to be.

We are diverse in many ways, and this diversity is fundamental to building and maintaining an equitable and inclusive campus community. Diversity can refer to multiple ways that we identify ourselves, including but not limited to race, color, national origin, language, sex, disability, age, sexual orientation, gender identity, religion, creed, ancestry, belief, veteran status, or genetic information. Each of these diverse identities, along with many others not mentioned here, shape the perspectives our students, faculty, and staff bring to our campus. We, at CMU, will work to promote diversity, equity and inclusion not only because diversity fuels excellence and innovation, but because we want to pursue justice. We acknowledge our imperfections while we also fully commit to the work, inside and outside of our classrooms, of building and sustaining a campus community that increasingly embraces these core values.

Each of us is responsible for creating a safer, more inclusive environment.

Unfortunately, incidents of bias or discrimination do occur, whether intentional or unintentional. They contribute to creating an unwelcoming environment for individuals and groups at the university. Therefore, the university encourages anyone who experiences or observes unfair or hostile treatment on the basis of identity to speak out for justice and support, within the moment of the incident or after the incident has passed. Anyone can share these experiences using the following resources:

  • Center for Student Diversity and Inclusion: csdi@andrew.cmu.edu, (412) 268-2150
  • Ethics Reporting Hotline. Students, faculty, and staff can anonymously file a report by calling 844-587-0793 or visiting cmu.ethicspoint.com.

All reports will be documented and deliberated to determine if there should be any following actions. Regardless of incident type, the university will use all shared experiences to transform our campus climate to be more equitable and just.

Accommodations for Students with Disabilities

If you have a disability and have an accommodations letter from the Disability Resources office, I encourage you to discuss your accommodations and needs with the instructors as early in the semester as possible. We will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the Office of Disability Resources, we encourage you to contact them at access@andrew.cmu.edu.

A Note on Self Care

The last few years have been challenging. We are all under a lot of stress and uncertainty at this time. We encourage you to find ways to move regularly, eat well, and reach out to your support system or the instructors if you need to. We can all benefit from support in times of stress, and this semester is no exception.

If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit their website at http://www.cmu.edu/counseling/. Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.

Food Insecurity

If you are worried about affording food or feeling insecure about food, there are resources on campus that can help. Any undergraduate or graduate student can visit the CMU Pantry and receive food for free. Follow the directions on the CMU Pantry website to schedule your visit.