We would like to introduce three new courses that will be debuting next term. Please see below for more information on each course:
- CS 398: Topics in Computer Science (Application Development)
- CS 497: Multidisciplinary Studies in Computer Science (Computing and Discrimination)
- CS 497: Multidisciplinary Studies in Computer Science (Team Capstone Project)
CS398: Topics in Computer Science (Application Development)
Description
This course explores knowledge, skills and strategies required to build complex full-stack applications. Using an iterative development methodology, students will work in project teams to design, develop, and test applications and services. Standard development tools and approaches will be used to ensure code quality and performance at every step of the development cycle.
Audience
- Only CS Major students
- Pre-requisites: CS246
Instructor
- Jeff Avery
- jeffery.avery@uwaterloo.ca
Please
go to the CS389:
Application Development page for more
information.
CS 497: Multidisciplinary Studies in Computer
Science (Computing and Discrimination)
Description
This course will consider the ways in which computing systems may enable, encourage, or prevent societal discrimination of a variety of types. Students will examine how algorithms and artificial intelligence systems may provide different outcomes for different populations, and what legal, technical, and societal interventions can ameliorate harms caused by such algorithms and systems.
Our goal is for students in technology careers to be ready to discuss with colleagues the positive or negative discriminatory consequences of technological innovations, and to explain techniques to remove bias from data collections, computer algorithms, or artificial intelligence methods, and why they might or might not work in specific circumstances.
Course marks will come from brief commentaries on course readings (six throughout the term), participation in class discussion, and a final technical project done in small (2-4 person) teams.
The learning objectives for CS 497 are similar to those for CS 492, but with a tighter focus. This course can substitute for CS 492 in any place that CS 492 is required or optional, and students may take both courses for credit.
Audience
- Only CS Major students with 4th year standing may enroll
- Pre-requisites: CS 341, CS 350
Instructors
- Maura Grossman and Dan Brown
- maura.grossman@uwaterloo.ca, dan.brown@uwaterloo.ca
CS 497: Multidisciplinary Studies in Computer
Science Team Capstone Project
Description
Pilot offering of a single-term course similar to the CS 493/CS 494 Team Project sequence but scoped for completion in a single term. Students form teams of four to five members that work together on a project of their choosing. The course gives students the opportunity to work in teams on open-ended, large-scale computer science projects.
After an initial project identification and refinement effort, students are instructed on and gain experience in teamwork, planning, communication, critical thinking, requirements definition, and agile development. Teams must use modern, software tools and methods, as appropriate to their project. User-centered design and test-driven development will be emphasized. Ethical and legal implications must be considered, as appropriate to the project. Guidance will be provided from the start (forming teams, picking projects), through development work, to a culminating symposium.
Teams will be composed of 3-5 students and projects may range from new software systems, to contribution to existing open-source projects, to research projects. There will be in-class instruction on several topics but the emphasis will be on the project work with guidance from the instructor, and there will not be lectures every week. Project work will lead up to a demo day near the end of the term. This demo day will include technical presentations from each group, providing an opportunity to learn and practice technical presentation skills.
Linkage with e-Capstone
The course will be structured so that students participating in our (non-credit, non-academic) e-Capstone will be able to obtain academic credit for some of the e-Capstone activities. The course itself will contain additional content beyond the e-Capstone and can be taken independently of the e-Capstone. A student can take one or the other, or both.
Audience
- Only
CS Major students with 4th year standing may enroll
- Pre-requisites:
CS 246, CS 341, CS 350
- Anti-requisites:
CS 493, CS 494, SE 390, SE 490, SE 491.
- May not be taken by Software Engineering students.
Notes
- The SE
Capstone Design Project Handbook will be used as a resource for the
course. While the SE Capstone is a three-term sequence, so that it will
not be possible to cover all material from that sequence, the project
handbook distills many years of experience and provides invaluable
guidance.
- Hardware
and software requirements will vary with the chosen project. Beyond the
standard hardware/software resources provided to all CS students, students
are responsible for obtaining any necessary resources. Free/open-source
tools are encouraged where applicable. Students should be aware that some
widely used free services are hosted on servers physically located outside
Canada, and it may not be possible to provide alternatives hosted at the
university or within Canada.
- If a team drops below 3 students due to students dropping the course, illness, etc., the instructor will work with the remaining students to restructure their project or to merge them with another group depending on the individual situation and the point in the term. Irreconcilable conflicts and similar situations are handled on a case-by-case basis by the instructor working directly with the students to develop a reasonable and equitable solution.
Grading Scheme
- Preliminary
idea/proposal/pitch - 10%
- Refined
idea/proposal/pitch - 10%
- Established
development methodology and initial iteration - 10%
- Mid-point
check-in and feedback - 20%
- Final
iteration and feedback - 30%
- Technical presentation and demo day - 20%
Instructor
- Charlie Clarke
- claclark@uwaterloo.ca
Comments
Post a Comment