SlideShare uma empresa Scribd logo
ARGOUML
ARGOUML 
 O ArgoUMLé uma ferramenta CASE1 livre escrita 
inteiramente em Java, com suporte à maioria dos 
diagramas do padrão UML 1.4 e capaz de gerar código 
para várias linguagens como Java, PHP, Ruby e C++. O 
projeto é hospedado pelo Tigris (tigris.org), conhecido 
pelos desenvolvedores Java como o “lar” do sistema de 
controle de versões Subversion (além do Scarab e 
outros projetos). 
 O poder e a qualidade do ArgoUML é atestado por dois 
produtos comerciais que incorporam o seu código: o 
Poseidon UML (gentleware.com) e o popular MyEclipse 
(genuitec.com). (Mas infelizmente nenhuma das duas 
empresas retorna suas modificações e patches de volta 
ao projeto ArgoUML – ao contrário, por exemplo, de 
produtos comerciais baseados no Tomcat.)
 1 Ferramentas CASE (Computer 
Aided Software Engineering, ou 
Engenharia de Software Assistida 
por Computador) são softwares que 
permitem o desenho de diagramas 
representando projetos de software, 
de modo similar a plantas que 
representam projetos de casas.
 O grande diferencial do ArgoUML em relação a 
outras ferramentas CASE são os recursos 
cognitivos embutidos no produto. Em vez de ser 
apenas um diagramador, documentador e gerador 
de código, o ArgoUML procura orientar e auxiliar 
o desenvolvedor na construção dos modelos. 
Esta ajuda provém de várias regras (“críticas”) 
que são aplicadas continuamente, verificando 
inconsistências, erros comuns e sugerindo 
próximos passos. 
 Este artigo apresenta uma introdução ao 
ArgoUML, focando nos diagramas de casos de 
uso e diagramas de classes. Ao longo do artigo, 
quadros explicarão os conceitos básicos sobre 
estes diagramas, paraauxiliar o leitor com pouco 
conhecimento prévio de UML. Já 
desenvolvedores com conhecimentos sólidos de 
UML podem ignorar os quadros, e se concentrar 
apenas no texto principal, que descreve o uso da 
ferramenta.
 Será utilizado como exemplo uma hipotética aplicação 
de comércio eletrônico. Não tentaremos implementar 
esta aplicação, pois nosso enfoque não é realizar sua 
modelagem completa, mas sim demonstrar o uso do 
próprio ArgoUML. Também fornecemos dicas para o 
desenvolvedor Java, sobre como aplicar princípios de 
modelagem em aplicações reais. 
 No final do artigo são apresentadas algumas 
referências para quem desejar se aprofundar mais em 
UML e em áreas relacionadas. Mas, ao pesquisar sobre 
o assunto, tome cuidado. Há uma variação grande no 
“padrão” UML suportado por cada ferramenta do 
mercado e livros de Análise e Projeto Orientado a 
Objetos. As diferenças vão desde a notação gráfica e a 
terminologia adotadas, até a interpretação de alguns 
elementos visuais nos modelos UML. Os próprios 
criadores da UML, Booch, Rumbaugh e Jacobson, em 
seu livro “UML – Guia do Usuário” freqüentemente 
optam por usar nomes diferentes para elementos e 
diagramas em relação aos utilizados nos padrões da 
UML. Então você pode pensar que determinado recurso 
não é suportado pelo ArgoUML quando na verdade ele 
está lá, apenas com nome ou símbolo diferente.
Instalando e Configurando o ArgoUML 
 Para instalar o ArgoUML, basta acessar o site 
oficial do projeto, argouml.tigris.org e clicar no 
link junto à frase “Download latest stable 
release”. O resultado será o download de um 
arquivo chamado ArgoUML-0.22.zip (ou versão 
mais recente) que pode ser descompactado em 
qualquer diretório. 
 Ao contrário da maioria das aplicações Java 
fornecidas para download em formatos ZIP ou 
tar. gz, o ArgoUML não cria um subdiretório “raiz” 
na sua descompactação. Portanto é 
recomendável criar um diretório vazio e realizar a 
descompactação dentro deste diretório, para não 
ficar com arquivos do ArgoUML misturados com 
os de outras aplicações. 
 Para iniciar o ArgoUML, basta executar o seu 
pacote principal (argouml.jar), que já está 
configurado como um JAR executável: 
 java -jar c:javaargoumlargouml.jar
 Note que não é necessário configurar o classpath, 
