Cloud computing is becoming the predominant
mechanism to seamlessly deploy applications with special requirements
such as massive storage sharing or load balancing,
usually provided as services by cloud platforms. A developer can
improve the application’s delivery and productivity by following
a multi tenancy approach, where variants of the same application
can be quickly customized to the necessities of each tenant.
However, managing the inherent variability existing in multitenant
applications and, even more importantly, managing the
evolution of a multi-tenant application with hundreds of tenants
and thousands of different valid architectural configurations can
become intractable if performed manually. In this paper we
propose a product line architecture approach in which: (1) we
use cardinality-based variability models to model each tenant as
a clonable feature, (2) we automate the process of evolving the
multi-tenant application architecture, and (3) we demonstrate
that the implemented process is correct and efficient for a high
number of tenants in a reasonable time. We use a running case
study in the domain of medical software.