This paper introduces MOCAS (Model Of Components for Adaptive Systems), a generic state-based component model which enables the self-adaptation of software components together with their coordination. MOCAS relies on behavioral adaptation instead of structural adaptation and uses the Unified Modeling Language (UML). Each component embeds a UML state machine to realize its behavior at runtime. It is installed in a container managing the adaptation process and ensuring its consistency. Adaptation is triggered when invariants related to the component’s business properties are violated. The component supports updates of its specification while it is running. This component model is illustrated through the GridStix case study.