  Efficient engineered systems require scalability. A scalable system has
increasing performance with increasing system size. In an ideal case, the
increase in performance (e.g., speedup) corresponds to the number of units that
are added to the system. However, if multiple units work on the same task, then
coordination among these units is required. This coordination can introduce
overheads with an impact on system performance. The coordination costs can lead
to sublinear improvement or even diminishing performance with increasing system
size. However, there are also systems that implement efficient coordination and
exploit collaboration of units to attain superlinear improvement. Modeling the
scalability dynamics is key to understanding efficient systems. Known laws of
scalability, such as Amdahl's law, Gustafson's law, and Gunther's Universal
Scalability Law, are minimalistic phenomenological models that explain a rich
variety of system behaviors through concise equations. While useful to gain
general insights, the phenomenological nature of these models may limit the
understanding of the underlying dynamics, as they are detached from first
principles that could explain coordination overheads among units. Through a
decentralized system approach, we propose a general model based on generic
interactions between units that is able to describe, as specific cases, any
general pattern of scalability included by previously reported laws. The
proposed general model of scalability is built on first principles, or at least
on a microscopic description of interaction between units, and therefore has
the potential to contribute to a better understanding of system behavior and
scalability. We show that this model can be applied to a diverse set of
systems, such as parallel supercomputers, robot swarms, or wireless sensor
networks, creating a unified view on interdisciplinary design for scalability.
