6 Ferramenta de Apoio ao Processo de Desenvolvimento de Sistemas Multi-Agentes



Documentos relacionados
Odyssey-MDA: Uma Ferramenta para Transformações de Modelos UML

Especificação do Trabalho

Movie Maker. Fazer download de vídeos no You Tube. Para publicar no You Tube. O Windows Movie Maker 2 torna fácil para qualquer pessoa

Aprenda como instalar o plugin EclipseUML no Eclipse e como utilizá-lo para fazer engenharia reversa de seu código-fonte.

3.1 Definições Uma classe é a descrição de um tipo de objeto.

UFG - Instituto de Informática

Manual de Utilizador. Caderno. Recursos da Unidade Curricular. Gabinete de Ensino à Distância do IPP.

MANUAL DA SECRETARIA

Superintendência Regional de Ensino de Ubá - MG Núcleo de Tecnologia Educacional NTE/Ubá. LibreOffice Impress Editor de Apresentação

Aoentrar na sua cx de vc terá uma tela como a abaixo :

Astra LX Frases Codificadas Guia para o processo de Configuração de Frases Codificadas no Programa AstraLX.

Manual do Usuário. Protocolo

TRIBUNAL DE CONTAS DO ESTADO DE SANTA CATARINA DIRETORIA DE INFORMÁTICA DIN MANUAL DA SALA VIRTUAL - PROCURAÇÃO

Apostilas OBJETIVA Atendente Comercial / Carteiro / Op. Triagem e Transbordo CORREIOS - Concurso Público º CADERNO. Índice

Bem-vindo ao tópico sobre administração de listas de preços.

TechProf Documento de Arquitetura

SIE - SISTEMA DE INFORMAÇÕES PARA O ENSINO CADASTRO DE FUNCIONÁRIOS

TOTVS Gestão Hospitalar Manual Ilustrado - Relatórios. 11.8x. março de Versão 1.0

Modelagem de Sistemas

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO

Desenvolvimento de uma Etapa

Micro Mídia Informática Fevereiro/2009

Transformação de modelos em processos de desenvolvimento de software

2 Engenharia de Software

paradigma WBC Public - compra direta Guia do Fornecedor paradigma WBC Public v6.0 g1.0

3. Fase de Planejamento dos Ciclos de Construção do Software

MANUAL. Certificado de Origem Digital PERFIL ENTIDADE. Versão

MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S. Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick

DELPHI 7 LINGUAGEM DE PROGRAMAÇÃO AMBIENTE CLIENTE SERVIDOR

MANUAL SOCIEDADE DE ADVOGADOS

Capítulo 13 Pastas e Arquivos

Apostila de. WordPress. Gustavo Teixeira da Cunha Coelho Henrique Gemignani Passos Lima. 13 de maio de Primeira Edição RC2

MANUAL - CONTABILIDADE

Professor Paulo Lorini Najar

ÍNDICE. Tela de Configuração Dados de Etiqueta Configuração da Impressora Configuração do Papel Itens para Inserção...

Neste tópico, veremos como selecionar e copiar informações entre bancos de dados de empresa no SAP Business One.

O Windows também é um programa de computador, mas ele faz parte de um grupo de programas especiais: os Sistemas Operacionais.

BR DOT COM SISPON: MANUAL DO USUÁRIO

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

Juiz de Fora, Maio de 2015

PRACTICO LIV! FINANCEIRO DRE DEMONSTRATIVO DE RESULTADO DO EXERCÍCIO

Resolução da lista de exercícios de casos de uso

Ambiente Visual para o Desenvolvimento de Jogos Eletrônicos

UML e a Ferramenta Astah. Profa. Reane Franco Goulart

A construção de um manual sobre a utilização dos modelos também poderá alavancar o uso das representações. Este conteria a explicação detalhada da

Manual do Usuário - ProJuris Web - Biblioteca Jurídica Página 1 de 20

Manual MQS. Logo após colocar essas informações abrirá a página inicial do sistema:

5.1. Análise Comparativa

COMO VAI A CÂMARA? Uma proposta de uso de dados abertos

Desenvolvimento de Sistemas BPMS. Jhonatas Vicente de Jesus

Manual Sistema Débito Web Adsis/Disao Criado em 23/04/2012

Programação Orientada a Objetos. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO TÓPICOS AVANÇADOS EM SISTEMAS INTEGRADOS E DISTRIBUÍDOS II

MANUAL DE UTILIZAÇÃO DO TREINAMENTO EAD (Educação a Distância) ÍNDICE

Sistemas Operacionais. Curso Técnico Integrado Profa: Michelle Nery

Sistema topograph 98. Tutorial Módulo Fundiário

