Design Principles for the Support of Distributed Processes