Erlang's original domain

The original domain for Erlang was telecoms switching systems. The nature of the original domain is presented here since it describes the kind of problems that Erlang is well suited for.

=Däcker's 10 requirements=

In Bjarne Dacker's licentiate thesis a list of the 10 key requirements for programming telecoms switching systems.


 * 1) Handling of a very large number of concurrent activities
 * 2) Actions to be performed at a certain point in time or within a certain time
 * 3) Systems distributed over several computers
 * 4) Interaction with hardware
 * 5) Very large software systems
 * 6) Complex functionality such as feature interaction
 * 7) Continuous operation for many years
 * 8) Software maintenance (recon�figuration et cetera) without stopping the system
 * 9) Stringent quality and reliability requirements
 * 10) Fault tolerance both to hardware failures and software errors

Erlang was specifically designed to make it easier to implement telecoms switching systems, but the requirements are also true for a number of other domains such as web servers, instant messaging and enterprise messaging.

=References=