Manual de Inclusão e Exclusão de Disciplinas Online

Primeiros passos das Planilhas de Obra v2.6

Exemplo de Modelagem Orientada a Objetos

TAFCITY (A Cidade Amiga do Idoso) GUIA DO PROFESSOR

DOMINE O EXCEL Fascículo 1

O Sistema foi inteiramente desenvolvido em PHP+Javascript com banco de dados em MySQL.

1. REGISTRO DE PROJETOS

MANUAL DE UTILIZAÇÃO DO AMBIENTE EAD (Educação a Distância) ÍNDICE

Ferramenta para Geração de Código a partir da Especialização do Diagrama de Classes

Q-Acadêmico. Módulo CIEE - Estágio. Revisão 01

ABRIL/2004 UMA FERRAMENTA PARA AUXILIAR O PROFESSOR NO ENSINO À DISTÂNCIA

NOTA FISCAL DE SERVIÇO ELETRÔNICA (NFS-e) Manual de Utilização Envio de arquivos RPS. Versão 2.1

ANEXO I - TERMO DE REFERÊNCIA NÚCLEO DE EMPREENDIMENTOS EM CIÊNCIA, TECNOLOGIA E ARTES NECTAR.

Usando o Conference Manager do Microsoft Outlook

Programação Orientada a Objeto

AJUDA - FORMULÁRIO DE PROPOSTA ON-LINE - AVG

DotNetNuke. Gestão de Conteúdos. Módulos - II. Inserção de conteúdos nos módulos. Módulo de Text/HTML. Módulo de Sre-Notícias. Módulo de Sre-Formação

Criação da etiqueta para os cartões

PROJETO PILOTO. Setembro 2015

Versão Setembro/2013. Manual de Processos. Módulo Protocolo

4 Aplicativo para Análise de Agrupamentos

COTAÇÃO DE COMPRAS COM COTAÇÃO WEB

Desenvolvimento estruturado versus orientado a objetos.

4.1. UML Diagramas de casos de uso

Programação de Computadores - I. Profª Beatriz Profº Israel

Guia de Utilização Gestão de Mensagens Fornecedor Janeiro 2010 PLATAFORMA ELECTRÓNICA VORTAL

CENTRO UNIVERSITÁRIO DE ENSINO SUPERIOR DO AMAZONAS - CIESA CENTRO DE PROCESSAMENTO DE DADOS CPD MANUAL DE UTILIZAÇÃO DO MOODLE 2.

Bem-vindo ao tópico sobre consultas no SAP Business One.

Gestão Unificada de Recursos Institucionais GURI

SIGA-CEIVAP MANUAL DO USUÁRIO 1

O modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento

Criar formulários preenchidos pelos usuários no Word

Integração da Digitação de Eventos

3 Trabalhos relacionados

Utilizando os Diagramas da UML (Linguagem Unificada de Modelagem) para desenvolver aplicação em JSF

,QWURGXomRDR(GLWRUGH $SUHVHQWDo}HV3RZHU3RLQW

Neste tópico, você aprenderá a criar facilmente um banco de dados para uma nova empresa e a definir configurações comuns de uma empresa no SAP

Manual do Teclado de Satisfação Online WebOpinião

SISTEMA DE INFORMAÇÕES GERENCIAIS Guia Rápido O que há de novo no SIG?

SISTEMAS DE INFORMAÇÃO GERENCIAIS

Administrando um curso em Moodle (1.6.5+)

Manual do Usuário do Produto EmiteNF-e. Manual do Usuário

UML: Diagrama de Casos de Uso, Diagrama de Classes

Transcrição:

