Which is the better general guideline, "prefer standardization" or "don't care about standardization"?



  • In my software development team, we have established some guidelines to help single developers take decisions on their own. Recently, some discussion arose around one of those guidelines. It deals with whether one should generally opt for uniform, consistent approaches or not. Or, put differently, whether the burden of proof should lie with the one wanting to do something differently or with the one trying to establish a standard. Put in a nutshell, these are the two opposing points of view:

    • View A: Use a uniform approach, unless there is a convincing argument that it's disadvantageous

    • View B: Don't care about a uniform approach, unless there is a convincing argument that it's advantageous

    Clearly, this is just a very abstract guideline, and both the cost and benefits of uniformity as well as those of non-uniformity will vary a lot for different situations. Examples of where we see this guideline as applicable are coding standards, API and UI design, development processes and used development tools. I would also guess that this is a matter of scale: The larger a team/organization becomes, the more disadvantages for a single, uniform approach appear. And the longevity of thinking is probably also a factor. For that matter, in our specific case, we talk about roughly 20-25 people in a few closely interacting sub-teams and we are in a business where long time-frames are relevant.

    From my software engineering background, my gut feelings say "standards are usually good", which leads me to prefer view A. But as I said, others on my team disagree, and some voices in the literature (e.g. Manuel Pais and Matthew Skelton in "Team Topologies") call view A "Monolithic Thinking" and note it as an anti-pattern.

    Question: Is there evidence (empirical, as hard as possible) that either View A or View B is preferable as a general guideline? Does this apply only for certain contexts/situations (e.g. "view .. was shown to be better in teams up to .. people" or "standardization was shown to be beneficial in area .. but not in area ..")?



  • Here is a study on the effects of standardization:

    https://www.researchgate.net/publication/228867224_Process_Standardization_Task_Variability_and_Internal_Performance_in_IT_and_Business_Services_Outsourcing

    They found that, in non-variable tasks, standardization improved performance quickly after the standard was implemented. In variable tasks, performance degradation was experienced after standardization; however, performance improved thereafter.

    I suspect most find standard approaches to work create predictability, reduce variability in outcomes, reduce threats, and increase efficiency. And I bet, while we enjoy those benefits, we lose some degree of innovation, agility, experimentation, and risk-taking. In practice, I have seen standard approaches cause trouble because people do not know how to deviate from the approach when it is necessary. Some personality types are severe rule followers and, once the rule is established, there is no breaking it no matter the need or the case in doing so.




Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2