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

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

Introdução a CSP Alexandre Mota

Apresentações semelhantes


Apresentação em tema: "Introdução a CSP Alexandre Mota"— Transcrição da apresentação:

1 Introdução a CSP Alexandre Mota

2 Objetivos Apresentar a linguagem CSP Destacar os principais elementos de CSP Apresentar correspondência entre fluxo de eventos e CSP através de exemplo Possíveis ligações entre CSP e UML

3 CSP Hoare (1985) e Roscoe (1998) Linguagem formal para modelar aspectos comportamentais Estruturas de dados não muito abstratas Troca de informações (interação) se dá via comunicação Modelo de comunicação é síncrono

4 Elementos de CSP Processo 1 Processo 2 Processo n... Eventos B Eventos D Eventos F Eventos H Ambiente Eventos C Eventos G Eventos E Eventos A Alfabeto =  Eventos

5 Exemplo Simples  X  Leitor Ótico Caixa Automático Terminal

6 Processos Terminal LeitorOtico Interação CaixaAutomatico Interação Ambiente (Cliente)

7 Leitor: Modelagem Informal LeitorOtico 1.Aguarda um cartão ser inserido 2.Tenta decodificar dados do cartão 3.Se decodificação não foi bem-sucedida 1.Avisa ao Terminal 2.Volta ao passo 1 4.Se decodificação foi bem-sucedida 1.Envia dados decodificados para Terminal 2.Volta ao passo 1

8 Leitor: Modelagem Formal LeitorOtico = cartao?dados  AnalisaDados(dados) decodNOk  LeitorOtico decodOk  EnviaCA(dados) AnalisaDados(dados) = EnviaCA(dados) = transf!dec(dados)  LeitorOtico

9 Terminal: Modelagem Informal Terminal 1.Aguarda sinal do leitor ótico 2.Se o sinal for de decodificação bem-sucedida 1.Recebe informações do cartão decodificadas 2.Interage com o cliente 3.Volta ao passo 1 3.Se o sinal for de decodificação mal-sucedida 1.Informa ao cliente que houve problema de leitura do cartão 2.Volta ao passo 1 (Sub-Fluxo)

10 Terminal: Modelagem Formal Terminal =decodOk  transf?infoC  Sistema(info) decodNOk  ProbLeitura Sistema(info) =... ProbLeitura = tela!Leitura_Invalida._Favor_Repetir  Terminal

11 Comportamento Interno Sistema(info) =saque  SAQUE(info) transferencia  TRANSF(info)... outros  OUTROS(info) SAQUE(info) =cc  TRANSAC(info, CC) poup  TRANSAC(info, P)... TRANSAC(info, op) =...  senha?s  codigo?c  (central!info!s!c  (ok ... nOk ...) )

12 Combinando as Partes... CaixaAutomatico = Terminal || LeitorOtico I Onde I = {decodOk, decodNOk, transf} CaixaAutomatico = ( Terminal || LeitorOtico ) \ I I

13 Principais Operadores de CSP a  P P Q P || Q P ||| Q P \ X P Q X ProcessoOperadores Pré-fixo Escolha Externa Escolha Interna Paralelismo Interleaving Hiding Se Então Senão Nota: Alguns dos operadores acima possuem versões indexadas

14 Analisando CSP Uma das vantagens da modelagem em CSP é obter análise automática Existem duas abordagens para estudar um processo: Propriedades padrão (deadlock, livelock, não- determinismo) Refinamento entre processos Oferecer pelo menos os mesmos serviços Falhar menos Divergir menos

15 CSP e UML CSP poderia ser usada para representar: Fluxo de Eventos em Casos de Uso Diagramas de Interação Diagramas de Atividade Máquinas de Estados (StateCharts)


Carregar ppt "Introdução a CSP Alexandre Mota"

Apresentações semelhantes


Anúncios Google