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

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

UPPAAL Model Checker Overview

Apresentações semelhantes


Apresentação em tema: "UPPAAL Model Checker Overview"— Transcrição da apresentação:

1 UPPAAL Model Checker Overview
by Valerio Rosset

2 Uppaal Uppaal é : Desenvolvido:
Uma ferramenta (Toolbox) para verificação formal de sistemas de tempo real … Desenvolvido: UPPsala University (Sweden ) AALborg University (Denmark) Primeira versão : 1995

3 Sistemas de Tempo Real Notas Sistema de Tempo Real : a correcção dos protocolos e algoritmos não depende apenas execução ordenada das acções mas também o tempo em que são realizadas. Ex: Air Bag, Drive-By-Wire, ABS … etc …

4 Model Checking Modelo A : conjunto de autómatos temporizados
Requisitos F : Definição de propriedades como: Safety : Coisas ruins nunca acontecem Liveness: Alguma coisa boa eventualmente acontece

5 Arquitetura do Uppaal

6 Ferramenta Uppaal Interface de Modelação

7 Ferramenta Uppaal Interface de Simulação

8 Ferramenta Uppaal Interface de Verificação

9 Modelagem Locations: Edges (guards, sincronizadores, updates)
Normal, Initial, Urgent and Committed (ações atómicas) Edges (guards, sincronizadores, updates)

10 Modelagem As transições podem ser controladas por :
Guards: são expressões lógicas que determinam as condições para que uma transição ocorra. Sincronizadores: são chamados de channels e sincronizam ações entre os autómatos do modelo. Tempo: Invariantes ou Aleatoriamente.

11 Exemplo 1: Lâmpada A lâmpada pode ficar em 3 estados possíveis: desligada, baixa luminosidade, com alta luminosidade. O Utilizador pressiona um botão aleatoriamente para ligar e desligar a lâmpada. A transição de baixa luminosidade para alta se dá com a velocidade com que se pressiona o botão ( 2 clicks rápidos = Alta).

12 Exemplo 1: Lâmpada Autómato Lampada

13 Exemplo 1: Lâmpada Autómato Utilizador

14 Tempo No Uppaal Uppaal utiliza um modelo de tempo contínuo
Clocks (relógios): podem ser declarados de maneira global ou individualmente aos autómatos, porém sempre evoluem sincronicamente.

15 Tempo no Uppaal

16 Tempo no Uppaal

17 Tempo no Uppaal

18 Tempo no Uppaal

19 Simulação no Uppaal Simulando o Exemplo da Lâmpada

20 Verificando o Modelo Propriedades (requisitos) são expressas e definidas utilizando uma simplificação da linguagem CLT (Computation Tree Logic). Propriedade = State Formulae & Path Formulae State Formulae : é uma expressão que identifica um estado no sistema. Ex: i==1 ou (i==1 and y==1).

21 Propriedades Path Formulae: Definem que tipo de propriedade se quer verificar. Reachability: Dado um estado P, existe um caminho onde P é eventualmente satisfeito. E <> P

22 Propriedades Safety : “Coisas ruins nunca ocorrem”. Dado um estado P, o mesmo precisa ser sempre satisfeito em todos os caminhos. A[] P

23 Propriedades Liveness : “Alguma coisa eventualmente acontece”. Dado um estado P, o mesmo é eventualmente satisfeito em todos os caminhos. A <> P

24 Verificando Verificando Exemplo 2 A[] Obs.taken imply x>=2
X é zerado sempre quando x<=2 E<> Obs.idle and x>3 Verifica se existe algum caminho onde X >3

25 Verificando Verificando Exemplo 2
A[] Obs.taken imply (x>=2 and x<=3) X é zerado sempre entre 2 e 3 A[] Obs.idle imply x<=3 X nunca ultrapassa o limite

26 Facilidades Uppaal ainda permite a utilização de diversas estruturas como arrays bem como a possibilidade de implementar funções e procedimentos onde é executar cálculos e verificações mais complexas (Sintaxe C++). Simulação e geração de Traces permite permite um fast debugging do modelo.

27 Obrigado !!!! For More :


Carregar ppt "UPPAAL Model Checker Overview"

Apresentações semelhantes


Anúncios Google