pois o próprio JAR contém em seu Manifesto as 
referências aos demais JARs fornecidos com o 
ArgoUML. Noteainda que geralmente será possível 
executar o ArgoUML com um clique duplo no 
arquivo argouml.jar. Entretanto muitos utilitários de 
compactação de arquivos “roubam” a associação da 
extensão .jar com o JRE. Por isso, pode ser 
necessário criar manualmente um atalho em sua 
área de trabalho do Windows (ou lançador no Linux) 
que execute a linha de comando correta, indicada 
anteriormente.
 O ArgoUML então inicia com uma tela de “splash” que 
indica o progresso na carga dos vários módulos do 
programa, e em poucos segundos a janela principal 
estará disponível, com uma agradável surpresa: a 
maioria dos menus estará em português (mas 
português de Portugal; não existe ainda uma tradução 
para o português brasileiro). O ArgoUML irá detectar 
automaticamente as configurações regionais do 
usuário e usar o idioma local, empregando termos 
estranhos para nós no Brasil como “ficheiro” e 
“projecto”. Mas, para muitos usuários, será melhor do 
que usar a ferramenta inteiramente em inglês. 
 Vamos alterar algumas configurações padrões do 
ArgoUML para deixá-lo com aparência mais elegante. 
Selecione o menu Editar|Definições e, dentro do 
diálogo Definições, selecione a aba Aparência. Marque 
a caixa Smooth edges of diagram lines and text e 
escolha o seu look-and-feel preferido (Figura 1). Então 
reinicie o programa paraque as modificações tenham 
efeito.
Figura 1. Melhorando a aparência 
do ArgoUML
ArgoUML com Eclipse 
 Um alternativa é instalar o ArgoUML como 
um plug-in para o Eclipse. O site desse 
projeto é argoeclipse.tigris.org. Ele consiste 
de uma simples adaptação dos 
componentes de interface do ArgoUML em 
componentes de visualização e edição do 
Eclipse, além de uma integração com a 
estrutura de menus e barras de ferramentas 
do IDE. O resultado é bastante interessante 
e relativamente estável, considerando que o 
projeto é bem novo (foi iniciado no meio de 
2006 como parte do “Summer of Code”2 do 
Google). Veja o plug-in em ação na Figura 2.
Figura 2. ArgoUML como um plug-in Eclipse.
 2 O “Summer of Code” é um projeto do 
Google que fornece centenas de bolsas 
para estudantes interessados em atuar 
em projetos de software livre. Mais 
informações em code.google.com/soc/ 
 Embora as instruções no site do 
