In many application domains the design of complex systems must cope with rapid and unforeseeable change, requiring an elaborate integration of execution and communication methods. This is especially the case when real-time constraints are present. In this paper a Multi-Agent Systems approach to distributed computing is presented. It has a programmable model of agent interaction, and the interaction is tightly integrated with the mechanisms that control the individual agent behaviour. We introduce the concepts of tailored interaction and semantic addressing which support abstraction, flexibility and robustness in open and emergent distributed systems. We then show that it enables the system to adapt to a number of frequent types of change in the environment. The automation of power distribution is a domain where new services are introduced and new infrastructures are exploited. DA-SoC is an agent architecture developed for this domain, and it exemplifies the need for adaptability and the use of semantic addressing to accomplish this.