AUML Maíra Gatti 2007.2.

Slides:



Advertisements
Apresentações semelhantes
UML 2.0 Unified Modeling Language version 2.0 Workshop Sala ITA
Advertisements

RUP – Rational Unified Process
Alexandre Mota Análise do Sistema Alexandre Mota
Introdução a Engenharia de Software de Sistemas Multi-Agentes
UML no CICLO de DESENVOLVIMENTO
ViewPoint (Trabalho Nº 2)
UML Visões – Parte 2.
(Unified Modeling Language)
Valéria Maria Lauande Março/2010
UML Material retirado da apostila do Professor Cesar Augusto Tacla
Diagramas de Seqüência
Projeto de Sistemas de Software
Projeto de Sistemas de Software
Metodologias Equipe do Curso de ES para SMA
Metodologias Equipe do Curso de ES para SMA {lucena, furtado, choren,
Linguagens de Modelagem
Metodologias Equipe do Curso de ES para SMA
Linguagens de Modelagem
Parte III – Engenharia de Software para Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.
Linguagens de Modelagem (cont.) (IV)
PRDS - Programa de Residência em Desenvolvimento de Software Laboratório de Engenharia de Software (LES) da PUC-Rio Carlos Lucena
Frameworks Conceituais
Linguagens de Modelagem para SMA
Cartões CRC (Class Responsibility Card)
Linguagens de Modelagem para SMA
Metodologias Orientadas a Agentes
Projeto de Software Orientado a Objetos
Modelo de Arquitetura Diagrama de Componentes
Análise Estruturada O mais amplamente usado dos métodos de modelagem de requisitos Modelos que retratam fluxo e o conteúdo da informação (dados e controle)
Análise e Projeto de Sistemas
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
Classes e objetos Modelagem
Diagramas de Seqüência
Arquitetura Orientado a Serviços
Visão Geral do RUP.
Uma comparação de dois métodos de desenvolvimento de software baseado em componentes: Catalysis e UML Components Projeto Final por: Bernardo Faria de Miranda.
Projeto de Sistemas de Software
DIAGRAMA DE CASO DE USO Prof. Fabíola Gonçalves C. Ribeiro.
Arquiteturas de Referência
Tópicos de Sistemas de Informação A
MAS-ML Tool: Um Ambiente de Modelagem de Sistemas Multi-Agentes
Análise e Projeto de Sistemas
Metodologias para construção de SMA
UNIDADE 2 UML MODELAGEM TEMPORAL
Heron Vieira Aguiar “Seminário da disciplina MDA” Julho de 2006
(Open Unified Process)
Metodologias (Parte II) Viviane Torres da Silva
Abr-17 Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto Fluxo de análise e projeto.
Bruno Silva Desenvolvido a partir de
O Processo Unificado (UP)
METODOLOGIA, MÉTODOS E FERRAMENTAS
Laboratório de Programação
RUP - Cap. 3 – Processo Dirigido por Caso de Uso
Abr-17 Analisar Caso de Uso Analisar caso de uso.
Ferramenta de Modelagem de Requisitos e Agentes (TAOM4e) Laís Xavier Prof.: Jaelson Castro.
Linguagem de Modelagem Unificada
Modelo de Análise e Projeto
Diagramas de Caso de Uso
Engenharia de Software e Sistemas
WSDL Web Services Description Language. Tecnologias Relacionadas Web Services SOAP (Simple Object Access Protocol) HTTP (HyperText Markup Language) UDDI.
Análise e Projeto de Sistemas
André Drummond RA Danilo Benzatti RA
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ANÁLISE E PROJETO DE SISTEMAS Aula /08/2012 Professor Leomir J. Borba-
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Modelagem de Sistemas Orientada a Objeto Com UML
Engenharia de Requisitos Prof. Fábio Botelho, MSc Redes e Sistemas Distribuídos Recife, Agosto de 2012.
RUP – Rational Unified Process Márcia Seabra Cabral Prof. Augusto Sampaio Centro de Informática - UFPE.
/ de Julho de UFPE - Universidade Federal de Pernambuco CIn - Centro de Informática Pós-Graduação em Ciência da Computação Tópicos Avançados.
Atividades, Artefatos e Responsáveis da Disciplina de Análise e Projeto.
Linguagens de Modelagem (cont.) (II)
Transcrição da apresentação:

AUML Maíra Gatti 2007.2

Agenda AUML AUML-BP AUML 2-Tool © LES/PUC-Rio

Motivação Por que não utilizar uma linguagem de modelagem já existente para modelar SMA? UML é linguagem de modelagem padrão para modelar sistemas OO UML não dá suporte para a modelagem de SMA Agentes e objetos possuem características / propriedades diferentes Por que não estender UML para modelar SMA? © LES/PUC-Rio

AUML – Agent UML Primeiro objetivo era especificar protocolos de interação entre agentes (AIP) 1o passo foi estender diagrama de seqüência de UML para modelar as interações entre agentes Extensões para UML 1.3 (2001/2002) e UML 2.0 (2005) © LES/PUC-Rio

Diagrama de use case de UML caso de uso usuário do sistema sistema © LES/PUC-Rio

Diagramas de Casos de Uso AUML Capturam interações orientadas a objetivos entre os agentes com seus papéis especificados e o sistema. Descrevem o conjunto de caminhos que os agentes podem executar ao longo do sistema, cada um com um objetivo discreto. © LES/PUC-Rio

Exemplos de Diagramas de Casos de Uso AUML © LES/PUC-Rio

Diagrama de Classes de Agente Descreve os tipos de agentes do sistema e seus relacionamentos estáticos © LES/PUC-Rio

Diagrama de classe em UML Nome_da_classe atributo1 atributo2 ... metodo1 metodo2 metodo3 nome da classe atributos métodos © LES/PUC-Rio

Diagrama de classes de AUML agente communication act © LES/PUC-Rio

Diagrama de classes de AUML visão de agente Representação de belief, desire e intentation como atributos visão de organização visão da organização visão de ambiente visão de interação © LES/PUC-Rio

Exemplo de Diagrama de Classe de Agente e Detalhamento da Classe Agente © LES/PUC-Rio

Representando Organizações © LES/PUC-Rio

Organizações, papéis e agentes © LES/PUC-Rio

Diagrama de classe organização papel © LES/PUC-Rio

Organizações UML 2.0 v. extendida © LES/PUC-Rio

Organizações UML 2.0 v. extendida © LES/PUC-Rio

Diagrama de seqüência de UML condição de guarda Tempo (top-down) ObjetoA mensagem síncrona [se novo] <<create>> ObjetoB objeto mensagem mensagem (auto delegação) (caixa de)ativação valor de retorno <<destroy>> símbolo de destruição linha de vida © LES/PUC-Rio

Indica o protocolo sendo modelado Indica se este diagrama representa um template Indica as possibilidades de comunicação dependendo da condição © LES/PUC-Rio

Diagrama de seqüência de AUML © LES/PUC-Rio

Diagrama de seqüência de AUML object : Class :: Package UML forma de identificar o agente e o papel communication act ou mensagens (não é chamada de métodos) paralelismo OU inclusivo OU exclusivo © LES/PUC-Rio

Diagrama de seqüência de AUML © LES/PUC-Rio

Diagrama de seqüência de AUML (Exemplo) Agente A desempenhando o papel customer Agente A desempe-nhando o papel negotiator representação de troca de papel © LES/PUC-Rio

AUML -> UML 2.0 extendida © LES/PUC-Rio

AUML -> UML 2.0 extendida Interaction Overview Diagram © LES/PUC-Rio

Diagrama de colaboração de AUML (Exemplo) © LES/PUC-Rio

Diagrama de atividades de UML Usado para representar as atividades, ações e as transições entre as atividades/ações Cliente Página partição Pegando idioma origem e idioma destino fork Pegando Texto Pegando Figuras atividade Montando Tabela Texto Montando Tabela Figuras join Exibindo para o usuário Montando Arquivo HTML © LES/PUC-Rio

Diagrama de atividade de AUML Usado para representar as atividades associadas a um protocolo ou só as atividades de um papel papel © LES/PUC-Rio

Diagrama de atividade de AUML UML 2.0 © LES/PUC-Rio

Diagrama de atividade de AUML UML 2.0 © LES/PUC-Rio

Diagrama de atividade de AUML UML 2.0 © LES/PUC-Rio

Diagrama de estado de UML transições © LES/PUC-Rio

Diagrama de estado de AUML Usado para representar os estados e as transições associados a um protocolo ou só os estados e as transições de um papel estado agente ou papel © LES/PUC-Rio

Diagrama de componentes de UML © LES/PUC-Rio

Diagrama de componentes de AUML © LES/PUC-Rio

Diagrama de componentes de AUML UML 2.0 © LES/PUC-Rio

Diagrama de deployment de UML © LES/PUC-Rio

Diagrama de deployment de AUML © LES/PUC-Rio

Diagrama de deployment de AUML UML 2.0 © LES/PUC-Rio

Aspectos temporais de papéis © LES/PUC-Rio

Aspectos temporais de papéis © LES/PUC-Rio

Aspectos temporais de papéis © LES/PUC-Rio

AUML-BP

Processos de Desenvolvimento de Software OA Como modelar e analisar processos de desenvolvimento de software OA? Métodos controlados, bem documentados e replicáveis para produção de software Levantamento de um conjunto de “boas práticas” para o desenvolvimento orientado a agentes © LES/PUC-Rio

Cenário Atual Muitas linguagens de modelagem e metodologias (MAS-ML, AUML, Message, Prometheus, Tropos, MASE, ...) ..... Pouco consenso PASSI, Agile PASSI © LES/PUC-Rio

Processos de software Processo de software é uma seqüência coerente de práticas que objetiva o desenvolvimento ou evolução de sistemas de software Frameworks de processo existentes Definem uma estrutura geral São customizados para definições de processos específicos São oriundos da experiência de profissionais e empresa © LES/PUC-Rio

Classificação das Metodologias © LES/PUC-Rio

AUML-BP: Um Processo Básico utilizando AUML OpenUp/Basic + AUML Abordagem Ágil Iterativo Mínimo, completo e extensível Requisitos - > Estórias de agentes TDD © LES/PUC-Rio

UP – Visão Geral Pode ser dividido em duas dimensões © LES/PUC-Rio

AUML-BP Fase 1 Fase 2 Especificação de Casos de Uso Analisar Caso de Uso Analista de Sistema gera gera Diagramas de Classes Doc. Requisitos Mod. Casos de Uso Diagramas de Interação Fase 2 usa usa Analista de Sistema Especificação de Casos de Uso AUML Especificação de Estórias de Agentes Analisar Caso de Uso AUML e Estórias de Agentes Mod. Casos de Uso AUML Diagramas de Classes de Agentes Diagramas de Colaboração Diagramas de Interação de Protocolos de Agentes Estórias de agentes e Cartões de índices © LES/PUC-Rio

TDD AUML-BP Diagramas de Classes da Arquitetura Projetar Arquitetura Arquiteto TDD Mod. Casos de Uso e Casos de Uso AUML Desenvolvedor Teste de Unidade Teste de Integração Diagramas de Interação e de Interação de Protocolos de Agentes Refinados Diagramas de Classes e de Classes de Agentes Detalhados Estórias de agentes e Cartões de índices Diagramas de Colaboração Refinados Código-Fonte © LES/PUC-Rio

Diagramas de Classes e Interação Uma iteração OO Requisitos Análise & Projeto Implementação Testes Mod. Casos de Uso Planilhas de Teste Código-Fonte Diagramas de Classes e Interação Doc. Requisitos Analista de Sistemas Testadores Arquiteto Programadores Projetistas CADA FASE PODE SER DECOMPOSTA EM ITERAÇÕES © LES/PUC-Rio

Uma iteração AO - AUML-BP Implementação & Testes Requisitos Análise & Projeto Testes Fase I Fase I Fase I Fase 2 Fase I Fase 2 Código-Fonte Mod. Casos de Uso Mod. Casos de Uso AUML Diagramas de Colaboração Planilhas de Teste Doc. Requisitos Diagramas de Interação de Protocolos de Agentes Estórias de agentes e Cartões de índices Diagramas Refinados e Detalhados Diagramas de Classes e Interação Diagramas de Classes de Agentes Programadores Analista de Sistemas Testadores Arquiteto Projetistas CADA FASE PODE SER DECOMPOSTA EM ITERAÇÕES © LES/PUC-Rio

Descrição de Casos de Uso AUML Objetivo envolvendo vários papéis Descrição geral © LES/PUC-Rio

Estórias de Agentes Visão de um agente/ papel que o agente desempenha para atingir o objetivo Especificação das mensagens © LES/PUC-Rio

Cartão de Índice de Agente Define a ordem em que cada estória de agente deve ser implementada © LES/PUC-Rio

EPF Composer Eclipse Framework para Definição de Processos Flexível Customizável Plugins © LES/PUC-Rio

EPF Composer © LES/PUC-Rio

EPF Composer © LES/PUC-Rio

Avaliação Vitor Pelegrino -> iniciação científica Questionários © LES/PUC-Rio

Interaction Diagram / AUML-2 Tool Textual notation for describing interaction diagrams and interaction protocols in a (subset of) AUML-2 http://www.cs.rmit.edu.au/~winikoff/auml

AUML2 Tool Rough prototype tool! Takes text and generates .eps generating layout automatically .eps can be converted to other formats (jpg,png,…) Does both AUML-2 subset and interaction diagrams Requires perl and tcl/tk (probably easiest on unix, but should also work under windows) Requires available $DISPLAY (unix) start FIPA query protocol agent I Initiator agent P Participant box alt message I P query-if … auml.pl Tcl/tk program wish .eps file © LES/PUC-Rio

Leave these out for interaction diagrams Input Format One command per line. Commands: agent shortname longname (also invis and role) start protocol name finish message from to message description box type next end type backup agent T Tutor agent L Lecturer agent S Student message S L Question message L S Answer backup message L T Answer CC Leave these out for interaction diagrams © LES/PUC-Rio

Example start FIPA query protocol agent I Initiator agent P Participant box alt message I P query-if next message I P query-ref end alt message P I not-understood message P I refuse message P I failure message P I inform finish © LES/PUC-Rio

Book Store Example message s c Payment details? start Book Order box alt message c s Cancel next message c s Credit card info message s b Credit Check Request message b s Not understood message b s Not approved message b s Approval message s w Order backup message s c Thanks end alt finish start Book Order agent c Customer agent s Sales ass. agent w Warehouse man. agent d Delivery manager agent b Bank message c s Request Book message s w Price+availability message w s response message s c response box alt message c s Cancel next message c s Buy Book message s w Delivery Options? message w s Delivery info message s c Delivery info message c s Delivery Choice © LES/PUC-Rio

© LES/PUC-Rio

Bibliografia B. Bauer and J. Odell, UML 2.0 and agents: how to build agent-based systems with the new UML standard, Engineering Applications of Artificial Intelligence, Volume 18, Issue 2, Agent-oriented Software Development, March 2005, Pages 141-157. Gatti, M., von Staa, A., Lucena, C.; AUML-BP: A Basic Agent Oriented Software Development Process Model Using AUML; Monografias em Ciência da Computação, Departamento de Informática, PUC-Rio, No. 21/07, 25 pg., 2007. Michael Winikoff. Towards Making Agent UML Practical: A Textual Notation and a Tool. First international workshop on Integration of Software Engineering and Agent Technology (ISEAT 2005). September 2005, Melbourne, Australia. © LES/PUC-Rio

Obrigada! Maíra Gatti 2007.2