이 예제에서 보았듯이 프로그램의 계산 모델은 게임의 규칙, 즉 알고리즘이 결정한다. 이 게임의 작업과 작업 사이에는 완전히 분리할 수 없는 명확한 의존 관계가 있다. 플레이어가 차례를 진행하지 않으면 게임의 승패를 판단할 수 없고, 한 플레이어가 연속으로 두 번 진행할 수도 없기(반칙이므로) 때문이다.
노트
사실 이전 단계가 완료되어야 하는 작업은 아주 많지 않다. 그 덕분에 일반적인 경우에는 상대적으로 어렵지 않게 동시성의 장점을 누릴 수 있다. 여기에 대해서는 이후 장에서 더 자세히 다루겠다.
순차 실행이 꼭 필요한 작업에는 어떤 것이 있을까? 힌트는 이전 단계가 완료되지 않아도 수행할 수 있는 단계가 있는지 살펴보면 된다.
순차 프로그래밍의 반대 개념이 동시 프로그래밍이다. 동시성은 임의의 순서로 실행해도 같은 결과를 낳는 독립적인(independent) 연산이 있다는 것을 전제로 삼는 개념이다.