Czynniki złożoności projektowania programu granulacja (rozmiar zadań) - mała, średnia, gruba szeregowanie zadań (w czasie i przestrzeni) dystrybucja danych pomiędzy procesory koordynacja (zarządzanie komunikacją i synchronizacją)
poprawność ( zjawisko wyścigu - różne wyniki przy tych samych danych wejściowych) blokada (deadlock) - procesy obi. wzajemnie oczekują na siebie, a program zatrzymuje się