Part II. Microservice Design Principles

The Flaw of Averages

In the 1950s, the US Air Force launched a study into the causes of pilot errors and part of that study focused on the physical dimensions of the pilots and their cockpit control systems. The cockpits had been initially designed based on assumed physical averages of pilots and it was assumed that pilots had grown larger over time and that the design needed to be updated.

Tip

This story comes from the book The End of Average by Todd Rose (Harper Collins, 2016). Rose has given a TEDx talk on the subject of averages and is a leading proponent of an interdisciplinary field called “The Science of the Individual”.

It fell to 23-year-old Lt. Gilbert Daniels to lead the painstaking process of carefully measuring over 4,000 pilots on 140 different physcial dimensions and then analyze the results. Along the way, Daniels got the idea to go beyond the initial plan to compute the averages of all 140 dimensions in order to construct what the military deemed the “average pilot.” Daniels wanted to know just how many of the 4,000 pilots he had measured actually were average—i.e., how many fit the computed values the military was aiming to use to redesign the airplane cockpits?

By taking just ten of the many dimensions he was working with (height, chest size, sleeve length, etc.), Daniels constructed what he defined as the average pilot. Daniels also posited that anyone who fell within a 30% range of the target number for a dimension would be included in his list of average pilots. For example, the average pilot height turned out to be 5’9”. So, for Daniels, anyone who measured 5’7” to 5’11” would be counted as average for height. Daniels then proceeded to check each of his 4,000 subjects to discover just how many of them would score within the average for every dimension. He was looking for all the pilots who could be considered completely average. To everyone’s surprise, the total count was zero. There was not one single pilot that fell within 30% of the average for all ten dimensions. As Daniels wrote in his paper The “Average Man”?:

As an abstract representation of a mythical individual most representative of a given population, the average man is convenient to grasp in our minds. Unfortunately he doesn’t exist.

Lt. Gilbert Daniels, The “Average Man”?

It turns out there is no such thing as an average pilot. Designing a cockpit for the average pilot results in a cockpit configuration that fits no one. Intuitively, this makes sense to most of us. While averages are helpful when looking for trends in a group, the resulting “profile” from this group does not exist in real life. Averages help us focus on trends or broad strokes but do not describe any actual existing examples.

The reason for this difference between real pilots and the average pilot can be summed up in what Rose calls the principle of jaggedness. When measuring individuals on a multidimensional set of criteria (height, arm length, girth, hand size, and so forth), there are so many varying combinations that no one individual is likely to exhibit the average value for all dimensions. And designing for an individual that exhibits all those averages will result in a poor fit for every actual person.

This principle of jaggedness is important to keep in mind when designing software architecture, too. Designing for an ideal or average is likely to result in a model that fits no single purpose well. Guidance that calls out specific measurements of an ideal microservice or canonical model for microservices is likely to have traits that fit no existing microservice implementation. Ideals are just that—not realities.

The solution that eventually worked for the US Air Force was to incorporate variability into the design of airplane cockpits. For example, creating an adjustable seat, the ability to modify the tilt and length of the steering column, and moving the foot pedals forward or back are all examples of designing in variability. This works because the exact dimensions of any single element in the design are not as important as the ability to identify the important dimensions that need to support variability.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset