Autonomic IoT systems require variable behaviour at runtime to adapt to different system contexts. Building suitable models that span both design-time and runtime is thus essential for such systems. However, existing approaches separate the variability model from the behavioural model, leading to synchronization issues such as the need for dynamic reconfiguration and dependency management. Some approaches define a fixed number of behaviour variants and are therefore unsuitable for highly variable contexts. This paper extends the semantics of the DX-MAN service model so as to combine variability with behaviour. The model allows the design of composite services that define an infinite number of workflow variants which can be chosen at runtime without any reconfiguration mechanism. We describe the autonomic capabilities of our model by using a case study in the domain of smart homes.