Gestion de la variabilité dans les applications SaaS multi-locataire
Résumé
Multi-tenancy is a relatively new software architecture principle, generally adopted
when a software application is provided as a service (SaaS). Such new principle reduce con-
siderably the application deployment and maintenance costs, as all customers(tenants) share
the same instance of such application. However, to attract a significant number of tenants, the
application has to be customizable and configurable to meet the varying requirements of indi-
vidual tenants. In consequence, the SaaS providers are facing an additional concern: managing efficiently the application variability. In this paper, we address variability and try to reduce its management complexity by modeling it and by decoupling its implementation. The modeling
is based on OVM, a variability modelling technique, and the implementation decoupling is through the layers of the architecture supporting the application. Our approach is illustrated by relying on a case study from the food industry.
La multi-location est un principe d’architecture logicielle relativement nouveau, gé-
néralement adopté lorsqu’une application est fournie sous forme d’un service : on parle alors
de mode SaaS. Ce nouveau principe réduit considérablement les coûts de déploiement et de
maintenance de l’application car tous les clients (locataires) partagent la même instance de
cette application. Toutefois, pour toucher un grand nombre de locataires, l’application doit être
personnalisable et configurable pour répondre aux exigences variables de chaque locataire.
Par conséquent, les fournisseurs SaaS font face à une préoccupation supplémentaire : la ges-
tion efficace de la variabilité au sein de l’application. Dans cet article, nous abordons cette
problématique et nous essayons de réduire la complexité de sa gestion au travers de la modé-
lisation de la variabilité et son découplage par rapport à son implémentation. La modélisation
s’appuie sur OVM, une technique de modélisation de la variabilité, et le découplage vis-àvis
de l’implémentation se fait au travers des couches de l’architecture supportant l’application.
Notre approche est illustrée au travers d’une étude de cas de l’industrie alimentaire.
Domaines
Génie logiciel [cs.SE]Origine | Fichiers produits par l'(les) auteur(s) |
---|