Introduction to 15.879 Building Serious System Dynamics Models
Purpose of the Course
Building useful dynamic models is challenging—a craft often mastered only after years of classes or apprenticeship. While basic skills such as standard formulations can be learned from textbooks and problem sets, the more advanced capabilities needed to model new problems independently are hard to acquire without extensive practice and expert feedback—resources many talented learners lack.
This free online course helps fill that gap. It is aimed at aspiring modelers who already know the fundamentals of system dynamics (through a full-semester course or self-study) and now want to tackle more serious problems effectively. The course is organized around several modeling challenges of increasing complexity, originally discussed with graduate students at MIT in the spring semester of 2025. By working through these problems, critiquing other students’ models, comparing your critique with the instructor’s, and revising your own work, you will receive multiple opportunities to hone your thinking and sharpen your modeling skills.
Prerequisites
If you are new to system dynamics, first master the basics. A great resource is Business Dynamics by John Sterman. After studying that text and successfully completing most of its Challenges (crucial for skill building), you will be ready for this course.
John Sterman, Business Dynamics: Systems Thinking and Modeling for a Complex World, McGraw-Hill / Irwin, 2000. ISBN: 9780072389159
How to Use the Course
Modeling is a contact sport—you cannot learn it without doing it, and receiving feedback on how well you did is key to improvement. This course supplies multiple problems for hands-on practice and is designed to give feedback even without direct interaction with the instructor. Materials follow the weekly assignments used at MIT: the first nine classes focus on instructor-supplied problems; the last three involve defining and solving new problems, giving practice in both modeling and problem formulation. Expect each class to require about 10–15 hours.
It is critical to follow the process below to maximize the learning from this course. Otherwise, you may easily waste your time and the material, e.g., by reading through problem definitions and then looking at models built by others, without attempting to do your own modeling first. If time is limited, it is better to apply the full process to fewer problems than to skim more assignments.
- Classes 1–9 (instructor-defined problems)
a. First pass: Tackle the problem on your own before viewing any MIT submissions or videos. Build an initial model, but do not fine-tune its behavior yet—that effort is premature.
b. Peer review: Examine the models submitted by MIT students (but not yet the instructor’s example, where available). Put yourself in the shoes of a critic: check stock-and-flow structure, equations, and units. Note weaknesses, suggest improvements, and highlight instructive features.
c. Watch class discussion: Watch the video critiques. Compare your observations with those presented. What did you miss? What did you catch that the faculty and students did not? What can you learn from these comparisons?
d. Self-critique: Re-examine your model with fresh insight from step b and step c.
e. Revision: Update your model accordingly. Now begin assessing simulated behavior and its plausibility.
f. Sample solution: If an instructor model is provided, review it and make any remaining refinements to your own. - Classes 10–12 (student-defined problems): Again, it is critical to follow the process below. Do all the steps for one proposal before going to the next, and if short of time, do it on fewer, prioritizing those aligned with your interests, rather than skipping steps to learn from multiple proposals.
a. Problem definition critique: Read and comment on each initial problem definition found in the Initial Student Modeling Proposals. Put yourself in the shoes of the instructor: pose questions and suggest improvements.
b. Compare feedback: Review the instructor’s and peers’ comments on that problem definition in the Feedback on Initial Proposals section. Note agreements, differences, and identify lessons about effective problem definition. Then read through the Finalized Proposals and see how well the students have incorporated the feedback and what may still be missing.
c. Modeling: Treat each finalized definition as a new exercise and repeat the six modeling steps above. If pressed for time, focus on problems aligned with your interests.
By following these steps, you will receive continual feedback—comparing your reasoning and models with those of classmates and the instructor—crucial for advancing without excessive trial-and-error or hours of frustration wondering whether your solution is sound.