Teaching CS 428 (Software Engineering) at BYU
This (Winter 2017) semester, I am teaching Computer Science 428 — “Software Engineering” — for the Brigham Young University Computer Science department. I am actually taking over this class from Dr. Charles “Chuck” Knutson, who was one of my students 30 years ago when I previously taught for BYU. I’m going to do a bit of journaling here as I teach the class, mostly to capture any thoughts or observations that come to me in the class. The class meets once a week on Mondays, for 2.5 hours in the afternoon; we had our first session last Monday. I gave a students a bit of a narrative of my own background, then lectured using a slide presentation based on my outline for an as-yet-unwritten book, Surviving Complexity.
Their initial assignment is to read The Mythical Man-Month (anniversary edition) by Fred Brooks. Since next Monday is Martin Luther King Day, and we won’t be meeting, they have until the following week to read it. I also gave them a list of (and links to) some of my posts from this blog, which they are also to read by the 23rd:
- The Real Software Crisis (1996)
- TEPES
- The Dead Sea Effect
- The Longest Yard
- Lies, Damned Lies, and Project Metrics – Part I
- Lies, Damned Lies, and Project Metrics – Part II
- Lies, Damned Lies, and Project Metrics – Part III
- The Thermocline of Truth
- Getting Technology Lifecycles in Sync
- The Arc of Engineering
- Microsoft Windows Forever and Ever (1996)
These were all cited in my lecture slides, so they are meant to provide more background. All told, they’re likely less than an hour of reading.
Should be fun.