dwww Home | Show directory contents | Find package

<FILENAME filename="index.html"><html><head><title>Manual do Umbrello UML Modeller</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="description" content="O Umbrello UML Modeller auxiliar o processo de desenvolvimento de software através do uso do padrão industrial da Linguagem de Modelagem Unificada (UML) para permitir-lhe criar diagramas para o desenvolvimento e documentação de seus sistemas."><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="next" href="introduction.html" title="Capítulo 1. Introdução"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Manual do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="introduction.html">Próxima</a></td></tr></table></div><div id="contentBody"><div lang="pt-BR" class="book"><div class="titlepage"><div><div><h1 class="title"><a name="Umbrello"></a>Manual do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h1></div><div><div class="authorgroup"><h3 class="corpauthor">Autores do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h3><span class="othercredit"><span class="contrib">Tradução</span>: <span class="firstname">Marcus</span> <span class="surname">Gama</span><br></span></div></div><div>revisão <span class="releaseinfo">2.11.0 (<span class="date">01/06/2013</span>)</span></div><div><p class="copyright">Copyright © 2001 Paul Hensgen</p></div><div><p class="copyright">Copyright © 2002, 2003 Autores do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></p></div><div><div><div class="abstract"><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> auxiliar o processo de desenvolvimento de software através do uso do padrão industrial da Linguagem de Modelagem Unificada (<acronym class="acronym">UML</acronym>) para permitir-lhe criar diagramas para o desenvolvimento e documentação de seus sistemas. </p></div></div></div></div><hr></div><div class="toc"><p><b>Índice</b></p><dl class="toc"><dt><span class="chapter"><a href="introduction.html">1. Introdução</a></span></dt><dt><span class="chapter"><a href="uml-basics.html">2. Fundamentos do <acronym class="acronym">UML</acronym></a></span></dt><dd><dl><dt><span class="sect1"><a href="uml-basics.html#about-uml">Sobre o <acronym class="acronym">UML</acronym></a></span></dt><dt><span class="sect1"><a href="uml-elements.html">Elementos <acronym class="acronym">UML</acronym></a></span></dt><dd><dl><dt><span class="sect2"><a href="uml-elements.html#use-case-diagram">Diagrama de Caso de Uso</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#class-diagram">Diagrama de Classe</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#sequence-diagram">Diagramas de Sequência</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#collaboration-diagram">Diagramas de Colaboração</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#state-diagram">Diagrama de Estado</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#activity-diagram">Diagrama de Atividade</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#helper-elements">Elementos Auxiliares</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#component-diagram">Diagramas de Componente</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#deployment-diagram">Diagramas de Distribuição</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#entity-relationship-diagram">Diagramas de Entidade-Associação</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#extended-entity-relationship-concepts">Conceitos Extendidos dos Diagramas de Entidade-Associação (ER)</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="working-with-umbrello.html">3. Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></a></span></dt><dd><dl><dt><span class="sect1"><a href="working-with-umbrello.html#user-interface">Interface do usuário</a></span></dt><dd><dl><dt><span class="sect2"><a href="working-with-umbrello.html#tree-view">Visão de Árvore</a></span></dt><dt><span class="sect2"><a href="working-with-umbrello.html#documentation-window">Janela de histórico de comandos e documentação</a></span></dt><dt><span class="sect2"><a href="working-with-umbrello.html#work-area">Área de Trabalho</a></span></dt></dl></dd><dt><span class="sect1"><a href="load-save.html">Criando, Carregando e Salvando Modelos</a></span></dt><dd><dl><dt><span class="sect2"><a href="load-save.html#new-model">Novo Modelo</a></span></dt><dt><span class="sect2"><a href="load-save.html#save-model">Salvar Modelo</a></span></dt><dt><span class="sect2"><a href="load-save.html#load-model">Carregar Modelo</a></span></dt></dl></dd><dt><span class="sect1"><a href="edit-model.html">Editando Modelos</a></span></dt><dt><span class="sect1"><a href="add-remove-diagrams.html">Adicionando e Removendo Diagramas</a></span></dt><dd><dl><dt><span class="sect2"><a href="add-remove-diagrams.html#create-diagram">Criando Diagramas</a></span></dt><dt><span class="sect2"><a href="add-remove-diagrams.html#remove-diagram">Removendo Diagramas</a></span></dt><dt><span class="sect2"><a href="add-remove-diagrams.html#rename-diagram">Renomeando Diagramas</a></span></dt></dl></dd><dt><span class="sect1"><a href="edit-diagram.html">Editando Diagramas</a></span></dt><dd><dl><dt><span class="sect2"><a href="edit-diagram.html#insert-elements">Inserir Elementos</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#delete-elements">Excluindo Elementos</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#edit-elements">Editando Elementos</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#edit-classes">Editando Classes</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#associations">Associações</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#notes">Notas, Texto e Caixas</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="code-import-generation.html">4. Importação de Código e Geração de Código</a></span></dt><dd><dl><dt><span class="sect1"><a href="code-import-generation.html#code-generation">Geração de Código</a></span></dt><dd><dl><dt><span class="sect2"><a href="code-import-generation.html#generate-code">Gerando Código</a></span></dt></dl></dd><dt><span class="sect1"><a href="code-import.html">Importar Código</a></span></dt></dl></dd><dt><span class="chapter"><a href="other-features.html">5. Outros Recursos</a></span></dt><dd><dl><dt><span class="sect1"><a href="other-features.html#idm1026">Outros Recursos do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></a></span></dt><dd><dl><dt><span class="sect2"><a href="other-features.html#copying-as-png">Copiar objetos como imagens PNG</a></span></dt><dt><span class="sect2"><a href="other-features.html#export-as-png">Exportando para uma Imagem</a></span></dt><dt><span class="sect2"><a href="other-features.html#printing">Imprimindo</a></span></dt><dt><span class="sect2"><a href="other-features.html#logical-folders">Pastas Lógicas</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="authors.html">6. Autores e histórico</a></span></dt><dt><span class="chapter"><a href="copyright.html">7. Direitos autorais</a></span></dt></dl></div><FILENAME filename="introduction.html"><html><head><title>Capítulo 1. Introdução</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="prev" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="next" href="uml-basics.html" title="Capítulo 2. Fundamentos do UML"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Introdução</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="index.html">Anterior</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="uml-basics.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="introduction"></a>Capítulo 1. Introdução</h1></div></div></div><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> é uma ferramenta de diagrama <acronym class="acronym">UML</acronym> que pode auxiliá-lo no processo de desenvolvimento de software. Especialmente durante as fases de análise e desenho, o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> lhe auxilia a obter um produto de alta qualidade. A <acronym class="acronym">UML</acronym> pode também ser usada para documentar o desenho de seu software para auxiliá-lo e seus companheiros de desenvolvimento. </p><p>Ter um bom modelo de seu software é a melhor maneira de comunicar-se com outros desenvolvedores que estão trabalhando no projeto e com seus clientes. Um bom modelo é extremamente importante para projetos de tamanho médio e grande, mas é também muito útil para projetos pequenos. Caso esteja trabalhando num projeto pequeno, de um desenvolvedor, você se beneficiará com um bom modelo porque ele lhe dará uma visão geral que lhe auxiliará a codificar as coisas da maneira correta na primeira vez. </p><p><acronym class="acronym">UML</acronym> é uma linguagem de diagramação usada para descrever modelos. Você pode representar suas ideias em <acronym class="acronym">UML</acronym> usando diferentes tipos de diagramas. O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> 2.11 tem suporte aos seguintes tipos: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Diagrama de Classe</p></li><li class="listitem"><p>Diagrama de Sequência</p></li><li class="listitem"><p>Diagrama de Colaboração</p></li><li class="listitem"><p>Diagrama de Caso de Uso</p></li><li class="listitem"><p>Diagrama de Estado</p></li><li class="listitem"><p>Diagrama de Atividade</p></li><li class="listitem"><p>Diagrama do componente</p></li><li class="listitem"><p>Diagrama de Distribuição</p></li><li class="listitem"><p>Diagrama de relacionamento de entidade</p></li></ul></div><p>Mais informações sobre <acronym class="acronym">UML</acronym> podem ser encontradas no site web da <a class="ulink" href="http://www.omg.org" target="_top"> <acronym class="acronym">OMG</acronym>, http://www.omg.org.</a>, criadora do padrão <acronym class="acronym">UML</acronym>. </p><p>Nós esperamos que você goste do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> e que ele lhe auxilie a criar software de alta qualidade. O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> é um Software Livre e disponível gratuitamente, e a única coisa que lhe pedimos é reportar qualquer erro, problemas ou sugestões para os desenvolvedores do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> em <code class="email">(umbrello-devel AT kde.org)</code> ou <a class="ulink" href="http://bugs.kde.org" target="_top">http://bugs.kde.org</a>. </p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="index.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="uml-basics.html">Próxima</a></td></tr><tr><td class="prevCell">Manual do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </td><td class="upCell"> </td><td class="nextCell"> Fundamentos do <acronym class="acronym">UML</acronym></td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME><FILENAME filename="uml-basics.html"><html><head><title>Capítulo 2. Fundamentos do UML</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="prev" href="introduction.html" title="Capítulo 1. Introdução"><link rel="next" href="uml-elements.html" title="Elementos UML"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Fundamentos do <acronym class="acronym">UML</acronym></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="introduction.html">Anterior</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="uml-elements.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="uml-basics"></a>Capítulo 2. Fundamentos do <acronym class="acronym">UML</acronym></h1></div></div></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="about-uml"></a>Sobre o <acronym class="acronym">UML</acronym></h2></div></div></div><p>Este capítulo lhe fornecerá uma visão rápida dos fundamentos da <acronym class="acronym">UML</acronym>. Tenha em mente que isto não é um tutorial detalhado sobre <acronym class="acronym">UML</acronym>, mas apenas uma rápida introdução a <acronym class="acronym">UML</acronym> que pode ser lida como um tutorial <acronym class="acronym">UML</acronym>. Se você gostaria de aprender mais sobre a Linguagem de Modelagem Unificada, ou generalidades sobre análise e desenho de software, consulte um dos muitos livros disponíveis sobre o tópico. Existem também muitos tutoriais na Internet os quais você pode usar como ponto de partida. </p><p>A Unified Modelling Language (<acronym class="acronym">UML</acronym>) é uma linguagem ou notação de diagramas para especificar, visualizar e documentar modelos de 'software' orientados por objetos. O <acronym class="acronym">UML</acronym> não é um método de desenvolvimento, o que significa que não lhe diz o que fazer primeiro ou o que fazer depois ou como desenhar o seu sistema, mas ajuda-o a visualizar o seu desenho e a comunicar com os outros. O <acronym class="acronym">UML</acronym> é controlado pelo Object Management Group (<acronym class="acronym">OMG</acronym>) e é a norma da indústria para descrever graficamente o 'software'. </p><p>A <acronym class="acronym">UML</acronym> está desenhado para o desenho de 'software' orientado por objetos e tem uma utilização limitada para outros paradigmas de programação. </p><p>A <acronym class="acronym">UML</acronym> é composta por muitos elementos de modelo que representam as diferentes partes de um sistema de software. Os elementos <acronym class="acronym">UML</acronym> são usados para criar diagramas, que representam um determinada parte, ou um ponto de vista do sistema. Os seguintes tipos de diagramas são suportados pelo <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#use-case-diagram" title="Diagrama de Caso de Uso">Diagrama de Caso de Uso</a></em></span> mostra atores (pessoas ou outros usuários do sistema), casos de uso (os cenários onde eles usam o sistema), e seus relacionamentos</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#class-diagram" title="Diagrama de Classe">Diagrama de Classe</a></em></span> mostra classes e os relacionamentos entre elas</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#sequence-diagram" title="Diagramas de Sequência">Diagrama de Sequência</a></em></span> mostra objetos e uma sequência das chamadas do método feitas para outros objetos.</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#collaboration-diagram" title="Diagramas de Colaboração">Diagrama de Colaboração</a></em></span> mostra objetos e seus relacionamentos, colocando ênfase nos objetos que participam na troca de mensagens</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#state-diagram" title="Diagrama de Estado">Diagrama de Estado</a></em></span> mostra estados, mudanças de estado e eventos num objeto ou uma parte do sistema</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#activity-diagram" title="Diagrama de Atividade">Diagrama de Atividade</a></em></span> mostra atividades e as mudanças de uma atividade para outra com os eventos ocorridos em alguma parte do sistema</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#component-diagram" title="Diagramas de Componente">Diagrama de Componente</a></em></span> mostra os componentes de programação de alto nível (como KParts ou Java Beans).</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#deployment-diagram" title="Diagramas de Distribuição">Diagrama de Distribuição</a></em></span> mostra as instâncias dos componentes e seus relacionamentos.</p></li><li class="listitem"><p>Os <span class="emphasis"><em><a class="link" href="uml-elements.html#entity-relationship-diagram" title="Diagramas de Entidade-Associação">Diagramas de Entidade-Associação</a></em></span> mostram os dados e as relações e as restrições entre os dados.</p></li></ul></div></div><FILENAME filename="uml-elements.html"><html><head><title>Elementos UML</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="uml-basics.html" title="Capítulo 2. Fundamentos do UML"><link rel="prev" href="uml-basics.html" title="Capítulo 2. Fundamentos do UML"><link rel="next" href="working-with-umbrello.html" title="Capítulo 3. Trabalhando com o Umbrello UML Modeller"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Elementos <acronym class="acronym">UML</acronym></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="uml-basics.html">Anterior</a></td><td class="upCell">Fundamentos do <acronym class="acronym">UML</acronym></td><td class="nextCell"><a accesskey="n" href="working-with-umbrello.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="uml-elements"></a>Elementos <acronym class="acronym">UML</acronym></h2></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="use-case-diagram"></a>Diagrama de Caso de Uso</h3></div></div></div><p>Diagramas de Caso de Uso descrevem relacionamentos e dependências entre um grupo de <span class="emphasis"><em>Caso de Uso</em></span> e os Atores participantes no processo.</p><p>É importante observar que Diagramas de Caso de Uso não são adequados para representar o desenho, e não podem descrever os mecanismos internos de um sistema. Diagramas de Caso de Uso são feitos para facilitar a comunicação com os futuros usuários do sistema, e com o cliente, e são especialmente úteis para determinar os recursos necessários que o sistema deve ter. Diagramas de Caso de Uso dizem <span class="emphasis"><em>o quê</em></span> o sistema deve fazer, mas não fazem — e não podem — especificar <span class="emphasis"><em>como</em></span> isto será conseguido.</p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="use-case-diagram.png" alt="O Umbrello UML Modeller mostrando um Diagrama de Caso de Uso"><div class="caption"><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando um Diagrama de Caso de Uso </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="use-case"></a>Caso de Uso</h4></div></div></div><p>Um <span class="emphasis"><em>Caso de Uso</em></span> descreve — do ponto de vista dos atores — um grupo de atividades num sistema que produz um resultado concreto e tangível.</p><p>Casos de Uso são descrições de interações típicas entre os usuários de um sistema e o sistema propriamente dito. Eles representam a interface externa do sistema e especificam um conjunto de exigências do que o sistema deve fazer (lembre-se: somente o quê, não como). </p><p>Quando trabalhar com Casos de Uso, é importante lembrar-se de algumas regras simples: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Cada Caso de Uso está relacionado com no mínimo um ator</p></li><li class="listitem"><p>Cada Caso de Uso possui um iniciador (isto é um ator)</p></li><li class="listitem"><p>Cada Caso de Uso liga-se a um resultado relevante (um resultado com <span class="quote">“<span class="quote">valor de negócio</span>”</span>)</p></li></ul></div><p>
</p><p>Casos de Uso também podem ter relacionamentos com outros Casos de Uso. Os três tipos mais comuns de relacionamento entre Casos de Uso são:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>&lt;&lt;inclui-se&gt;&gt;</em></span> que especifica que um Caso de Uso toma lugar <span class="emphasis"><em>dentro</em></span> de outro Caso de Uso</p></li><li class="listitem"><p><span class="emphasis"><em>&lt;&lt;estende&gt;&gt;</em></span> que especifica que em determinadas situações, ou em algum ponto (chamado um ponto de extensão) um Caso de Uso será estendido por outro.</p></li><li class="listitem"><p><span class="emphasis"><em>Generalização</em></span> especifica que um Caso de Uso herda as características do <span class="quote">“<span class="quote">Super</span>”</span> Caso de Uso, e pode sobrepor algumas delas ou adicionar novas de maneira semelhante a herança entre classes. </p></li></ul></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="actor"></a>Ator</h4></div></div></div><p>Um ator é uma entidade externa (fora do sistema) que interage com o sistema participando (e frequentemente iniciando) um Caso de Uso. Atores podem ser pessoas reais (por exemplo usuários do sistema), outro sistema de computador ou eventos externos. </p><p>Atores não representam as pessoa <span class="emphasis"><em>física</em></span> ou sistemas, mas sua <span class="emphasis"><em>regra</em></span>. Isto significa que quando uma pessoa interage com o sistema de diferentes maneiras (assumindo diferentes regras) ela será representada por diversos atores. Por exemplo um pessoa que fornece suporte ao cliente por telefone e recebe ordens do cliente para o sistema pode ser representado por um ator da <span class="quote">“<span class="quote">Equipe de Suporte</span>”</span> e um ator <span class="quote">“<span class="quote">Representante de Vendas</span>”</span> </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="use-case-description"></a>Descrição do Caso de Uso</h4></div></div></div><p>Descrição do Caso de Uso são narrativas de texto do Caso de Uso. Elas usualmente tomam a forma de uma nota ou um documento que é de alguma maneira ligado ao Caso de Uso, e explana o processo ou atividades que tomarão lugar no Caso de Uso. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="class-diagram"></a>Diagrama de Classe</h3></div></div></div><p>Diagramas de Classe mostram as diferentes classes que fazem um sistema e como elas se relacionam. Os Diagramas de Classe são chamados diagramas <span class="quote">“<span class="quote">estáticos</span>”</span> porque mostram as classes, com seus métodos e atributos bem como os relacionamentos estáticos entre elas: quais classes <span class="quote">“<span class="quote">conhecem</span>”</span> quais classes ou quais classes <span class="quote">“<span class="quote">são parte</span>”</span> de outras classes, mas não mostram a troca de mensagens entre elas. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="class-diagram.png" alt="O Umbrello UML Modeller mostrando um Diagrama de Classe"><div class="caption"><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando um Diagrama de Classe </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class"></a>Classe</h4></div></div></div><p>Um Classe define os atributos e os métodos de um conjunto de objetos. Todos os objetos desta classe (instâncias desta classe) compartilham o mesmo comportamento, e possuem o mesmo conjunto de atributos (cada objeto possui seu próprio conjunto). O termo <span class="quote">“<span class="quote">Tipo</span>”</span> é algumas vezes usado ao invés de Classe, mas é importante mencionar que estes dois termos não são a mesma coisa, e Tipo é um termo mais genérico. </p><p>Em <acronym class="acronym">UML</acronym> Classes são representadas por retângulos, com o nome da classe, e podem também mostrar os atributos e operações da classe em dois outros <span class="quote">“<span class="quote">compartimentos</span>”</span> dentro do retângulo. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="class.png" alt="Representação visual de uma Classe em UML"><div class="caption"><p>Representação visual de uma Classe em <acronym class="acronym">UML</acronym> </p></div></div></div><p>
</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="attribute"></a>Atributos</h5></div></div></div><p>Na <acronym class="acronym">UML</acronym>, atributos são mostrados com pelo menos seu nome, e podem também mostrar seu tipo, valor inicial e outras propriedades. Atributos podem também ser exibidos com sua visibilidade: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><code class="literal">+</code> indica atributos <span class="emphasis"><em>públicos</em></span></p></li><li class="listitem"><p><code class="literal">#</code> indica atributos <span class="emphasis"><em>protegidos</em></span></p></li><li class="listitem"><p><code class="literal">-</code> indica atributos <span class="emphasis"><em>privados</em></span></p></li></ul></div></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="operation"></a>Operações</h5></div></div></div><p>Operações (métodos) também são exibidos com pelo menos seu nome, e podem também mostrar seus parâmetros e valores de retorno. Operações podem, como os Atributos, mostras sua visibilidade: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><code class="literal">+</code> indica operações <span class="emphasis"><em>públicas</em></span></p></li><li class="listitem"><p><code class="literal">#</code> indica operações <span class="emphasis"><em>protegidas</em></span></p></li><li class="listitem"><p><code class="literal">-</code> indica operações <span class="emphasis"><em>privadas</em></span></p></li></ul></div><p>
</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="templates"></a>Modelos</h5></div></div></div><p>Classes podem ter modelos, um valor que é usado para uma classe ou tipo não especificado. O tipo de modelo é especificado quando uma classe é iniciada (isto é um objeto é criado). Modelos existem no C++ moderno e foram introduzidos no Java 1.5 onde eles são chamados de Genéricos. </p></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-associations"></a>Associações de Classe</h4></div></div></div><p>Classes podem relacionar-se (ser associada com) com outras de diferentes maneiras:</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="generalization"></a>Generalização</h5></div></div></div><p>A herança é um dos conceitos fundamentais da programação orientada por objetos, nos quais uma classe <span class="quote">“<span class="quote">ganha</span>”</span> todos os atributos e operações da classe que herda, podendo sobrepor ou modificar algumas delas, assim como adicionar mais atributos ou operações próprias.</p><p>EM <acronym class="acronym">UML</acronym>, uma associação <span class="emphasis"><em>Generalização</em></span> entre duas classes coloca-as numa hierarquia representando o conceito de herança de uma classe derivada de uma classe base. Em <acronym class="acronym">UML</acronym>, Generalizações são representadas por uma linha conectando duas classes, com uma seta no lado da classe base. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="generalization.png" alt="Representação visual de uma generalização em UML"><div class="caption"><p>Representação visual de uma generalização em <acronym class="acronym">UML</acronym> </p></div></div></div><p>
</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="uml-associations"></a>Associações</h5></div></div></div><p>Um associação representa um relacionamento entre classes, e fornece a semântica comum e a estrutura para muitos tipos de <span class="quote">“<span class="quote">conexões</span>”</span> entre objetos.</p><p>Associações são o mecanismo que permite objetos comunicarem-se entre si. Elas descrevem a conexão entre diferentes classes (a conexão entre os objetos atuais é chamada conexão do objeto, ou <span class="emphasis"><em>link</em></span>. </p><p>Associações podem ter um regra que especifica o propósito da associação e pode ser uni ou bidirecional (indicando se os dois objetos participantes do relacionamento podem mandar mensagens para o outro, ou se apenas um deles sabe sobre o outro). Cada ponta da associação também possui uma valor de multiplicidade, que dita como muitos objetos neste lado da associação pode relacionar-se com o outro lado. </p><p>Em <acronym class="acronym">UML</acronym>, associações são representadas como linhas conectando as classes participantes do relacionamento, e podem também mostrar a regra e a multiplicidade de cada um dos participantes. A multiplicidade é exibida como um intervalo [min...máx] de valores não negativos, com uma estrela (<code class="literal">*</code>) no lado máximo representando infinito. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="association.png" alt="Representação visual de uma Associação em UML"><div class="caption"><p>Representação visual de uma Associação em <acronym class="acronym">UML</acronym> </p></div></div></div><p>
</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="aggregation"></a>Agregação</h5></div></div></div><p>Agregações são um tipo especial de associação no qual as duas classes participantes não possuem em nível igual, mas fazem um relacionamento <span class="quote">“<span class="quote">todo-parte</span>”</span>. Uma Agregação descreve como a classe que possui a regra do todo, é composta (tem) de outras classes, que possuem a regra das partes. Para Agregações, a classe que age como o todo sempre tem uma multiplicidade de um. </p><p>Em <acronym class="acronym">UML</acronym>, Agregações são representadas por uma associação que mostra um romboide no lado do todo. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="aggregation.png" alt="Representação visual de um relacionamento Agregação em UML"><div class="caption"><p>Representação visual de um relacionamento Agregação em <acronym class="acronym">UML</acronym> </p></div></div></div><p>
</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="composition"></a>Composição</h5></div></div></div><p>Composições são associações que representam agregações <span class="emphasis"><em>muito fortes</em></span>. Isto significa que Composições formam relacionamentos todo-parte também, mas o relacionamento é tão forte que as partes não pode existir independentes. Elas existem somente dentro do todo, e se o todo é destruído as partes morrem também.</p><p>Em <acronym class="acronym">UML</acronym>, Composições são representadas por um romboide sólido no lado do todo. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="composition.png" alt="Representação visual de um relacionamento Composição em UML"></div></div></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="other-class-diagram-items"></a>Outros Itens do Diagrama de Classe</h4></div></div></div><p>Diagramas de Classe podem conter diversos outros itens além das classes.</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="interfaces"></a>Interfaces</h5></div></div></div><p>Interfaces are abstract classes which means instances cannot be directly created of them. They can contain operations but no attributes. Classes can inherit from interfaces (through a realisation association) and instances can then be made of these classes.</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="datatype"></a>Tipos de dados</h5></div></div></div><p>Tipos de dados são primitivos uma vez que são tipicamente construídos numa linguagem de programação. Exemplos comuns são inteiros e lógicos. Eles não podem ser relacionados a classes, mas as classes podem se relacionar com eles.</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="enum"></a>Enumerações</h5></div></div></div><p>Enumerações são uma lista simples de valores. Um exemplo típico é uma enumeração para dias da semana. As opções de uma enumeração são chamadas Literais de Enumeração. Como tipos de dados, elas não podem ter relacionamentos para classes, mas as classes podem relacionar-se com elas.</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="package"></a>Pacotes</h5></div></div></div><p>Pacotes representam um espaço de nomes numa linguagem de programação. Num diagrama eles são usados para representar partes de um sistema que contém mais de uma classe, talvez centenas de classes.</p></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="sequence-diagram"></a>Diagramas de Sequência</h3></div></div></div><p>Diagramas de Sequência mostram a troca de mensagens (isto é chamada de método) entre diversos Objetos, numa situação específica e delimitada no tempo. Objetos são instâncias de classes. Diagramas de Sequência colocam ênfase especial na ordem e nos momentos nos quais mensagens para os objetos são enviadas.</p><p>Em Diagramas de Sequência objetos são representados através de linhas verticais tracejadas, com o nome do Objeto no topo. O eixo do tempo é também vertical, aumentando para baixo, de modo que as mensagens são enviadas de um Objeto para outro na forma de setas com a operação e os nomes dos parâmetros. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="sequence-diagram.png" alt="O Umbrello UML Modeller mostrando um Diagrama de Sequência"><div class="caption"><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando um Diagrama de Sequência </p></div></div></div><p>Mensagens pode ser síncronas, o tipo normal de mensagem de chamada onde o controle é passado para o objeto chamado até o método ter terminado sua execução, ou assíncronas onde o controle é passado diretamente para o objeto chamado. Mensagens síncronas possui uma caixa vertical no lado do objeto chamado para mostrar o controle do fluxo do programa.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="collaboration-diagram"></a>Diagramas de Colaboração</h3></div></div></div><p>Diagramas de Colaboração mostram as interações que ocorrem entre os objetos participantes numa situação específica. Isto é mais ou menos a mesma informação mostrada pelos Diagramas de Sequência, mas neste a ênfase é colocada em como as interações ocorrem no tempo, enquanto os Diagramas de Colaboração colocam os relacionamentos entre os objetos e sua topologia em destaque.</p><p>Em Diagramas de Colaboração as mensagens enviadas de um objeto para outro são representadas por setas, mostrando o nome da mensagem, parâmetros, e a sequência da mensagem. Diagramas de Colaboração são especialmente indicados para mostrar um fluxo ou situação específica do programa e são um dos melhores tipos de diagrama para rapidamente demonstrar ou explanar um processo na lógica do programa. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="collaboration-diagram.png" alt="O Umbrello UML Modeller mostrando um Diagrama de Colaboração"><div class="caption"><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando um Diagrama de Colaboração </p></div></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="state-diagram"></a>Diagrama de Estado</h3></div></div></div><p>Diagramas de Estado mostram os diferentes estados de um Objeto durante sua vida, e o estímulo que faz com que o Objeto mude seu estado. </p><p>Diagramas de Estado veem Objetos como <span class="emphasis"><em>máquinas de estado</em></span> ou automatismos finitos que podem ser um de um conjunto de estados finitos e que podem mudar seu estado através de um de um conjunto finito de estímulos. Por exemplo um tipo de Objeto <span class="emphasis"><em>ServidorRede</em></span> pode estar em um dos seguintes estados durante sua vida: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Pronto</p></li><li class="listitem"><p>Ouvindo</p></li><li class="listitem"><p>Trabalhando</p></li><li class="listitem"><p>Parado</p></li></ul></div><p>e os eventos que podem fazer com que o Objeto mude de estado são</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Objeto é criado</p></li><li class="listitem"><p>Objeto recebe mensagem ouvir</p></li><li class="listitem"><p>Um Cliente solicita uma conexão através da rede</p></li><li class="listitem"><p>Um Cliente termina um pedido</p></li><li class="listitem"><p>O pedido é executado e terminado</p></li><li class="listitem"><p>Objeto recebe mensagem parar</p></li><li class="listitem"><p>etc</p></li></ul></div><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="state-diagram.png" alt="O Umbrello UML Modeller mostrando um Diagrama de Estado"><div class="caption"><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando um Diagrama de Estado </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="state"></a>Estado</h4></div></div></div><p>Estados são os blocos construídos dos Diagramas de Estado. Um Estado pertence a exatamente uma classe e representa um resumo dos valores dos atributos que uma classe pode tomar. Um Estado <acronym class="acronym">UML</acronym> descreve o estado interno de um objeto para uma classe em particular </p><p>Observe que nem toda mudança em um dos atributos de um objeto pode ser representada por um Estado mas somente aquelas mudanças que podem afetar significativamente o trabalho do objeto</p><p>Existem dois tipos especiais de Estados: Inicial e Final. Eles são especiais porque nenhum evento pode fazer com que um Objeto retorne para seu estado Inicial, e da mesma maneira nenhum evento pode tirar um Objeto de seu estado Final uma vez que ele já o tenha alcançado. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="activity-diagram"></a>Diagrama de Atividade</h3></div></div></div><p>O Diagrama de Atividade descreve a sequência de atividades num sistema com a ajuda as Atividades. Diagramas de Atividade são uma forma especial de Diagramas de Estado, que somente (ou principalmente) contém Atividades. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="activity-diagram.png" alt="O Umbrello UML Modeller mostrando um Diagrama de Atividade"><div class="caption"><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando um Diagrama de Atividade </p></div></div></div><p>
</p><p>Diagramas de Atividade são similares as Diagramas de Fluxo de procedimentos, com a diferença de que todas as Atividades são claramente anexas aos Objetos.</p><p>Diagramas de Atividade são sempre associados a um <span class="emphasis"><em>Classe</em></span>, uma <span class="emphasis"><em>Operação</em></span> ou um <span class="emphasis"><em>Caso de Uso</em></span>.</p><p>Diagramas de Atividade suportam Atividades sequenciais bem como paralelas. A execução paralela é representada pelos ícones Forquilha/Esperar, e para as Atividades executadas em paralelo, não é importante a ordem na qual elas se executam (elas podem ser executadas ao mesmo tempo ou uma após a outra).</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="activity"></a>Atividade</h4></div></div></div><p>Uma Atividade é um passo simples num processo. Uma Atividade é um estado no sistema com atividade interna e, pelo menos, uma transição de saída. Atividades podem também ter mais de uma transição de saída se elas possuem condições diferentes. </p><p>Atividades podem formar hierarquias, isto significa que uma Atividade pode ser composta por diversas Atividades em <span class="quote">“<span class="quote">detalhe</span>”</span>, na qual as transições de entrada e saída devem corresponder às transições de entrada e saída do diagrama de detalhe. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="helper-elements"></a>Elementos Auxiliares</h3></div></div></div><p>Existem dois elementos em <acronym class="acronym">UML</acronym> que não possuem nenhum valor real semântico para o modelo, mas auxiliam a elucidar partes do diagrama. Estes elementos são </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Linhas de texto</p></li><li class="listitem"><p>Notas de Texto e âncoras</p></li><li class="listitem"><p>Caixas</p></li></ul></div><p>Linhas de texto são úteis para adicionar informações curtas de texto ao diagrama. São textos livres e não possuem nenhum significado para o Modelo propriamente dito. </p><p>Notas são úteis para adicionar informações mais detalhadas sobre um objeto ou situação específica. Elas possuem a grande vantagem de poderem ser ancoradas a Elementos <acronym class="acronym">UML</acronym> para mostrar que a nota <span class="quote">“<span class="quote">pertence</span>”</span> a um objeto específico ou situação. </p><p>Caixas são retângulos de forma livre que podem ser usados para agrupar itens tornando os diagramas mais legíveis. Eles não possuem nenhum significado lógico no modelo.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="component-diagram"></a>Diagramas de Componente</h3></div></div></div><p>Diagramas de Componente mostram os componentes do software (sejam componentes de tecnologias como KParts, componentes CORBA ou Java Beans ou apenas seções do sistema que são claramente distintas) e os artefatos de que eles são feitos como arquivos de código-fonte, bibliotecas de programação ou tabelas de bancos de dados relacionais.</p><p>Componentes pode possui interfaces (isto é classes abstratas com operações) que permitem associações entre componentes.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-diagram"></a>Diagramas de Distribuição</h3></div></div></div><p>Diagramas de distribuição mostram as instâncias dos componentes de tempo de execução e suas associações. Eles incluem Nós que são recursos físicos, tipicamente um computador simples. Eles também mostram interfaces e objetos (instâncias da classe).</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="entity-relationship-diagram"></a>Diagramas de Entidade-Associação</h3></div></div></div><p>Os Diagramas de Entidade-Associação (Diagramas ER) mostram o desenho conceitual dos aplicativos de bancos de dados. Eles definem as várias entidades (conceitos) no sistema de informação e as relações e restrições entre eles. Uma extensão dos Diagramas Entidade-Associação, chamada 'Diagramas Extendidos Entidade-Associação' (EER) são usados para incorporar as técnicas de desenho Orientado por Objetos nos diagramas ER. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="entity-relationship-diagram.png" alt="O Umbrello mostrando um Diagrama de Entidade-Associação"><div class="caption"><p>O Umbrello mostrando um Diagrama de Entidade-Associação </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="entity"></a>Entidade</h4></div></div></div><p>Uma <span class="emphasis"><em>Entidade</em></span> é qualquer conceito no mundo real com uma existência independente. Poderá ser um objeto com uma existência física (exemplo, Computador, Robô) ou poderá ser um objeto com uma existência conceitual ( p.ex.: Curso Universitário). Cada entidade possui um conjunto de atributos que descrevem as propriedades da Entidade.</p><p><span class="emphasis"><em>Nota:</em></span> Não existem ainda notações normalizadas para desenhar Diagramas ER. Os diferentes textos sobre este assunto usam notações diferentes. Os conceitos e notações para os diagramas ER usados no Umbrello são do seguinte livro: <span class="emphasis"><em>Elmasri R. e Navathe S. (2004). Fundamentals of Database Systems 4ª ed. Addison Wesley</em></span> </p><p>Num Diagrama ER, as Entidades são representadas por retângulos com o nome da classe, e poderão também mostrar os atributos de uma entidade noutro <span class="quote">“<span class="quote">compartimento</span>”</span> dentro do retângulo. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="entity.png" alt="Representação visual de uma entidade num Diagrama ER"><div class="caption"><p>Representação visual de uma entidade num Diagrama ER </p></div></div></div><p>
</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="entity-attribute"></a>Atributos da Entidade</h5></div></div></div><p>Nos Diagramas ER, os Atributos das Entidades aparecem com o seu nome num compartimento diferente da Entidade a que pertencem. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="constraint"></a>Restrições</h5></div></div></div><p>As restrições nos diagramas ER definem as limitações sobre os dados no esquema de informação. </p><p>Existem quatro tipos de restrições suportados no Umbrello : </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Chave Primária:</em></span> O conjunto de atributos declarado como <span class="emphasis"><em>chave primária</em></span> é único para a entidade. Só poderá existir uma chave primária numa Entidade e nenhum dos seus atributos constituintes poderá ser nulo. </p></li><li class="listitem"><p><span class="emphasis"><em>Chave Única:</em></span> O conjunto de atributos declarado como <span class="emphasis"><em>chave única</em></span> é único para a entidade. Poderão existir várias restrições de chaves únicas. Os seus atributos constituintes poderão ser nulos. As Chaves Únicas e Chaves Primárias identificam de forma única uma linha numa tabela (entidade)</p></li><li class="listitem"><p><span class="emphasis"><em>Chave Estrangeira:</em></span> Uma Chave Estrangeira é uma restrição de referência entre duas tabelas. A chave estrangeira identifica uma coluna ou conjunto de colunas numa tabela (de referência) que aponta para uma coluna ou conjunto de colunas noutra tabela (referenciada). As colunas da tabela referenciada deverão formar uma chave primária ou única. </p></li><li class="listitem"><p><span class="emphasis"><em>Restrição de Verificação:</em></span> Uma restrição de verificação (também conhecida como restrição de verificação de tabelas) é uma condição que define os dados válidos ao adicionar ou atualizar um item numa tabela de um banco de dados relacional. Uma restrição de verificação é aplicada a cada linha na tabela. A tabela deverá ser um predicado. Poderá fazer uma referência a uma ou várias colunas da tabela. </p><p>Exemplo: preço 
&gt;= 0 </p></li></ul></div><p>
</p></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="extended-entity-relationship-concepts"></a>Conceitos Extendidos dos Diagramas de Entidade-Associação (ER)</h3></div></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="specialization"></a>Especialização</h4></div></div></div><p>A especialização é uma forma de criar novas entidades com base em entidades que já tenham sido definidas. As entidades novas, conhecidas como entidades derivadas, recebem (ou herdam) os atributos das entidades pré-existentes, as quais são referenciadas como entidades de base. Pretende ajudar a reutilizar os dados existentes com pouca ou nenhuma modificação.</p><p>No Umbrello, uma pessoa poderá definir Especializações Disjuntas e Sobrepostas</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="disjoint-specialization"></a>Especialização Disjunta</h5></div></div></div><p>A Especialização Disjunta especifique que as subclasses de especialização devem ser disjuntas. Isto significa que uma entidade pode ser um membro de pelo menos uma das entidades derivadas da especialização</p><p>
   </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="disjoint-specialization.png" alt="Representação visual de uma Especialização Disjunta num Diagrama EER"><div class="caption"><p>Representação visual de uma Especialização Disjunta num Diagrama EER </p></div></div></div><p>
    </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="overlapping-specialization"></a>Especialização Sobreposta</h5></div></div></div><p>Quando as entidades derivadas não são forçadas a serem disjuntas, este conjunto de entidades são ditos como sendo de uma especialização sobreposta. Isto significa que a mesma entidade do mundo real pode ser membro de mais de uma entidade derivada de especialização.</p><p>
   </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="overlapping-specialization.png" alt="Representação visual de uma Especialização Sobreposta num Diagrama EER"><div class="caption"><p>Representação visual de uma Especialização Sobreposta num Diagrama EER </p></div></div></div><p>
  </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="category"></a>Categoria</h5></div></div></div><p>Uma Entidade derivada é chamada de <span class="emphasis"><em>Categoria</em></span> quando ela representa uma coleção de objetos que é um subconjunto da União de tipos de entidade distintos. Uma Categoria é modelada quando existe a necessidade de uma único relacionamento de superclasse/subclasse com mais de uma superclasse, onde as superclasses representam diferentes tipos de entidade. ( Como a herança múltipla em Programação Orientada a Objeto ). </p><p>
   </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="category.png" alt="Representação visual de uma Categoria num Diagrama EER"><div class="caption"><p>Representação visual de uma Categoria num Diagrama EER</p></div></div></div><p>
  </p></div></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="uml-basics.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="working-with-umbrello.html">Próxima</a></td></tr><tr><td class="prevCell">Fundamentos do <acronym class="acronym">UML</acronym> </td><td class="upCell">Fundamentos do <acronym class="acronym">UML</acronym></td><td class="nextCell"> Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="introduction.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="uml-elements.html">Próxima</a></td></tr><tr><td class="prevCell">Introdução </td><td class="upCell"> </td><td class="nextCell"> Elementos <acronym class="acronym">UML</acronym></td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME><FILENAME filename="working-with-umbrello.html"><html><head><title>Capítulo 3. Trabalhando com o Umbrello UML Modeller</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="prev" href="uml-elements.html" title="Elementos UML"><link rel="next" href="load-save.html" title="Criando, Carregando e Salvando Modelos"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="uml-elements.html">Anterior</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="load-save.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="working-with-umbrello"></a>Capítulo 3. Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h1></div></div></div><p>Este capítulo lhe introduzirá na interface com o usuário do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> e lhe dirá tudo que você precisa saber para iniciar um modelo. Todas as ações no <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> estão acessíveis através do menu e das barras de ferramentas, mas o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> também faz uso intensivo de menus de contexto do botão <span class="mousebutton">direito</span> do mouse. Você pode clicar o botão <span class="mousebutton">direito</span> do mouse na maioria dos elementos da área de trabalho do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> ou visão de árvore para obter um menu com as funções mais úteis que podem ser aplicadas ao elemento em particular que você está trabalhando. Alguns usuários acharão isto um pouco confuso no início, porque eles estão mais acostumados a trabalhar com o menu ou barras de ferramentas, mas uma vez que você acostume-se a usar o clique <span class="mousebutton">direito</span>, isto aumentará significativamente a velocidade do seu trabalho. </p><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="user-interface"></a>Interface do usuário</h2></div></div></div><p>A janela principal do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> é dividida em três áreas que lhe auxiliam a manter uma visão geral de todo sistema e acessar os diferentes diagramas rapidamente enquanto trabalha em seu modelo. </p><p>Estas áreas são chamadas:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Visão de Árvore</p></li><li class="listitem"><p>Área de Trabalho</p></li><li class="listitem"><p>Janela de histórico de comandos e documentação</p></li></ul></div><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="umbrello-ui.png" alt="Interface com o Usuário do Umbrello UML Modeller"><div class="caption"><p>Interface com o Usuário do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </p></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="tree-view"></a>Visão de Árvore</h3></div></div></div><p>A Visão de Árvore é localizada na parte superior esquerda da janela, e mostra todos os diagramas, classes, atores e casos de uso que compuserem o seu modelo. A Visão de Árvore lhe permite ter uma rápida visão geral dos elementos componentes de seu modelo. A Visão de Árvore também lhe fornece uma maneira rápida de alternar entre os diferentes diagramas em seu modelo e inserir elementos de seu modelo no diagrama atual. </p><p>Se você está trabalhando em um modelo com mais do que algumas poucas classes e diagramas, a Visão de Árvore pode auxiliá-lo a manter no topo as coisas organizando seus elementos do modelo em pastas. Você pode criar pastas selecionando a opção apropriada no menu de contexto (clique botão <span class="mousebutton">direito</span> do mouse em uma das pastas na visão de árvore) e você pode organizar seus elementos movendo-os para a pasta apropriada (arrastar e soltar) </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="documentation-window"></a>Janela de histórico de comandos e documentação</h3></div></div></div><p>A janela de histórico de comandos e documentação é a pequena janela localizada na parte inferior esquerda do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, e ela lhe fornece uma rápida previsão da documentação para o item atualmente selecionado e o histórico de comandos da sua sessão de trabalho. A janela de documentação é um pouco pequena porque ela pretende permitir-lhe apenas uma rápida observação dos elementos da documentação e uma visão geral do histórico de comandos, ocupando o menor espaço possível na tela. Se você precisar ver a documentação em mais detalhes você pode sempre abrir as propriedades do item. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="work-area"></a>Área de Trabalho</h3></div></div></div><p>A Área de Trabalho é a janela principal do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, e é onde as ações reais ocorrem. Você usa a Área de Trabalho para editar e ver os diagramas em seu modelo. A Área de Trabalho mostra o diagrama atualmente ativo. Atualmente somente um diagrama pode ser mostrado na Área de Trabalho de cada vez. </p></div></div><FILENAME filename="load-save.html"><html><head><title>Criando, Carregando e Salvando Modelos</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Capítulo 3. Trabalhando com o Umbrello UML Modeller"><link rel="prev" href="working-with-umbrello.html" title="Capítulo 3. Trabalhando com o Umbrello UML Modeller"><link rel="next" href="edit-model.html" title="Editando Modelos"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Criando, Carregando e Salvando Modelos</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="working-with-umbrello.html">Anterior</a></td><td class="upCell">Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="edit-model.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="load-save"></a>Criando, Carregando e Salvando Modelos</h2></div></div></div><p>A primeira coisa que você precisa para iniciar a fazer algo útil com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> é criar um modelo para trabalho. Quando você inicia o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> ele sempre carrega o último modelo usado ou cria um novo modelo vazio (dependendo de suas configurações de preferências no diálogo de configuração). Isto lhe permitirá iniciar trabalhando rapidamente. </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="new-model"></a>Novo Modelo</h3></div></div></div><p>Se a qualquer momento você precisar criar um novo modelo você pode fazer isto selecionando a entrada <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Novo</span></span> no menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Arquivo</span></span>, ou clicando o ícone <span class="guiicon">Novo</span> na barra de ferramentas do aplicativo. Se você estiver trabalhando no momento em um modelo que foi modificado, o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> lhe perguntará se deseja salvar as mudanças antes de carregar o novo modelo. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="save-model"></a>Salvar Modelo</h3></div></div></div><p>Você pode salvar seu modelo a qualquer momento selecionando a opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Salvar</span></span> do Menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Arquivo</span></span> ou clicando no botão <span class="guiicon">Salvar</span> na barra de ferramentas do aplicativo. Se você precisar salvar seu modelo com um nome diferente você pode usar a opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Salvar Como</span></span> no Menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Arquivo</span></span>. </p><p>Para sua conveniência, o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> também oferece a opção de salvar automaticamente seu trabalho a cada período de tempo determinado. Você pode configurar se deseja esta opção bem como o intervalo de tempo nas <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Configurações</span></span> do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="load-model"></a>Carregar Modelo</h3></div></div></div><p>Para carregar um modelo já existente você pode selecionar a opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Abrir</span></span> no Menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Arquivo</span></span> ou clicar no ícone <span class="guiicon">Abrir</span> na barra de ferramentas do aplicativo. Os modelos mais recentemente usados também estão disponíveis no submenu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Abrir Recente</span></span> do Menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Arquivo</span></span> para acelerar o acesso aos seus modelos mais frequentemente usados. </p><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> pode trabalhar com somente um modelo por vez, logo se você pedir que o programa carregue um modelo e o modelo atual foi modificado desde a última vez que você o salvou, o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> lhe perguntará se suas mudanças devem ser salvas para evitar qualquer perda de seu trabalho. Você pode iniciar duas ou mais instâncias do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> ao mesmo tempo, de modo que você possa copiar e colar entre as instâncias. </p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="working-with-umbrello.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="edit-model.html">Próxima</a></td></tr><tr><td class="prevCell">Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </td><td class="upCell">Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Editando Modelos</td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME><FILENAME filename="edit-model.html"><html><head><title>Editando Modelos</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Capítulo 3. Trabalhando com o Umbrello UML Modeller"><link rel="prev" href="load-save.html" title="Criando, Carregando e Salvando Modelos"><link rel="next" href="add-remove-diagrams.html" title="Adicionando e Removendo Diagramas"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Editando Modelos</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="load-save.html">Anterior</a></td><td class="upCell">Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="add-remove-diagrams.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="edit-model"></a>Editando Modelos</h2></div></div></div><p>No <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, existem basicamente duas maneiras de editar os elementos em seu modelo. </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Editar elementos do modelo diretamente através da Visão de Árvore</p></li><li class="listitem"><p>Editar elementos do modelo através de um Diagrama</p></li></ul></div><p>
</p><p>Usando o menu de contexto dos diferentes itens na Visão de Árvore você será capaz de adicionar, remover e modificar a maioria dos elementos em seu modelo. Clique <span class="mousebutton">direito</span> nas pastas na Visão de Árvore lhe fornecerá as opções para criação dos diferentes tipos de diagramas bem como, dependendo se a pasta é uma <span class="emphasis"><em>Visão de Caso de Uso</em></span> ou uma <span class="emphasis"><em>Visão Lógica</em></span>, Atores, Casos de Uso, Classes, etc. </p><p>Uma vez que você tenha adicionado elementos ao seu modelo você pode também editá-los acessando seus diálogos de propriedades, que será encontrado selecionando a opção <span class="emphasis"><em>Propriedades</em></span> no menu de contexto mostrado quando der um clique <span class="mousebutton">direito</span> nos itens na Visão de Árvore. </p><p>Você pode também editar seu modelo criando e modificando elementos pelos diagramas. Mais detalhes sobre como fazer isto são fornecidos nas seguintes seções. </p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="load-save.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="add-remove-diagrams.html">Próxima</a></td></tr><tr><td class="prevCell">Criando, Carregando e Salvando Modelos </td><td class="upCell">Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Adicionando e Removendo Diagramas</td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME><FILENAME filename="add-remove-diagrams.html"><html><head><title>Adicionando e Removendo Diagramas</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Capítulo 3. Trabalhando com o Umbrello UML Modeller"><link rel="prev" href="edit-model.html" title="Editando Modelos"><link rel="next" href="edit-diagram.html" title="Editando Diagramas"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Adicionando e Removendo Diagramas</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="edit-model.html">Anterior</a></td><td class="upCell">Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="edit-diagram.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="add-remove-diagrams"></a>Adicionando e Removendo Diagramas</h2></div></div></div><p>Seu modelo <acronym class="acronym">UML</acronym> consiste de um conjunto de elementos <acronym class="acronym">UML</acronym> e associações entre eles. No entanto você não pode ver o modelo diretamente, você usa os <span class="emphasis"><em>Diagramas</em></span> para vê-lo. </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="create-diagram"></a>Criando Diagramas</h3></div></div></div><p>Para criar um novo diagrama em seu modelo simplesmente selecione o tipo de diagrama que você deseja a partir do submenu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Novo</span></span> no menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Diagrama</span></span> e dê um nome a ele. O diagrama será criada e tornado ativo, e você imediatamente o verá na visão de árvore. </p><p>Lembre-se que o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> faz um uso intensivo de menus de contexto: você pode também clicar o botão <span class="mousebutton">direito</span> do mouse numa pasta na Visão de Árvore e selecionar o tipo apropriado de diagrama a partir do submenu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Novo</span></span> no menu de contexto. Observe que você pode criar Diagramas de Caso de Uso somente em pastas de Visão de Caso de Uso, e os outros tipos de diagrama podem somente ser criados em pastas de Visão Lógica. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="remove-diagram"></a>Removendo Diagramas</h3></div></div></div><p>Caso você precise remover um diagrama de seu modelo, você pode fazer isto tornando-o ativo e selecionando <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Excluir</span></span> a partir do Menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Diagrama</span></span>. Você pode também conseguir isto selecionando <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Excluir</span></span> no menu de contexto do diagrama na Visão de Árvore </p><p>Uma vez que excluir um diagrama é algo sério que pode causar perda de trabalho se feito por acidente, o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> lhe pedirá para confirmar a operação de exclusão antes de remover o Diagrama atual. Uma vez que o diagrama seja excluído e o arquivo salvo não existe nenhuma maneira de desfazer esta ação. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="rename-diagram"></a>Renomeando Diagramas</h3></div></div></div><p>Se você deseja mudar o nome de um diagrama existente você pode facilmente fazer isto selecionando a opção Renomear no menu botão <span class="mousebutton">direito</span> do mouse na Visão de Árvore. </p><p>Outra maneira de renomear um diagrama é fazer isto através de seu diálogo de propriedades, que pode ser obtido selecionando Propriedades a partir do Menu de Contexto ou através de um clique duplo nele na Visão de Árvore. </p></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="edit-model.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="edit-diagram.html">Próxima</a></td></tr><tr><td class="prevCell">Editando Modelos </td><td class="upCell">Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Editando Diagramas</td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME><FILENAME filename="edit-diagram.html"><html><head><title>Editando Diagramas</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Capítulo 3. Trabalhando com o Umbrello UML Modeller"><link rel="prev" href="add-remove-diagrams.html" title="Adicionando e Removendo Diagramas"><link rel="next" href="code-import-generation.html" title="Capítulo 4. Importação de Código e Geração de Código"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Editando Diagramas</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="add-remove-diagrams.html">Anterior</a></td><td class="upCell">Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="code-import-generation.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="edit-diagram"></a>Editando Diagramas</h2></div></div></div><p>Enquanto trabalha num diagrama, o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> tentará guiá-lo aplicando algumas regras simples como quais elementos são validados nos diferentes tipos de diagramas, bem como os relacionamentos que podem existir entre eles. Se você é experiente em <acronym class="acronym">UML</acronym> você provavelmente não será noticiado, mas isto auxiliará novatos em <acronym class="acronym">UML</acronym> a criar diagramas em conformidade com os padrões. </p><p>Uma vez que você tenha criado seus diagramas é hora de iniciar a editá-los. Aqui você deve notar (para iniciantes perspicazes) a diferença entre editar seu diagrama e editar o <span class="emphasis"><em>modelo</em></span>. Como você já deve saber, Diagramas são <span class="emphasis"><em>visões</em></span> do seu modelo. Por exemplo, se você criar uma classe editando um Diagrama de Classe, você estará realmente editando ambos, seu Diagrama e seu modelo. Se você mudar a cor ou outra opção de exibição de uma Classe em seu Diagrama de Classe, você estará somente editando o Diagrama, mas nada será mudado no seu modelo. </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="insert-elements"></a>Inserir Elementos</h3></div></div></div><p>Uma das primeiras coisas que você deverá fazer ao editar um novo diagrama é inserir elementos nele (Classes, Atores, Casos de Uso, <abbr class="abbrev">etc.</abbr>). Existem basicamente duas maneiras de fazer isto:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Arrastando elementos existentes em seu modelo da Visão de Árvore</p></li><li class="listitem"><p>Criando novos elementos em seu modelo e adicionando-os ao seu diagrama ao mesmo tempo, usando uma das Ferramentas de edição da Barra de Ferramentas de Trabalho</p></li></ul></div><p>Para inserir elementos que já existam em seu modelo, apenas arraste-os da Visão de Árvore e solte-os onde você deseja posicioná-los em seu diagrama. Você sempre poderá mover elementos pelo Diagrama usando a Ferramenta Selecionar </p><p>A segunda maneira de adicionar elementos ao seu diagrama é usando as ferramentas de edição da Barra de Ferramentas de Trabalho (observe que isto também adicionará elementos ao seu modelo). </p><p>A Barra de Ferramentas de Trabalho era localizada por padrão na parte superior da janela. As ferramentas disponíveis nesta barra de ferramentas (os botões que você vê nela) mudam dependendo do tipo de diagrama em que você está atualmente trabalhando. O botão para a ferramenta atualmente selecionada é ativado na barra de ferramentas. Você pode alternar para a ferramenta selecionada pressionando a tecla <span class="keycap"><strong>Esc</strong></span>. </p><p>Quando você tiver selecionado uma ferramenta de edição da Barra de Ferramentas de Trabalho (por exemplo, a ferramenta para inserir classes) o ponteiro do mouse muda para uma cruz, e você pode inserir os elementos em seu modelo através de um clique simples em seu diagrama. Observe que elementos em <acronym class="acronym">UML</acronym> devem ter um <span class="emphasis"><em>Nome Único</em></span>. Logo se você tiver uma classe em um diagrama cujo nome é <span class="quote">“<span class="quote">ClasseA</span>”</span> e então usar a ferramenta de inserção de classe para inserir um classe em outro diagrama você não pode nomear esta classe com <span class="quote">“<span class="quote">ClasseA</span>”</span> também. Se estes dois serão supostamente dois diferentes elementos, você deve fornecer-lhes um nome único. Se você está tentando adicionar o <span class="emphasis"><em>mesmo</em></span> elemento em seu diagrama, então a Inserir Classe não é a ferramenta adequada para isto. Ao invés disso, você deve arrastar e soltar a classe da Visão de Árvore. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="delete-elements"></a>Excluindo Elementos</h3></div></div></div><p>Você pode excluir qualquer elemento selecionando a opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Excluir</span></span> do seu menu de contexto. </p><p>Novamente, aqui existe uma <span class="emphasis"><em>grande</em></span> diferença entre remover um objeto de um diagrama, e remover um objeto de seu modelo. Se você excluir um objeto de dentro de um diagrama, você está somente removendo o objeto daquele diagrama em particular: o elemento ainda faz parte do seu modelo e se existirem outros diagramas usando o mesmo elemento eles não sofrerão nenhuma mudança. Se, por outro lado, você excluir o elemento da Visão de Árvore, você está atualmente excluindo o elemento de seu <span class="emphasis"><em>modelo</em></span>. Uma vez que o elemento não mais exista em seu modelo, ele será automaticamente removido de todos os diagramas em que ele aparece. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="edit-elements"></a>Editando Elementos</h3></div></div></div><p>Você pode editar a maioria dos elementos <acronym class="acronym">UML</acronym> em seu modelo e diagramas abrindo seu diálogo de Propriedades e selecionando as opções apropriadas. Para editar as propriedades de um objeto, selecione <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Propriedades</span></span> no seu menu de contexto (clique botão <span class="mousebutton">direito</span> do mouse). Cada elemento possui um diálogo consistindo de diversas páginas de onde você pode configurar as opções correspondentes aquele elemento. Para alguns elementos, como atores, você pode somente configurar um par de opções, como o nome do objeto e documentação, enquanto outros elementos, como classes, você pode editar seus atributos e operações, selecionar o que você deseja que seja exibido no diagrama (toda a assinatura da operação ou apenas nomes da operação, etc) e também as cores que deseja usar para a linha e preenchimento da representação da classe no diagrama. </p><p>Para elementos <acronym class="acronym">UML</acronym>, você também poderá abrir a janela de propriedades com um clique duplo sobre ela, caso esteja usando a ferramenta de seleção (seta). </p><p>Observe que você também pode selecionar a opção propriedades do menu de contexto dos elementos na Visão de Árvore. Isto lhe permite também editar as propriedades para os diagramas, como configurar se a grade deve ser mostrada ou não. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="edit-classes"></a>Editando Classes</h3></div></div></div><p>Apesar da edição de propriedades para todos os objetos já ter sido abordada na seção anterior, as classes merecem uma seção especial porque elas são um pouco mais complexas e possuem mais opções que a maioria dos outros elementos <acronym class="acronym">UML</acronym>. </p><p>No diálogo de propriedades para uma classe você pode configurar tudo, da cor que ela usa até as operações e atributos que ela possui. </p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-general-settings"></a>Configurações Gerais da Classe</h4></div></div></div><p>A página de Configurações Gerais do diálogo de propriedades é autoexplicativa. Aqui você pode mudar o nome da classe, visibilidade, documentação, <abbr class="abbrev">etc.</abbr> Esta página está sempre disponível. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-attributes-settings"></a>Configurações de Atributos da Classe</h4></div></div></div><p>Na página de Configurações de Atributos você pode adicionar, editar ou excluir atributos (variáveis) para esta classe. Você pode também mover atributos para cima e para baixo da lista pressionando o botão de seta ao lado. Esta página está sempre disponível. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-operations-settings"></a>Configurações de Operações da Classe</h4></div></div></div><p>Semelhante à Página de Configurações dos Atributos, na Página de Configurações das Operações você pode adicionar, editar ou remover operações para sua classe. Quando adiciona ou edita uma operação, você insere os dados básicos no diálogo <span class="emphasis"><em>Propriedades da Operação</em></span>. Para adicionar parâmetros a sua operação você precisa clicar no botão <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Novo Parâmetro</span></span>, que lhe mostrará o diálogo de <span class="emphasis"><em>Propriedades do Parâmetro</em></span>. Esta página está sempre disponível </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-template-settings"></a>Configurações de Modelo de Classe</h4></div></div></div><p>Esta página permite-lhe adicionar modelos de classe que serão classes não especificadas ou tipos de dados. Em Java 1.5 eles são chamados Genéricos. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-associations-page"></a>Página Associações da Classe</h4></div></div></div><p>A página <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Associações da Classe</span></span> mostra todas as associações desta classe no diagrama atual. Um clique duplo numa associação mostra suas propriedades, e dependendo do tipo de associação você pode modificar alguns parâmetros como um configuração de multiplicidade e nome da Regra. Se a associação não permitir que opções sejam modificadas, o diálogo de Propriedades da Associação é somente leitura e você pode somente modificar a documentação associada com esta associação. </p><p>Esta página está disponível somente se você abrir as Propriedades da Classe de dentro de um diagrama. Se você selecionar as propriedades da classe no menu de contexto na Visão de Árvore esta página não estará disponível. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-display-page"></a>Página de Exibição da Classe</h4></div></div></div><p>Na página de <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Opções de Exibição</span></span>, você pode configurar como a classe será mostrada no diagrama. Uma classe pode ser mostrada como somente um retângulo com o nome da classe nele (útil se você possui muitas classes em seu diagrama, ou não está interessado no momento nos detalhes de cada classe) ou completa mostrando pacotes, estereótipos, atributos e operações com assinatura completa e visibilidade </p><p>Dependendo da quantidade de informação que você deseja ver você pode selecionar as opções correspondentes nesta página. As mudanças que você realizar aqui serão somente as <span class="emphasis"><em>opções de exibição</em></span> para o diagrama. Isto significa que <span class="quote">“<span class="quote">ocultar</span>”</span> uma operação de classe somente faz com que ele não seja exibida no diagrama, mas a operação ainda faz parte de seu modelo. Esta opção está somente disponível se você selecionou as propriedades da classe de dentro de um Diagrama. Se você abrir as propriedades de classe a partir da Visão de Árvore esta página estará faltando uma vez que as Opções de Exibição não fazem sentido neste caso</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-color-page"></a>Página de estilo da classe</h4></div></div></div><p>Na página <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Estilo do widget</span></span> você pode configurar as cores que deseja para a linha e o preenchimento do widget. Esta opção obviamente faz sentido somente para classes exibidas em diagramas, e não aparecerá se você abrir o diálogo de propriedades da classe a partir da Visão de Árvore. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="associations"></a>Associações</h3></div></div></div><p>Associações relacionam dois objetos <acronym class="acronym">UML</acronym> um com o outro. Normalmente associações são definidas entre duas classes, mas alguns tipos de associações podem também existir entre casos de uso e atores. </p><p>Para criar uma associação seleciona a ferramenta apropriada na Barra de Ferramentas de Trabalho (Associação genérica, Generalização, Agregação, <abbr class="abbrev">etc.</abbr>) e dê um clique simples no primeiro elemento participante na associação e então um clique simples no segundo elemento participante. Observe que são dois cliques, um em cada um dos objetos participantes da associação, e <span class="emphasis"><em>não</em></span> arrastar um objeto para outro. </p><p>Se você tentar usar uma associação de uma maneira contrária as especificações <acronym class="acronym">UML</acronym> o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> se recusará a criar a associação e você receberá uma mensagem de erro. Isto pode acontecer se, por exemplo, uma Generalização existir da classe A para classe B e então você tentar criar outra Generalização da classe B para a classe A </p><p>Um clique <span class="mousebutton">direito</span> numa associação mostrará um menu de contexto com as ações que você pode aplicar nela. Se você precisar excluir uma associação, simplesmente selecione a opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Excluir</span></span> deste menu de contexto. Você pode também selecionar a opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Propriedades</span></span> e, dependendo do tipo de associação, editar os atributos como regras e multiplicidade. </p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="anchor-points"></a>Pontos de Ancoragem</h4></div></div></div><p>Associações são desenhadas, por padrão, como uma linha reta conectando dois objetos no diagrama. </p><p>Você pode adicionar pontos de ancoragem dando um clique <span class="mousebutton">duplo</span> ao longo da linha de associação. Isto irá inserir um ponto de ancoragem (exibido como um ponto azul quando a linha de associação é selecionada) o qual você poderá mover para obter a forma da associação </p><p>Se você precisar remover um ponto de ancoragem, dê um clique <span class="mousebutton">duplo</span> nele novamente para removê-lo </p><p>Observe que a única maneira de editar as propriedades de uma associação é através do menu de contexto. Se você tentar das um clique <span class="mousebutton">duplo</span> nela como é feito nos outros objetos <acronym class="acronym">UML</acronym>, isto somente irá inserir um ponto de ancoragem. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="notes"></a>Notas, Texto e Caixas</h3></div></div></div><p>Notas, Linhas de Texto e Caixas são elementos que podem ser representados em qualquer tipo de diagrama e não possuem nenhum valor semântico, mas são muito úteis para adicionar comentários extras ou explanações que podem tornar seu diagrama mais fácil de entender. </p><p>Para adicionar uma Nota ou Linha de Texto, selecione a ferramenta correspondente na Barra de Ferramentas de Trabalho e dê um clique simples no diagrama onde você deseja colocar seu comentário. Você pode editar o texto abrindo o elemento através do menu de contexto ou, no caso de notas, através de um clique <span class="mousebutton">duplo</span> nelas. </p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="anchors"></a>Âncoras</h4></div></div></div><p>Âncoras são usadas para manter uma nota de texto e outro Elemento <acronym class="acronym">UML</acronym> juntos. Por exemplo, você normalmente usa uma nota de texto para explanar ou fazer algum comentário sobre uma classe ou uma associação em particular, neste caso você pode usar a âncora para tornar claro que a nota <span class="quote">“<span class="quote">pertence</span>”</span> aquele elemento em particular. </p><p>Para adicionar uma âncora entre uma nota e outro elemento <acronym class="acronym">UML</acronym>, use a ferramenta âncora da barra de ferramentas de trabalho. Você primeiro precisa clicar na nota e então clicar no elemento <acronym class="acronym">UML</acronym> ao qual deseja que a nota se ligue. </p></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="add-remove-diagrams.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="code-import-generation.html">Próxima</a></td></tr><tr><td class="prevCell">Adicionando e Removendo Diagramas </td><td class="upCell">Trabalhando com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Importação de Código e Geração de Código</td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="uml-elements.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="load-save.html">Próxima</a></td></tr><tr><td class="prevCell">Elementos <acronym class="acronym">UML</acronym> </td><td class="upCell"> </td><td class="nextCell"> Criando, Carregando e Salvando Modelos</td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME><FILENAME filename="code-import-generation.html"><html><head><title>Capítulo 4. Importação de Código e Geração de Código</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="prev" href="edit-diagram.html" title="Editando Diagramas"><link rel="next" href="code-import.html" title="Importar Código"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Importação de Código e Geração de Código</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="edit-diagram.html">Anterior</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="code-import.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="code-import-generation"></a>Capítulo 4. Importação de Código e Geração de Código</h1></div></div></div><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> é uma ferramenta de modelagem <acronym class="acronym">UML</acronym>, e como tal seu principal propósito é auxiliá-lo na <span class="emphasis"><em>análise e desenho</em></span> de seus sistemas. No entanto, para fazer a transição entre seu desenho e sua <span class="emphasis"><em>implementação</em></span>, o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> permite gerar código-fonte numa linguagem de programação que você conheça. Se você quiser iniciar o uso do <acronym class="acronym">UML</acronym> num projeto em C++ já iniciado, o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> pode auxiliá-lo a criar um modelo de seu sistema a partir do código-fonte analisando seu código e importando as classes encontradas nele. </p><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="code-generation"></a>Geração de Código</h2></div></div></div><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> pode gerar código-fonte a partir de várias linguagens de programação baseadas no seu Modelo <acronym class="acronym">UML</acronym> para auxiliá-lo no início com a implementação do seu projeto. O código gerado consiste de declarações de classe, com seus métodos e atributos de modo que você possa <span class="quote">“<span class="quote">preencher as lacunas</span>”</span> fornecendo a funcionalidade das suas operações de classes. </p><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> 2 vem com suporte à geração de código para ActionScript, Ada, C++, C#, D, IDL, <span class="trademark">Java</span>™, JavaScript, MySQL e Pascal. </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="generate-code"></a>Gerando Código</h3></div></div></div><p>Para gerar código como o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, você primeiro precisa criar ou carregar um Modelo contendo pelo menos uma classe. Quando você estiver pronto para iniciar a escrita de algum código, selecione a entrada do <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Assistente de Geração de Código</span></span> no menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Código</span></span> para iniciar um Assistente que o guiará através do processo de geração de código. </p><p>O primeiro passo é selecionar as classes para quais você deseja gerar código fonte. Por padrão todas as classes de seu modelo serão selecionadas, e você pode remover as que não deseja que seja gerado código movendo-as para o lado esquerdo da lista. </p><p>O próximo passo do assistente lhe permite modificar os parâmetros que o Gerador de Código usa ao escrever seu código. As seguintes opções estão disponíveis: </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="generation-options.png" alt="Opções para a Geração de Código no Umbrello UML Modeller"><div class="caption"><p>Opções para a Geração de Código no <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="generation-options"></a>Opções Gerais</h4></div></div></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm934"></a>Detalhes dos comentários</h5></div></div></div><p>A opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Escrever cometários da documentação se vazios</span></span> instrui o Gerador de Código a escrever comentários no estilo /** blah */ sempre que o bloco de comentários estiver vazio. Se você adicionar documentação a sua classe, métodos ou atributos em seu Modelo, o Gerador de Código escreverá estes comentários como documentação <span class="application">Doxygen</span> a menos que você configure algo aqui, mas se você selecionar esta opção o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> escreverá blocos de comentários para todas as classes, métodos e atributos se não houver nenhuma documentação no Modelo, caso contrário você deverá documentar suas classes posteriormente diretamente no código-fonte. </p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Escrever comentários para seções se seção estiver vazia</span></span> faz com que o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> escreva comentários no código-fonte para delimitar as diferentes seções de uma classe. Por exemplo <span class="quote">“<span class="quote">métodos públicos</span>”</span> ou <span class="quote">“<span class="quote">Atributos</span>”</span> antes das seções correspondentes. Se você selecionar esta opção o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> escreverá comentários para todas as seções da classe se a seção estiver vazia. Por exemplo, ele escreverá um comentário <span class="quote">“<span class="quote">métodos protegidos</span>”</span> se existem métodos não protegidos em sua classe. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm950"></a>Pastas</h5></div></div></div><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Gravar todos os arquivos gerados para pasta</span></span>. Aqui você pode selecionar a pasta onde deseja que o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> coloque os fontes gerados. </p><p>A opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Incluir arquivos de cabeçalho da pasta</span></span> permite-lhe inserir um cabeçalho no início de cada arquivo gerado. Arquivos de cabeçalho podem conter informações de direito de cópia ou licença e conter variáveis que serão avaliados no momento da geração. Você pode dar uma olhada nos arquivos modelos de cabeçalho fornecidos com o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> para ver como usar estas variáveis para substituir seu nome ou a data atual no momento da geração. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm960"></a>Política de Sobrescrever</h5></div></div></div><p>Esta opção diz ao <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> o que fazer se o arquivo que está sendo criado já existe na pasta destino. O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> <span class="emphasis"><em>não pode modificar arquivos fonte existentes</em></span>, logo você deve escolher entre sobrescrever o arquivo existente, pular a geração do arquivo em particular ou deixar o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> escolher um nome de arquivo diferente. Se você escolher a opção de usar um nome diferente, o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> adicionará um sufixo ao nome do arquivo. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm972"></a>Linguagem</h5></div></div></div><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> irá gerar por padrão código na linguagem que você tiver selecionado como Linguagem Ativa, mas com o Assistente de Geração de Código você tem a opção de mudar isto para outra linguagem. </p></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="generation-wizard-generation"></a>Geração do Assistente de Geração</h4></div></div></div><p>O terceiro e último passo do assistente mostra o estado do processo de Geração de Código. Você precisa somente clicar no botão Gerar para ter suas classes escritas para você. </p><p>Observe que as Opções que você selecionou durante o assistente de Geração de Código são válidas somente para a geração atual. Na próxima vez que executar o Assistente você precisará re-selecionar todas as opções (sua pasta de cabeçalhos, política de sobrescrever, e assim por diante). Você pode configurar os padrões usados pelo <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> na seção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Geração de Código</span></span> das configurações do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> disponível em <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Configurações</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configurar o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>...</span></span> </p><p>Se você tiver configurado suas opções de Geração de Código para as configurações corretas e desejar gerar algum código da mesma maneira sem passar pelo assistente, você pode selecionar a entrada <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Gerar Todo Código</span></span> no menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Código</span></span>. Isto irá gerar código para todas as classes em seu Modelo usando suas configurações atuais (incluindo Pasta de Saída e Política de Sobrescrever, logo use com cuidado). </p></div></div></div><FILENAME filename="code-import.html"><html><head><title>Importar Código</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="code-import-generation.html" title="Capítulo 4. Importação de Código e Geração de Código"><link rel="prev" href="code-import-generation.html" title="Capítulo 4. Importação de Código e Geração de Código"><link rel="next" href="other-features.html" title="Capítulo 5. Outros Recursos"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Importar Código</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-import-generation.html">Anterior</a></td><td class="upCell">Importação de Código e Geração de Código</td><td class="nextCell"><a accesskey="n" href="other-features.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="code-import"></a>Importar Código</h2></div></div></div><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> pode importar código-fonte de seus projetos existentes para auxiliá-lo a construir o Modelo de seus sistemas. O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> 2 tem suporte para código-fonte em ActionScript, Ada, C++, C#, D, IDL, <span class="trademark">Java</span>™, Javascript, MySQL, e Pascal. </p><p>Para importar classes para seu Modelo, selecione a entrada <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Assistente de importação de código...</span></span> no menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Código</span></span>. No diálogo de arquivo selecione os arquivos contendo as declarações de classe e clique em <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Próximo 
&gt;</span></span>, <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Iniciar importação</span></span> e <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Concluir</span></span>. As classes serão importadas e você irá encontrá-las como parte de seu Modelo na Visão Árvore. Observe que o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> não criará nenhum tipo de Diagrama para mostrar suas classes, elas serão apenas importadas para seu Modelo e então você poderá usá-las mais tarde em qualquer diagrama que desejar. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="code-import.png" alt="Menu para importação de código-fonte no Umbrello UML Modeller"><div class="caption"><p>Menu para importação de código-fonte no <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </p></div></div></div><p>
</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-import-generation.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="other-features.html">Próxima</a></td></tr><tr><td class="prevCell">Importação de Código e Geração de Código </td><td class="upCell">Importação de Código e Geração de Código</td><td class="nextCell"> Outros Recursos</td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="edit-diagram.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="code-import.html">Próxima</a></td></tr><tr><td class="prevCell">Editando Diagramas </td><td class="upCell"> </td><td class="nextCell"> Importar Código</td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME><FILENAME filename="other-features.html"><html><head><title>Capítulo 5. Outros Recursos</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="prev" href="code-import.html" title="Importar Código"><link rel="next" href="authors.html" title="Capítulo 6. Autores e histórico"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Outros Recursos</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-import.html">Anterior</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="authors.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="other-features"></a>Capítulo 5. Outros Recursos</h1></div></div></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idm1026"></a>Outros Recursos do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h2></div></div></div><p>Este capítulo explanará sumariamente alguns outros recursos que o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> lhe oferece.</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="copying-as-png"></a>Copiar objetos como imagens PNG</h3></div></div></div><p>Além de lhe oferecer as funcionalidades normais de copiar, cortar e colar que você espera para copiar objetos entre diagramas diferentes, o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> pode copiar os objetos como figuras PNG de modo que você possa inseri-las em outro tipo de documento. Você não precisa fazer nada em especial para usar este recurso, apenas selecione um objeto de um diagrama (Classe, Ator, <abbr class="abbrev">etc.</abbr>) e copie-o (<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>C</strong></span>, ou usando o menu), e então abra um documento do <span class="application">Calligra Words</span> (ou qualquer programa para o qual você possa colar imagens) e selecione <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Colar</span></span>. Este é um grande recurso para exportar partes de seu diagrama como simples figuras. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="export-as-png"></a>Exportando para uma Imagem</h3></div></div></div><p>Você pode também exportar um diagrama completo como uma imagem. A única coisa que você precisa fazer é selecionar o diagrama que você deseja exportar, e então a opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Exportar como Figura...</span></span> no menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Diagrama</span></span>. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="printing"></a>Imprimindo</h3></div></div></div><p>O <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> permite imprimir diagramas individuais. Pressionar o botão <span class="guiicon">Imprimir</span> na barra de ferramentas do aplicativo ou selecionar a opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Imprimir</span></span> no menu <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Arquivo</span></span> lhe trará o diálogo padrão de impressão do <span class="orgname">KDE</span> a partir do qual você pode imprimir seus diagramas. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="logical-folders"></a>Pastas Lógicas</h3></div></div></div><p>Para melhor organizar o seu modelo, especialmente para grandes projetos, você pode criar pastas lógicas na Visão de Árvore. Apenas selecione a opção <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Nova</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Pasta</span></span> no menu de contexto das pastas padrão na Visão de Árvore para criá-las. Pastas podem ser aninhadas, e você pode mover objetos arrastando-os de uma pasta e soltando-os em outra. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="folders.png" alt="Organizando um Modelo com Pastas Lógicas no Umbrello UML Modeller"><div class="caption"><p>Organizando um Modelo com Pastas Lógicas no <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </p></div></div></div></div></div></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="code-import.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="authors.html">Próxima</a></td></tr><tr><td class="prevCell">Importar Código </td><td class="upCell"> </td><td class="nextCell"> Autores e histórico</td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME><FILENAME filename="authors.html"><html><head><title>Capítulo 6. Autores e histórico</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="prev" href="other-features.html" title="Capítulo 5. Outros Recursos"><link rel="next" href="copyright.html" title="Capítulo 7. Direitos autorais"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Autores e histórico</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="other-features.html">Anterior</a></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="copyright.html">Próxima</a></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="authors"></a>Capítulo 6. Autores e histórico</h1></div></div></div><p>Este projeto foi iniciado por Paul Hensgen como um de seus projetos Universitários. O nome original do aplicativo era <span class="application">Modelador UML</span>. Paul fez todo o desenvolvimento até o final de 2001 quando o programa atingiu sua versão 1.0. </p><p>A versão 1.0 já oferecia muitas funcionalidades, mas após o projeto ter sido revisado pela Universidade de Paul, outros desenvolvedores puderam juntar-se e iniciaram fazendo contribuições importantes para o <span class="application">Modelador UML</span>, como alternar de um formato binário de arquivo para um arquivo <acronym class="acronym">XML</acronym>, suporte para mais tipos de Diagramas <acronym class="acronym">UML</acronym>, Geração de Código e Importação de Código apenas para citar algumas. </p><p>Paul retirou-se da equipe de desenvolvimento no Verão de 2002 mas, como um Software Livre e de Código Aberto, o programa continua a melhorar e evoluir, e está sendo mantido por um grupo de desenvolvedores de diferentes partes do mundo. Em Setembro de 2002, o projeto mudou seu nome de <span class="application">Modelador <acronym class="acronym">UML</acronym></span>, para <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>. Existiram várias razões para a mudança do nome, a mais importante sendo que apenas <span class="quote">“<span class="quote">uml</span>”</span>— como é comumente conhecido — é um nome muito genérico e causa problemas com alguns distribuidores. A outra razão importante é que os desenvolvedores acham <span class="application">Umbrello</span> um nome mais legal. </p><p>O desenvolvimento do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> assim como as discussões sobre para onde o programa deve progredir nas versões futuras é aberto e ocorre na Internet. Se você gostaria de contribuir para o projeto, por favor não hesite em contactar os desenvolvedores. Existem muitas maneiras nas quais você pode auxiliar o <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Relatando erros ou sugerindo melhorias</p></li><li class="listitem"><p>Corrigindo erros e adicionando recursos</p></li><li class="listitem"><p>Escrevendo uma boa documentação ou traduzindo para outros idiomas</p></li><li class="listitem"><p>E é claro...codificando conosco!</p></li></ul></div><p>Como você viu, existem muitas maneiras de contribuir. Todas elas são muito importantes e todos são bem-vindos a participar. </p><p>Os desenvolvedores do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> podem ser contactados em <code class="email">(umbrello-devel AT kde.org)</code>. </p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="other-features.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"><a accesskey="n" href="copyright.html">Próxima</a></td></tr><tr><td class="prevCell">Outros Recursos </td><td class="upCell"> </td><td class="nextCell"> Direitos autorais</td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME><FILENAME filename="copyright.html"><html><head><title>Capítulo 7. Direitos autorais</title><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-default.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-docs.css"><link rel="stylesheet" type="text/css" href="help:/kdoctools5-common/kde-localised.css"><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="keywords" content="KDE, UML, modelando, diagramas, desenvolvimento de software, desenvolvimento"><link rel="home" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual do Umbrello UML Modeller"><link rel="prev" href="authors.html" title="Capítulo 6. Autores e histórico"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="KDE XSL Stylesheet V1.14 using libxslt"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div id="content"><div id="header"><div id="header_content"><div id="header_left"><div id="header_right"><img src="help:/kdoctools5-common/top-kde.jpg" width="36" height="34"> Direitos autorais</div></div></div></div><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="authors.html">Anterior</a></td><td class="upCell"> </td><td class="nextCell"></td></tr></table></div><div id="contentBody"><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="copyright"></a>Capítulo 7. Direitos autorais</h1></div></div></div><p>Direitos autorais 2001, de Paul Hensgen</p><p>Direitos autorais 2002-2014, dos autores do <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>.</p><p><a name="gnu-fdl"></a>Esta documentação é licenciada sob os termos da <a class="ulink" href="help:/kdoctools5-common/fdl-license.html" target="_top">Licença de Documentação Livre 
GNU</a>.</p><p>Este programa é licenciado sob os termos da <a class="ulink" href="help:/kdoctools5-common/gpl-translated.html" target="_top">Licença Pública Geral GNU</a>.</p></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"><a accesskey="p" href="authors.html">Anterior</a></td><td class="upCell"><a accesskey="h" href="index.html">Principal</a></td><td class="nextCell"></td></tr><tr><td class="prevCell">Autores e histórico </td><td class="upCell"> </td><td class="nextCell"> </td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME></div></div><div id="footer"><div class="navCenter"><table class="navigation"><tr><td class="prevCell"></td><td class="upCell"> </td><td class="nextCell"><a accesskey="n" href="introduction.html">Próxima</a></td></tr><tr><td class="prevCell"> </td><td class="upCell"> </td><td class="nextCell"> Introdução</td></tr></table></div><div id="footer_text"><br><a href="mailto:kde-doc-english@kde.org" class="footer_email"></a></div></div></div></body></html></FILENAME>

Generated by dwww version 1.15 on Thu Jun 27 16:51:04 CEST 2024.