6 Ferramenta de Apoio ao Processo de Desenvolvimento de Sistemas Multi-Agentes A ferramenta MAS-ML Tool surgiu com o objetivo de viabilizar o processo de desenvolvimento proposto na Seção anterior, implementando todas as etapas presentes no mesmo, permitindo assim a modelagem e implementação de SMA. Esta ferramenta, similar às ferramentas CASE existentes para UML, permite ao usuário modelar graficamente seu sistema de forma rápida e simples utilizando a linguagem MAS-ML. É importante ressaltar que esta ferramenta não obriga a execução do processo como um todo, sendo possível apenas a execução de algumas etapas do processo e com isso a obtenção do artefato gerado na mesma. No entanto, para se executar uma determinada etapa é necessária execução das etapas anteriores. Os artefatos que podem ser gerados com a ferramenta são: o documento MAS-ML XMI, o documento UML XMI ou o código Java propriamente dito, todos a partir de uma mesma modelagem MAS-ML. No decorrer desta Seção é demonstrado como obter cada um destes artefatos. Para esta ferramenta foi criada uma interface gráfica (vide Figura 26) que permite modelar todos os elementos relacionados com a parte estrutural de MAS-ML, possibilitando assim a modelagem das entidades existentes (como por exemplo, agentes, organizações, ambientes, etc.), os relacionamentos entre estas entidades (como por exemplo, habita, controla, desempenha, etc.) e também os diagramas estruturais. Devido ao fato da linguagem de modelagem MAS-ML ser uma extensão da linguagem UML, através da ferramenta também é possível modelar os elementos presentes em UML e os relacionamentos presentes entre eles, em um diagrama de classes, visto que esta ferramenta dará suporte somente à modelagem da parte estrutural do sistema. Através desta interface gráfica (Figura 26) é possível acessar todas as funcionalidades da ferramenta. O menu situado na parte superior da aplicação disponibiliza diversas funções, tais como: manipulação de um projeto (criação, alteração e impressão), geração do UML XMI e do código fonte a partir da modelagem. Entende-se por projeto um conjunto de diagramas e seus

83 elementos criados para modelar um SMA. A barra de ferramentas encontrada abaixo do menu permite, além da manipulação do projeto, a criação dos diagramas estruturais e manipulação das propriedades de um elemento/relacionamento caso o mesmo esteja selecionado. Figura 26 - Interface Gráfica de MAS-ML Tool Com o objetivo de iniciar a primeira etapa do processo de desenvolvimento, MAS-ML Tool oferece a funcionalidade de modelagem gráfica do SMA através da linguagem MAS-ML. A modelagem pode ser realizada através da utilização de três diferentes tipos de diagrama estruturais existentes em MAS-ML, são eles: diagrama de classes estendido, diagrama de organização e diagrama de papéis. Cada diagrama criado pelo usuário é representado através de uma ficha do fichário (parte direita da aplicação). Pela Figura 26, é possível visualizar dois diagramas criados pelo usuário (Organization_Diagram e Class_Diagram). Através da criação ou seleção do diagrama desejado, o usuário pode modelar os elementos e relacionamentos permitidos em cada diagrama. Os elementos e relacionamentos são representados pelos botões presentes na coluna vertical central, bastando o usuário clicar no elemento/relacionamento desejado que o mesmo aparecerá (caso seja permitido) no diagrama selecionado. Uma vez modelado o SMA (criação do modelo PIM), os diagramas poderão ser salvos para serem utilizados posteriormente, caso seja desejo do

84 usuário. O armazenamento dos modelos desenhados na ferramenta é feito no formato MAS-ML XMI, utilizando a opção Salvar presente no menu ou na barra de tarefas (vide Figura 27). Conforme é possível perceber, a geração do MAS- ML XMI é parte integrante da segunda etapa do processo de desenvolvimento proposto (primeiro passo). É importante ressaltar que a funcionalidade de salvar a modelagem realizada tem como propósito permitir que o usuário possa alterálo posteriormente caso seja necessário. No MAS-ML XMI gerado através da opção "Salvar" da ferramenta está representado também a posição e o tamanho dos elementos presentes na modelagem feita na ferramenta. Está funcionalidade já é contemplada no UML XMI, sendo apenas estendida para os elementos criados por MAS-ML. Deste modo, quando o usuário for abrir um projeto criado pela ferramenta, os elementos pertencentes a este modelo estarão presentes na mesma posição, tamanho e disposição entre os diagramas existentes quando o mesmo foi salvo anteriormente. Figura 27 Interface Gráfica MAS-ML Tool, opção Salvar (Criação MAS-ML XMI) Com base na modelagem feita através da MAS-ML Tool é possível concluir a segunda etapa do processo de desenvolvimento (passo 2), ou seja, a geração do UML XMI. Conforme descrito na Seção 4.3.2, a criação do UML XMI (modelo PSM) tem como base o framework ASF e corresponde ao modelo PSM existente em MDA.

