This paper argues that applications should be divided into separate components, so that recovery from errors can take place by restarting small components, instead of having to restart the entire server. I think this this is a great idea, but I'm not sure it is a new one. Microkernel operating systems are based completely on this design. Additionally, the common "three tier architecture" decomposes a service into data, application and presentation layers. Still, I agree with the authors that this is an interesting technique for making software more reliable, and this paper does a good job of exploring it.
G. Candea, S. Kawamoto, Y. Fujiki, G. Friedman, A. Fox. Microreboot - A technique for cheap recovery. In Proceedings of the 6th Symposium on Operating Systems Design and Implementation (OSDI'04), San Francisco, CA, December 2004.