What time does your model show?

  • Yousef Mehrdad Bibalan

Foreword: Thorngate’s postulate of commensurate complexity

The postulate of commensurate complexity is a description of a phenomenon in social science theorizing. Karl E. Weick claims that research in social psychology can always only possess two of the three meta-theoretical characteristics: ‘Generality’, ‘Accuracy’, and ‘Simplicity’. Therefore, one of these three characteristics must always be subordinated to the other two. Simply put, a model can only possess two of the three characteristics of being general, accurate, and simple, and never all three simultaneously.

This postulate is named after the Canadian social psychologist Warren Thorngate from the University of Alberta. In describing the problem, he states: “In order to increase the generality and accuracy of theories, their complexity must inevitably increase.”

Karl Weick used the image of a clock below to illustrate this concept. On this clock, at 12, 4, and 8 o’clock, the three terms Generality, Accuracy, and Simplicity are written. Now, pay attention to the concepts of 2, 6, and 10 o’clock:

2 o’clock: Research is universally applicable and highly detailed, but it becomes complex and loses its simplicity.

6 o’clock: Research is useful for a specific context, but its results are not generally applicable to other contexts and lack generalizability.

10 o’clock: Research is universally applicable and easily understood, but it lacks sufficient detail and high accuracy.

Karl Weick claims that you must make a tradeoff when choosing these three characteristics, because only two of them are achievable at any given time.

Discussion: What time is it in your model’s world?

The interesting point is that Thorngate’s model can be applied to software. And what’s even more interesting is that when we face a problem and want to provide a solution for it, we map out certain aspects of the solution (read: the model) in our minds.

Let’s solve a simple example together. We want to design the database for a small banking system that handles deposits and withdrawals. Do you consider two separate tables for deposits and withdrawals, or a single table named “transactions” that includes both? Now, if you look at your own solution through the lens of simplicity-generality-accuracy, what time are you positioned at?

Now is the time to review some of your previous solutions and see what time it is in the world of your solutions.

Source:

The idea for this post comes from the book Mastering DDD by Annegret Junker.

Press ESC to exit search