Software Design and AI-assisted Development Course in Fall 2026

Announced to undergraduate students in an email on March 18, 2026:

Updated for Fall’26

CSC253 Software Design and AI-assisted Development

Software design is a critical discipline because modern software systems are too complex for any single individual to fully comprehend, yet they must be designed to avoid causing harm to the people they serve. This course focuses on the collaborative construction of software by teams. The curriculum covers:

  1. Design Principles and Practices: Information hiding, software architectures, work assignments, team organization, iterative development, and documentation.
  2. Safe Programming in Rust: Generics and traits, ownership and borrowing rules, safe pointers, modules, and design patterns.
  3. AI Assistance: automated code and test generation, specialization, and coordination by coding agents.
  4. Ethical Principles: Fairness and human fallibility.

Assignments emphasize teamwork in software design and development. Students enrolled in CSC 453 are also required to learn Rust meta-programming.

Prerequisites:

  • CSC 172 (Data Structures and Algorithms) or equivalent for CSC 253.
  • CSC 172 and CSC 252 (Computer Organization) or equivalent for CSC 453.

Rust-related industry news:

Leave a comment