Eugene Zaikonnikov's Etiquette is an “interaction protocol construction toolkit”:
Posted by jjwiseman at September 12, 2003 10:03 AMThe project goal is to build a framework for rapid design of network communication code. Etiquette interaction protocols are intended to describe valid communication processes that can occur in networked applications, along with error-handling code. Etiquette provides protocol tracing and single-stepping support.