%0 Conference Proceedings %T A Domain-Specific Approach to Architecturing Error Handling in Pervasive Computing %+ Programming Language Technology For Communication Services (Phoenix) %A Mercadal, Julien %A Enard, Quentin %A Consel, Charles %A Loriant, Nicolas %< avec comité de lecture %B OOPSLA: Conference on Object Oriented Programming Systems Languages and Applications %C Reno, United States %8 2010-10-17 %D 2010 %Z Computer Science [cs]/Software Engineering [cs.SE]Conference papers %X The challenging nature of error handling constantly escalates as a growing number of environments consists of networked devices and software components. In these environments, errors cover a uniquely large spectrum of situations related to each layer ranging from hardware to distributed platforms, to software components. Handling errors becomes a daunting task for programmers, whose outcome is unpredictable. Scaling up error handling requires to raise the level of abstraction beyond the code level and the try-catch construct, approaching error handling at the software architecture level. We propose a novel approach that relies on an Architecture Description Language (ADL), which is extended with error-handling declarations. To further raise the level of abstraction, our approach revolves around a domain-specific architectural pattern commonly used in pervasive computing. Error handling is decomposed into components dedicated to platform-wide, error-recovery strategies. At the application level, descriptions of functional components include declarations dedicated to error handling. We have implemented a compiler for an ADL extended with error-handling declarations. It produces customized programming frameworks that drive and support the programming of error handling. Our approach has been validated with a variety of applications for building automation. %G English %2 https://inria.hal.science/inria-00486930/document %2 https://inria.hal.science/inria-00486930/file/p47-mercadal-1.pdf %L inria-00486930 %U https://inria.hal.science/inria-00486930 %~ CNRS %~ INRIA %~ INRIA-BORDEAUX %~ INRIA_TEST %~ TESTALAIN1 %~ TESTBORDEAUX %~ INRIA2