Title: Metodologias (Parte II)
1Metodologias (Parte II)
- Viviane Torres da Silva
- viviane.silva_at_ic.uff.br
- http//www.ic.uff.br/viviane.silva/isma
2Metodologias
- Tropos
- Prometheus
- Gaia
- Message
- MaSE
3Metodologia Gaia
- Se baseia na abstração de organizações
- Não está relacionada a nenhuma linguagem de
modelagem - Não se preocupa com os problemas de implementação
4(No Transcript)
5Conceitos
- Ambiente
- Coisas físicas ou virtuais
- Quais são os recursos do ambiente que os agentes
podem sentir e atuar? - Como o agente pode perceber o ambiente?
- Quais são os agente que habitam o ambiente?
- Papéis
- Define o que se espera que um agente faça em uma
organização (em relação a outros agentes e em
relação a organização) - Funcionalidades, atividades e responsabilidades
- Interação entre papéis
- Protocolos e padrões
6Conceitos
- Regras organizacionais
- Regras aplicadas a todos os papéis e protocolos
- Regras que expressam relacionamentos e restrições
entre papéis, entre protocolos e entre papéis e
protocolos - Estrutura organizacional
- Descreve todos os papéis da organização e suas
posições na organização - Gera o modelo de papéis
7Etapa de Análise
8Etapa de Análise
- Subdivisão do sistemas em sub-organizações
- Modelo de ambiente
- Modelo preliminar de papéis
- Modelo preliminar de interação
- Regras organizacionais
9Subdivisão do sistema em sub-organizações
- Identificação dos objetivos das organizações
- Quando é trivial encontrar organizações?
- O sistema já fala de quais são as organizações
- O sistemas imita o mundo real
- Como achar organizações quando não é trivial?
- Verificar se parte do sistema possui um
comportamento orientado a um determinado sub-goal - Quais partes interagem pouco?
- Verificar se algumas partes estão relacionadas a
competências que outras partes não possuem
10Modelo do ambiente
- Representação computacional do ambiente
- Lista de recursos cada recurso
- Nome simbólico
- Lista de ações que o agente executa no recurso
- Comentários adicionais e descrições
11Modelado preliminar de roles I/III
- Identificação das habilidades básicas requeridas
pela organização - Apenas os papéis independentes da estrutura
organizacional - Definição incompleta dos papéis
- Identifica as permissões e as responsabilidades
dos papéis - Não tem informação de com quem eles interagem
- Conjunto incompleto dos papéis
- Papéis dependentes da estrutura organização
12Modelado preliminar de roles II/III
- Permissões
- Relacionam papéis ao ambiente
- Identifica os recursos que podem e os que não
podem ser acessados pelo papel - Responsabilidades
- Representa o comportamento esperado de um papel
- Propriedades Liveness alguma coisa boa
acontece - Define os estados que o agente quer atingir
- Propriedades Seguras nada de ruim acontece
- Invariantes
- Define os estados que são mantidos
13Modelagem preliminar de papéis IIII/III
Condição
14Exemplo
infinitas vezes
atividade
protocolos
15Modelo preliminar de interação
- Identifica as interações básicas requeridas pelos
papéis - Captura as dependências e os relacionamentos
entre os vários papéis - Um protocolo para cada tipo de interação entre
papéis - Nome
- Aquele que inicia
- Aquele que responde
- Inputs informações usadas para iniciar o
protocolo - Outputs informações resultantes do protocolo
- Descrição
16Exemplo Modelagem preliminar de interação
17Regras organizacionais
- Capturam relacionamentos gerais entre
- Papéis
- Protocolos
- Papéis e protocolos
- São responsabilidades da organização como um todo
- Regras liveness
- Como a dinâmica da organização deve evoluir no
tempo - Regras seguras
- Invatiantes que devem ser respeitadas na
organização
18Exemplo
- Regra liveness
- O revisor só pode enviar a revisão de um artigo
despois de receber o artigo - Regla segura
- O revisor de um artígo não pode ser o autor do
artigo
19Etapa de Projeto Arquitetural
20Etapa de Projeto Arquitetural
- Documenta todas as características funcionais que
o sistema tem que expressar junto com as
características do ambiente no qual o sistema se
encontra - Estrutura organizacional
- Modelo de papéis completo
- Modelo de protocolos completo
21Estructura Organizacional
- Topologia Regime de controle
- Topologia descreve o relacionamento entre os
papéis - Escolher a topologia mais simples que possa
solucionar as complexidades computacionais - Exemplos de topologias hierárquica e coleção de
indivíduos - Regime de controle descreve o tipo dos papéis
- Pensar na divisão de trabalho e na especialização
do trabalho - Como decidir?
- Necessidade de atingir eficiência organizacional
- Necessidade de respeitar as regras
organizacionais - Necessidade de minimizar a distância com a
organização do mundo real
22Modelo de papéis e de protocolos (completo)
- Definir todas as atividades dos papéis
- Definir papéis organizacionais
- Provenientes da adoção da estrutura
organizacional - Completar a definição do protocolo requerido pela
aplicação - Definir os protocolos organizacionais
- Provenientes da adoção da estrutura
organizacional
23Etapa de Projeto Detalhado
24Etapa de Proyecto Detallado
- Objetivo é identificar os agentes e os serviços
provendo dicas para a implementação - Modelo de agente
- Modelo de serviço
25Modelado de agentes
- Agente
- Entidade ativa que desempenha um conjunto de
papéis - Descreve quais classes de agentes irão
desempenhar quais classes de papéis - Como decidir?
- Não deve afetar a eficiência da organização
- Não viola as regras organizacionais
26Modelado de serviços
- Bloco de atividade alocado a um agente
- Não confundir com um método
- Propriedades
- Inputs e Outputs (provenientes da análise dos
modelos de protocolos e ambientes) - Pre-condições
- Pós-condições
27Metodología MESSAGE
- Methodology for Engineering Systems of
- Software Agents
28MESSAGE
- Estende os diagramas de Classe e Atividades de
UML com conceitos relacionados a agentes - Organizações, papéis, metas e tarefas.
- Fase de Análise
- Objetivos melhor entender o problema, confirmar
que aquele é o problema certo a ser resolvido e
facilitar o design da solução - Descreve papéis, serviços e interações entre os
papéis - Fase de Design
- Design de alto nível independente de
implementação - Design de baixo nível dependente da plataforma
de implementação ou arquitetura
29MESSAGE
- Design de alto nível
- Papéis são associados a agentes
- Serviços são descritos em termos de tarefas
(ações de agentes) - Interações são transformadas em protocolos
- Design de baixo nível
- Mapeia os elementos do design de alto nível para
elementos computacionais da plataforma de
implementação
30Conceitos
- Agente
- Entidade autônoma que é capaz de fazer alguma
função - Serviços funcionalidades do agente
- Propósito motivação do agente para executar
algum serviço - Organização
- Grupo de agentes trabalhando juntos para um
propósito geral - Papéis
- Interface X Objeto gt Papel X Agente
- Descreve as características externas de um agente
em um contexto
31Conceitos
- Metas
- Estado que o agente quer atingir
- Tarefa
- Atividade
- Possui pré e pós-condições
- Interação
- Atividade
- Define os participantes e o propósito que os
participantes tentarão atingir - Mensagem
- Objeto enviado por um agente a outro agente
32(No Transcript)
33Visões
- Organização
- Modela entidades concretas do sistemas (agentes,
organizações, papéis e recursos), o ambiente e os
relacionamentos entre eles - Meta/Tarefa
- Descreve as metas, tarefas, estados e
dependências entre eles - Tarefas pode ser executadas para atingir um
objetivo - Agente/Papel
- Foca em agentes e papéis
- Quais metas são responsabilidades de um agente,
quais eventos ele controla, quais tarefas ele
sabe executar, ...?
34Visões
- Interação para cada interação definir
- quem começa a interação,
- o colaborador,
- a motivação (meta),
- as informações enviadas e recebidas,
- o evento que dispara a conversação, ...
- Domínio
- Mostra os conceitos específicos de domínio e as
relações que são relevantes para cada sistema em
desenvolvimento
35(No Transcript)
36Modelos de Análise (nível 0)
37Visión de la organización
- Vê o sistema como uma caixa preta (sem olhar os
detalhes) - Foca no relacionamento entre as entidades e o
ambiente (recurso)
Visão Organizacional
Visão Organizacional
organização
interacción
papel
recurso
38Visão de Metas e Tarefas
- Decomposição das metas do sistema em sub-metas
39Visão de Task/Goal
- Descreve como um serviço é realizado por uma
seqüência de tarefas
tarefa
serviço
papel
40Modelos de Análise (nível 1)
41Visão Organizacional
- Foco no sistema em si identificando as suas
funcionalidades - Considerar apenas os papéis (pensar nos agentes
na fase de design)
42Visão Agente/Rol
- Associação das metas ao papéis
- Relacionada as visões de decomposição de metas e
organizações
43Visão Agente/Rol
44Visão de Interação
- Descreve quais agente interagem, quando e porquê
eles interagem - Detalhes de como interagem são descritos no
processo de design
45Visão de Domínio
- Usar diagrama de classes de UML para representar
conceitos do domínio e o relacionamento entre eles
46Etapa de Projeto
47Transição da etapa de Análise para Projecto de
alto nível
- Identificar os agentes e associar agentes ao
papéis - Descrever como os serviços são providos através
da identificação de tarefas - Definir protocolos de interação a partir do
refinamento das interações (modeladas na fase de
análise) - Identificar o comportamento dos papéis dos
protocolos de interação através de statecharts..
48Atividades da Fase de Design
49Atividades da Fase de Design
- Detalhando as entidades
- Definição das classes, interfaces, atributos,
métodos, e diagramas de UML - Seleção da arquitetura para agentes
- Dependente das funcionalidades definidas no nível
de análise - Usar a arquitetura
- Produzir os agentes da aplicação
- Atualizar/Modificar as visões
- Decisões de design podem ter afetado as visões.
Refazer - Estruturar os resultados de acordo com a visão de
organização
50MaSE
- Multiagent System Engineering
51(No Transcript)
52Etapa de Análise I/III
- Objetivo descrobir os papéis cujas tarefas
estejam relacionadas com os requisitos do sistema - Capturando os objetivos
- Objetivos Identificar os objetivos do sistema e
estruturar os objetivos - Os objetivos são os requisitos funcionáis do
sistema - Hierarquia de objetivos
- Modelagem da estrutura dos objetivos
53Exemplo Hierarquia de Objetivos
54Etapa de Análise II/III
- Aplicando os casos de uso
- Objetivo capturar os casos de uso do sistema e
criar um diagrama de seqüência inicial para
descubrir os papéis e as comunicações que podem
ocorrer no sistema - Criando os casos de uso
- Define os cenários básicos que o sistema deve
executar - Diagrama de seqüência
- Descrebe os eventos que são enviados pelos papéis
em um cenário
55Exemplo Diagrama de seqüência
56Etapa de Análise III/III
- Detalhando os papéis
- Transformar os dados dos casos de uso e os
diagramas de seqüência em papéis e tarefas - Modelagem de papéis
- Modelagem dos papéis, seus objetivo, suas tarefas
e as relações entre elas - Modelagem de tarefas concorrentes
- Diagrama de estados de UML
57Exemplo Modelagem de papéis
tarea
role
objetivos del rol
58Exemplo Modelagem de tarefas concorrentes
59Etapa de Projeto I/II
- Objetivo definir os agentes do sistema
- Criando as classes de agentes
- Classes de agentes
- As classes dos agentes são criadas a partir dos
papéis e das tarefas - Criação do diagrama de classes de agentes
- Construindo as interações entre os agentes
- Descrever em detalhes a interação/protocolo entre
os agentes - Sempre existem dois diagramas de interação para
cada converssa entre dois agentes - Utiliza o diagrama de estados de UML
60Exemplo Diagrama de Classes do Agente
agente
roles
61Exemplo Diagramas de interação
62Etapa de Projeto II/II
- Detalhando os agentes
- Objetivo descobrir a parte interna dos agentes
de acordo com a arquitetura escolhida - Projeto do sistema
- Objetivo criar as instâncias dos agentes nos
ambientes que compõem o sistema - Criar o Diagrama de Deployment
63Exemplo Detalhando os agentes
64Exemplo Diagrama de Deployment
ambiente
instância