Some time ago I posted in a summary of this technique, and over the weekend I ran across this much longer and more comprehensive write-up on Martin Fowler's (the Prince of Enterprise Architecture) website:

Concepts like this is far more important than knowing about the newest uber-widget or latest architecture buzzword. When SOA is a dim memory techniques like Assertions and Fail-Fast will still be keeping code stable.