From the Stacks: Apply the Laws of Scalability to Management
While many people assume that the term “scalability” is a vague buzz phrase, it can, in fact, be mathematically defined, thanks to the work of computer science researcher Neil J. Gunther.
Back in 1993, Gunther started formulating what would eventually become “Universal Scalability Law,” a formula that describes how to factor resource contention and incoherence into measurements of scalability of a system.
Very roughly speaking, USL models the linearity of a system, factoring in the latency occurred by queuing the work that needs to be done (contention), as well as making sense of the work that has been completed (incoherence). Not surprisingly, USL is often name-checked in the same sentence as Amdahl’s Law.
Because USL has no topological dependencies, it has been used to describe a range of parallel systems, including microprocessors, clusters, load balancers and Big Data systems. And like any formula with a wide range of applicability, USL holds out the temptation that it could be helpful for describing less quantifiable phenomena as well.
Such as management!
In an illuminative missive posted last April, Adrian Colyer applied the dynamics of USL to running a business. Colyer worked as the chief technology officer for SpringSource before it was purchased by VMware, where he then served as CTO for applications. These days he acts as an advisor to companies such as ClusterHQ and Weaveworks.
In his Morning Paper blog, Colyer typically examines interesting academic papers in the computer science field. In this entry, however, he looked at the ways USL could provide lessons in managing a fast growing company.
For instance, the idea that contention slows scalability can also illustrate why it is important for a manager to delegate tasks, rather than have a hand in everything.
“As a leader, you may enjoy the feeling of being the alpha-male or female in the organisation. And it turns out you really are the alpha (if you’re not careful). Not alpha as in ‘top dog’ (or cat, if you prefer), but alpha as in the alpha coefficient of the USL.” — Adrian Colyer’s geek humor.
“When you don’t delegate enough, you get diminishing returns as the organisation grows,” Colyer wrote. “Working at or close to 100 percent utilization will slow to a crawl everything that depends on you.”
USL’s equation for incoherence also provides some lessons. In colloquial terms, incoherence “measures the cost of getting agreement on what the right thing to do is.” The more people you add to the decision-making process, the more incoherence you collect. Past a certain point, adding more people can even result in negative returns.
From this thinking, Colyer concluded that “as the organisation grows, strive to keep the number of stakeholders that need to be involved in any decision down to a minimum.”
Extending scientific definitions to cover non-scientific realms is always definitionally dicey, as any physicist who has cringed at the overuse of the word “entropy” can attest. Nonetheless, the lessons of USL can be instructive.
We were first tipped off to Colyer’s post by Tim Finin, a professor of computer science and electrical engineering at the University of Maryland, Baltimore County.
Models such as USL “can shed light on how people can juggle their tasks, either as individuals or part of a team,” Finin wrote. “I like this example because it’s easy to see how it applies to our daily lives. There are other examples from mathematical queuing theory that I’ve found useful when I have many tasks to keep track of.”
Weaveworks is a sponsor of The New Stack.
Feature Image from the dining room of Vinny Vincenz Pizza in NYC, Lower East Side.