A programmable client-server model: Robust extensibility via DSLs

Charles Consel 1, 2 Laurent Réveillère 1, 2
2 Phoenix - Programming Language Technology For Communication Services
LaBRI - Laboratoire Bordelais de Recherche en Informatique, Inria Bordeaux - Sud-Ouest, EA4136 - Handicap et système nerveux :Action, communication, interaction: rétablissement de la fonction et de la participation [Bordeaux]
Abstract : The client-server model has been successfully used to support a wide variety of families of services in the context of distributed systems. However, its server-centric nature makes it insensitive to fast changing client characteristics like terminal capabilities, network features, user preferences and evolving needs. To overcome this key limitation, we present an approach to enabling a server to adapt to different clients by making it programmable. A service-description language is used to program server adaptations. This language is designed as a domain-specific language to offer expressiveness and conciseness without compromising safety and security. We show that our approach makes servers adaptable without requiring the deployment of new protocols or server implementations. We illustrate our approach with the Internet Message Access Protocol (IMAP). An IMAP server is made programmable and a language, named Pems, is introduced to program robust variations of e-mail services. Our approach is uniformly used to develop a platform for multimedia communication services. This platform is composed of programmable servers for telephony services, e-mail processing, remote-document processing and stream adapters.
Type de document :
Communication dans un congrès
International Conference on Automated Software Engineering, 2003, Montréal, Canada. pp.70-79, 2003
Liste complète des métadonnées

Littérature citée [15 références]  Voir  Masquer  Télécharger

Contributeur : Laurent Réveillère <>
Soumis le : lundi 5 janvier 2009 - 17:40:38
Dernière modification le : jeudi 11 janvier 2018 - 06:22:12
Document(s) archivé(s) le : mardi 8 juin 2010 - 18:34:08


Fichiers produits par l'(les) auteur(s)


  • HAL Id : hal-00350051, version 1


Charles Consel, Laurent Réveillère. A programmable client-server model: Robust extensibility via DSLs. International Conference on Automated Software Engineering, 2003, Montréal, Canada. pp.70-79, 2003. 〈hal-00350051〉



Consultations de la notice


Téléchargements de fichiers