Tropos for Self-* systems
There is growing demand for software systems able to fulfill their requirements in different operational environments and that can cope with change and evolution. The term self-* refers to a breed of systems that autonomously adapt to new circumstances and recover from failures. Self-adaptivity, self-healing, self-(re)configuration, self-optimization, and self-protection share the same principles, where the system should act proactively and promptly to work better.
Successful self-* systems require the introduction of specific software engineering methodologies and the proposal of novel runtime architectures (middleware) that ensure the self-* properties after deployment. Tropos is used in the context of self-* systems to design and execute requirements-driven self-* systems.