A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

OCLE Object Constraint Language Environment Fábio Moura CIn-UFPE.

Apresentações semelhantes


Apresentação em tema: "OCLE Object Constraint Language Environment Fábio Moura CIn-UFPE."— Transcrição da apresentação:

1 OCLE Object Constraint Language Environment Fábio Moura CIn-UFPE

2 Roteiro  Introdução  Projetos  Modelos  Compilando Especificações OCL  Model Checking  Geração de Código Java  Exemplo

3 OCLE – Introdução  OCLE foi especialmente projetada e implementada para auxiliar usuários UML no desenvolvimento de expressões OCL  Erros no desenvolvimento dos modelos podem ser facilmente detectados e corrigidos  Permite fácil criação de expressões OCL  É uma ferramenta poderosa, de uso muito simples e intuitivo  Permite acesso completo tanto a nível de meta modelos como de modelos  É gratuita !  http://lci.cs.ubbcluj.ro/ocle/index.htm  http://www.cin.ufpe.br/~in1006/2005/OCLE

4 Projetos  Permite o gerenciamento flexível de modelos e especificações OCL  Poder ser desenvolvidos em arquivos separados e posteriormente unidos em um projeto  Um mesmo arquivo OCL ou modelo UML pode ser usado em mais de um projeto OCLE  Um projeto pode conter mais de um modelo UML  Um deles deve ser o modelo ativo  A sua criação é opcional  A estrutura do projeto ativo é mostrada no Project panel  Contém o Project Browser  Mostra os arquivos contendo os componentes do projeto

5 Projetos  Project Browser

6 Criando Novos Projetos  Menu Project – New...

7 Modelos  OCLE permite a importação de modelos UML realizados usando ferramentas CASE como o Rational Rose  A precondição é que estes modelos estejam armazenados no formado XMI  OCLE também permite a criação de modelos UML dentro de uma interface gráfica e então exportá-los para arquivos XMI  O modelo ativo é mostrado no model browser  Completa navegação e representação do modelo  Filtragem  Edição

8 Model Browser, Estereótipos e Propriedades

9 Diagramas Suportados  Use Case  Classe  Objetos

10 Diagrama de Classes

11 Diagrama de Use Case

12 Diagrama de Objetos

13 Compilando Especificações OCL  O compilador OCL permite ao usuário checar a corretude da sintaxe e da semântica de expressões OCL  Componente chave de qualquer ferramenta OCL  Menu Tools – Compile project specifications  Tipos de arquivos com especificações OCL .ocl – especificações expressas no nível de meta modelo .bcr – especificações expressas no nível de modelo (restrições de negócio)

14 Mensagens de Erro

15 Model Checking  OCLE realiza a checagem do modelo através da avaliação de restrições especificadas pelo usuário em diferentes elementos do modelo  Ajuda a corrigir erro nos modelos e nas especificações OCL  Maneira mais simples de checar o modelo  Compile as especificações OCL  Menu Tools – Check model  Problemas são mostrados no painel Evaluation

16 Avaliação Local  Característica poderosa do OCLE que permite a avaliação parcial de uma expressão OCL em um determinado contexto  Passos  Escolha a regra que deseja avaliar – clique duas vezes em sua declaração de contexto  Um menu popup será mostrado contendo todas as instâncias possíveis para a classe mencionada na declaração de contexto  Selecione uma instância clicando duas vezes sobre ela  OCLE automaticamente irá modificar o contexto para todas as regras  Uma vez que o contexto foi escolhido, clique duas vezes em diferentes partes da expressão escolhida, OCLE irá tentar avaliar a expressão selecionada, mostrando o resultado no painel OCL Output  Dê um duplo clique sobre o estereótipo da expressão (inv) para avaliar a expressão inteira

17 Geração de Código Java  O principal objetivo do gerador de código é produzir uma aplicação completamente executável a partir do modelo UML e suas especificações OCL associadas  Transforma classes, interfaces e tipos de dados em seu código fonte Java correspondente  Adicionalmente, restrições OCL associadas são transformadas em código executável, integrado ao código do modelo UML, produzindo uma aplicação Java que checa suas próprias restrições  O código Java produzido é compilável, embora não seja completo  Uma vez que o código foi gerado, ainda se faz necessário escrever o corpo dos métodos gerados

18 Geração de Código Java  Para invocar o gerador de código, use a opção do menu Tools – Generate code...

19 Exemplo Finance_Business_ClassDiagram

20 Exemplo Código Gerado (.java)... public void check_Order_first() { Enum enumType = Order.this.type; boolean bEquals = enumType.equals(Enum.buy); float fMatchedPrice = Order.this.matchedPrice; float fLimit = Order.this.limit; boolean bLessOrEqual = fMatchedPrice <= fLimit; boolean bImplies = !bEquals || bLessOrEqual; if (!bImplies) { System.err.println("invariant 'first' failed for object "+Order.this); } }...


Carregar ppt "OCLE Object Constraint Language Environment Fábio Moura CIn-UFPE."

Apresentações semelhantes


Anúncios Google