dwww Home | Show directory contents | Find package

<FILENAME filename="index.html"><html><head><title>Manual de 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="Umbrello UML Modeller axúdao no desenvolvimento de sóftware usando o estándar industrial chamado Unified Modelling Language (UML) que lle permite criar diagramas para o deseño e documentación dos sistemas."><meta name="keywords" content="KDE, UML, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="next" href="introduction.html" title="Capítulo 1. Introdución"><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 de <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óximo</a></td></tr></table></div><div id="contentBody"><div lang="gl" class="book"><div class="titlepage"><div><div><h1 class="title"><a name="Umbrello"></a>Manual de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h1></div><div><div class="authorgroup"><h3 class="corpauthor">Os autores de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h3><span class="othercredit"><span class="contrib">Tradutor do proxecto Trasno</span>: <span class="firstname">Marce</span> <span class="surname">Villarino</span><br></span></div></div><div>Revisión <span class="releaseinfo">1.2 (<span class="date">2003-10-15</span>)</span></div><div><p class="copyright">Copyright © 2001 Paul Hensgen</p></div><div><p class="copyright">Copyright © 2002, 2003 Os autores de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></p></div><div><div><div class="abstract"><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> axúdao no desenvolvimento de sóftware usando o estándar industrial chamado Unified Modelling Language (<acronym class="acronym">UML</acronym>) que lle permite criar diagramas para o deseño e documentación dos 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. Introdución</a></span></dt><dt><span class="chapter"><a href="uml-basics.html">2. Fundamentos de <acronym class="acronym">UML</acronym></a></span></dt><dd><dl><dt><span class="sect1"><a href="uml-basics.html#about-uml">Acerca de <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">Diagramas de clase</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#sequence-diagram">Diagramas de secuencia</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#collaboration-diagram">Diagramas de colaboración</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 actividade</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">Diagrama de componentes</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#deployment-diagram">Diagramas de implementación</a></span></dt><dt><span class="sect2"><a href="uml-elements.html#entity-relationship-diagram">Diagramas de relacións entre entidades</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="working-with-umbrello.html">3. Traballar con <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">A interface do usuario</a></span></dt><dd><dl><dt><span class="sect2"><a href="working-with-umbrello.html#tree-view">A vista en árbore</a></span></dt><dt><span class="sect2"><a href="working-with-umbrello.html#documentation-window">Fiestra de documentación</a></span></dt><dt><span class="sect2"><a href="working-with-umbrello.html#work-area">Área de traballo</a></span></dt></dl></dd><dt><span class="sect1"><a href="load-save.html">Criar, cargar e gardar 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">Gardar o modelo</a></span></dt><dt><span class="sect2"><a href="load-save.html#load-model">Cargar modelo</a></span></dt></dl></dd><dt><span class="sect1"><a href="edit-model.html">Editar modelos</a></span></dt><dt><span class="sect1"><a href="add-remove-diagrams.html">Engadir e eliminar diagramas</a></span></dt><dd><dl><dt><span class="sect2"><a href="add-remove-diagrams.html#create-diagram">Criar diagramas</a></span></dt><dt><span class="sect2"><a href="add-remove-diagrams.html#remove-diagram">Eliminar diagramas</a></span></dt><dt><span class="sect2"><a href="add-remove-diagrams.html#rename-diagram">Mudar o nome dos diagramas</a></span></dt></dl></dd><dt><span class="sect1"><a href="edit-diagram.html">Editar 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">Borrar elementos</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#edit-elements">Editar elementos</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#edit-classes">Editar clases</a></span></dt><dt><span class="sect2"><a href="edit-diagram.html#associations">Asociacións</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. Importación de fontes e xeración de código fonte</a></span></dt><dd><dl><dt><span class="sect1"><a href="code-import-generation.html#code-generation">Xerazón de fontes</a></span></dt><dd><dl><dt><span class="sect2"><a href="code-import-generation.html#generate-code">Xerar o código fonte</a></span></dt></dl></dd><dt><span class="sect1"><a href="code-import.html">Importación de código</a></span></dt></dl></dd><dt><span class="chapter"><a href="other-features.html">5. Outras funcionalidades</a></span></dt><dd><dl><dt><span class="sect1"><a href="other-features.html#idm1020">Outras funcionalidades de <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 obxectos como imaxes PNG</a></span></dt><dt><span class="sect2"><a href="other-features.html#export-as-png">Exportar para unha imaxe</a></span></dt><dt><span class="sect2"><a href="other-features.html#printing">Imprimir</a></span></dt><dt><span class="sect2"><a href="other-features.html#logical-folders">Cartafoles lóxicos</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="authors.html">6. Autores e historial</a></span></dt><dt><span class="chapter"><a href="copyright.html">7. Copyright</a></span></dt></dl></div><FILENAME filename="introduction.html"><html><head><title>Capítulo 1. Introdución</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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="prev" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="next" href="uml-basics.html" title="Capítulo 2. Fundamentos de 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"> Introdución</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óximo</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. Introdución</h1></div></div></div><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> é unha ferramenta de diagramas <acronym class="acronym">UML</acronym> que pode axudalo no proceso de desenvolvimento de sóftware. En particular durante as fases de análise e deseño, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> axudarao a obter un produto de alta calidade. <acronym class="acronym">UML</acronym> tamén pode ser usado para documentar os seus deseños de sóftware, como axuda para si e para os compañeiros no desenvolvimento. </p><p>Ter un bon modelo do seu sóftware é a mellor maneira de comunicarse con outros desenvolventes que traballen no proxecto e cos seus clientes. Un bon modelo é extremadamente importante para proxectos grandes e medianos, pero tamén é moi útil para os pequenos. Mesmo se está a traballar nun pequeno proxecto dunha só persoa beneficiarase de ter un bon modelo porque lle dará unha visión global que o axudará a programar ben as cousas á primeira. </p><p><acronym class="acronym">UML</acronym> é a linguaxe de diagramas usada para descreber tais modelos. Pode representar as súas ideas en <acronym class="acronym">UML</acronym> usando diferentes tipos de diagramas. <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> 1.2 permite os seguintes tipos: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Diagrama de clases</p></li><li class="listitem"><p>Diagrama de secuencia</p></li><li class="listitem"><p>Diagrama de colaboración</p></li><li class="listitem"><p>Diagrama de casos de uso</p></li><li class="listitem"><p>Diagrama de estado</p></li><li class="listitem"><p>Diagrama de actividade</p></li><li class="listitem"><p>Diagrama de componentes</p></li><li class="listitem"><p>Diagrama de implementación</p></li></ul></div><p>Pode atopar máis información acerca de <acronym class="acronym">UML</acronym> no sitio web de <a class="ulink" href="http://www.omg.org" target="_top"><acronym class="acronym">OMG</acronym>, http://www.omg.org</a> que foi quen criou o estándar <acronym class="acronym">UML</acronym>. </p><p>Desexamos que desfrute de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> e que o axude a criar sóftware de alta calidade. <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> é Sóftware Libre e está disponíbel de balde, a única cousa que lle pedimos é que informe de calquer erro, problema ou suxestión aos desenvolventes de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> en <code class="email">(uml-devel AT lists.sourceforge.net)</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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="uml-basics.html">Próximo</a></td></tr><tr><td class="prevCell">Manual de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </td><td class="upCell"> </td><td class="nextCell"> Fundamentos de <acronym class="acronym">UML</acronym></td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="uml-basics.html"><html><head><title>Capítulo 2. Fundamentos de 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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="prev" href="introduction.html" title="Capítulo 1. Introdución"><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 de <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óximo</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 de <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>Acerca de <acronym class="acronym">UML</acronym></h2></div></div></div><p>Este capítulo daralle unha introdución rápida aos fundamentos de <acronym class="acronym">UML</acronym>. Teña en conta que este non é un titorial extenso de <acronym class="acronym">UML</acronym> senón unha breve introdución que pode ser lida como un titorial. Se quer aprender máis acerca do Unified Modelling Language, ou en xeral acerca da análise e deseño de sóftware, consulte un dos moitos libros disponíbeis que tratan deste tema. Tamén hai moitos titoriais en internet que pode tomar como un punto de comezo. </p><p>O "Unified Modelling Language" (<acronym class="acronym">UML</acronym>) é unha linguaxe ou notación de deseño para especificar, visualizar e documentar modelos de sistemas de sóftware Orientados a Obxectos. <acronym class="acronym">UML</acronym> non é un método de desenvolvimento, o que significa que non lle di o que debe facer primeiro e o que debe facer despois nen como deseñar o seu sistema, senón que o axuda a visualizar o deseño e a comunicarllo a outros. <acronym class="acronym">UML</acronym> está controlado polo "Object Management Group" (<acronym class="acronym">OMG</acronym>) e é o estándar da industria para descreber graficamente o sóftware. </p><p><acronym class="acronym">UML</acronym> foi pensado para o deseño de sóftware Orientado a Obxectos e ten unha utilidade moi limitada para outros paradigmas de programación. </p><p><acronym class="acronym">UML</acronym> está composto de diversos elementos de modelo que representan as diferentes partes dun sistema de sóftware. Os elementos <acronym class="acronym">UML</acronym> son usados para criar diagramas, que representan unha parte, ou un ponto de vista do sistema. <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> soporta os seguintes tipos de diagrama: </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">Diagramas de caso de uso</a></em></span> mostra actores (xente ou outros usuarios do sistema), casos de uso (os cenarios en que o sistema é usado), e as súas relacións</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#class-diagram" title="Diagramas de clase">Diagramas de clase</a></em></span> mostra clases e as relacións entre elas</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#sequence-diagram" title="Diagramas de secuencia">Diagramas de secuencia</a></em></span> mostra obxectos e a secuencia de chamadas a métodos de outros obxectos que fan.</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#collaboration-diagram" title="Diagramas de colaboración">Diagramas de colaboración</a></em></span> mostra obxectos e a súa relación, enfatizando os obxectos que participan no intercambio de mensaxes</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#state-diagram" title="Diagrama de estado">Diagramas de estado</a></em></span> mostra estados, mudanzas de estado e eventos nun obxecto ou unha 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 actividade">Diagramas de actividade</a></em></span> mostra actividades e os cambios dunha activade para outra cos eventos que acontecen nalgunha parte do sistema</p></li><li class="listitem"><p><span class="emphasis"><em><a class="link" href="uml-elements.html#component-diagram" title="Diagrama de componentes">Diagramas de componentes</a></em></span> mostra as componentes 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 implementación">Diagramas de implementación</a></em></span> mostra as instancias das componentes e as súas relacións.</p></li><li class="listitem"><p><span class="emphasis"><em>Os <a class="link" href="uml-elements.html#entity-relationship-diagram" title="Diagramas de relacións entre entidades">Diagramas de relacións entre entidades</a></em></span> mostran datos e as relacións e restricións entre os datos.</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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="uml-basics.html" title="Capítulo 2. Fundamentos de UML"><link rel="prev" href="uml-basics.html" title="Capítulo 2. Fundamentos de UML"><link rel="next" href="working-with-umbrello.html" title="Capítulo 3. Traballar con 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 de <acronym class="acronym">UML</acronym></td><td class="nextCell"><a accesskey="n" href="working-with-umbrello.html">Próximo</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>Os diagramas de caso de uso descreben as relacións e dependencias entre un grupo de <span class="emphasis"><em>Casos de Uso</em></span> e os Actores a participar no proceso.</p><p>É importante decatarse de que os diagramas de casos de uso non son apropriados para representar o deseño, e non poden descreber o interior dun sistema. Estes diagramas serven para facilitar a comunicación cos futuros usuarios do sistema, e cos clientes, e son especialmente úteis para determinar as funcionalidades que o sistema debe ter. Os diagramas de casos de uso indican o <span class="emphasis"><em>que</em></span> o sistema debera ter, pero non especifica como o acada, —nen pode—.</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="Umbrello UML Modeller mostrando un diagrama de caso de uso"><div class="caption"><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando un 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>Un <span class="emphasis"><em>caso de uso</em></span> descrebe —desde o ponto de vista dos actores— un grupo de actividades nun sistema que produce un resultado concreto, tanxíbel.</p><p>Os casos de uso son descricións das interaccións típicas entre os usarios dun sistema e o sistema en si. Representan a interface externa do sistema e especifican unha forma de requerimentos do que debe facer o sistema (lembre, só o que, non como). </p><p>Cando se traballa cos casos de uso, é importante lembrar algunhas regras simples: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Cada caso de uso estará relacionado con polo menos un actor</p></li><li class="listitem"><p>Cada caso de uso ten un iniciador (isto é un actor)</p></li><li class="listitem"><p>Cada caso de uso conduce a un resultado relevante (un resultado con <span class="quote">« <span class="quote">valor de negocio</span> »</span>)</p></li></ul></div><p>
</p><p>Os casos de uso tamén teñen relacións con outros casos de uso. Os tres tipos de relación máis típicas entre os casos son:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>&lt;&lt;inclusión&gt;&gt;</em></span> que indica que un caso de uso acontece <span class="emphasis"><em>dentro</em></span> doutro caso de uso</p></li><li class="listitem"><p><span class="emphasis"><em>&lt;&lt;extensión&gt;&gt;</em></span> que indica que en certas situacións, ou nalgún ponto (chamado ponto de extensión) un caso de uso será ampliado por outro.</p></li><li class="listitem"><p><span class="emphasis"><em>Xeneralización</em></span> indica que un caso de uso herda as características do <span class="quote">« <span class="quote">Super</span> »</span>caso de uso, e pode sobrescreber algunhas deles ou engadir outras novas, de xeito similar á herdanza entre clases. </p></li></ul></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="actor"></a>Actor</h4></div></div></div><p>Un actor é unha entidade externa (fora do sistema) que interactúa co sistema ao participar (e a miúdo iniciar) un caso de uso. Os actores poden ser xente real (por exemplo os usuarios do sistema), outros sistemas informáticos ou eventos externos. </p><p>Os actores non representan a xente ou sistemas <span class="emphasis"><em>físicos</em></span>, senón o seu <span class="emphasis"><em>papel</em></span>. Isto significa que cando unha persoa interactúa co sistema de diferentes xeitos (asumindo diferentes papeis) estará representada por varios actores. Por exemplo unha persoa que dá servizo técnico aos clientes por teléfone e recive pedidos dos clientes, no sistema estaría representado por un actor <span class="quote">« <span class="quote">Servizo Técnico</span> »</span> e un actor <span class="quote">« <span class="quote">Comercial</span> »</span> </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="use-case-description"></a>Descrición do caso de uso</h4></div></div></div><p>As descricións dos casos de uso son textos que o explican o caso. Polo xeral toman a forma dunha nota ou documento que está ligado dalgún xeito ao caso de uso, e explica os procesos ou actividades que acontecen nese caso de uso. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="class-diagram"></a>Diagramas de clase</h3></div></div></div><p>Os diagramas de clase mostran as diferentes clases que conforman o sistema e como se relacionan entre si. Sóese dicir que os diagramas de clase son <span class="quote">« <span class="quote">estáticos</span> »</span> porque mostran as clases, xunto cos seus métodos e atributos así como as relacións estáticas entre elas: que clases <span class="quote">« <span class="quote">coñecen</span> »</span> da existencia de outras ou que clases <span class="quote">« <span class="quote">son parte</span> »</span> de outras clases, pero non mostran as chamadas a métodos 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="Umbrello UML Modeller mostrando un diagrama de clases"><div class="caption"><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando un diagrama de clases </p></div></div></div><p>
</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class"></a>Clase</h4></div></div></div><p>Unha clase define os atributos e métodos dun conxunto de obxectos. Todos os obxectos desa clase (instancias da clase) teñen o mesmo comportamento, e teñen o mesmo conxunto de atributos (cada obxecto ten o seu proprio conxunto). Ás veces chámaselles <span class="quote">« <span class="quote">Tipo</span> »</span> no canto de Clase, pero é importante mencionar que non son o mesmo, e que Tipo é un termo máis xeral. </p><p>En <acronym class="acronym">UML</acronym> as clases son representadas por rectángulos, co nome da clase, que poden mostrar tamén os atributos e operacións da clase en outros dous <span class="quote">« <span class="quote">compartimentos</span> »</span> dentro do rectángulo. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="class.png" alt="Representación visual dunha clase en UML"><div class="caption"><p>Representación visual dunha clase en <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>En <acronym class="acronym">UML</acronym> os atributos son mostrados con polo menos o seu nome, e tamén pode mostrar o tipo, valor inicial e outras propiedades. Os atributos tamén poden ser mostrados coa súa visibilidade: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><code class="literal">+</code> Significa que o atributo é <span class="emphasis"><em>público</em></span></p></li><li class="listitem"><p><code class="literal">#</code> Significa que o atributo é <span class="emphasis"><em>protexido</em></span></p></li><li class="listitem"><p><code class="literal">-</code> Significa que o atributo é <span class="emphasis"><em>privado</em></span></p></li></ul></div></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="operation"></a>Operacións</h5></div></div></div><p>As operacións (métodos) tamén son mostradas con polo menos o seu noe, e tamén pode mostrar os seus parámetros e tipo de retorno. Os igual que cos atributos, tamén pode ver a súa visibilidade: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><code class="literal">+</code> Significa que a operación é <span class="emphasis"><em>pública</em></span></p></li><li class="listitem"><p><code class="literal">#</code> Significa que a operación é <span class="emphasis"><em>protexida</em></span></p></li><li class="listitem"><p><code class="literal">-</code> Significa que a operación é <span class="emphasis"><em>privada</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>As clases poden ter modelos, un valor que é usada para unha clase ou tipo non especificado. O tipo do modelo é especificado cando a clase é iniciada (isto é cando se cría un obxecto). Os modelos existen en C++ e serán introducidos en Java 1.5 onde serán chamados Generics. </p></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-associations"></a>Asociacións entre clases</h4></div></div></div><p>As clases poden relacionarse (estar asociadas con) unhas coas outras de distintos xeitos:</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="generalization"></a>Xeneralización</h5></div></div></div><p>A herdanza é un dos conceitos fundamentais da programación orientada a obxectos, na que unha clase <span class="quote">« <span class="quote">gaña</span> »</span> todos os atributos e operacións da clase da que herda, e pode sobrescreber/modificar algúns deles, así como engadir máis atributos e operacións proprias. </p><p>En <acronym class="acronym">UML</acronym>, unha asociación de <span class="emphasis"><em>Xeneralización</em></span> entre dúas clases ponnas nunha hierarquía que representa o conceito de herdanza dunha clase derivada respeito dunha clase base. En <acronym class="acronym">UML</acronym>, as xeneralizacións son representadas por unha liña que conecta as dúas clases, cunha frecha ao lado da clase base. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="generalization.png" alt="Representación visual dunha xeneralización en UML"><div class="caption"><p>Representación visual dunha xeneralización en <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>Asociacións</h5></div></div></div><p>Unha asociación representa unha relación entre clases, e dá a semántica común e a estrutura de moitos tipos de <span class="quote">« <span class="quote">conexóns</span> »</span> entre obxectos.</p><p>As asociacións son o mecanismo que lles permite aos obxectos comunicarse entre si. Describen a conexón entre diferentes clases (a conexón entre os obxectos reais é denominada conexón entre obxectos, ou <span class="emphasis"><em>ligazón</em></span>). </p><p>As asociacións poden ter un papel que especifica o propósito da asociación e pode ser uni ou bidireccional (indica se os dous obxectos participantes na relación poden enviar mensaxes uns aos outros, ou se só un deles sabe do outro). Cada extremo da asociación pode ter tamén unha multiplicidade, que dictamina cantos obxectos neste lado da asociación poden relacionarse cun obxecto do outro lado). </p><p>En <acronym class="acronym">UML</acronym> as asociacións represéntanse como liñas que conectan as clases participantes na relación, e tamén poden mostrar o papel e a multiplicidade de cada un dos participantes. A multiplicidade é mostrada como un rango [mín..máx] de valores non negativos, onde un asterísco (<code class="literal">*</code>) no máximo representa o infinito. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="association.png" alt="Representación visual dunha asociación en UML"><div class="caption"><p>Representación visual dunha asociación en <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>Agregación</h5></div></div></div><p>As agregacións son un tipo especial de asociación na que as dúas clases participantes non teñen o mesmo estatus, senón que teñen unha relación <span class="quote">« <span class="quote">todo-parte</span> »</span>. Unha agregación descrebe como a clase que adopta o papel de todo, está composta por(ten) outras clases, que adoptan o papel de partes. Nas agregacións, a clase que actúa como o todo sempre ten unha multiplicidade de un. </p><p>En <acronym class="acronym">UML</acronym> as agregacións represéntanse mediante unha asociación cun rombo 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="Representación visual dunha relación de agregación en UML"><div class="caption"><p>Representación visual dunha relación de agregación en <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>Composición</h5></div></div></div><p>As composicións son asociación que representan agregacións <span class="emphasis"><em>moi fortes</em></span>. Isto significa que as composicións tamén representan relacións todo-parte, pero cunha relación tan forte que as partes non poden existir por si mesmas. Só existen dentro do todo, e se o todo é destruído as partes tamén.</p><p>En <acronym class="acronym">UML</acronym> as Composicións represéntanse cun rombo 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="Representación visual dunha relación de composición en UML"></div></div></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="other-class-diagram-items"></a>Outros elementos dos diagramas de clase</h4></div></div></div><p>Os diagramas de clase ademais de clases poden conter outro elementos.</p><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="interfaces"></a>Interfaces</h5></div></div></div><p>As interfaces son clases abstractas que representan instancias que non poden ser criadas directamente. Poden conter operacións pero non atributos. As clases poden herdar de interfaces (mediante unha asociación de realización) e as instancias pode estar feitas destes diagramas.</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="datatype"></a>Tipos de datos</h5></div></div></div><p>Os tipos de datos son primitivas que tipicamente veñen incorporadas na linguaxe. Exemplos habituais son os inteiros e os booleanos. Non poden ter relacións con clases, pero as clases poden ter relacións con eles.</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="enum"></a>Enumeracións</h5></div></div></div><p>As enumeracións son listas simples de valores. Un exemplo típico é unha enumeración dos días da semana. As opcións dunha enumeración son denominadas Literais da enumeración. Ao igual cos tipos de datos non poden ter relacións coas clases pero as clases poden ter relacións con elas.</p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="package"></a>Paquetes</h5></div></div></div><p>Os paquetes representan un espazo de nomes na linguaxe de programación. Nos diagramas son usados para representar partes dun sistema que conteñen máis dunha clase, mesmo centos delas.</p></div></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="sequence-diagram"></a>Diagramas de secuencia</h3></div></div></div><p>Os diagramas de secuencia mostran o intercambio de mensaxes (isto é chamadas a métodos) entre varios obxectos nunha situación concreta delimitada no tempo. Os obxectos son instancias das clases. Os diagramas de secuencia fan énfase na orden e tempos nos que se envían as mensaxes aos obxectos.</p><p>Nos diagramas de secuencia os obxectos son representados mediante liñas verticais de pontos co nome do obxecto no cume. O eixo do tempo tamén é vertical, aumentando cara baixo, de tal xeito que as mensaxes son enviasa dun obxecto para outro na forma de frechas co nome e os parámetros da operación. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="sequence-diagram.png" alt="Umbrello UML Modeller mostrando un diagrama de secuencia"><div class="caption"><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando un diagrama de secuencia </p></div></div></div><p>As mensaxes poden ser síncronas, o tipo normal de mensaxe no que o control é pasado á obxecto chamado até que o seu método remate a execución, ou asíncronas, onde o control é devolto directamente ao obxecto que fai a chamada. As mensaxes síncronas teñen unha caixa vertical ao lado do obxecto chamado para mostrar o fluxo de control do programa.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="collaboration-diagram"></a>Diagramas de colaboración</h3></div></div></div><p>Os diagramas de colaboración mostran as interaccións que acontecen entre os obxectos que participan nunha situación dada. Isto é similar á información que se mostra nun diagrama de secuencia pero neste faise fincapé en como acontecen as interaccións no tempo mentres que nos diagramas de colaboración poñen de relevo as relacións entre os obxectos e a súa topoloxía.</p><p>Nos diagramas de colaboración as mensaxes enviadas entre obxectos son representadas por frechas, co nome da mensaxe, os parámetros e a secuencia da mensaxe. Os diagramas de colaboración son adecuados para mostrar un fluxo específico do programa ou unha situación e son un dos mellores tipos de diagrama para demostrar rapidamente ou explicar un proceso na lóxica do programa. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="collaboration-diagram.png" alt="Umbrello UML Modeller mostrando un diagrama de colaboración"><div class="caption"><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando un diagrama de colaboración </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>Os diagramas de estado mostran os diferentes estados dun obxecto durante a súa existencia e os estímulos que fan que o obxecto mude o seu estado. </p><p>Os diagramas de estado consideran os obxectos como <span class="emphasis"><em>máquinas de estados</em></span> ou autómatas finitos que poden estar nun dun conxunto finito de estados e que poden mudar o seu estado mediante un conxunto finito de estímulos. Por exemplo un obxecto do tipo <span class="emphasis"><em>NetServer</em></span> pode estar nun dos seguintes estados durante a súa vida: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>En aguarda</p></li><li class="listitem"><p>A escoitar</p></li><li class="listitem"><p>A traballar</p></li><li class="listitem"><p>Parado</p></li></ul></div><p>e os eventos que poden facer que o obxecto mude de estado son</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>O obxecto é criado</p></li><li class="listitem"><p>O obxecto recebe a mensaxe "escoitar"</p></li><li class="listitem"><p>Un cliente pide unha conexón sobre a rede</p></li><li class="listitem"><p>Un cliente finaliza unha conexón</p></li><li class="listitem"><p>A petizón é executada e finaliza</p></li><li class="listitem"><p>O obxecto recebe a mensaxe "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="Umbrello UML Modeller mostrando un diagrama de estado"><div class="caption"><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando un 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>Os estados son os tixolos cos que se fan os diagramas de estado. Un estado pertence a exactamente unha clase e representa un resumo dos valores que poden tomar os atributos dunha clase. Un estado en <acronym class="acronym">UML</acronym> representa o estado interno dun obxecto nunha clase particular </p><p>Lembre que non todas as alteración nun atributo dun obxecto debe ser representado por un estado senón só aquelas modificación que poden afectar de xeito significativo a como traballe o obxecto</p><p>Hai dous tipos especiais de estado: Inicio e Fin. Son especiais porque nengún evento pode facer que un obxecto volte ao seu estado de Inicio, do mesmo xeito que nengún evento pode facer que un obxecto volte do estado de Fin unha vez que é acadado. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="activity-diagram"></a>Diagrama de actividade</h3></div></div></div><p>Os diagramas de actividade descreben a secuencia do traballo nun sistema coa axuda de Actividades. Os diagramas de actividade son unha forma especial de diagrama de estados, que só (ou maiormente) contén Actividades. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="activity-diagram.png" alt="Umbrello UML Modeller mostrando un diagrama de actividade"><div class="caption"><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> mostrando un diagrama de actividade </p></div></div></div><p>
</p><p>Os diagramas de actividade son similares aos Diagramas de Fluxo dos procedimentos, coa diferenza de que todas as Actividades están claramente ligadas a Obxectos.</p><p>Os diagramas de actividade sempre están asociados ou a unha <span class="emphasis"><em>Clase</em></span>, a unha <span class="emphasis"><em>Operación</em></span> ou a un <span class="emphasis"><em>Caso de uso</em></span>.</p><p>Os diagramas de actividade admiten actividades tanto secuenciais como paralelas. A execución en paralelo é representada mediante ícones Ramificar/Xuntar, e para as actividades con execución en paralelo, non é importante a orden na que son realizadas (poden ser executadas á vez ou unha tras da outra)</p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="activity"></a>Actividade</h4></div></div></div><p>Unha actividade é unha etapa simples dun proceso. Unha actividade é un estado do sistema activo e, polo menos, unha transición saínte. As actividades tamén poden ter máis dunha transición saínte se teñen diferentes condicións. </p><p>As actividades poden formar hierarquías, isto significa que unha actividade pode estar composta por varias actividades <span class="quote">« <span class="quote">de detalle</span> »</span>, neste caso as transicións entrantes e saíntes deben coincidir coas transicións de entrada e saída do diagrama de detalle. </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>Hai uns poucos elementos <acronym class="acronym">UML</acronym> que non teñen valor semántico real para o modelo, pero axudan a aclarar partes do diagrama. Estes elementos son </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Liñas de texto</p></li><li class="listitem"><p>Notas de texto e enganches</p></li><li class="listitem"><p>Caixas</p></li></ul></div><p>As liñas de texto son úteis para engadir un texto informativo breve ao diagrama. Non están ligadas a nengún elemento e non teñen significado para o modelo en si. </p><p>As notas son úteis para engadir información máis detallada acerca dun obxecto ou situación específica. Teñen a grande vantaxe de que poden estar ligadas a elementos <acronym class="acronym">UML</acronym> para mostrar que a nota <span class="quote">« <span class="quote">pertence</span> »</span>a un obxecto ou situación específica. </p><p>As caixas son rectángulos non ligado a nada que poden ser usadas para agrupar elementos e facer os diagramas máis lexíbeis. Non teñen significado lóxico no modelo.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="component-diagram"></a>Diagrama de componentes</h3></div></div></div><p>Os diagramas de componentes mostrans os componentes do sóftware (sexantecnoloxías de componentes como KParts, componentes CORBA ou Java Beans ou só seccións do sistema claramente diferenciábeis) e os artefactos cos que están feitos, como ficheiros de código fonte, bibliotecas de programación ou táboas de bases de datos relacionais.</p><p>As componentes poden ter interfaces (isto é clases abstractas con operacións) que permiten asociacións entre componentes.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-diagram"></a>Diagramas de implementación</h3></div></div></div><p>Os diagramas de implementación mostran as instancias en tempo de execución e as súas asociación. Inclúen Nós, que son recursos físicos, tipicamente un ordenador. Tamén mostran as interfaces e os obxectos (intancias de clases).</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="entity-relationship-diagram"></a>Diagramas de relacións entre entidades</h3></div></div></div><p>Os diagramas de relacións entre entidades (Diagramas ER) mostran o deseño conceptual das bases de datos. Con eles tense unha visión das diferentes entidades (conceitos) do sistema de información e das relacións e restricións existentes entre elas. Emprégase unha extensión dos diagramas de relacións entre entidades, chamada "Diagramas ampliados de relacións entre entidades" (EER), para incorporar técnicas de deseño orientado a obxectos 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="Umbrello mostrando un diagrama de relacións entre entidades"><div class="caption"><p>Umbrello mostrando un diagrama de relacións entre entidades </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>Unha <span class="emphasis"><em>entidade</em></span> é calquer conceito do mundo real que teña existencia independente. Pode ser un obxecto físico (por exemplo un ordenador, ou un bolígrafo) ou só ter existencia conceptual (p.ex: un curso da universidade). Cada entidade ten un conxunto de atributos que descreben as propriedades da entidade.</p><p><span class="emphasis"><em>Nota:</em></span> Non hai unha notación estándar para os diagramas ER. Os diferentes textos que tratan desta materia empregan notacións distintas. Os conceitos e notacións dos diagramas EER empregados en Umbrello son tomados do seguinte libro: <span class="emphasis"><em>Elmasri R. e Navathe S. (2004). Fundamentals of Database Systems 4th edn. Addison Wesley</em></span> </p><p>Nun diagrama ER, as entidades son representadas por rectángulos, co nome da entidade na parte superior, e tamén pode mostras os atributos da entidade en outro <span class="quote">« <span class="quote">compartimento</span> »</span> dentro do rectángulo. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="entity.png" alt="Representación visual dunha entidade nun diagrama ER"><div class="caption"><p>Representación visual dunha entidade nun 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 represéntanse polo seu nome nun compartimento diferente da entidade á que pertencen. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="constraint"></a>Restricións</h5></div></div></div><p>As restricións nus diagramas ER especifican as restricións nos datos do esquema de información. </p><p>Umbrello admite catro tipos de restricións: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="emphasis"><em>Chave primaria</em></span> O conxunto de atributos declarados como <span class="emphasis"><em>chave primaria</em></span> son únicos da entidade. Só pode haber unha chave primaria nunha entidade e nengún dos atributos que a constitúan pode ser NULO. </p></li><li class="listitem"><p><span class="emphasis"><em>Chave única</em></span>: O conxunto de atributos declarados como <span class="emphasis"><em>únicos</em></span> son específicos da entidade. Poda haber varias restricións de unicidade nunha entidade. Os atributos que a constitúen poden ser NULO. As chaves únicas e as chaver primarias idenfican univocamente unha fila dunha táboa (entidade)</p></li><li class="listitem"><p><span class="emphasis"><em>Chave externa</em></span>: Unha chave externa é unha restrición referencial entre dúas táboas. A chave externa identifica unha coluna ou conxunto de colunas nunha táboa (referinte) que se refete a unha coluna ou conxunto de colunas de outra táboa (referida). As colunas na táboa referida deben formar unha chave primaria ou única. </p></li><li class="listitem"><p><span class="emphasis"><em>Restrición por comprobación</em></span>: Unha restrición por comprobación (tamén coñecida por restrición de comprobación da táboa) é unha condición que define os datos válidos cando se engade ou actualiza unha entrada nunha táboa dunha base de datos relacional. Estas restricións aplícanse a cada fila da táboa. A restrición debe ser un predicado. Pode referirse a unha só ou a varias colunas da táboa. </p><p>Exemplo: prezo
&gt;=0 </p></li></ul></div><p>
</p></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="extended-entity-relationship-concepts"></a>Conceitos dos diagramas de relacións ampliadas entre entidades (EER)</h4></div></div></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="specialization"></a>Especialización</h5></div></div></div><p>A especialización é unha maneira de formar novas entidades empregando entidades xa definidas. As entidades novas, coñecidas como entidades derivadas, toman (herdan) atributos das preexistentes, ás que se coñece por entidades base. O propósito é reutilizar datos xa existentes con pouca ou nengunha modificación.</p><p>En Umbrello, pódese especificar que a especialización sexa Disxunta ou Sobreposicionante</p><div class="sect5"><div class="titlepage"><div><div><h6 class="title"><a name="disjoint-specialization"></a>Especialización disxunta</h6></div></div></div><p>A especialización disxunta indica que as subclases da especialización deben ser disxuntas. Isto significa que unha entidade pode ser membro de como moito unha das entidades derivadas da especialización</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="disjoint-specialization.png" alt="Representación visual da especialización disxunta nun diagrama EER"><div class="caption"><p>Representación visual da especialización disxunta nun diagrama EER</p></div></div></div><p> </p></div><div class="sect5"><div class="titlepage"><div><div><h6 class="title"><a name="overlapping-specialization"></a>Especialización sobreposicionante</h6></div></div></div><p>Cando as entidades derivadas non teñen a restrición de ser disxuntas, dise que o seu conxunto de entidades está en especialización con sobreposición. Isto significa que a mesma entidade do mundo real pode ser membro de máis dunha entidade derivada da especialización.</p><p> </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="overlapping-specialization.png" alt="Representación visual da especialización sobreposicionante nun diagrama EER"><div class="caption"><p>Representación visual da especialización sobreposicionante nun diagrama EER</p></div></div></div><p> </p></div><div class="sect5"><div class="titlepage"><div><div><h6 class="title"><a name="category"></a>Categoría</h6></div></div></div><p> Dise que unha entidade derivada é unha <span class="emphasis"><em>Categoría</em></span> cando representa unha coleccion de obxectos que é un subconxunto da unión dos distintos tipos de dato. A categoría modelízase cando surxe a necesidade dunha única relación superclase/subclase con máis dunha superclase, onde a superclase representa diferentes tipos de entidades. (Como a herdanza múltipla na programación orientada a obxectos). </p><p> </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="category.png" alt="Representación visual dunha Categoría nun diagrama EER"><div class="caption"><p>Representación visual dunha Categoría nun diagrama EER</p></div></div></div><p> </p></div></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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="working-with-umbrello.html">Próximo</a></td></tr><tr><td class="prevCell">Fundamentos de <acronym class="acronym">UML</acronym> </td><td class="upCell">Fundamentos de <acronym class="acronym">UML</acronym></td><td class="nextCell"> Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="uml-elements.html">Próximo</a></td></tr><tr><td class="prevCell">Introdución </td><td class="upCell"> </td><td class="nextCell"> Elementos <acronym class="acronym">UML</acronym></td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="working-with-umbrello.html"><html><head><title>Capítulo 3. Traballar con 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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="prev" href="uml-elements.html" title="Elementos UML"><link rel="next" href="load-save.html" title="Criar, cargar e gardar 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"> Traballar con <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óximo</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. Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h1></div></div></div><p>Este capítulo preséntalle a interface de usuario de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> e aprenderalle todo o que precisa saber para comezar a modelar. Todas as acción de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> están acesíbeis mediante o menú e as barras de ferramentas, pero <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> tamén fai uso dos menús contextuais do botón <span class="mousebutton">dereito</span> do rato. Pode premer co botón <span class="mousebutton">dereito</span> do rato en case calquer elemento da área de traballo de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> ou vista en árbore para obter un menú coas funcións máis úteis que poden ser aplicadas ao elemento en concreto no que está a traballar. Algúns usuarios atopan isto algo lioso ao primeiro porque están afeitos a traballar co menú e coas barras de ferramentas, pero unha vez que se acostuma a premer no botón <span class="mousebutton">dereito</span> acelerará moito o seu traballo. </p><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="user-interface"></a>A interface do usuario</h2></div></div></div><p>A fiestra principal de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> está dividida en tres áreas que o axudarán a ter unha vista global do sistema e a aceder aos diferentes diagramas rapidamente mentres traballa no seu modelo. </p><p>Estas áreas son denominadas:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Vista en árbore</p></li><li class="listitem"><p>Área de traballo</p></li><li class="listitem"><p>Fiestra de documentación</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="A interface de usuario de Umbrello UML Modeller"><div class="caption"><p>A interface de usuario de <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>A vista en árbore</h3></div></div></div><p>A vista en árbore polo xeral está localizada no lado de riba á esquerda da xanela e mostra todos os diagramas, clases, actores e casos de uso que conforman o modelo. A vista en árbore permítelle obter unha vista global rápida dos elementos que compoñen o modelo. Esta vista tamén fornece un xeito rápido de cambiar entre os diagramas do modelo e de inserir elementos do modelo no diagrama actual. </p><p>Se está a traballar nun modelo con máis que só unhas poucas clases e diagramas, a vista en árbore pode axudalo a non perderse, organizando os elementos do modelo en cartafoles. Pode criar cartafoles escollendo a opción apropriada do menú contextual (prema co botón <span class="mousebutton">dereito</span> do rato nun dos cartafoles da vista en árbore) e pode organizar os elementos movéndoos para o cartafol apropiado (arrastrar e soltar) </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="documentation-window"></a>Fiestra de documentación</h3></div></div></div><p>A fiestra da documentación é a pequena fiestra situada no fondo á esquerda en <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, e dalle unha antevisión rápida da documentación do ítem actualmente escollido. A fiestra de documentación é bastante pequena porque foi pensada para permitirlle unha visión por riba da documentación do elemento e para ocupar o mínimo espazo posíbel. Se precisa consultar a documentación en máis detalle poderá abrir as propiedades do ítem. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="work-area"></a>Área de traballo</h3></div></div></div><p>A área de traballo é a fiestra principal de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> e é onde acontece a actividade real. Use a área de traballo para ver os diagramas do modelo. Esta área mostra o diagrama activo. Na actualidade só se pode ver un diagrama á vez nesta área. </p></div></div><FILENAME filename="load-save.html"><html><head><title>Criar, cargar e gardar 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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Capítulo 3. Traballar con Umbrello UML Modeller"><link rel="prev" href="working-with-umbrello.html" title="Capítulo 3. Traballar con Umbrello UML Modeller"><link rel="next" href="edit-model.html" title="Editar 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"> Criar, cargar e gardar 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">Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="edit-model.html">Próximo</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>Criar, cargar e gardar modelos</h2></div></div></div><p>A primeira cousa que precisa para comezar a facer algo útil con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> é criar un modelo no que traballar. Cando inicie <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, este sempre carga o último modelo usado ou cria un modelo novo baleiro (dependendo das súas preferencias configuradas no diálogo de configuración). Isto permítelle comezar o traballo sen demoras. </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="new-model"></a>Novo modelo</h3></div></div></div><p>No momento no que precise criar un modelo novo poderá facelo mediante a opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Novo</span></span> do menú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Ficheiro</span></span>, ou premendo no ícone <span class="guiicon">Novo</span> na barra de ferramentas da aplicación. Se está a traballar nun modelo que ten modificacións sen gardar <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> preguntaralle que debe guardar os cambioa antes de comezar o novo. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="save-model"></a>Gardar o modelo</h3></div></div></div><p>Pode gardar o modelo en calquer momento mediante a opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Gardar</span></span> do menú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Ficheiro</span></span> ou premendo no botón <span class="guiicon">Gardar</span> na barra de ferramentas do programa. Se precisa gardar o modelo cun nome diferentes pode usar a opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Gardar como</span></span> no menú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Ficheiro</span></span>. </p><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> tamén lle ofrece a posibilidade de gardar automaticamente o traballo cada certo tempo. Pode indicar se quer esta opción así como o período de tempo na <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Configuración</span></span> de <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>Cargar modelo</h3></div></div></div><p>Para cargar un modelo xa existente pode ou escoller a opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Abrir</span></span> no menú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Ficheiro</span></span> ou premer no ícone <span class="guiicon">Abrir</span> na barra de ferramentas do programa. Os modelos usados máis recentemente tamén están disponíbeis no submenú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Abrir recente</span></span> no menú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Ficheiro</span></span> para facilitar o aceso aos modelos usados máis habitualmente. </p><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> só pode traballar nun modelo á vez, polo que se lle pide ao programa que cargue un modelo e o modelo que teña aberto foi modificado tras a última vez que o gardou, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> preguntaralle se debe gardar as modificacións para evitar perder o traballo. Pode iniciar dúas ou máis instancias de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, tamén pode copiar e apegar entre instancias. </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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="edit-model.html">Próximo</a></td></tr><tr><td class="prevCell">Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> </td><td class="upCell">Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Editar modelos</td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="edit-model.html"><html><head><title>Editar 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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Capítulo 3. Traballar con Umbrello UML Modeller"><link rel="prev" href="load-save.html" title="Criar, cargar e gardar modelos"><link rel="next" href="add-remove-diagrams.html" title="Engadir e eliminar 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"> Editar 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">Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="add-remove-diagrams.html">Próximo</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>Editar modelos</h2></div></div></div><p>En <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, hai esencialmente dúas maneiras de editar os elementos no modelo. </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Editar os elementos do modelo directamente mediante a Vista en árbore</p></li><li class="listitem"><p>Editar os elementos do modelo mediante un Diagrama</p></li></ul></div><p>
</p><p>Se usa o menú contextual dos diferentes itens na Vista en árbore poderá engadir, borrar e modificar case todos os elementos do modelo. Se preme co botón <span class="mousebutton">dereito</span> nos cartafoles na Vista en árbore terá a opción de criar os diferentes tipos de diagramas e tamén, dependendo de se o cartafol é unha <span class="emphasis"><em>Vista de casos de uso</em></span> ou unha <span class="emphasis"><em>Vista lóxica</em></span>, Actores, Casos de uso, Clases, etc. </p><p>Cando teña engadidos elementos ao modelo tamén poderá editar un elemento acedendo ao diálogo de propiedades, que se mostrará se escolle a opción <span class="emphasis"><em>Propriedades</em></span> no menú contextual mostrado cando preme do botón <span class="mousebutton">dereito</span> nos elementos na Vista en árbore. </p><p>Tamén pode editar o modelo criando ou modificando os elementos mediante diagramas. Poderá encontrar máis detalles acerca de como facer isto nas seguintes seccións. </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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="add-remove-diagrams.html">Próximo</a></td></tr><tr><td class="prevCell">Criar, cargar e gardar modelos </td><td class="upCell">Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Engadir e eliminar diagramas</td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="add-remove-diagrams.html"><html><head><title>Engadir e eliminar 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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Capítulo 3. Traballar con Umbrello UML Modeller"><link rel="prev" href="edit-model.html" title="Editar modelos"><link rel="next" href="edit-diagram.html" title="Editar 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"> Engadir e eliminar 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">Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="edit-diagram.html">Próximo</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>Engadir e eliminar diagramas</h2></div></div></div><p>O modelo <acronym class="acronym">UML</acronym> consiste nun conxunto de elementos <acronym class="acronym">UML</acronym> e asociacións entre eles. Porén non pode ver o modelo directamente, debe usar os <span class="emphasis"><em>Diagramas</em></span> para velo. </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="create-diagram"></a>Criar diagramas</h3></div></div></div><p>Para criar un diagrama novo no modelo simplesmente escolla o tipo de diagrama que precisa en <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Diagrama</span></span> <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Menú</span></span> e baptíceo. O diagrama será criado e activarase, e poderá velo imediatamente na Vista en árbore. </p><p>Lembre que <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> fai moito uso dos menús contextuais: tamén pode premer co botón <span class="mousebutton">dereito</span> do rato nun cartafol na Vista en árbore e escoller o tipo de diagrama apropriado no submenú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guisubmenu">Novo</span></span> do menú contextual. Lembre que só pode criar Diagramas de caso de uso nos cartafoles de vista de casos de uso, e os outros tipos de diagrama só poden ser criado nos cartafoles de vista lóxica. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="remove-diagram"></a>Eliminar diagramas</h3></div></div></div><p>Se ten que eliminar un diagrama do seu modelo, poderá facelo se o activa e escolle <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Borrar</span></span> no menú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Diagrama</span></span>. Tamén pode facer isto se escolle <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Borrar</span></span> no menú contextual do diagrama na Vista en árbore </p><p>Xa que eliminar un diagrama é algo serio que pode provocar a perda de traballo se é feito por acidente, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> requeriralle que confirme a operación antes de efectuala. Cando se borra un diagrama, se o ficheiro é gardado non hai forma de reverter esta acción. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="rename-diagram"></a>Mudar o nome dos diagramas</h3></div></div></div><p>Se quer mudar o nome dun diagrama pode facelo facilmente escollendo a opción Mudar o nome no menú do botón <span class="mousebutton">dereito</span> do rato na Vista en árbore. </p><p>Outro xeito de mudar o nome dun diagrama é facer isto mediante o seu diálogo de propriedades, que se obtén escollendo Propriedades no menú contextual ou facendo duplo-click nel na vista en árbore. </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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="edit-diagram.html">Próximo</a></td></tr><tr><td class="prevCell">Editar modelos </td><td class="upCell">Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Editar diagramas</td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="edit-diagram.html"><html><head><title>Editar 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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="working-with-umbrello.html" title="Capítulo 3. Traballar con Umbrello UML Modeller"><link rel="prev" href="add-remove-diagrams.html" title="Engadir e eliminar diagramas"><link rel="next" href="code-import-generation.html" title="Capítulo 4. Importación de fontes e xeración de código fonte"><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"> Editar 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">Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"><a accesskey="n" href="code-import-generation.html">Próximo</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>Editar diagramas</h2></div></div></div><p>Cando se traballa nun diagrama, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> tentará guialo aplicando algunhas regras de validez dos elemento no tipo de diagrama, así como as relacións que poden existir entre eles. Se é un experto en <acronym class="acronym">UML</acronym> probabelmente nen se decate, pero isto axudará aos inexpertos en <acronym class="acronym">UML</acronym> a criar diagramas que sigan os estándares. </p><p>Cando teña criados os diagrama é hora de comezar a editalos. Aquí poderá detactarse da diferenza (para os inexpertos subtil) entre editar o diagrama e e editar o <span class="emphasis"><em>modelo</em></span>. Como xa sabe, os diagramas son <span class="emphasis"><em>vistas</em></span> do modelo. Por exemplo, se cria unha clase editando un diagrama de clase, en realidade está a editar ambos os dous, o diagrama e o modelo. Se troca a cor ou outra opción de visualización dunha clase no diagrama de clase, só estará a editar o diagrama, pero nada terá mudado no 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>Unha das primeiras cousas que fará cando edite un diagrama novo é inserir elementos nel (clases, actores, casos de uso, <abbr class="abbrev">etc.</abbr>). Basicamente hai dous xeitos de facer isto:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Arrastrar elementos existentes no modelo desde a vista en árbore</p></li><li class="listitem"><p>Criar elementos novos no modelo e engadilos ao seu diagrama ao mesmo tempo, usando unha das ferramentas de edición na barra de ferramentas de traballo</p></li></ul></div><p>Para inserir elementos que xa existan no modelo, simplesmente arrástreos desde a vista en árbore e déixeos onde os desexe pór no diagrama. Sempre poderá desprazar os elementos no diagrama usando a ferramenta de selección </p><p>A segunda maneira de engadir elementos ao diagrama é usando as ferramentas de edición da barra de traballo (lembre que isto tamén engadirá os elementos ao modelo). </p><p>A barra de ferramentas de traballo antes estaba localizada por omisión no extremo dereito da fiestra da aplicación, desde <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> 1.2 está na parte de riba da fiestra. Pode acoplala en outro lugar ou tela flutuante se o prefere. As ferramentas disponíbeis nesta barra de ferramentas (os botóns que ve nela) cambian dependendo do tipo de diagrama no que estexa a traballar. O botón da ferramenta actualmente escollida está activo na barra de ferramentas. Pode cambiar para a ferramenta de selección premendo a tecla <span class="keycap"><strong>Esc</strong></span>. </p><p>Cando teña escollida unha ferramenta de selección na barra de ferramentas de traballo (por exemplo, a ferramenta para inserir clases) o ponteiro do rato converterase nunha cruz, e poderá inserir os elementos no modelo só con premer no diagrama. Lembre que os elementos en <acronym class="acronym">UML</acronym> deben ter un <span class="emphasis"><em>Nome único</em></span>. Polo que se nun diagrama ten unha clase de nome <span class="quote">« <span class="quote">ClaseA</span> »</span> e logo usa a ferramenta de inserir clase para inserir unha clase noutro diagrama non lle poderá dar tamén a esta o nome <span class="quote">« <span class="quote">ClaseA</span> »</span>. De suporse que estes dous elementos son diferentes, terá que darlles nomes únicos. Se está a tentar engadir o <span class="emphasis"><em>mesmo</em></span> elemento no diagrama, entón a ferramenta de Inserir clase non é a correcta. Deberá usar arrastrar e soltar para inserir a clase desde a vista en árbore. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="delete-elements"></a>Borrar elementos</h3></div></div></div><p>Pode borrar calquer elemento escollendo a opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Eliminar</span></span> no seu menú contextual. </p><p>Tamén aquí hai unha <span class="emphasis"><em>grande</em></span> diferenza entre eliminar un obxecto dun diagrama, e eliminar un obxecto do modelo: se elimina un obxecto dun diagrama, só está a borralo dese diagrama en particular: o elemento aínda será parte do modelo e se hai outros diagramas a usar o mesmo elemento non irán sofrir nengún cambio. Aliás, se elimina o elemento da vista en árbore, en realidade está a borrar o elemento do <span class="emphasis"><em>modelo</em></span>. Xa que o elemento deixa de existir no modelo, será automaticamente eliminado de todos os diagramas nos que apareza. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="edit-elements"></a>Editar elementos</h3></div></div></div><p>Pode editar a maioría dos elementos <acronym class="acronym">UML</acronym> do modelo e diagramas abrindo o diálogo de propiedades e escollendo as opcións apropriadas. Para editar as propriedades dun obxecto, escolla <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Propriedades</span></span> no menú contextual (prema o botón <span class="mousebutton">dereito</span> do rato). Cada elemento ten un diálogo que consiste en várias páxinas onde pode configurar as opcións correspondentes a ese elemento. Nalgúns elementos, como os actores, só pode configurar un par de opción, como o nome do obxecto e a documentación, mentres que noutros elementos, como as clases, pode editar os seus atributos e operacións, escoller o que quer que se vexa no diagrama (toda a sinatura da operación ou só o nome, etc) e mesmo as cores que quer usar para e liña e recheo da representación da clase no diagrama. </p><p>Na maioría dos elementos <acronym class="acronym">UML</acronym> tamén poderá abrir o diálogo de propiedades se fai duplo-click nel se está a usar a ferramenta de selección (frecha). A excepción a isto son as Asociacións, neste caso un duplo-click cria un ponto de enganche. Para as asociación deberá usar o menú contextual do botón <span class="mousebutton">dereito</span> do rato para ver o diálogo de propiedades. </p><p>Lembre que tamén pode escolles a opción das propiedades no menú contextual dos elementos na vista en árbore. Isto tamén lle permitirá editar as propiedades dos diagramas, como configurar se a grella debe ser mostrada ou non. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="edit-classes"></a>Editar clases</h3></div></div></div><p>Aínda que a edición da propiedades dos obxectos xa foi tratada na anterior sección, as clases merecen unha sección especial porque son un pouco máis complexas e teñen máis opcións que a maioría dos elementos <acronym class="acronym">UML</acronym>. </p><p>No diálogo de propiedades da clase pode configurar todo, desde a cor que usa ás operacións e atributos que ten. </p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-general-settings"></a>Configuración xeral da clase</h4></div></div></div><p>A páxina de configuración xeral do diálogo de propiedades explícase só. Aquí pode mudar o nome da clase, a súa visibilidade, documentación, <abbr class="abbrev">etc.</abbr> Esta páxina sempre está disponíbel. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-attributes-settings"></a>Configuración dos atributos da clase</h4></div></div></div><p>Na páxina de configuración dos atributos poderá engadir, editar ou eliminar atributos (variábeis) da clase. Pode subir ou baixar os atributos na lista cos botóns con frechas. Esta páxina sempre está disponíbel. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-operations-settings"></a>Configuración das operacións da clase</h4></div></div></div><p>De xeito similar á paxina de configuración dos atributos, na de Operación poderá engadir, editar ou eliminar operacións para a clase. Cando engade ou edita unha operación, introduce os datos básicos no diálogo de <span class="emphasis"><em>Propiedades da operación</em></span>. Se quer engadir parámetros á operación deberá premer o botón <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guibutton">Parámetro novo</span></span>, que mostrará o diálogo de <span class="emphasis"><em>Propiedades do parámetro</em></span>. Esta páxina sempre está disponíbel </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-template-settings"></a>Configuración do modelo da clase</h4></div></div></div><p>Esta páxina permítelle engadir modelos de clase que son clases ou tipos de datos sen especificar. En Java 1.5 son denominados "Generics". </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-associations-page"></a>Páxina de asociacións da clase</h4></div></div></div><p>A páxina de <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Asociacións da clase</span></span> mostra todas as asociacións desta clase no diagrama actual. Se fai duplo-click nunha asociación mostrará as propiedades, e dependendo do tipo de asociación poderá modificar algúns parámetros como a multiplicidade e o nome do papel. Se a asociación non permite que se modifiquen estas opcións, o diálogo de Propiedades da asociación será de só-leitura e só poderá modificar a documentación asociada con esta asociación. </p><p>Esta páxina só está disponíbel se abre as Propiedades da clase desde un diagrama. Se escolle as propiedades da clase no menú contextual na vista en árbore non estará disponíbel. </p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-display-page"></a>Páxina de visualización da clase</h4></div></div></div><p>Na páxina de <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Opcións de visualización</span></span>, poderá indicar o que se debe mostrar no diagrama. Unha clase pode ser mostrada como un simples rectángulo co nome da clase nel (útil se ten moitas clases no seu diagrama, ou se polo de agora non está interesado nos detalles de cada clase) ou tan completo como mostrando paquetes, estereotipos e atributos e operación coa sinatura completa e a súa visibilidade </p><p>Dependendo da cantidade de información que queira ver poderá escoller as opcións correspondentes nesta páxina. As modificacións que faga aquí só son <span class="emphasis"><em>opcións de visualización</em></span> para o diagrama. Isto significa que <span class="quote">« <span class="quote">acochar</span> »</span> as operacións dunha clase só fará que non se mostren no diagrama, pero as operacións aínda serán parte do seu modelo. Esta opción só está disponíbel se escolle as propiedades da clase desde un diagrama. Se simplesmente as abre desde a vista en árbore esta páxina non estará porque tais opcións de visualización non teñen sentido neste caso</p></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="class-color-page"></a>Páxina de cor da clase</h4></div></div></div><p>Na páxina de <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Cor do widget</span></span> poderá configurar as cores que quer para a liña e recheo do widget. Esta opción só ten sentido para as clases que están a ser mostradas nos diagramas, e non estará se abre o diálogo de propiedades da clase na vista en árbore. </p></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="associations"></a>Asociacións</h3></div></div></div><p>As asociacións relacionan dous obxectos <acronym class="acronym">UML</acronym> entre si. Normalmente as asociacións son definidas entre dúas clase, pero algúns tipos de asociación pode existir tamén entre casos de uso e actores. </p><p>Para criar unha asociación escolla a ferramenta axeitada na barra de ferramentas de traballo (asociación xenérica, xeralización, agregación, <abbr class="abbrev">etc.</abbr>) e prema no primeiro elemento que participe na asociación e logo no segundo elemento participante. Lembre que son dous clicks, un en cada un dos obxectos a participar na asociación, <span class="emphasis"><em>non</em></span> arratre desde un obxecto para o outro. </p><p>Se tenta usar unha asociación dun xeito que viole a especificación <acronym class="acronym">UML</acronym>, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> rexeitará criar a asociación e mostrará unha mensaxe de erro. Este será o caso se, por exemplo, existindo unha xeralización desde a clase A para a clase B, tenta criar outra xeralización da clase B para a clase A </p><p>Se preme co botón <span class="mousebutton">dereito</span> nunha asociación mostrará un menú contextual coas acción que pode aplicarlle. Se precisa borrar unha asociación, escolla a opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Eliminar</span></span> no seu menú contextual. Tamén pode escoller a opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Propiedades</span></span> e, dependendo do tipo de asociación, editar os atributos tais como papeis e multiplicidade. </p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="anchor-points"></a>Pontos de enganche</h4></div></div></div><p>As asociacións son debuxadas, por omisión, como liñas rectas que conectan os dous obxectos. </p><p>Pode engadir puntos de enganche para dobrar unha asociación se fai <span class="mousebutton">duplo-click</span> sobre a liña de asociación. Isto inserirá un ponto de enganche (mostrado como un ponto azul cando escolle a liña da asociación) que pode desprazar para darlle forma á asociación </p><p>Se precisa eliminar un punto de enganche, faga <span class="mousebutton">duplo-click</span> nel para eliminalo </p><p>Lembre que a única maneira de editar as propiedades dunha asociación é mediante o menú contextual. Se tenta facer <span class="mousebutton">duplo-click</span> nela como cos outros obxectos <acronym class="acronym">UML</acronym>, inserirá un ponto de enganche. </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, liñas de texto e caixas son elementos que poden estar presentes en calquer tipo de diagrama e non teñen valor semántico real, pero son moi útiles para engadir comentarios adicionais ou explicacións que poden simplificar a comprensión do diagrama. </p><p>Para engadir unha nota ou liña de texto, escolla a ferramenta correspondente na barra de ferramentas de traballo e prema na localización do diagrama onde queira pór o comentario. Pode editar o texto abrindo o elemento mediante o menú contextual ou no caso de notas tamén cun <span class="mousebutton">duplo-click</span> sobre ela. </p><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="anchors"></a>Enganches</h4></div></div></div><p>Os enganches son usados para ligar un nó de texto e outro elemento <acronym class="acronym">UML</acronym>. Por exemplo, normalmente usará un nó de texto para explicar ou facer algún comentario acerca dunha clase ou asociación particular, neste caso pode usar o enganche para aclarar que a nota <span class="quote">« <span class="quote">pertence</span> »</span> a ese elemento en concreto. </p><p>Para engadir un enganche entre unha nota e outro elemento <acronym class="acronym">UML</acronym>, use a ferramenta de enganche na barra de ferramentas de traballo. Primeiro debe premer na nota e logo no elemento <acronym class="acronym">UML</acronym> co que a quer ligar. </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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="code-import-generation.html">Próximo</a></td></tr><tr><td class="prevCell">Engadir e eliminar diagramas </td><td class="upCell">Traballar con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></td><td class="nextCell"> Importación de fontes e xeración de código fonte</td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="load-save.html">Próximo</a></td></tr><tr><td class="prevCell">Elementos <acronym class="acronym">UML</acronym> </td><td class="upCell"> </td><td class="nextCell"> Criar, cargar e gardar modelos</td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="code-import-generation.html"><html><head><title>Capítulo 4. Importación de fontes e xeración de código fonte</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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="prev" href="edit-diagram.html" title="Editar diagramas"><link rel="next" href="code-import.html" title="Importación 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"> Importación de fontes e xeración de código fonte</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óximo</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. Importación de fontes e xeración de código fonte</h1></div></div></div><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> é unha ferramenta de modelado <acronym class="acronym">UML</acronym>, e como tal o seu propósito principal é axudalo na <span class="emphasis"><em>análise e deseño</em></span> de sistemas. Porén, para facer a transición entre o deseño e a <span class="emphasis"><em>implementación</em></span>, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> permítelle xerar código fonte en diferentes linguaxes de programación. Tamén, se quer comezar a usar <acronym class="acronym">UML</acronym> nun proxecto en C++ xa iniciado, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> pode axudalo a criar un modelo do sistema apartir do código fonte analisándoo e importando as clases que atope nel. </p><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="code-generation"></a>Xerazón de fontes</h2></div></div></div><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> pode xerar código fonte en varias linguaxes de programación baseándose no seu modelo <acronym class="acronym">UML</acronym> para axudalo a comezar a implementación do seu proxecto. As fontes xeradas consisten nas declaracións da clase, cos seus métodos e atributos para que poda <span class="quote">« <span class="quote">preencher os ocos</span> »</span> fornecendo a funcionalidade das operacións das clases. </p><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> 1.2 permite a xerazón de código fonte en ActionScript, Ada, C++, CORBA IDL, <span class="trademark">Java</span>™, JavaScript, <acronym class="acronym">PHP</acronym>, Perl, Python, SQL e XMLSchema. </p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="generate-code"></a>Xerar o código fonte</h3></div></div></div><p>Para xerar código fonte con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, primeiro debe criar ou cargar un modelo que conteña polo menos unha clase. Cando estexa listo para comezar a escreber algo de código fonte, escolla o <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Asistente de xerazón de código fonte</span></span> no menú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Código</span></span> para iniciar un asistente que o irá guiar através do proceso de xerazón das fontes. </p><p>O primeiro paso é escolle as clases para as que queira xerar código fonte. Por omisión escolleranse todas as clases do modelo, e poderá quitar aquelas para as que non queira xerar fontes movéndoas para a lista do lado esquerdo. </p><p>O seguinte paso do asistente permítelle modificar os parámetros que o xerador de fontes usará para escreber as fontes. Están disponíbeis as seguintes opcións: </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="generation-options.png" alt="Opcións da xerazón de xódigo fonte en Umbrello UML Modeller"><div class="caption"><p>Opcións da xerazón de fontes en <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>Opcións de xerazón</h4></div></div></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm933"></a>Verbosidade do código</h5></div></div></div><p>A opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Escribir comentarios de documentación aínda que estexa vacío</span></span> indícalle ao xerador de fontes que escreba comentarios do estilo /** bla,bla,bla */ aínda que os bloques cos comentarios estexan baleiros. Se engadiu documentación ás  clases, métodos ou atributos no modelo, o Xerador de código escreberá eses comentarios como documentación <span class="application">Doxygen</span> con independencia do que indique aquí, pero se escolle esta opción <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> escreberá bloques de comentarios para todas as clases, métodos e atributos mesmo se non hai documentación no modelo, neste caso deberá documentar as clases máis tarde directamente nas fontes. </p><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Escribir os comentarios das seccións aínda que estas estexan vacías</span></span> fai que <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> escreba comentarios nas fontes para delimitar as diferentes seccións dunha clase. 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 seccións correspondentes. Se escolle esta opción <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> escribirá comentarios en todas as seccións da clase mesmo se a sección está baleira. Por exemplo, escreberá un comentario dicindo <span class="quote">« <span class="quote">métodos protexidos</span> »</span> mesmo se a clase non ten métodos protexidos. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm949"></a>Cartafoles</h5></div></div></div><p><span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Escribir todos os ficheiros xerados no cartafol</span></span>. Aquí pode escoller o cartafol onde quer que <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> poña as fontes xeradas. </p><p>A opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Incluír os ficheiros de definicións no cartafol</span></span> permítelle inserir un cabezallo ao comezo de cada ficheiro xerado. Os ficheiros de definicións poden conter información acerca do copyright ou licenza e conteñen variábeis que son avaliadas no momento da xerazón. Pode botar unha ollada aos modelos de ficheiro de definicións distribuidos con <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> para ver como usar estas variábeis para substituír o seu nome ou a data actual cando se produza a xerazón. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm959"></a>Política de sobrescritura</h5></div></div></div><p>Esta opción indícalle a <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> o que facer se o ficheiro que quer criar xa existe no cartafol de destino. <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> <span class="emphasis"><em>non pode modificar os ficheiros de fontes xa existentes</em></span>, polo que terá que escoller entre sobrescribir o ficheiro existente, saltar a xerazón dese ficheiro ou permitirlle a <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> escoller un nome diferente para o ficheiro. Se escolle a opción de usar un nome diferente, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> engadirá un sufixo ao nome do ficheiro. </p></div><div class="sect4"><div class="titlepage"><div><div><h5 class="title"><a name="idm971"></a>Linguaxe</h5></div></div></div><p>Por omisión, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> xerará o código na linguaxe que escolleu como Linguaxe activa, pero co asistente para xerazón de código terá a opción de mudar isto para outra linguaxe. </p></div></div><div class="sect3"><div class="titlepage"><div><div><h4 class="title"><a name="generation-wizard-generation"></a>Asistente de xerazón de código</h4></div></div></div><p>O terceiro e último paso do asistente mostra o estado do proceso de xerazón de código fonte. Só precisa premer no botón de xerar para obter as clases. </p><p>Lembre que as opcións que escolla no asistente de xerazón de código só son válidas para a xerazón actual. A próxima vez que execute o asistente deberá escoller de novo as opcións (o cartafol para as definicións, a política de sobrescritura, e demais). Pode escoller os valores por omisión usados por <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> na sección <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guilabel">Xerazón de código</span></span> coa configuración de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>, disponíbel en <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Configuración</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Configurar <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>...</span></span> </p><p>Se configurou as opcións de xerazón de código correctamente e quer xerar algún código sen usar o asistente, pode escoller <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Xerar todo o código</span></span> no menú Código. Isto xerará as fontes de todas as clases no modelo usando a configuración actual (incluíndo o Cartafol de saída e política de sobrescritura, polo que o debe usar con coidado). </p></div></div></div><FILENAME filename="code-import.html"><html><head><title>Importación 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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="code-import-generation.html" title="Capítulo 4. Importación de fontes e xeración de código fonte"><link rel="prev" href="code-import-generation.html" title="Capítulo 4. Importación de fontes e xeración de código fonte"><link rel="next" href="other-features.html" title="Capítulo 5. Outras funcionalidades"><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"> Importación de 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">Importación de fontes e xeración de código fonte</td><td class="nextCell"><a accesskey="n" href="other-features.html">Próximo</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>Importación de código</h2></div></div></div><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> pode importar fontes de proxectos existentes para axudalo a elaborar o modelo dos sistemas. <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> 1.2 só soporta código C++, pero outras linguaxes estarán disponíbeis en versións futuras. </p><p>Para importar clases para o modelo, escolla a entrada <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Importar clases...</span></span> no menú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Código</span></span>. No diálogo de ficheiro escolla os ficheiros que conteñan as declaracións das clases C++ e prema OK. As clases serán importadas e atoparaas como parte do modelo na vista en árbore. Lembre que <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> non criará nengún tipo de diagrama para mostrar as clases, só serán importadas no modelo polo que poderá usalas máis tarde en calquer diagrama que queira. </p><p>
</p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="code-import.png" alt="Menú para importar código fonte en Umbrello UML Modeller"><div class="caption"><p>Menú para importar código fonte en <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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="other-features.html">Próximo</a></td></tr><tr><td class="prevCell">Importación de fontes e xeración de código fonte </td><td class="upCell">Importación de fontes e xeración de código fonte</td><td class="nextCell"> Outras funcionalidades</td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="code-import.html">Próximo</a></td></tr><tr><td class="prevCell">Editar diagramas </td><td class="upCell"> </td><td class="nextCell"> Importación de código</td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="other-features.html"><html><head><title>Capítulo 5. Outras funcionalidades</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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="prev" href="code-import.html" title="Importación de código"><link rel="next" href="authors.html" title="Capítulo 6. Autores e historial"><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"> Outras funcionalidades</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óximo</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. Outras funcionalidades</h1></div></div></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="idm1020"></a>Outras funcionalidades de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span></h2></div></div></div><p>Este capítulo describe por riba algunhas funcionalidades adicionais que oferece <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>.</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="copying-as-png"></a>Copiar obxectos como imaxes PNG</h3></div></div></div><p>Ademais das funcións normais de copiar, cortar e apegar que serven para copiar obxectos entre distintos diagramas, <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> pode copiar os obxectos como imaxes PNG para que os poda inserir en outros tipos de documento. Non precisa facer nada especial para usar esta funcionalidade, só escolla un obxecto no diagrama (Clase, Actor, <abbr class="abbrev">etc.</abbr>) e cópieo (<span class="keycap"><strong>Ctrl</strong></span>+<span class="keycap"><strong>C</strong></span>, ou mediante o menú), logo abra un documento de <span class="application">KWord</span> (ou de calquer programa onde poda apegar imaxes) e escolla <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Apegar</span></span>. Esta é unha funcionalidade perfeita para exportar partes do diagrama como imaxes simples. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="export-as-png"></a>Exportar para unha imaxe</h3></div></div></div><p>Tamén pode exportar un diagrama inteiro como unha imaxe. A única cousa que precisa facer é escoller o diagrama que quer exportar, e logo a opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Exportar como imaxe...</span></span> no menú <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>Imprimir</h3></div></div></div><p><span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> permítelle imprimir diagramas individualmente. Prema no botón <span class="guiicon">Imprimir</span> na barra de ferramentas da aplicación ou escolla a opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Imprimir</span></span> no menú <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Ficheiro</span></span> e mostrarase o diálogo estándar de <span class="orgname">KDE</span> para imprimir. </p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="logical-folders"></a>Cartafoles lóxicos</h3></div></div></div><p>Para organizar mellor o modelo, en especial en proxectos grandes, pode criar cartafoles lóxicos na Vista en Árbore. Simplesmente escolla a opción <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenu">Novo</span></span> → <span xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="guiitem"><span class="guimenuitem">Cartafol</span></span> no menú contextual dos cartafoles por omisión na vista en árbore para crialos. Os cartafoles poden estar uns dentro dos outros, e pode mover obxectos entre eles arrastrándoo dun para o outro. </p><div class="screenshot"><div xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" class="mediaobject"><img src="folders.png" alt="Organizando un modelo con cartafoles lóxicos en Umbrello UML Modeller"><div class="caption"><p>Organizando un modelo con cartafoles lóxicos en <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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="authors.html">Próximo</a></td></tr><tr><td class="prevCell">Importación de código </td><td class="upCell"> </td><td class="nextCell"> Autores e historial</td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="authors.html"><html><head><title>Capítulo 6. Autores e historial</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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="prev" href="other-features.html" title="Capítulo 5. Outras funcionalidades"><link rel="next" href="copyright.html" title="Capítulo 7. Copyright"><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 historial</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óximo</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 historial</h1></div></div></div><p>Este proxecto foi iniciado por Paul Hensgen como un dos seus proxectos na universidade. O nome orixinal da aplicación era <span class="application">UML Modeller</span>. Paul fixo todo o desenvolvimento até finais de 2001 cando o programa acadou a versión 1.0. </p><p>A versión 1.0 xa oferecía moitas funcionalidades, pero tras a revisión do proxecto na Universidade onde Paul estudaba, outros desenvolvementes puideron unirse e comezar a facer importantes contribucións a <span class="application">UML Modeller</span>, como trocar dun formato binario de ficheiro a un ficheiro <acronym class="acronym">XML</acronym>, soportar máis tipos de Diagramas <acronym class="acronym">UML</acronym>, Xeración de código e Importación de código, só por citar unhas poucas. </p><p>Paul tivo que retirarse da equipa de desenvolventes no verao de 2002, pero, como sóftware libre e de código aberto, o programa continúa a mellorar e evoluír xa que está a ser mantido por un grupo de desenvolventes de diferentes partes do mundo. En setembro de 2002 o proxecto mudou o nome de <span class="application"><acronym class="acronym">UML</acronym> Modeller</span> para <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>. Hai varias razóns para o troco do nome, sendo as máis importantes que só <span class="quote">« <span class="quote">uml</span> »</span> —como era comunmente coñecido— era xenérico de máis e causaba problemas nalgunhas distribucións. Outra razón importante é que os desenvolventes pensan que <span class="application">Umbrello</span> é un nome moito mellor. </p><p>O desenvolvimento de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> e as discusións acerca de aonde debe dirixirse o desenvolvimento das futuras versións, é aberto e realízase en internet. Se desexa contribuir ao proxecto, non dubide en contactar cos desenvolventes. Hai moitos xeitos nos que pode axudar a <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>Informando de erros ou enviando suxestións</p></li><li class="listitem"><p>Corrixindo erros ou engadindo funcionalidades</p></li><li class="listitem"><p>Escribindo documentación ou traducíndoo a outros idiomas</p></li><li class="listitem"><p>E por suposto... programando con nós!</p></li></ul></div><p>Como pode ver, hai moitos de axudar. Todos son moi importantes e calquera é benvido para participar. </p><p>Os desenvolventes de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span> poden ser localizados en <code class="email">(uml-devel AT lists.sourceforge.net)</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">Inicio</a></td><td class="nextCell"><a accesskey="n" href="copyright.html">Próximo</a></td></tr><tr><td class="prevCell">Outras funcionalidades </td><td class="upCell"> </td><td class="nextCell"> Copyright</td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</a></div></div></div></body></html></FILENAME><FILENAME filename="copyright.html"><html><head><title>Capítulo 7. Copyright</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, modelización, diagramas, desenvolvimento de sóftware, desenvolvimento"><link rel="home" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="up" href="index.html" title="Manual de Umbrello UML Modeller"><link rel="prev" href="authors.html" title="Capítulo 6. Autores e historial"><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"> Copyright</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. Copyright</h1></div></div></div><p>Copyright 2001, Paul Hensgen</p><p>Copyright 2002, 2003 Os autores de <span class="application">Umbrello <acronym class="acronym">UML</acronym> Modeller</span>. Consulte <a class="ulink" href="http://uml.sf.net/developers.php" target="_top">http://uml.sf.net/developers.php</a> para máis información</p><p><a name="gnu-fdl"></a>Esta documentación está licenciada sob os termos da <a class="ulink" href="help:/kdoctools5-common/fdl-license.html" target="_top">GNU Free Documentation
License</a>.</p><p>Este programa está licenciado sob os termos da <a class="ulink" href="help:/kdoctools5-common/gpl-license.html" target="_top">Licenza Pública Xeral de 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">Inicio</a></td><td class="nextCell"></td></tr><tr><td class="prevCell">Autores e historial </td><td class="upCell"> </td><td class="nextCell"> </td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</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óximo</a></td></tr><tr><td class="prevCell"> </td><td class="upCell"> </td><td class="nextCell"> Introdución</td></tr></table></div><div id="footer_text">Desexa facer un comentario ou actualizar esta páxina?<br>Envíe as súas aportacións á <a href="mailto:kde-doc-english@kde.org" class="footer_email">Equipa de documentación de KDE</a></div></div></div></body></html></FILENAME>

Generated by dwww version 1.15 on Sun Jun 23 03:39:49 CEST 2024.