ESPECIFICANDO E PRESERVANDO O COMPORTAMENTO EXCEPCIONAL DOS SISTEMAS: UMA ABORDAGEM BASEADA EM REGRAS DE DESIGN E TESTES
Tratamento de Exceções, Testes Automatizados, Regras de Design, JUnit.
Verificar a conformidade entre a implementação e as regras de design é uma atividade importante para tentar garantir a qualidade da arquitetura e do código fonte. Especialmente no caso dos sistemas dos
quais se exige um alto nível de confiabilidade é importante definir regras de design específicas para o comportamento excepcional. As abordagens atuais não provêem mecanismos adequados para definir regras
de design relacionadas com a política de tratamento de exceções dos sistemas. Além disso, tais regras precisam ser checadas durante as diversas fases do desenvolvimento de um sistema, para evitar que a arquitetura seja corrompida. Este trabalho propõe uma abordagem prática para tanto definir quanto checar a política de tratamento de exceções durante sua evolução, através de regras de design específicas para o comportamento excepcional. Para essa finalidade foi desenvolvida a ferramenta (FEAR) que extende o framework JUnit, permitindo o teste automático dessas políticas, baseadas nos contratos especificados de lançamento e captura de exceções do sistema. Também é proposto um estudo de caso para avaliar a efetividade da abordagem proposta.