85 Para a criação do UML XMI, basta o usuário escolher a opção Generate UML XMI... (Figura 28). Selecionada esta opção, o usuário deverá escolher algumas características do documento a ser criado. Essas características incluem: versão do UML XMI (1.4 ou 1.5), versão do documento XMI (1.1 e 1.2) e inclusão ou não da implementação de alguns métodos existentes no SMA. A disponibilidade dessas opções visa facilitar o usuário caso ele deseje importar este documento em outra ferramenta CASE que dê suporte ao UML XMI. Algumas dessas ferramentas utilizam diferentes versões tanto da linguagem UML como da tecnologia XMI e por este motivo é oferecida uma maior flexibilização na geração deste documento. Além disso, apesar deste documento estar de acordo com o UML DTD definido pela OMG, algumas ferramentas fazem interpretações diferenciadas para um mesmo UML XMI e não dão suporte à implementação de métodos, e por este motivo damos a opção ou não de se incluir esta implementação no documento a ser gerado. Como exemplo de ferramenta CASE que dá suporte a implementação de métodos temos o Poseidon [54] e de uma que não dá suporte a esta funcionalidade, temos o Together [53]. Figura 28 - Interface Gráfica MAS-ML Tool, opção Generate UML XMI (Criação UML XMI) É importante ressaltar que o usuário pode escolher a opção de geração do UML XMI, sem ter antes salvo o projeto e portanto não gerando o MAS-ML XMI.

86 Neste caso, a ferramenta, antes de gerar o UML XMI, irá gerar um documento MAS-ML XMI temporário que será utilizado como base para a transformação e criação do UML XMI. Buscando facilitar o usuário na finalização do processo de desenvolvimento, isto é, na geração do código fonte referente à modelagem do SMA, foi criada a funcionalidade de geração de código Java baseada na modelagem feita na ferramenta. Deste modo, o usuário não necessitará procurar outra ferramenta que seja capaz de exercer esta funcionalidade. A geração do código é totalmente baseada no documento UML XMI gerado também pela ferramenta. Para a geração do código fonte, basta o usuário selecionar a opção Generate Java Code... (Figura 29). Selecionada esta opção, o usuário deverá escolher onde deverá ser gravado o código fonte. Cabe notar que quando o usuário optar por esta funcionalidade, será criado, além do código fonte, um documento UML XMI que será armazenado em uma sub-pasta do mesmo diretório selecionado pelo usuário. Figura 29 - Interface Gráfica MAS-ML Tool, opção Generate Java Code... (Criação código fonte) De acordo com o que foi detalhado nesta Seção é possível verificar que a ferramenta MAS-ML Tool abrange todas as etapas do processo de desenvolvimento proposto neste trabalho. Para a criação desta ferramenta foi

87 necessária a utilização de diferentes tecnologias para que a mesma fosse capaz de oferecer as funcionalidades apresentadas. MAS-ML Tool foi desenvolvida na plataforma Eclipse [59], utilizando a linguagem de programação Java. Foram utilizados alguns recursos disponíveis através desta plataforma para o desenvolvimento da ferramenta. Um dos recursos utilizados foi o Standard Widget Toolkit (SWT) [60]. O SWT é uma biblioteca de componentes, desenvolvida pela IBM, para interface gráfica que permite à plataforma Eclipse ter funcionalidades nativas para componentes gráficos de modo independente de sistema operacional. Ele é análogo ao AWT/Swing disponibilizado pela Sun com a diferença de utilizar um conjunto rico de componentes nativos. Esta biblioteca foi utilizada na interface gráfica da ferramenta (como por exemplo, botões, menus, etc). Outro recurso existente na plataforma Eclipse e utilizado para a construção da ferramenta é o Graphical Editing Framework (GEF) [61]. O GEF é um framework que permite aos desenvolvedores criar um rico editor gráfico a partir de um modelo de aplicação já existente. Este framework utiliza o recurso Draw2d [62] para renderizar os componentes gráficos. O Draw2d é utilizado para a construção de componentes gráficos com SWT. Este recurso foi utilizado na ferramenta para permitir a representação gráfica dos elementos e relacionamentos durante a etapa de modelagem. A tecnologia utilizada para a criação e leitura de documentos XMI (MAS- ML XMI e UML XMI) foi o XML Document Object Model (DOM) [63], proposto pela W3C. O objetivo do DOM é fornecer uma API que pode ser utilizada em uma variedade de aplicações. Ele pode ser utilizado com qualquer tipo de linguagem de programação e sistema operacional. Utilizando o DOM é possível criar documentos XML, navegar em sua estrutura, e adicionar, modificar ou excluir seus elementos. Para a funcionalidade de geração de código existente na ferramenta, foi utilizado o framework AndroMDA [55]. AndroMDA é um framework código aberto para a geração de código fonte que utiliza a abordagem MDA. Ele tem como principal finalidade gerar código fonte a partir de documentos XMI gerados por outras ferramentas CASE. Da forma como este framework é distribuído atualmente, o mesmo é capaz apenas de gerar o esqueleto do código fonte, não apresentando portanto a implementação de métodos. Para que o mesmo fosse utilizado na ferramenta e fosse capaz de gerar métodos já implementados, foi necessário estender AndroMDA. Portanto, o AndroMDA utilizado pela ferramenta é uma extensão do AndroMDA disponível para distribuição.