Abstract
Coordinating the networks needed for modern scientific data collection and control presents a significant challenge: they are typically power- and resource-constrained, operating in noisy and hostile environments, and need to adapt their behaviour to match their operation to their sensed environment while maintaining the scientific integrity of their observations. In this paper, we explore several aspects of managing and coordinating sensor-driven systems. We draw some conclusions about how to design, structure, and implement programming and middleware abstractions for long-lived and adaptive sensor networks.