• Nenhum resultado encontrado

Introdução a CSP

N/A
N/A
Protected

Academic year: 2022

Share "Introdução a CSP"

Copied!
15
0
0

Texto

(1)

Introdução a CSP

Alexandre Mota

(acm@cin.ufpe.br)

(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

Processo1 Processo2

Processon

...

EventosB

EventosD EventosF

EventosH Ambiente

Ambiente

Ambiente AmbienteEventosC EventosG

EventosE EventosA

Alfabeto =

Eventos

(5)

Exemplo Simples

7 8 9

4 5 6

1 2 3

X Leitor Ótico

Caixa Automático

Terminal

(6)

Processos

Terminal

LeitorOtico

Interação CaixaAutomatico

Interação

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

< isDec(dados) > 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 ||| Q P \ X

P < b > Q X

Processo Operadores 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)

Referências

Documentos relacionados

Diante disso, ao mencionar a subjetividade humana, destacamos as singularidades do vivido, entendemos que a pesquisa com as autobiografias evidencia a diversidade de

Para o conversor boost PFC operando em MCC obter tensão e corrente de entrada proporcionais, é necessário controlar a forma de onda da corrente de entrada, introduzindo

O projeto EstudA da Faculdade de Ciências e Tecnologia do Campus de Ananindeua é composto pelos módulos Mineração e Meio Ambiente e Produção Industrial e Recursos Hídricos, cada

Como hipótese inicial da nossa pesquisa, acreditamos que o investimento no acesso à educação superior através de políticas como o ProUni, permitirá que uma

De um modo geral, a expedição das batatas para fora da zona demarcada cumpre as condições de circulação da Decisão 2012/270/UE. Os produtores registados e as centrais de embalamento

Para encontrar produtos alusivos ao Brasil ou à Copa das Confederações é preciso disposição e muita força de vontade para aventurar-se pelo Centro da cidade.. &#34;Poucos

Além disso, a vida, o processo químico que conhecemos como vida, me intrigava muito, e o fato de os cientistas não entrarem em acordo sobre o que ela é&#34;.. Gómez conciliou as

A resistência à fratura dos dentes restaurados com amálgama foi significativamente inferior aos valores obtidos para ambos os grupos de restaurações adesivas em