Home | People | Curriculum | Projects | Resources | Media

cs392: Software Deveopment for Accessibility

Instructor: John Dougherty

Semester: Fall 2010

Meetings: MWF 11:30 am - 12:30 pm in the CS Teaching Lab (KINSC H110)

Texts: none; readings from Sommerville and Leveson

Requirements: Exams (2-3), journal paper reviews and discussion, group projects (see below), and the classic "participation."

Collaboration: You are encouraged to discuss the lecture material, labs, and written work with other students, subject to the following restriction: the only "product" of your discussion should be your memory of it - you may not write up solutions together, or exchange written work or computer files.

Collaboration is not allowed on exams.

Prerequisites: CMSC 106: Data Structures or consent of the instructor

Description: A liberal arts treatment of the processes and issues involved in the practical design, implementation and delivery of software applications -- as much as possible we will explore various systems and platforms, but the actual projects will be developed "on the fly" with as much external client input as possible. Still, the goals (and trade-offs?) of software accessibility will be woven into all discussions and designs.

Schedule: very rough, tentative, based loosely on Sommerville

  1. overview, goals, definitions, and delivery
  2. requirements
  3. design
  4. development and implementation
  5. verification and validation
  6. people management
  7. emerging technologies

Learning Accomodations: Students who think they may need accommodations in this course because of the impact of a disability are encouraged to meet with the instructor in private (e.g., during office hours) early in the semester. Students should also contact Rick Webb, Coordinator, Office of Disabilities Services (, 610-896-1290) to verify their eligibility for reasonable accommodations as soon as possible. Early contact will help to avoid unnecessary inconvenience and delays, and facilitate learning.


  1. Implementations to Specifications: Statistics about a text file
  2. External Project: Working with a small business
  3. Modem Dialing Project: Explicit accessibility with computing/IT
  4. Term Project: Parents' Advising Widget (PAW)

Assessment: There will be various meetings, demonstrations and interviews along with the more conventional tests (hopefully conducted online), projects and presentations (including code reviews). I will also be talking to clients, those who have served the course by meeting with us and providing feedback; however, these conversations with clients are only to inform me so I can provide a more thorough assessment (i.e., client comments do not directly impact your grade). Wherever appropriate, I will share client feedback directly. As this is a seminar course, I will not commit to a pre-set ratio or weighting. You will also receive feedback directly from the instructor throughout the term (i.e., no surprises).


Haverford College Page maintained by John Dougherty.
Computer Science Department, Haverford College.