Open Educational Resources

Document Type

Lecture or Presentation

Publication Date

Fall 12-10-2025

Abstract

Lecture slides on the software engineering challenges unique to machine learning systems, for an undergraduate software engineering course. After contrasting traditional programming with machine learning, the deck examines why the usual tools for managing complexity—abstraction, reuse, and composition—are harder to apply to ML, given the lack of clear specifications and modularity. It covers concept drift, feedback loops (illustrated with crime-prediction and recommendation examples), and the accumulation of technical debt in ML systems, including the role and pitfalls of notebooks in moving from experimentation to production. Based on "Machine Learning in Production/AI Engineering" by Christian Kaestner and Eunsuk Kang (Carnegie Mellon University).

Comments

https://github.com/CSCI-40500-Fall-2025/ML-Challenges

Creative Commons License

Creative Commons License
This work is licensed under a Creative Commons Attribution-Share Alike 4.0 License.

ml_challenges-src.zip (1286 kB)
Sources

Share

COinS