Uma extensão do diagrama de classe em Aspect-Oriented Design Model (AODM) para modelagem de Design by Contract

Detalhes bibliográficos
Ano de defesa: 2017
Autor(a) principal: SILVA, Fabrício Soares da
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Federal de Pernambuco
UFPE
Brasil
Programa de Pos Graduacao em Ciencia da Computacao
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://repositorio.ufpe.br/handle/123456789/32393
Resumo: Com a evolução da técnica de desenvolvimento de Design by Contract (DbC), muitas implementações vem surgindo e em diversas linguagens de programação. Os contratos são elementos importantes para a validade dos métodos e com a implementação de DbC em Aspectos, os contratos passam a ser elementos importantes também para os advice. Com isso, o registro e a visualização dos contratos, tanto as premissas quanto as validações de saída, em fase de análise de projeto ganham uma devida importância. Porém, com as técnicas existentes para se diagramar classes e aspectos, esta não é uma atividade possível. Nesta pesquisa está descrita uma extensão do artefato de "Diagrama de Classes" com suporte a Aspectos provido pela técnica AODM, com o objetivo específico de expressar contratos estabelecidos na técnica Design by Contract em classes e aspectos, sem ferir os princípios da UML. Para auxiliar no desenvolvimento da pesquisa e criar exemplos que pudessem ser modelados com a técnica desenvolvida nesta dissertação, optou-se pelo uso das sintaxes AspectJ/@AspectJ (para aspectos), JML (para DbC) e AspectJML (para DbC sobre Aspectos). Como resultado foi desenvolvido uma técnica que estende a AODM para se modelar contratos tanto em classes quanto em aspectos, se utilizando de artifícios já suportados pela UML através de estereótipos e propriedades. Esta técnica proporciona que todos estes elementos possam ser representados em apenas um único modelo visando oferecer uma visão ampla do sistema que está sendo desenvolvido.