Concordia University Wisconsin  ·  School of Arts and Sciences  ·  B.S. Computer Science Curriculum proposal draft
Computer Science Curriculum Evolution
CSC 4400 3 Credits 4000 level Moderate AI weight

Coding III - Data Structures

Agentic coding tools now emit textbook data structure implementations on demand, so the scarce professional skill has moved from writing them to specifying them precisely, choosing the right one for a workload, and verifying machine-generated code against its invariants and cost model. At the same time data structures have become AI infrastructure - inverted indexes, tries, and approximate-nearest-neighbor graphs are what make retrieval-augmented systems work - so the course keeps its classical core and adds both the verification discipline and the indexing structures industry now depends on.

Current catalog prerequisites — (CSC 250 or 2050).

The revision

Current description → proposed description

Current — CUW catalogverbatim

As sub-disciplines of artificial intelligence, machine learning and robotics hold much promise for the creation of partial and useful AI systems, but the correct understanding and application of these disciplines requires careful study of their theoretical underpinnings. This course examines the underlying theory behind current machine learning and robotic applications as well as their practical implementations. Students will work with state-of-the-art algorithms for supervised, and reinforcement learning. Students will also complete practical assignments related to robotic construction and navigation. Moral, ethical, and worldview issues related to these topics will be addressed from the Lutheran Christian perspective.

Prerequisites: (CSC 250 or 2050).

Proposed — revised for the AI eradraft

Coding III develops the data structures and cost analysis required to build software that remains efficient as data volume grows. Students implement and test dynamic arrays, linked structures, stacks, queues, hash tables, balanced search trees, heaps, tries, and graphs, derive worst-case and amortized bounds, and confirm those bounds by measurement on realistic workloads. Structure selection is treated as an engineering decision governed by access pattern, memory hierarchy, and cost rather than by habit. Because AI coding agents now produce such implementations on demand, the course shifts emphasis from typing an implementation to specifying it precisely and establishing that it is correct. Students review machine-generated structures against their stated invariants using property-based tests, adversarial inputs, and profiling, and remain accountable for behavior they did not write. Students also examine the indexing structures beneath modern AI systems, including hash and inverted indexes, tries, and approximate-nearest-neighbor graphs, measuring the recall, latency, and memory tradeoffs that govern retrieval at scale.

Note. Catalog discrepancy worth surfacing: catalog.cuw.edu lists CSC 4400 under the title "Coding III - Data Structures" but prints the CSC 2400 Machine Learning and Robotics description, differing from CSC 2400's entry by three words: "partial" for "practical", the omission of "unsupervised", and "the" for "a" Lutheran Christian perspective. The catalog's own old-or-new prerequisite pairing identifies CSC 4400 as the renumbered CSC 300 - CSC 3200, CSC 3210, and CSC 4200 each list "CSC 300 or 4400" - and three downstream courses depend on it, which the machine learning description does not support. The proposed description and CLOs below are therefore written for Coding III - Data Structures, not for machine learning and robotics; the department should correct the catalog entry. No entry exists for CSC 4400 in the workbook's proposed descriptions or in the workbook's curriculum map, so no I/D/AE coverage constraint applied.

What changes

  • Verification of agent-generated implementations added alongside required hand-implementation
  • Property-based tests, invariant checks, and adversarial inputs as first-class practice
  • New unit on AI retrieval indexes: inverted indexes, tries, ANN graphs
  • Empirical benchmarking reconciled against derived asymptotic bounds
  • Written design rationale defending structure selection for a stated workload
Course learning outcomes

6 proposed outcomes, mapped to 6 program outcomes

Each outcome below is written to be observable and assessable, and each is mapped to the program learning outcomes for which it produces evidence.

1

Students will be able to implement the core abstract data types of the discipline - dynamic arrays, linked structures, stacks, queues, hash tables, balanced search trees, heaps, tries, and graphs - from specifications they write precisely enough that an independent implementer or coding agent could satisfy them, defending each structural invariant the specification imposes.

Maps to

Writing a specification precise enough for an independent implementer or coding agent to satisfy, then defending each invariant it imposes against the implementation produced, is the propose-and-evaluate judgment PLO 4.2 names, exercised on the structures those agents now generate.

2

Students will be able to analyze the time, space, and memory-hierarchy cost of a data structure both asymptotically and empirically, reconciling performance measured on realistic workloads, including the retrieval indexes built in this course, with the derived worst-case and amortized bounds.

Maps to

Interpreting and explaining the measured behavior of the AI retrieval indexes built in this course is the AI data outcome PLO 6.1 asks graduates to make intelligible. Reconciling those measurements with derived worst-case and amortized bounds is quantitative analysis that must yield a defended conclusion, as PLO 6.2 requires.

3

Students will be able to evaluate data structure implementations generated by AI coding agents by testing them against their stated invariants with property-based tests, adversarial inputs, and profiling before accepting them into a codebase.

Maps to

Testing agent-generated implementations against their invariants with adversarial inputs, and judging the downstream risk of accepting code the student did not write, is exactly the critical analysis of AI-produced output that PLO 4.1 names.

4

Students will be able to construct the indexing structures that support retrieval in modern AI systems - hash and inverted indexes, tries, and approximate-nearest-neighbor graphs - measuring the recall, latency, and memory tradeoffs that distinguish them.

Maps to

Recall, latency, and memory measurements taken from a retrieval index are AI data outcomes in the literal sense PLO 6.1 names, and the CLO requires students to produce and explain them.

5

Students will be able to justify a data structure selection for a stated workload in a written design rationale that a non-specialist stakeholder can act on, naming the assumptions under which the choice fails.

Maps to

The written design rationale, including the assumptions under which the chosen structure fails, is transparent technical communication offered with integrity rather than advocacy, as PLO 5.1 requires. Writing so that a non-specialist stakeholder can act on the recommendation is the translation of technical knowledge for a broader audience named in PLO 5.3.

6

Students will be able to differentiate problems that a change of data structure solves from problems that require a change of algorithm, selecting and defending the appropriate intervention.

Maps to

Selecting and defending the intervention - a different structure versus a different algorithm - is the propose-and-evaluate judgment PLO 4.2 names. The differentiation must be made on profiling and complexity evidence, drawing a meaningful conclusion from quantitative analysis as PLO 6.2 requires.

Coverage

Program outcomes this course reaches

Filled cells are program learning outcomes with at least one supporting course learning outcome in this course. Sparse coverage is expected — no single course carries all eighteen.

ULO1
1.11.21.3
ULO2
2.12.22.3
ULO3
3.13.23.3
ULO4
4.14.24.3
ULO5
5.15.25.3
ULO6
6.16.26.3