A programmable client-server model: Robust extensibility via DSLs - Archive ouverte HAL Access content directly
Conference Papers Year : 2003

A programmable client-server model: Robust extensibility via DSLs


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.
Fichier principal
Vignette du fichier
Consel-Reveillere_ase03.pdf (50.42 Ko) Télécharger le fichier
Origin Files produced by the author(s)

Dates and versions

hal-00350051 , version 1 (05-01-2009)


  • 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. ⟨hal-00350051⟩


180 View
217 Download


Gmail Mastodon Facebook X LinkedIn More