Practical Computer Science – Teaching UW-Madison’s Computer Sciences Capstone

January 19, 2021

This fall, I took a break from blogging to focus on what turned out to be one of the most fulfilling and challenging things I’ve ever done. I taught a 600-level Computer Sciences course at the University of Wisconsin-Madison: the Computer Sciences Capstone.

CS638: Computer Sciences Capstone

UW-Madison has a world-class Computer Sciences program. It is now the largest major at UW-Madison with over 1800 students, representing a 528% growth rate over the last six years. I have an undergraduate degree from UW-Madison and it’s been the backbone of a career that I’ve enjoyed very much.

It’s always been difficult to give students real-world experiences inside of an academic setting. Most university projects are completed on teams of 1-2 students, students have no direct access to customers, and they don’t have access to experienced professionals outside of their Professors and Teaching Assistants. These and other gaps are what we’re aiming to close with UW-Madison’s Computer Sciences Capstone.

Most university projects are completed on teams of 1-2 students, students have no direct access to customers, and they don’t have access to experienced professionals outside of their Professors and Teaching Assistants. These and other gaps are what we’re aiming to close with UW-Madison’s Computer Sciences Capstone.

The Capstone course gives students a chance to apply what they’ve learned throughout their college careers. We partner with industry leaders who provide mentorship and a project for the students to work on. Students use real-world agile techniques on teams of four to complete their projects in one semester. They have the opportunity to take the course as Seniors.

Fall 2020 was our pilot course with 24 students, six teams, and three participating companies, American Family Insurance, Capital One, and Epic. I could not have been more proud of what the students built this semester.

CS Capstone Course Content

My main goal for the class was to give students as many practical, real-world experiences as I could within an academic setting. I focused on teaching the students how to collaborate in an agile environment and on exposing them to topics that I knew their other classes hadn’t covered (like DevOps). The class itself is structured around the project and we go from project discovery to project completion in one semester. I weave in some cutting-edge topics that most businesses haven’t gotten around to doing right (e.g. self-selection, Design Thinking, etc) and many tried-and-true topics (e.g. scrum, estimation) that the students will likely encounter throughout their careers. We had several guest speakers this semester on everything from clean coding to business agility, all of whom really enhanced the learning experience.

Main Topics This Semester

The main topics I covered this semester were:

  • Agile Software Development – An overview of what “agile” is and which frameworks and principles fall under its umbrella.
  • Self-Selection – This is how students chose what they worked on and who they worked with.
  • Product Discovery – Topics such as Design Thinking, Lean Start-up, and Google Design Sprints. The students ran their own Google Design Sprint and had a few chances to practice prototyping inside and outside of lectures.
  • Agile Practices – User Stories, Scrum, Kanban, Relative Estimation, Pair Programming, and many, many more topics
  • Guest Speakers – Clean Coding, DevOps, Business Agility, Agile in the “Real World”
  • Presentation Skills – Students did a mid-semester and final demo for faculty and local business leaders.

How were they able to finish a project in just one semester? Each team had a set of three mentors from either American Family Insurance, Epic, or Capital One who guided the teams and helped keep them on track. It was tight, but we learned a lot and got a lot done!

Results

The students did an amazing job this semester! They had a very short time to learn topics, determine their target audiences, develop and test product hypotheses, and then iteratively build something meaningful for their company partners. And deliver they did! At the end of the semester, we had:

  • Two COVID-19 dashboards that showed real data to help college students make informed decisions
  • An API written to help companies optimize their odometer readings
  • An app filled with everything you’d need to interact with your car insurance company
  • A beautiful website aimed at helping young people better manage their finances
  • One cow-themed video game that helped high school students learn about money
COVID-19 Dashboard for WI
Computer Sciences Capstone Project
Insurance App Demo
Cash Cows Video Game, Complete with Several Amoosing Cow Puns

What’s Next?

Fall 2020 was a pilot and it went very well. We’re taking Spring 2021 off to prep for the next class in Fall 2021. This spring, we’re taking applications from companies who would like to sponsor projects and partner with future classes.

How Can You Get Involved?

Reach out to me if you’d like to do any of the following:

  • Sponsor/Mentor a Project Team
  • Guest Lecture or Appear on a Business Panel
  • Discuss Content
  • Serve as a Scrum Master Mentor

I’ll be writing more about the class soon. For now, let me just say that I’m truly looking forward to next Fall’s class!

Search the Blog

Subscribe to Blog via Email

Enter your email address to subscribe to this blog. We will never share your email.

About Amber Field

Amber has over 20 years of experience working in the software industry with agile software teams and specializes in creating efficient, happy teams & clients while helping them scale, execute, and work / live intentionally.
Get to know Amber →

Check Amber Out On:

Browse Posts by Category

Recent Posts

Overwhelmed by AI? It’s OK to Watch for a While

Overwhelmed by AI? It’s OK to Watch for a While

There’s a particular flavor of anxiety that’s causing us all to believe that if we’re not using AI all day every day we’re falling hopeless behind. If you’re overwhelmed, resistant, skeptical, or just genuinely uninterested in the AI hype cycle right now, I want to say something that you might not be hearing very often: That’s okay. You’re going to be fine. And here’s why I think that.

read more
We’re Looking for Partners for UW-Madison’s CS Capstone — Could That Be You?

We’re Looking for Partners for UW-Madison’s CS Capstone — Could That Be You?

One of the things I’m most proud of during my career is creating and running UW-Madison’s Computer Sciences Capstone course (CS 620). Every semester, hundreds of computer science Seniors work in teams of four to six on real software projects for real organizations, using agile development practices. And every semester, I need great partner organizations to make it happen. Last year, we had 27 amazing partners and we’re looking to grow quite a bit to accommodate 40% more students for the 2026-2027 school year.

read more
What I Learned at the Global Agility + Innovation Summit: AI, Judgement, and the Future of Leadership

What I Learned at the Global Agility + Innovation Summit: AI, Judgement, and the Future of Leadership

I just returned from the Global Agility + Innovation Summit, a one-day leadership conference in DC hosted by Sanjiv Augustine and his team at LitheSpeed. It was a day packed with sharp thinking, genuine conversation, and the kind of energy that only happens when a room full of practitioners who actually care about the work they’re doing get together. Here are some conference highlights.

read more