La concorrenza è presente in diversi aspetti della quotidianità. Un primo esempio di sistema concorrente non legato all’informatica è la cellula vivente: può essere vista come un dispositivo che trasforma e manipola dati per ottenere un risultato. I vari processi all’interno di una cellula avvengono in modo concorrente, il che la rende un sistema asincrono. Un secondo esempio può essere quello dell’orchestra musicale: i vari componenti suonano spesso simultaneamente rappresentando un sistema sincrono (ovvero un sistema che funzinoa avendo una sorta di “cronometri” condiviso dai vari attori). Un esempio informatico invece è un processore multicore (anche se in realtà anche se fosse monocore sarebbe comunque un sistema concorrente per ovvie ragioni). Anche una rete di calcolatori è un modello concorrente, nonchè i modelli sociali umani.
I modelli concorrenti hanno alcuni aspetti comuni, tra cui:
Durante lo studio e la progettazione di sistemi concorrenti si hanno diversi problemi peculiari che rendono il tutto molto complesso. Un sistema concorrente mal progettato èuò avere effetti catastrofici.
Per poter sviluppare modelli concorrenti si necessita innanzitutto di: