The Neuronen Schmiede concerns itself with topics related to software development. One focus are robust web applications.

Planned Capacity of Software Systems

Permalink

Similar to the Hoover Dam a software system has limited capacity. A limitation can be requests per second, database rows, storage size, amount of business processes, number of tenants and so on.

Other than the Hoover Dam at a majority of software projects the bottlenecks and their capacity are not known. Hitting a limit may not be catastrophic for a software system but usually it’s a problem nonetheless.

It’s possible to be aware of these problems beforehand just by designing a system to a certain capacity. By making the capacity explicit it can be load tested and measured. Monitoring these measurements provides early warnings when the system approaches its capacity.

Stating explicit capacities also makes it harder to fall in the trap of gradually decreasing system performance that is not noticed by regular users but turns away possible new users.