Group communications is a necessary part of any distributed system by the original definition in section 1.
Atomic communication is needed for transactions or other things that require consistency etc.
Transparent fault tolerance will be crucial. Most people over the history of programming have paid little or no attention to the possibility that computers can fail while their programs are executing. There's no reason to think that will change. But the cost of unhandled failure will rise dramatically as programs interact more frequently and in far more complex ways than they do now. Applications need to be made fault-tolerant, but it has to be done transparently.