The Internet of Things (IoT) is a fast propagating technology that is expected to emerge in almost all aspects of our daily life. The IoT environment is well known for being dynamic and uncertain. Connected devices, and their software, can be discovered at runtime and might also become suddenly unavailable. The involvement of the human in the loop complicates more the scene. People's activities are stochastic and their needs are not always predictable. Therefore, coping with the dynamic IoT environment should be considered as a first class requirement when engineering IoT systems. A useful concept for supporting this effort is Emergent Configurations (ECs). An EC consists of a dynamic set of devices that cooperate temporarily to achieve a user goal. This PhD work aims to use the concept of ECs as a basis for a novel approach for realizing IoT systems. More specifically, this thesis aims at: (i) producing characterization models for IoT systems and ECs; (ii) proposing a concrete architecture and an approach for realizing ECs.