ArgoEclipse indiquem o uso do Update 
Manager para a instalação do plug-in, será 
suficiente baixar dois arquivos JAR 
(org.argouml_0.22.0.1.jar e "

Mais conteúdo relacionado

Semelhante a Argouml

Visualg
VisualgVisualg
Visualg 1231617089791929-2
Visualg 1231617089791929-2Visualg 1231617089791929-2
Visualg 1231617089791929-2
jaoozinhoqi123
 
Python e Django
Python e DjangoPython e Django
Python e Django
pugpe
 
Introdução a programação para plataforma iOS
Introdução a programação para plataforma iOSIntrodução a programação para plataforma iOS
Introdução a programação para plataforma iOS
Devmedia
 
ArgoUML
ArgoUMLArgoUML
Cucumber: um breve review
Cucumber: um breve reviewCucumber: um breve review
Cucumber: um breve review
Laís Berlatto
 
OpenOffice
OpenOfficeOpenOffice
OpenOffice
Tania Santos
 
Introdução ao Spider CPM (2)
Introdução ao Spider CPM (2)Introdução ao Spider CPM (2)
Introdução ao Spider CPM (2)
Peter Mello
 
Eclipse uml
Eclipse umlEclipse uml
Eclipse uml
Tiago Davi
 
Desenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em DartDesenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em Dart
Roger Ritter
 
Oracle 9i curso_completo
Oracle 9i curso_completoOracle 9i curso_completo
Oracle 9i curso_completo
Antonio Carlos Casali de Lima
 
Sap – stablility and abstract principle
Sap – stablility and abstract principleSap – stablility and abstract principle
Sap – stablility and abstract principle
Engenharia de Software Ágil
 
Apostila Visualg
Apostila VisualgApostila Visualg
Apostila Visualg
Nathanael Jorge
 
Javabahia applets novojavaplugin
Javabahia applets novojavapluginJavabahia applets novojavaplugin
Javabahia applets novojavaplugin
Serge Rehem
 
Linguagem de java
Linguagem de javaLinguagem de java
Linguagem de java
Genique
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
Momento da Informática
 
Applets - O Retorno: A Nova Geração do Java Plug-in
Applets - O Retorno: A Nova Geração do Java Plug-inApplets - O Retorno: A Nova Geração do Java Plug-in
Applets - O Retorno: A Nova Geração do Java Plug-in
Serge Rehem
 
Extração de Features Usando Compilação Condicional
Extração de Features Usando Compilação CondicionalExtração de Features Usando Compilação Condicional
Extração de Features Usando Compilação Condicional
Camilo Ribeiro
 
Processador de texto
Processador de textoProcessador de texto
Qual integration framework você deve usar parte 2
Qual integration framework você deve usar parte 2Qual integration framework você deve usar parte 2
Qual integration framework você deve usar parte 2
Jeison Barros
 

Semelhante a Argouml (20)

Visualg
VisualgVisualg
Visualg
 
Visualg 1231617089791929-2
Visualg 1231617089791929-2Visualg 1231617089791929-2
Visualg 1231617089791929-2
 
Python e Django
Python e DjangoPython e Django
Python e Django
 
Introdução a programação para plataforma iOS
Introdução a programação para plataforma iOSIntrodução a programação para plataforma iOS
Introdução a programação para plataforma iOS
 
ArgoUML
ArgoUMLArgoUML
ArgoUML
 
Cucumber: um breve review
Cucumber: um breve reviewCucumber: um breve review
Cucumber: um breve review
 
OpenOffice
OpenOfficeOpenOffice
OpenOffice
 
Introdução ao Spider CPM (2)
Introdução ao Spider CPM (2)Introdução ao Spider CPM (2)
Introdução ao Spider CPM (2)
 
Eclipse uml
Eclipse umlEclipse uml
Eclipse uml
 
Desenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em DartDesenvolvimento de aplicações web em Dart
Desenvolvimento de aplicações web em Dart
 
Oracle 9i curso_completo
Oracle 9i curso_completoOracle 9i curso_completo
Oracle 9i curso_completo
 
Sap – stablility and abstract principle
Sap – stablility and abstract principleSap – stablility and abstract principle
Sap – stablility and abstract principle
 
Apostila Visualg
Apostila VisualgApostila Visualg
Apostila Visualg
 
Javabahia applets novojavaplugin
Javabahia applets novojavapluginJavabahia applets novojavaplugin
Javabahia applets novojavaplugin
 
Linguagem de java
Linguagem de javaLinguagem de java
Linguagem de java
 
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdfDESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
DESENVOLVIMENTO DE SOFTWARE I_aula1-2.pdf
 
Applets - O Retorno: A Nova Geração do Java Plug-in
Applets - O Retorno: A Nova Geração do Java Plug-inApplets - O Retorno: A Nova Geração do Java Plug-in
Applets - O Retorno: A Nova Geração do Java Plug-in
 
Extração de Features Usando Compilação Condicional
Extração de Features Usando Compilação CondicionalExtração de Features Usando Compilação Condicional
Extração de Features Usando Compilação Condicional
 
Processador de texto
Processador de textoProcessador de texto
Processador de texto
 
Qual integration framework você deve usar parte 2
Qual integration framework você deve usar parte 2Qual integration framework você deve usar parte 2
Qual integration framework você deve usar parte 2
 

Argouml

  • 2. ARGOUML  O ArgoUMLé uma ferramenta CASE1 livre escrita inteiramente em Java, com suporte à maioria dos diagramas do padrão UML 1.4 e capaz de gerar código para várias linguagens como Java, PHP, Ruby e C++. O projeto é hospedado pelo Tigris (tigris.org), conhecido pelos desenvolvedores Java como o “lar” do sistema de controle de versões Subversion (além do Scarab e outros projetos).  O poder e a qualidade do ArgoUML é atestado por dois produtos comerciais que incorporam o seu código: o Poseidon UML (gentleware.com) e o popular MyEclipse (genuitec.com). (Mas infelizmente nenhuma das duas empresas retorna suas modificações e patches de volta ao projeto ArgoUML – ao contrário, por exemplo, de produtos comerciais baseados no Tomcat.)
  • 3.  1 Ferramentas CASE (Computer Aided Software Engineering, ou Engenharia de Software Assistida por Computador) são softwares que permitem o desenho de diagramas representando projetos de software, de modo similar a plantas que representam projetos de casas.
  • 4.  O grande diferencial do ArgoUML em relação a outras ferramentas CASE são os recursos cognitivos embutidos no produto. Em vez de ser apenas um diagramador, documentador e gerador de código, o ArgoUML procura orientar e auxiliar o desenvolvedor na construção dos modelos. Esta ajuda provém de várias regras (“críticas”) que são aplicadas continuamente, verificando inconsistências, erros comuns e sugerindo próximos passos.  Este artigo apresenta uma introdução ao ArgoUML, focando nos diagramas de casos de uso e diagramas de classes. Ao longo do artigo, quadros explicarão os conceitos básicos sobre estes diagramas, paraauxiliar o leitor com pouco conhecimento prévio de UML. Já desenvolvedores com conhecimentos sólidos de UML podem ignorar os quadros, e se concentrar apenas no texto principal, que descreve o uso da ferramenta.
  • 5.  Será utilizado como exemplo uma hipotética aplicação de comércio eletrônico. Não tentaremos implementar esta aplicação, pois nosso enfoque não é realizar sua modelagem completa, mas sim demonstrar o uso do próprio ArgoUML. Também fornecemos dicas para o desenvolvedor Java, sobre como aplicar princípios de modelagem em aplicações reais.  No final do artigo são apresentadas algumas referências para quem desejar se aprofundar mais em UML e em áreas relacionadas. Mas, ao pesquisar sobre o assunto, tome cuidado. Há uma variação grande no “padrão” UML suportado por cada ferramenta do mercado e livros de Análise e Projeto Orientado a Objetos. As diferenças vão desde a notação gráfica e a terminologia adotadas, até a interpretação de alguns elementos visuais nos modelos UML. Os próprios criadores da UML, Booch, Rumbaugh e Jacobson, em seu livro “UML – Guia do Usuário” freqüentemente optam por usar nomes diferentes para elementos e diagramas em relação aos utilizados nos padrões da UML. Então você pode pensar que determinado recurso não é suportado pelo ArgoUML quando na verdade ele está lá, apenas com nome ou símbolo diferente.
  • 6. Instalando e Configurando o ArgoUML  Para instalar o ArgoUML, basta acessar o site oficial do projeto, argouml.tigris.org e clicar no link junto à frase “Download latest stable release”. O resultado será o download de um arquivo chamado ArgoUML-0.22.zip (ou versão mais recente) que pode ser descompactado em qualquer diretório.  Ao contrário da maioria das aplicações Java fornecidas para download em formatos ZIP ou tar. gz, o ArgoUML não cria um subdiretório “raiz” na sua descompactação. Portanto é recomendável criar um diretório vazio e realizar a descompactação dentro deste diretório, para não ficar com arquivos do ArgoUML misturados com os de outras aplicações.  Para iniciar o ArgoUML, basta executar o seu pacote principal (argouml.jar), que já está configurado como um JAR executável:  java -jar c:javaargoumlargouml.jar
  • 7.  Note que não é necessário configurar o classpath, pois o próprio JAR contém em seu Manifesto as referências aos demais JARs fornecidos com o ArgoUML. Noteainda que geralmente será possível executar o ArgoUML com um clique duplo no arquivo argouml.jar. Entretanto muitos utilitários de compactação de arquivos “roubam” a associação da extensão .jar com o JRE. Por isso, pode ser necessário criar manualmente um atalho em sua área de trabalho do Windows (ou lançador no Linux) que execute a linha de comando correta, indicada anteriormente.
  • 8.  O ArgoUML então inicia com uma tela de “splash” que indica o progresso na carga dos vários módulos do programa, e em poucos segundos a janela principal estará disponível, com uma agradável surpresa: a maioria dos menus estará em português (mas português de Portugal; não existe ainda uma tradução para o português brasileiro). O ArgoUML irá detectar automaticamente as configurações regionais do usuário e usar o idioma local, empregando termos estranhos para nós no Brasil como “ficheiro” e “projecto”. Mas, para muitos usuários, será melhor do que usar a ferramenta inteiramente em inglês.  Vamos alterar algumas configurações padrões do ArgoUML para deixá-lo com aparência mais elegante. Selecione o menu Editar|Definições e, dentro do diálogo Definições, selecione a aba Aparência. Marque a caixa Smooth edges of diagram lines and text e escolha o seu look-and-feel preferido (Figura 1). Então reinicie o programa paraque as modificações tenham efeito.
  • 9. Figura 1. Melhorando a aparência do ArgoUML
  • 10. ArgoUML com Eclipse  Um alternativa é instalar o ArgoUML como um plug-in para o Eclipse. O site desse projeto é argoeclipse.tigris.org. Ele consiste de uma simples adaptação dos componentes de interface do ArgoUML em componentes de visualização e edição do Eclipse, além de uma integração com a estrutura de menus e barras de ferramentas do IDE. O resultado é bastante interessante e relativamente estável, considerando que o projeto é bem novo (foi iniciado no meio de 2006 como parte do “Summer of Code”2 do Google). Veja o plug-in em ação na Figura 2.
  • 11. Figura 2. ArgoUML como um plug-in Eclipse.
  • 12.  2 O “Summer of Code” é um projeto do Google que fornece centenas de bolsas para estudantes interessados em atuar em projetos de software livre. Mais informações em code.google.com/soc/  Embora as instruções no site do ArgoEclipse indiquem o uso do Update Manager para a instalação do plug-in, será suficiente baixar dois arquivos JAR (org.argouml_0.22.0.1.jar e "