Papers in Systems Discussion Series: Critically Engaging with Models
"Models mess with you. They impose a distinct perspective, and a set of rules for operating within them. They frame how you look at your problem. And you’re usually not aware of this perspective and framing."
Next up in our Papers in Systems discussion series: Critically Engaging with Models, by Rebecca Wirfs-Brock and Mathias Verraes
When: Monday, October 6th, 2025, 1 PM - 2 PM Eastern Time (US/Canada). The Zoom room will remain open until 2:30 PM for informal discussion. (Check time in your time zone)
We are very excited that Rebecca Wirfs-Brock will lead this discussion. Rebecca's work has informed our field for decades, and includes influential books: Object Design: Roles, Responsibilities, and Collaborations (2002) and Designing Object-Oriented Software (1996) as well as Design and Reality: Essays on Software Design (with Mathias Verraes).
The paper is on Rebecca Wirfs-Brock's site: https://wirfs-brock.com/rebecca/blog/2022/09/20/critically-engaging-with-models/
Abstract
Models, whether for a software system, a development process, diseases, political systems, or otherwise, are a way to look at (a part of) the world. They are a powerful lens for perceiving a subject, and we should be deliberate when wielding them. They make a choice about what is important, what categories we classify things in, what we see, what’s invisible, what’s valued, or even what’s valid. Models impose a distinct perspective and a set of rules for operating within them. They are reductionist, in that they only show a selection of the subject they’re describing. And they are biased: They implicitly reflect the assumptions, constraints, and values of the model’s author.
With many of the models we acquire throughout our lives, we only engage superficially, and that’s fine. We absorb and assimilate a lot of things without ever deeply engaging with them. This happens when, for example, you’re being onboarded at a new employer, and you simply learn their operating models for doing things in certain ways. The same goes when you’re given some design specifications and implement them as stated. And as a student, you’re usually expected to learn and adopt the models you are taught.
But when we’re trying to achieve something important, we need to take a more critical view. After learning of a new model, we need to decide whether we want to put it to work to help solve our problem. We need to engage more deeply with that model before we decide to commit to it.