Capturing and Using the Operational Semantics of Large Distributed Systems: Sharing Common Application Requirements in Virtual O