diff --git a/articles/published/testing-telos.md b/articles/published/testing-telos.md index b3c6954..7dec8c0 100644 --- a/articles/published/testing-telos.md +++ b/articles/published/testing-telos.md @@ -2,9 +2,9 @@ The classic *Testing Pyramid* is not wrong; it is simply *incomplete*. It was forged for one specific kind of engineering work: the steady addition of new user-facing features. In that narrow context the pyramid makes perfect sense: a broad base of fast, inexpensive unit tests, a smaller middle layer of integration tests, and a thin apex of end-to-end checks. The shape itself is the visual signature of a final cause or ultimate purpose of that work. The word that Aristotle used for this concept, was *telos*. -Software engineering is not a single kind of work. Different engineering goals demand different testing strategies. We can conceptualise these strategies as simple shapes. The famous pyramid is one such shape, and only one of four natural shapes that emerge when we observe what teams actually *do* in practice. Each shape is the visible expression of a distinct *telos*. +In Aristotelian terms, also, software testing (and software development) is *techne* — a craft. A craftsman does not begin with a fixed form and force every material into it. He begins with the *purpose* the artifact must serve, then lets the material and the method follow. In testing, the software is the material object; the testing strategy is the form; and the engineering goal is the telos. When these causes are mismatched, confidence is illusory and effort is wasted. -In Aristotelian terms, software testing (and software development) is *techne* — a craft. A craftsman does not begin with a fixed form and force every material into it. He begins with the *purpose* the artifact must serve, then lets the material and the method follow. In testing, the software is the material object; the testing strategy is the form; and the engineering goal is the telos. When these causes are mismatched, confidence is illusory and effort is wasted. +Software engineering is not a single kind of work. Different engineering goals demand different testing strategies. We can conceptualise these strategies as simple shapes. The famous pyramid is one such shape, and only one of four natural shapes that emerge when we observe what teams actually *do* in practice. Each shape is the visible expression of a distinct *telos*. What follows are the four archetypal testing shapes we have observed across real projects. Each includes its visual metaphor, its characteristic purpose, the strategy it demands, the distribution of risk it creates, and the signals that tell us our work has succeeded.