This thesis investigates the use of frameworks to implement protocols for distributed systems, linking currently available design approaches based on formal methods to software engineering methods.
Frameworks are software structures developed for a specific application domain.
They can be re-used in the implementation of various concrete systems in this domain. Distributed systems bring expressive benefits to society. Distributed systems are implemented by protocols that coordinate the communication and co-operation among system parts. Because applications of distributed systems are generally critical, requirements like reliability, security and performance are essential. Protocols must also be developed efficiently and be easy to maintain, in order to address the constant demand for new functionality.