Tratamento de Exceções Sensível ao Contexto
Resumo
Tratamento de exceções em aplicações móveis não é uma tarefa trivial devido às características destas aplicações, como sensibilidade ao contexto, comunicação assíncrona e conexão instável. Mecanismos convencionais de exceções não podem ser utilizados por várias razões. Um dos principais problemas é que a busca e execução dos tratadores e a propagação de exceções precisam freqüentemente considerar informações de contexto. Este artigo identifica limitações dos mecanismos existentes, bem como propõe um novo modelo e uma arquitetura para tratamento de exceções sensível ao contexto. A avaliação da solução proposta foi conduzida através da implementação de três aplicações de domínios heterogêneos.
Referências
Capra, L. et al. CARISMA: Context-Aware Reflexive mIddleware System for Mobile Applications. IEEE Transactions on Software Engineering, v.29, n.10, Oct. 2003, p. 929-945.
Coutaz, J. et al. Context is Key. Communications of ACM. v.48, n.3, Mar. 2005, p. 49-53.
Cugola, G.; Cote, J. E. M. On Introducing Location Awareness in Publish-Subscribe Middleware. 4th International Workshop on Distributed Event-Based Systems, 2005.
Damasceno, K. et al. Context-Aware Exception Handling in Mobile Agent Systems: The MoCA Case. 5th International Workshop on Software Engineering for Large-Scale Multi-Agent Systems (SELMAS 2006) at ICSE 2006, Shanghai, China, May.
Damasceno, K. Tratamento de Exceções Sensível ao Contexto. Março 2006. Dissertação de Mestrado, Departamento de Informática, PUC-Rio, Rio de Janeiro.
Dey, A. K.; Abowd, G. D. Towards a better understanding of context and context-awareness. Conf on Human Factors in Computing Systems, Netherlands, Apr. 2000.
Garcia, A. et al. A Comparative Study of Exception Handling Mechanisms for Building Dependable Object-Oriented Software. Journal of Systems and Software, Elsevier, v.59, n.6, Nov. 2001, p.197-222.
Garcia, A. et al. Software Engineering for Large-Scale Multi-Agent Systems. SELMAS 2005. (Post-Workshop Report) ACM Software Engineering Notes, v. 30.
Goodenough, J. B. Exception handling: issues and a proposed notation. Commun ACM v. 18, n.12, Dec. 1975, p. 683-696.
IEEE TSE (IEEE Transactions on Software Engineering), Special Issue on Current Trends in Exception Handling, v. 26, n. 9, Sep. 2000.
Iliasov, A.; Romanovsky, A. CAMA: Structured Communication Space and Exception Propagation Mechanism for Mobile Agents. ECOOP-EHWS, Glasgow, Jul. 2005.
Kiczales, G. et al. Aspect-Oriented Programming. European Conference on Object- Oriented Programming (ECOOP), LNCS 1241, Springer, Finland, Jun. 1997.
Lee, P.; Anderson, T. Fault Tolerance: Principles & Practice. Springer, 2nd ed, Wien, Austria, Jan. 1990.
Meier, R.; Cahill, V. STEAM: Event-Based Middleware for Wireless Ad Hoc Networks. Intl. Workshop on Distributed Event-Based Systems. Austria, 2002.
MQTT. http://mqtt.org/
Muthusamy, V. et al. Publisher Mobility in Distributed Publish/Subscribe Systems. In Proc. 4th Intl. Workshop on Distributed Event-Based Systems (ICDCSW'05), 2005.
Parnas, D.; Würges, H. Response to Undesired Events in Software Systems. In Proc. 2nd Intl. Conference on Software Engineering. California, USA, p. 437-446, 1976.
Pietzuch, P.; Bacon, J. Hermes: A Distributed Event-Based Middleware Architecture. In Proc. Workshop on Distributed Event-Based Systems, 2002.
Sacramento, V. et al. MoCA: A Middleware for Developing Collaborative Aplications for Mobile Users. IEEE Distributed Systems Online, v.5, n.10, Oct. 2004.
Souchon, F. et al. Improving exception handling in multi-agent systems. In Software engineering for multi-agent systems II, Springer-Verlag, LNCS 2940, Feb. 2004.
Tripathi, A.; Miller, R. Exception Handling in Agent-Oriented Systems. In Proc. Advances in Exception Handling Techniques (ECOOPW’00), Springer-Verlag, LNCS 2022, 2000.
Xu, J. et al. Fault Tolerance in Concurrent Object-Oriented Software through Coordinated Error Recovery. In Proc. 25th FTCS, 1995.