Synchronous communication is appropriate when steps depend on previous results (A) because you need each response before proceeding. It's also needed for real-time communication (D) where delays aren't acceptable. Option B describes asynchronous advantage, and Option C is unrelated to the sync/async choice.