pastel at mtu.edu
Tuesday and Thursday at 2:00-3:20 pm on line.
CS 3141 – Team Software
CS4760 Course Goals
The goals of the course are proficiency in UI design and implementation, ability program web and enterprise application software, and general knowledge of Human-Computer Interaction (HCI).
Upon successful completion of this course, students will be able to do the following:
- design an application to meet the clients needs within realistic constraints.
- design an application that us is makes best practices of usability.
- function on a multidisciplinary team
- communicate to a broad audience
I used these text books to prepare the class notes:
- Human-Computer Interaction, Dix et. al., Prentice Hall, ISBN 0-12-239864-8 The Humane Interface, Raskin, Addison Wesley, ISBN 0-201-37937-6
- Usability Engineering, Rosson and Carrol, Morgan Kaufmann, ISBN 1-55860-712-9 Designing the User Interface, Shneiderman, Addison Wesley Longman, ISBN 0-201-69497-2
- Interaction Design, Preece, Robers, and Sharp, Wiley, ISBN 0-471-49278-7
- The Psychology of Human-Computer Interaction, Card, Moran and Newell, Lawrence Erlbaum Ass. Publishers, 1983
- User-Centered Website Development, McCracken and Wolfe, Printice Hall, ISBN 0-13-0411611-2 Usability Testing and Research, Barnum, Longman Publishers, ISBN 0-205-31519-4
- Volume 1: Xlib programming manual by Adrian Nye, 3rd edition, June 1992. O’Reilly & Associates, Inc.
- The Visual Display of Quantitative Information, Edward R. Tufte, Graphics Press, ISBN 0-9613921-0-X
- Visual Explanatins, Edward R. Tufte, Graphics Press, ISBN 0-9613921-2-6
- Universal Principles of Design, William Lidwell, Kritina Holden and Jill Bulter, Rockport Publishers Inc., ISBN 1-59253-007-6
- The Resonant Interface, Steven Heim, Addison Wesley, ISBN 0-321-37596-3
- Sketching User Experiences, Bill Buxton, Focal Press, ISBN 0-12-374037-1
- Software For Use, Larry Constantien and Lucy Lockwood, Addison Wesley, ISBN 0-201-92478-1
- Team Writing: a guide to working in groups, Joanna Wolfe, Bedford, ISBN-10: 0-312-56582-8
- Research Methods in Human-Computer Interaction, Jonathan Lazar, Jinjuan Heidi Feng and Harry Hochheiser, Wiley, ISBN 978-0-470-72337-1
Approximate Schedule of Major Work
|Week||Project Assignments||Individual Programming Assignments|
|2||Scientist Interview||Programming Assignment 1|
|3||App Description Document||Programming Assignment 2|
|4||Team Website||Programming Assignment 3|
|5||Cognitive Walk Through||Programming Assignment 4|
|13||Assist Usability Testing|
A major component of the course is a semester long design and implementation project. The project consist of two parts, design and implementation. The design component of the project requires making a team website, writing and posting documents, class presentation, and helping with the evaluations of yours and others project.
You will implement a significant portion of your design using software tools specified in the course. I am more concerned with the usability and usefulness of the app. You should be prepared to explain your code.
Individual Programming Assignments
Individual programming assignments are to be completed individually. The assignments lead you through setting up a development environment and introducing the software tools used to implement the project.
There are several surveys at course end. The surveys are used to evaluate the course and your teammates. The surveys are required.
You must be present for the project presentations; absolutely no excuses. You must also come to assigned scheduled class hours so that you can collaborate with graduate students and discuss topics. Class attendance will be recorded using Zoom’s usage report, so you should use your MTU account to attend the Zoom meeting. You are allowed 2 unexcused attendances at scheduled class hours. More than 2 unexcused attendance will result in grade reduction.
This course is a team based project course. The project involves many stakeholders, consequently proper communications is essential. Communication media are
- Emails – Be sure that you have access to the course email list. Also your team should have an email list.
- Interviews and meetings – Your team will have meetings and interviews with your scientists/client, graduate students/UX conultants, me/instructor and with your teammates.
- Discord – I will assign your team to discord channels. The channel can be used for your internal communications.
- Websites – You will create a team website and your UX consultants/graduate students will make a website. The websites are another medium for communication between your team and scientist. Be sure to tell your scientist/client about your team website.
- Presentations – Your team will make several presentations. You must attend all presentations.
- Repository – I will assign your team a GitHub repository. The repository is another medium to communicate your code to your teammates. You will need a GitHub account.
Effective communication has several aspects:
- Sincerity – Miss leading or dishonest communication is not effective communication.
- Respect – Respectful communication is respect for others. If your audience does feel respected, they will not listen. Consequently, disrespectful vocalization is disruptive to the proper content of your message. Respectful communication is also giving others time to speak.
- Listening – Communication is two way. You need to listen more than you speaking.
Improper communication will result in a grade reduction.
All assignments are required. If you cannot complete any assignment you still must submit it, but I will not give you feedback on the assignment. Sometimes I miss an assignment submission, so if I have not given you timely feedback on your assignment, please email me a reminder with the subject line “cs4760 – Missing feedback” and the body of the email explain what assignment is missing and when you submitted it.
Your course grade will be determined by your performance on:
- Individual programming assignment
- Project completion and quality
- Course participation
- Surveys completions
Course participation includes working with your team, assisting other team, assisting graduate students, and participating in discussions.
You must satisfactorily perform on all aspects of the course to pass the course.
This is a group project course, so I cannot give you percentage breakdown of the grading.
Under graduate students work in teams on the project. They may discuss any aspect of the project with their team and graduate students including coding the project, but the individual programming assignments are an individual effort. This way you will be assure that all team members have a basic knowledge of Groovy and Grails.
Please let me know if you have a disability that requires special arrangements.
References to University Policies
University policies on Academic Integrity, Assessment, Disabilities Services, Institutional Equity and Inclusions, Veteran/Military, and Equal Opportunity, Discrimination, or Harassment Statement can be found at: