Desenvolvimento rigoroso com uml-rt

AUTOR(ES)
DATA DE PUBLICAÇÃO

2005

RESUMO

Como outros mÃtodos visuais orientados a objetos, UML tem influenciado tremendamente a prÃtica de modelagem na engenharia de software com ricos mecanismos de estruturaÃÃo. PorÃm, apesar de suas vantagens e adoÃÃo em larga escala, na prÃtica, a falta de uma semÃntica formal tem dificultado o desenvolvimento rigoroso baseado em modelos de aplicaÃÃes nÃo triviais (aplicaÃÃes que por sua natureza necessitam de Ãnfase na especificaÃÃo e na verificaÃÃo de seus componentes). A razÃo para isto à que transformaÃÃes de modelos podem nÃo preservar a semÃantica e, como conseqÃÃncia, o comportamento do modelo. Este problema à ainda mais sÃrio em transformaÃÃes que envolvem diferentes visÃes do modelo. LimitaÃÃes similares podem ser encontradas durante o desenvolvimento com UMLRT. Esta linguagem à uma extensÃo conservativa de UML que provà a noÃÃo de objetos ativos (objetos com um comportamento prÃprio, independente do fluxo de execuÃÃo do restante do sistema) para descrever aplicaÃÃes concorrentes e distribuÃdas. Neste tipo de desenvolvimento, transformaÃÃes devem lidar simultaneamente com as diferentes visÃes estÃticas e dinÃmicas do modelo, representadas por seus diagramas e propriedades. Por estes motivos, este trabalho propÃe uma semÃntica para UML-RT, mapeando suas construÃÃes em OhCircus, uma linguagem formal, orientada a objetos, que combina CSP e Z, e que suporta o cÃlculo de refinamentos de Morgan. A partir desta semÃntica, bem como das noÃÃes e leis de refinamentos de OhCircus, à possÃvel propor leis de transformaÃÃo de modelos passÃveis de demonstraÃÃo e que preservam o comportamento do sistema. Estas leis de transformaÃÃo sÃo propostas em duas categorias: a primeira delas à um conjunto abrangente de leis bÃsicas que expressam pequenas mudanÃas nas principais visÃes do modelo, como a declaraÃÃo ou remoÃÃo de elementos do modelo; jà a segunda representa leis de transformaÃÃo de maior granularidade, derivadas a partir da composiÃÃo de leis bÃsicas, como a decomposiÃÃo de uma cÃpsula em cÃpsulas operando em paralelo. Tais transformaÃÃes derivadas podem ser vistas como refatoramentos (refactorings) corretos sobre o modelo, facilmente aplicÃveis durante um processo de desenvolvimento rigoroso, sem que o desenvolvedor tenha conhecimento do formalismo que o suporta. Finalmente, a abrangÃncia deste conjunto de leis à discutida particularmente atravÃs dos principais passos de uma estratÃgia de reduÃÃo de modelos UML-RT a um modelo UML estendido com um Ãnico objeto ativo, responsÃvel por todas as interaÃÃes com o ambiente e por conservar o comportamento dinÃmico do sistema modelado. Este modelo UML estendido pode ser visto como uma forma normal, e, portanto, nossa estratÃgia pode ser vista como uma contribuiÃÃo para uma estratÃgia mais global de completude capturada por reduÃÃo a esta forma normal

ASSUNTO(S)

transformaÃÃo de modelos integraÃÃo de mÃtodos formais rt ohcircus ciencia da computacao

Documentos Relacionados