Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren,...

20
Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br

Transcript of Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren,...

Page 1: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Linguagens de Modelagem (cont.)

(III)

Equipe do Curso de ES para SMA

{lucena, furtado, choren, viviane}@inf.puc-rio.br

Page 2: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

AORML

http://www.aor.rezearch.info/

Page 3: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

AOR Model

• Modelo externo: modelo de análise do domínio– Foca no sistema como um todo

• Modelo interno: modelo de design– Foca nos agentes

Page 4: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Modelo AOR externo

• Diagrama de agente• Diagrama de frame de interação• Diagrama de seqüência de interação• Diagrama de padrão de interação

Page 5: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Terminologia e representação

ou communicative action event

eventos gerados por ações

Page 6: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Objeto

• Relacionamentos com outros objetos:– Associação– Generalização / especialização– Agregação / composição

• Relacionamentos com agentes:– Associação– Agregação / composição (contém)

Page 7: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Agente

• Tipos de agentes:– Artificiais (agentes de software)– humanos (agentes externos)– institucionais : organizações

• Relacionamentos com outros agentes– Associação– Generalização / especialização

Page 8: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Diagrama de classe

objeto

composiçãoespecializaçãomultiplicidade

agente (artificial)

agenteexterno

associação

associação

Page 9: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Agentes institucionais

• Agente institucionais possuem agentes internos que desempenham papéis

• Agentes internos possuem obrigações (duties) e direitos (rights)

Page 10: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Diagrama de agente

Agenteinterno

Agenteinstitucional

outra forma de representarespecialização

detalhamento

Page 11: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Relacionamentos

or communicative action event

Compromisso / reivindicação(ou requisição)

Page 12: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Relacionamentos

• Commitment (compromisso)– Se agente A tem um compromisso com agente

B.....

• Claim (reivindicação ou requisição)– .... agente B tem uma reivindicação com agente A.

Page 13: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Diagrama de frame de interação

compromisso

reivindicaçãocompromisso

reivindicação

Page 14: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Diagrama de seqüência de interação

Page 15: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Diagrama de padrão de interação

regra

Page 16: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Modelo AOR interno

• Diagrama de frame de reação• Diagrama de seqüência de reação• Diagrama de padrão de reação

Page 17: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Modelo AOR interno

envia mensagem(communication actions)

recebe mensagem(communication events)

isPerceivedBy

isCreatedBy

isSentBy

isSentTo

evento geradopor ação

evento geradopor ação

Page 18: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Diagrama de frame de reação

requisição da biblioteca do dep.para a biblioteca central

açãocompromisso da biblioteca central

ação

compromisso da biblioteca do depcom a biblioteca central

requisição da biblioteca centralcom a biblioteca do dep.

mensagem

Page 19: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Diagrama de padrão de reação

Biblioteca central tem que reagir a um pedido de livro

regra de reação

Page 20: Linguagens de Modelagem (cont.) (III) Equipe do Curso de ES para SMA {lucena, furtado, choren, viviane}@inf.puc-rio.br.

Software Engineering Lab (LES) – PUC-Rio

Direitos (rights) e deveres (duties) de agentes internos

hasDutyToReact

hasRightToSend

hasDutyToFulfill

hasNoRightToSend