Specification diagrams are a graphical notation for the specification of distributed systems. The primary design goal is to make a form of notation for defining message-passing behavior that is very expressive, intuitively understandable, and that has a fully formal underlying semantics.
Specification diagrams are two-dimensional graphical structures. Many specification languages that have achieved widespread usage have a graphical foundation: engineers can understand and communicate more effectively by graphical means. Popular graphical specification languages include Universal Modelling Language (UML) and its predecessors, and StateCharts. Specification diagrams aim to be a language with similar intuitive advantage but significantly greater expressivity and formal underpinnings.
Specification diagrams are highly suited to protocol specification because they give a formal specification of the protocol that is also readable by implementers. We have specified various security protocols, including the Needham-Schroeder protocol and TLS.
Christian Skalka and Scott Smith, Verifying Security Protocols with Specification Diagrams, Technical Report, Johns Hopkins University, 2002.
Scott Smith and Carolyn Talcott. Specification Diagrams for Actor Systems. Higher-order and Symbolic Computation (HOSC) 15, December 2002.
Scott Smith and Carolyn Talcott, Modular Reasoning for Actor Specification Diagrams. Formal Methods in Object-Oriented Distributed Systems, Florence, 1999. Kluwer Academic Publishers, to appear. The slides from the FMOODS talk.
Scott Smith, Specification Diagrams for Actor Systems. Higher Order Operational Techniques in Semantics II, Electronic Notes in Theoretical Computer Science, 1998.