propriedades rose roze z eves n.
Skip this Video
Loading SlideShow in 5 Seconds..
propriedades rose, roze, z-eves PowerPoint Presentation
Download Presentation
propriedades rose, roze, z-eves

play fullscreen
1 / 13
Download Presentation

propriedades rose, roze, z-eves - PowerPoint PPT Presentation

charo
118 Views
Download Presentation

propriedades rose, roze, z-eves

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. propriedades rose, roze, z-eves

  2. introdução • propriedades em diagramas UML • Roze,Z-Eves

  3. Propriedades • Características desejáveis do sistemas • Úteis para geração de casos de teste • Não se sabe a priori se a propriedade é satisfeita

  4. classe Conta Conta saldo : \nat = 0 Creditar() Debitar() CreditarDebitar() CreditarV1V2()

  5. exemplo • Criar um diagrama de classes no Rose para a classe Conta, inserindo as operações especificadas no diagrama anterior.

  6. pré, pós-condições • Creditar póssaldo' = saldo + val? • Debitar présaldo  val? póssaldo' = saldo – val?

  7. exemplo • Inserir as pré e pós condições para as operações de Conta.

  8. propriedades • Inverso Creditar ; Debitar  saldo' = saldo • Comutativo Creditar[v1/val?] ; Creditar[v2/val?]  Creditar[v2/val?] ; Creditar[v1/val?]

  9. exemplo • Inserir as propriedades Inverso e Comutativo para a classe Conta. • Abrir especificação da classe, clicar na aba “Roze” e escrever a propriedade no campo “properties” • Lembre-se de especificar que as operações creditarDebitar e creditarV1V2 são operações auxiliares • aba “Roze” -> “isDefinition”’ = true

  10. usando o Roze • Mapeamento de UML anotado para especificações Z • Selecionar uma classe, selecionar no menu: tools -> roze -> Z property checker • Salvar arquivo

  11. usando Z-Eves • Verificador de sintaxe, teoremas, modelos. • Abrir arquivo criado anteriormente: • File -> import • Checar especificação • Command -> check all paragraphs

  12. Provando propriedades com o Z-Eves • Provar propriedade • Clicar com botão direito na propriedade e selecionar “show proof” • Reduction -> prove by reduce • Nem sempre se consegue provar as propriedades na primeira tentativa, por isso há algumas opções para se reescrever a propriedade e tentar novamente

  13. exercícios • Crie uma classe coleção de contas que possua os métodos: • removerConta(Conta c) • adicionarConta(Conta c) • Escreva as pré e pós condições das operações. • Escreva e teste uma propriedade que diga que: duas inserções do mesmo elemento seguido de sua remoção implica que o elemento não pertence à coleção. • Escreva uma propriedade desejada para o seu sistema.