summaryrefslogtreecommitdiffstats
path: root/tde-i18n-es/docs/tdesdk/umbrello
diff options
context:
space:
mode:
Diffstat (limited to 'tde-i18n-es/docs/tdesdk/umbrello')
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/Makefile.am4
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/Makefile.in635
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/activity-diagram.pngbin0 -> 26896 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/aggregation.pngbin0 -> 976 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/association.pngbin0 -> 1155 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/authors.docbook46
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/class-diagram.pngbin0 -> 21758 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/class.pngbin0 -> 2040 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/code-import.pngbin0 -> 11271 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/code_import_and_generation.docbook163
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/collaboration-diagram.pngbin0 -> 25148 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/composition.pngbin0 -> 920 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/credits.docbook11
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/faq.docbook47
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/folders.pngbin0 -> 17332 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/generalization.pngbin0 -> 956 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/generation-options.pngbin0 -> 18254 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/index.cache.bz2bin0 -> 18536 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/index.docbook85
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/installation.docbook115
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/introduction.docbook55
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/other_features.docbook76
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/sequence-diagram.pngbin0 -> 19661 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/state-diagram.pngbin0 -> 18984 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/umbrello-ui-clean.pngbin0 -> 45471 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/umbrello-ui.pngbin0 -> 20794 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/umbrelo-main-screen.pngbin0 -> 16701 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/uml_basics.docbook782
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/use-case-diagram.pngbin0 -> 20544 bytes
-rw-r--r--tde-i18n-es/docs/tdesdk/umbrello/working_with_umbrello.docbook415
30 files changed, 2434 insertions, 0 deletions
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/Makefile.am b/tde-i18n-es/docs/tdesdk/umbrello/Makefile.am
new file mode 100644
index 00000000000..2d733d1b104
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/Makefile.am
@@ -0,0 +1,4 @@
+KDE_LANG = es
+SUBDIRS = $(AUTODIRS)
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/Makefile.in b/tde-i18n-es/docs/tdesdk/umbrello/Makefile.in
new file mode 100644
index 00000000000..1219dc55f95
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/Makefile.in
@@ -0,0 +1,635 @@
+# Makefile.in generated by automake 1.10.1 from Makefile.am.
+# KDE tags expanded automatically by am_edit - $Revision: 483858 $
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+subdir = docs/tdesdk/umbrello
+DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+ $(top_srcdir)/configure.in
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+SOURCES =
+DIST_SOURCES =
+#>- RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+#>- html-recursive info-recursive install-data-recursive \
+#>- install-dvi-recursive install-exec-recursive \
+#>- install-html-recursive install-info-recursive \
+#>- install-pdf-recursive install-ps-recursive install-recursive \
+#>- installcheck-recursive installdirs-recursive pdf-recursive \
+#>- ps-recursive uninstall-recursive
+#>+ 7
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
+ install-html-recursive install-info-recursive \
+ install-pdf-recursive install-ps-recursive install-recursive \
+ installcheck-recursive installdirs-recursive pdf-recursive \
+ ps-recursive uninstall-recursive nmcheck-recursive bcheck-recursive
+RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
+ distclean-recursive maintainer-clean-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+#>- DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+#>+ 1
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) $(KDE_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+ARTSCCONFIG = @ARTSCCONFIG@
+AUTOCONF = @AUTOCONF@
+AUTODIRS = @AUTODIRS@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CONF_FILES = @CONF_FILES@
+CYGPATH_W = @CYGPATH_W@
+DCOPIDL = @DCOPIDL@
+DCOPIDL2CPP = @DCOPIDL2CPP@
+DCOPIDLNG = @DCOPIDLNG@
+DCOP_DEPENDENCIES = @DCOP_DEPENDENCIES@
+DEFS = @DEFS@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+GMSGFMT = @GMSGFMT@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+KCFG_DEPENDENCIES = @KCFG_DEPENDENCIES@
+KCONFIG_COMPILER = @KCONFIG_COMPILER@
+KDECONFIG = @KDECONFIG@
+KDE_EXTRA_RPATH = @KDE_EXTRA_RPATH@
+KDE_RPATH = @KDE_RPATH@
+KDE_XSL_STYLESHEET = @KDE_XSL_STYLESHEET@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+MAKEKDEWIDGETS = @MAKEKDEWIDGETS@
+MCOPIDL = @MCOPIDL@
+MEINPROC = @MEINPROC@
+MKDIR_P = @MKDIR_P@
+MSGFMT = @MSGFMT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+TOPSUBDIRS = @TOPSUBDIRS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+XMLLINT = @XMLLINT@
+X_RPATH = @X_RPATH@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+am__leading_dot = @am__leading_dot@
+am__tar = @am__tar@
+am__untar = @am__untar@
+#>- bindir = @bindir@
+#>+ 2
+DEPDIR = .deps
+bindir = @bindir@
+build_alias = @build_alias@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host_alias = @host_alias@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+kde_appsdir = @kde_appsdir@
+kde_bindir = @kde_bindir@
+kde_confdir = @kde_confdir@
+kde_datadir = @kde_datadir@
+kde_htmldir = @kde_htmldir@
+kde_icondir = @kde_icondir@
+kde_kcfgdir = @kde_kcfgdir@
+kde_libs_htmldir = @kde_libs_htmldir@
+kde_libs_prefix = @kde_libs_prefix@
+kde_locale = @kde_locale@
+kde_mimedir = @kde_mimedir@
+kde_moduledir = @kde_moduledir@
+kde_servicesdir = @kde_servicesdir@
+kde_servicetypesdir = @kde_servicetypesdir@
+kde_sounddir = @kde_sounddir@
+kde_styledir = @kde_styledir@
+kde_templatesdir = @kde_templatesdir@
+kde_wallpaperdir = @kde_wallpaperdir@
+kde_widgetdir = @kde_widgetdir@
+tdeinitdir = @tdeinitdir@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+xdg_appsdir = @xdg_appsdir@
+xdg_directorydir = @xdg_directorydir@
+xdg_menudir = @xdg_menudir@
+KDE_LANG = es
+#>- SUBDIRS = $(AUTODIRS)
+#>+ 1
+SUBDIRS =.
+KDE_DOCS = AUTO
+KDE_MANS = AUTO
+#>- all: all-recursive
+#>+ 1
+all: docs-am all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+#>- @for dep in $?; do \
+#>- case '$(am__configure_deps)' in \
+#>- *$$dep*) \
+#>- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+#>- && exit 0; \
+#>- exit 1;; \
+#>- esac; \
+#>- done; \
+#>- echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile'; \
+#>- cd $(top_srcdir) && \
+#>- $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile
+#>+ 12
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile
+ cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/umbrello/Makefile.in
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+$(RECURSIVE_CLEAN_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonemtpy = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
+ END { if (nonempty) { for (i in files) print i; }; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+
+#>- distdir: $(DISTFILES)
+#>+ 1
+distdir: distdir-nls $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \
+ fi; \
+ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \
+ else \
+ test -f $(distdir)/$$file \
+ || cp -p $$d/$$file $(distdir)/$$file \
+ || exit 1; \
+ fi; \
+ done
+ list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test -d "$(distdir)/$$subdir" \
+ || $(MKDIR_P) "$(distdir)/$$subdir" \
+ || exit 1; \
+ distdir=`$(am__cd) $(distdir) && pwd`; \
+ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \
+ (cd $$subdir && \
+ $(MAKE) $(AM_MAKEFLAGS) \
+ top_distdir="$$top_distdir" \
+ distdir="$$distdir/$$subdir" \
+ am__remove_distdir=: \
+ am__skip_length_check=: \
+ distdir) \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+#>- uninstall: uninstall-recursive
+#>+ 1
+uninstall: uninstall-docs uninstall-nls uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+#>- clean: clean-recursive
+#>+ 1
+clean: kde-rpo-clean clean-recursive
+
+#>- clean-am: clean-generic mostlyclean-am
+#>+ 1
+clean-am: clean-docs clean-bcheck clean-generic mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+#>- install-data-am:
+#>+ 1
+install-data-am: install-docs install-nls
+
+install-dvi: install-dvi-recursive
+
+install-exec-am:
+
+install-html: install-html-recursive
+
+install-info: install-info-recursive
+
+install-man:
+
+install-pdf: install-pdf-recursive
+
+install-ps: install-ps-recursive
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am:
+
+.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) install-am \
+ install-strip
+
+.PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \
+ all all-am check check-am clean clean-generic ctags \
+ ctags-recursive distclean distclean-generic distclean-tags \
+ distdir dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ installdirs-am maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \
+ tags-recursive uninstall uninstall-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
+
+#>+ 2
+KDE_DIST=installation.docbook uml_basics.docbook class.png code-import.png association.png index.docbook state-diagram.png activity-diagram.png generation-options.png credits.docbook aggregation.png faq.docbook code_import_and_generation.docbook use-case-diagram.png sequence-diagram.png folders.png index.cache.bz2 class-diagram.png umbrello-ui.png generalization.png umbrello-ui-clean.png collaboration-diagram.png Makefile.in other_features.docbook composition.png umbrelo-main-screen.png introduction.docbook working_with_umbrello.docbook authors.docbook Makefile.am
+
+#>+ 24
+index.cache.bz2: $(srcdir)/index.docbook $(KDE_XSL_STYLESHEET) other_features.docbook sequence-diagram.png code_import_and_generation.docbook umbrelo-main-screen.png umbrello-ui.png umbrello-ui-clean.png generalization.png aggregation.png index.docbook composition.png association.png introduction.docbook credits.docbook working_with_umbrello.docbook faq.docbook use-case-diagram.png class-diagram.png generation-options.png state-diagram.png folders.png installation.docbook activity-diagram.png collaboration-diagram.png code-import.png uml_basics.docbook class.png authors.docbook
+ @if test -n "$(MEINPROC)"; then echo $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; $(MEINPROC) --check --cache index.cache.bz2 $(srcdir)/index.docbook; fi
+
+docs-am: index.cache.bz2
+
+install-docs: docs-am install-nls
+ $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello
+ @if test -f index.cache.bz2; then \
+ echo $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/; \
+ $(INSTALL_DATA) index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/; \
+ elif test -f $(srcdir)/index.cache.bz2; then \
+ echo $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/; \
+ $(INSTALL_DATA) $(srcdir)/index.cache.bz2 $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/; \
+ fi
+ -rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/common
+ $(LN_S) $(kde_libs_htmldir)/$(KDE_LANG)/common $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/common
+
+uninstall-docs:
+ -rm -rf $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello
+
+clean-docs:
+ -rm -f index.cache.bz2
+
+
+#>+ 13
+install-nls:
+ $(mkinstalldirs) $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello
+ @for base in other_features.docbook sequence-diagram.png code_import_and_generation.docbook umbrelo-main-screen.png umbrello-ui.png umbrello-ui-clean.png generalization.png aggregation.png index.docbook composition.png association.png introduction.docbook credits.docbook working_with_umbrello.docbook faq.docbook use-case-diagram.png class-diagram.png generation-options.png state-diagram.png folders.png installation.docbook activity-diagram.png collaboration-diagram.png code-import.png uml_basics.docbook class.png authors.docbook ; do \
+ echo $(INSTALL_DATA) $$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/$$base ;\
+ $(INSTALL_DATA) $(srcdir)/$$base $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/$$base ;\
+ done
+
+uninstall-nls:
+ for base in other_features.docbook sequence-diagram.png code_import_and_generation.docbook umbrelo-main-screen.png umbrello-ui.png umbrello-ui-clean.png generalization.png aggregation.png index.docbook composition.png association.png introduction.docbook credits.docbook working_with_umbrello.docbook faq.docbook use-case-diagram.png class-diagram.png generation-options.png state-diagram.png folders.png installation.docbook activity-diagram.png collaboration-diagram.png code-import.png uml_basics.docbook class.png authors.docbook ; do \
+ rm -f $(DESTDIR)$(kde_htmldir)/$(KDE_LANG)/umbrello/$$base ;\
+ done
+
+
+#>+ 5
+distdir-nls:
+ for file in other_features.docbook sequence-diagram.png code_import_and_generation.docbook umbrelo-main-screen.png umbrello-ui.png umbrello-ui-clean.png generalization.png aggregation.png index.docbook composition.png association.png introduction.docbook credits.docbook working_with_umbrello.docbook faq.docbook use-case-diagram.png class-diagram.png generation-options.png state-diagram.png folders.png installation.docbook activity-diagram.png collaboration-diagram.png code-import.png uml_basics.docbook class.png authors.docbook ; do \
+ cp $(srcdir)/$$file $(distdir); \
+ done
+
+#>+ 15
+force-reedit:
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --gnu docs/tdesdk/umbrello/Makefile
+ cd $(top_srcdir) && perl ../scripts/admin/am_edit -p../scripts/admin docs/tdesdk/umbrello/Makefile.in
+
+
+#>+ 21
+clean-bcheck:
+ rm -f *.bchecktest.cc *.bchecktest.cc.class a.out
+
+bcheck: bcheck-recursive
+
+bcheck-am:
+ @for i in ; do \
+ if test $(srcdir)/$$i -nt $$i.bchecktest.cc; then \
+ echo "int main() {return 0;}" > $$i.bchecktest.cc ; \
+ echo "#include \"$$i\"" >> $$i.bchecktest.cc ; \
+ echo "$$i"; \
+ if ! $(CXX) $(DEFS) -I. -I$(srcdir) -I$(top_builddir) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(KDE_CXXFLAGS) --dump-class-hierarchy -c $$i.bchecktest.cc; then \
+ rm -f $$i.bchecktest.cc; exit 1; \
+ fi ; \
+ echo "" >> $$i.bchecktest.cc.class; \
+ perl $(top_srcdir)/admin/bcheck.pl $$i.bchecktest.cc.class || { rm -f $$i.bchecktest.cc; exit 1; }; \
+ rm -f a.out; \
+ fi ; \
+ done
+
+
+#>+ 3
+final:
+ $(MAKE) all-am
+
+#>+ 3
+final-install:
+ $(MAKE) install-am
+
+#>+ 3
+no-final:
+ $(MAKE) all-am
+
+#>+ 3
+no-final-install:
+ $(MAKE) install-am
+
+#>+ 3
+kde-rpo-clean:
+ -rm -f *.rpo
+
+#>+ 3
+nmcheck:
+nmcheck-am: nmcheck
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/activity-diagram.png b/tde-i18n-es/docs/tdesdk/umbrello/activity-diagram.png
new file mode 100644
index 00000000000..4f5673a5f22
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/activity-diagram.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/aggregation.png b/tde-i18n-es/docs/tdesdk/umbrello/aggregation.png
new file mode 100644
index 00000000000..2b8b10706c5
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/aggregation.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/association.png b/tde-i18n-es/docs/tdesdk/umbrello/association.png
new file mode 100644
index 00000000000..685299ae0e5
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/association.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/authors.docbook b/tde-i18n-es/docs/tdesdk/umbrello/authors.docbook
new file mode 100644
index 00000000000..5fb634fe38f
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/authors.docbook
@@ -0,0 +1,46 @@
+<chapter id="authors">
+<title
+>Autores e historia</title>
+<para
+>Este proyecto fue iniciado por Paul Hensgen como uno de sus proyectos universitarios. El nombre original de la aplicación era <emphasis
+>UML Modeller</emphasis
+>. Paul se encargó de todo el desarrollo hasta finales de 2001, cuando el programa llegó a la versión 1.0. </para>
+<para
+>La versión 1.0 ya ofrecía muchas funcionalidades, pero una vez que el proyecto fue revisado en la universidad de Paul, otros desarrolladores pudieron unirse al equipo y comenzar a enviar valiosas contribuciones a <application
+>UML Modeller</application
+>, como el cambio de un archivo binario a uno , s&XML;oporte para más tipos de diagramas &UML;, generación de código e importación de código por nombrar algunas. </para>
+<para
+>Paul tuvo que retirarse del equipo de desarrollo en verano de 2002 pero, como software libre que es, el programa continúa mejorando y evolucionando, y es mantenido por un grupo de desarrolladores de diferentes lugares del mundo. Además, en septiembre de 2002, el proyecto cambió el nombre de <application
+>&UML; Modeller</application
+> a &umbrello;. Existen varias razones para el cambio del nombre, siendo la más importante que sólo <quote
+>uml</quote
+> (como era conocido) &mdash;resultaba un nombre muy genérico&mdash; y causaba problemas con algunas distribuciones. La otra razón importante es que los desarrolladores piensan que <emphasis
+>Umbrello</emphasis
+> es un nombre más impactante. </para>
+<para
+>El desarrollo de &umbrello; así como las discusiones sobre el futuro del programa son abiertas y tiene lugar en Internet. Si desea contribuir con el proyecto, no dude en ponerse en contacto con los desarrolladores. Hay muchas formas para ayudar en el desarrollo de &umbrello; </para>
+<itemizedlist>
+<listitem
+><para
+>Informando de fallos o sugerencias</para
+></listitem>
+<listitem
+><para
+>Arreglando fallos o añadiendo funcionalidad</para
+></listitem>
+<listitem
+><para
+>Escribiendo buena documentación o traduciéndola a otros idiomas</para
+></listitem>
+<listitem
+><para
+>Y, por supuesto... programando con nosotros</para
+></listitem>
+</itemizedlist>
+<para
+>Como puede ver, hay muchas formas en las que puede contribuir. Todas ellas son muy importantes y todo el mundo es bienvenido. </para>
+<para
+>Puede contactar con los desarrolladores de &umbrello; en <email
+>uml-devel@lists.sourceforge.net</email
+>. </para>
+</chapter>
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/class-diagram.png b/tde-i18n-es/docs/tdesdk/umbrello/class-diagram.png
new file mode 100644
index 00000000000..81f15ddea08
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/class-diagram.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/class.png b/tde-i18n-es/docs/tdesdk/umbrello/class.png
new file mode 100644
index 00000000000..caf22ee8d03
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/class.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/code-import.png b/tde-i18n-es/docs/tdesdk/umbrello/code-import.png
new file mode 100644
index 00000000000..9a63b394471
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/code-import.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/code_import_and_generation.docbook b/tde-i18n-es/docs/tdesdk/umbrello/code_import_and_generation.docbook
new file mode 100644
index 00000000000..f4fef2875fd
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/code_import_and_generation.docbook
@@ -0,0 +1,163 @@
+<chapter id="code-import-generation">
+<title
+>Importación y generación de código</title>
+<para
+>umbrello; es una herramienta de modelado UML, y como tal, su propósito principal es el de ayudar en el <emphasis
+>análisis y diseño</emphasis
+> de sus sistemas. Sin embargo, para realizar la transición entre el diseño y la <emphasis
+>implementación</emphasis
+>, &umbrello; permite la generación de código fuente en diferentes lenguajes de programación como ayuda inicial. Además, si desea utilizar UML en un proyecto C++ ya iniciado, &umbrello; puede ayudarle a crear una maqueta de su sistema a partir del código fuente realizando un análisis del código e importando las clases encontradas en el. </para>
+<sect1 id="code-generation">
+<title
+>Generación de código</title>
+<para
+>&umbrello; puede generar código fuente en varios lenguajes de programación, a partir de la maqueta UML para ayudar a comenzar la implementación de su proyecto. El código generado consta de declaraciones de clases con sus métodos y atributos, de forma que usted pueda <quote
+>rellenar los espacios en blanco</quote
+> proporcionando la funcionalidad de las operaciones de sus clases. </para>
+<para
+>&umbrello; 1.2 viene provisto con soporte para la generación de código en ActionScript, Ada, C++, CORBA IDL, &Java;, JavaScript, <acronym
+>PHP</acronym
+>, Perl, Python, SQL y XMLSchema. </para>
+<sect2 id="generate-code">
+<title
+>Generación de código</title>
+<para
+>Para generar código con &umbrello;, en primer lugar hay que crear o cargar una maqueta que contenga al menos una clase. Una vez que este listo para comenzar a escribir el código, seleccione el <guimenuitem
+>Asistente de generación de código</guimenuitem
+> en el menú <guimenuitem
+>Código</guimenuitem
+> para iniciar un asistente que le guiará a través del proceso de generación de código. </para>
+<para
+>El primer paso es seleccionar las clases para las que desea generar código fuente. De forma predeterminada se seleccionan todas las clases de la maqueta, y usted puede eliminar aquellas para las que no desea generar código eliminándolas de la lista de la izquierda. </para>
+<para
+>El siguiente paso del asistente le permite modificar los parámetros que el generador de código utilizará en el proceso. Las opciones disponibles son las siguientes: </para>
+<para>
+<screenshot>
+<screeninfo
+>Opciones de generación de código</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="generation-options.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>Opciones para la generación de código en &umbrello;</phrase>
+ </textobject>
+ <caption>
+ <para
+>Opciones de generación de código en &umbrello; </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+<sect3 id="generation-options">
+<title
+>Opciones de generación</title>
+<!-- LW; to rearrange -->
+
+<sect4>
+<title
+>Comentado del Código</title>
+<para
+>La opción <guilabel
+>Escribir comentarios de documentación aún si está vacía</guilabel
+> instruye al Generador de código a escribir comentarios del tipo /** blah */ aún cuando el bloque de comentarios se encuentre vacío. Si usted ya agregó documentación a sus clases, métodos o atributos en su Maqueta, el Generador de código escribirá estos comentarios como documentación <application
+>Doxygen</application
+> sin importar lo que haya definido aquí, pero si selecciona esta opción &umbrello; escribirá comentarios para todas sus clases, métodos y atributos aún cuando no exista documentación en la Maqueta, en cuyo caso usted deberá documentar sus clases más tarde editando directamente el código fuente. </para>
+<para
+><guilabel
+>Escribir comentarios para las secciones incluso si la sección está vacía</guilabel
+> producirá que &umbrello; escriba comentarios en el código fuente para delimitar las diferentes secciones de una clase. Por ejemplo <quote
+>Métodos públicos</quote
+> o <quote
+>Atributos </quote
+> antes de la sección correspondiente. Si selecciona esta opción &umbrello; escribirá los comentarios para todas las secciones de las clases aún si la sección está vacía. Por ejemplo, escribirá un comentario diciendo <quote
+>Métodos protegidos</quote
+> aún si no existen métodos protegidos en su clase. </para>
+</sect4>
+<sect4>
+<title
+>Carpetas</title>
+<para
+><guilabel
+>Escribir todos los archivos generados a la carpeta</guilabel
+>. Aquí debe seleccionar la carpeta donde desea que &umbrello; guarde los archivos fuente generados. </para>
+<para
+>La opción <guilabel
+>Incluir archivos de cabecera desde la carpeta</guilabel
+> le permite insertar un encabezado al comienzo de cada archivo generado. Los archivos de encabezado pueden contener información acerca del copyright o la licencia, y contener variables que son evaluadas al momento de generación. Usted puede puede mirar a modo de ejemplo los archivos de encabezamiento distribuidos con &umbrello; para ver como se utilizan estas variables para reemplazar su nombre o la fecha y hora del momento de generación. </para>
+</sect4>
+<sect4>
+<title
+>Política de sobreescritura</title>
+<!-- FIXME update for Umbrello 1.2's new C++ and Java code generators -->
+<para
+>Esta opción le dice a &umbrello; qué hacer si el archivo que desea crear ya existe en la carpeta de destino. &umbrello; <emphasis
+>no puede modificar archivos fuente existentes</emphasis
+>, por lo que debe elegir entre sobreescribir el existente, saltar la generación de ese archivo en particular, o dejar que &umbrello; elija un nombre diferente para el archivo. Si uste elije la opción de utilizar un nombre diferente, &umbrello; agregará un sufijo al nombre del archivo. </para>
+</sect4>
+<sect4>
+<title
+>Lenguaje</title>
+<para
+>&umbrello; generará por omisión código fuente en el lenguaje que usted haya seleccionado como Lenguaje activo, pero con el Asistente para la generación de código usted tiene la opción de cambiar esto a otro idioma. </para>
+</sect4>
+</sect3
+><!--generation-options-->
+<sect3 id="generation-wizard-generation">
+<title
+>Asistente para la generación de código</title>
+<para
+>El tercero y ultimo paso del asistente le mostará el estado del proceso de generación de código. Usted necesitará hacer click en el botón de Generación de código para que las clases sean escritas para usted. </para>
+<para
+>Recuerde que las opciones que seleccione en el asistente de generación de código sólo son válidas para esa generación en concreto, la siguiente vez que ejecute el asistente deberá volver a seleccionar todas las opciones aunque sean las mismas. Puede evitar esto definiendo en la sección <guilabel
+>Generación de código</guilabel
+> del menú <menuchoice
+><guimenu
+>Preferencias</guimenu
+><guimenuitem
+>Configurar modelador de UML &umbrello;...</guimenuitem
+></menuchoice
+>. </para>
+<para
+>Si ha ha establecido las opciones del asistente de generación de código y quiere generar directamente algún código sin el asistente, seleccione <guimenuitem
+>Generar todo el código</guimenuitem
+> desde el menú Código. Esto generará código para todas las clases de su esquema con la configuración actual (incluso la carpeta de salida y las opciones de sobreescritura así que tenga cuidado). </para>
+</sect3>
+</sect2
+><!--generate-code-->
+</sect1
+> <!--code-generation-->
+<sect1 id="code-import">
+<title
+>Importación de código</title>
+<para
+>&umbrello; puede importar código fuente de sus pryectos actuales para ayudarle a crear los esquemas de sus sistemas. &umbrello; 1.2 sólo puede hacerlo con C++ aunque en el futuro estará disponible para más lenguajes. </para>
+<para
+>Para importar clases en su esquema seleccione la entrada <guimenuitem
+>Importar clases</guimenuitem
+> desde el menú <guimenu
+>Código</guimenu
+>. Una vez ahí, seleccione los archivos que contengan las declaraciones de clases de C++ y pulse aceptar. Se importaran las clases y pasarán a ser parte de su esquema en la vista en árbol. Recuerde que &umbrello; no creará ningún tipo de diagrama para mostrar sus clases, sólo las importará a su esquema para que pueda usarlas luego en cualquier diagrama. </para>
+<para>
+<screenshot>
+<screeninfo
+>Importación de código</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="code-import.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>Menú para importación de código en &umbrello;</phrase>
+ </textobject>
+ <caption>
+ <para
+>Menú para la importación de código fuente en &umbrello; </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+</sect1>
+</chapter
+> <!--code-import-generation-->
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/collaboration-diagram.png b/tde-i18n-es/docs/tdesdk/umbrello/collaboration-diagram.png
new file mode 100644
index 00000000000..d9dba253ed2
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/collaboration-diagram.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/composition.png b/tde-i18n-es/docs/tdesdk/umbrello/composition.png
new file mode 100644
index 00000000000..58425f0f16f
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/composition.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/credits.docbook b/tde-i18n-es/docs/tdesdk/umbrello/credits.docbook
new file mode 100644
index 00000000000..8fe2b7d3ae7
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/credits.docbook
@@ -0,0 +1,11 @@
+<chapter id="copyright">
+<title
+>Copyright</title>
+
+<para
+>Copyright 2001, Paul Hensgen</para>
+<para
+>Copyright 2002, 2003 Los desarrolladores de &umbrello; . Vea <ulink url="http://uml.sf.net/developers.php"
+>http://uml.sf.net/developers.php</ulink
+> para más información.</para>
+&underFDL; &underGPL; </chapter>
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/faq.docbook b/tde-i18n-es/docs/tdesdk/umbrello/faq.docbook
new file mode 100644
index 00000000000..3639784d40c
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/faq.docbook
@@ -0,0 +1,47 @@
+<chapter id="faq">
+<title
+><acronym
+>FAQ</acronym
+> &mdash;Preguntas más comunes</title>
+<qandaset>
+
+<qandaentry>
+<question>
+<para
+>Faltan iconos de &UML; en mi barra de herramientas, ¿dónde están?</para>
+</question>
+<answer>
+<para
+>Probablemente no ha instalado &umbrello; correctamente, y por eso no encuentra los iconos.</para>
+<para
+>Si ha instalado &umbrello; a partir de un paquete binario precompilado, póngase en contacto con el empaquetador e infórmele del problema para que pueda solucionarlo. Su lo ha instalado a partir del código fuente, probablemente no ha indicado correctamente el parámetro <option
+>--prefix</option
+> en <command
+>configure</command
+>. Por favor, lea el capítulo de instalación de esta documentación. </para>
+</answer>
+</qandaentry>
+
+<qandaentry>
+<question>
+<para
+>Tengo otra duda no solucionada en la documentación, ¿dónde puedo encontrar más información?</para>
+</question>
+<answer>
+<para
+>Si tiene alguna pregunta sobre el uso de &umbrello; o sobre el &UML; en general, puede suscribirse y enviar un correo electrónico a la lista de usuarios de &umbrello; en <email
+>uml-user@lists.sourceforge.net</email
+> </para>
+<para
+>Si tiene alguna pregunta sobre el desarrollo de &umbrello;, puede contactar directamente con los desarrolladores suscribiéndose y enviando un correo electrónico a la lista de desarrolladores de &umbrello; en <email
+>uml-devel@lists.sourceforge.net</email
+> </para>
+<para
+>También encontrará más información y más direcciones de contacto, así como archivos de las listas de correo en <ulink url="http://uml.sf.net"
+>la página web de Umbrello en http://uml.sf.net</ulink
+>. </para>
+</answer>
+</qandaentry>
+
+</qandaset>
+</chapter>
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/folders.png b/tde-i18n-es/docs/tdesdk/umbrello/folders.png
new file mode 100644
index 00000000000..b80479eba69
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/folders.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/generalization.png b/tde-i18n-es/docs/tdesdk/umbrello/generalization.png
new file mode 100644
index 00000000000..969151d112f
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/generalization.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/generation-options.png b/tde-i18n-es/docs/tdesdk/umbrello/generation-options.png
new file mode 100644
index 00000000000..1b937dbb2a4
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/generation-options.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/index.cache.bz2 b/tde-i18n-es/docs/tdesdk/umbrello/index.cache.bz2
new file mode 100644
index 00000000000..e365bd1cefc
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/index.cache.bz2
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/index.docbook b/tde-i18n-es/docs/tdesdk/umbrello/index.docbook
new file mode 100644
index 00000000000..42036e522f6
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/index.docbook
@@ -0,0 +1,85 @@
+<?xml version="1.0" ?>
+<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1.2-Based Variant V1.1//EN"
+ "dtd/kdex.dtd" [
+ <!ENTITY umbrello "<application
+>Umbrello &UML; Modeller</application
+>">
+ <!ENTITY kappname "&umbrello;">
+ <!ENTITY packagename "tdesdk">
+ <!ENTITY UML "<acronym
+>UML</acronym
+>">
+ <!ENTITY introduction-chapter SYSTEM "introduction.docbook">
+ <!ENTITY uml-basics-chapter SYSTEM "uml_basics.docbook">
+ <!ENTITY working-with-umbrello-chapter SYSTEM "working_with_umbrello.docbook">
+ <!ENTITY code-import-and-generation-chapter SYSTEM "code_import_and_generation.docbook">
+ <!ENTITY other-features-chapter SYSTEM "other_features.docbook">
+ <!ENTITY authors-chapter SYSTEM "authors.docbook">
+ <!ENTITY credits-chapter SYSTEM "credits.docbook">
+ <!ENTITY % addindex "IGNORE">
+ <!ENTITY % Spanish "INCLUDE"
+><!-- change language only here -->
+ <!-- Do not define any other entities; instead, use the entities
+ from kde-genent.entities and $LANG/user.entities. -->
+]>
+
+<book id="Umbrello" lang="&language;">
+<bookinfo>
+<title
+>Manual de &umbrello;</title>
+
+<authorgroup>
+<corpauthor
+>&umbrello; Autores</corpauthor>
+</authorgroup>
+
+<copyright>
+<year
+>2001</year>
+<holder
+>Paul Hensgen</holder>
+</copyright>
+<copyright>
+<year
+>2002, 2003</year>
+<holder
+>&umbrello; Autores</holder>
+</copyright>
+
+
+<date
+>2003-10-15</date>
+<releaseinfo
+>1.2</releaseinfo>
+
+<abstract>
+<para
+>&umbrello; ayuda en el proceso de desarrollo de software usando el estándar 'Unified Modelling Language' (&UML;) que le permitirá crear diagramas para diseñar y documentar sus sistemas. </para>
+</abstract>
+
+<keywordset>
+<keyword
+>KDE</keyword>
+<keyword
+>UML</keyword>
+<keyword
+>maquetado</keyword>
+<keyword
+>diagramas</keyword>
+<keyword
+>desarrollo de software</keyword>
+<keyword
+>desarrollo</keyword>
+</keywordset>
+
+</bookinfo>
+
+&introduction-chapter;
+&uml-basics-chapter;
+&working-with-umbrello-chapter;
+&code-import-and-generation-chapter;
+&other-features-chapter;
+&authors-chapter;
+&credits-chapter;
+
+</book>
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/installation.docbook b/tde-i18n-es/docs/tdesdk/umbrello/installation.docbook
new file mode 100644
index 00000000000..76565fa3820
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/installation.docbook
@@ -0,0 +1,115 @@
+<appendix id="installation">
+<title
+>Instalación</title>
+
+<sect1 id="general_instructions">
+<title
+>Instrucciones generales</title>
+<para
+>La forma más sencilla de instalar &umbrello; es mediante la obtención de un paquete binario precompilado (rpm, deb) para su sistema. Si prefiere compilar las aplicaciones usted mismo, o utiliza un sistema para el que no hay paquetes binarios, puede descargar el código fuente y seguir las instrucciones correspondientes a la instalación del código fuente. </para>
+
+<!-- LW: Removing, but leaving intact. No point having our translators
+work on this, it's largely irrelevant to apps in KDE releases, but
+umbrello developers might want to make a standalone release before 3.2
+is done -->
+
+
+<!--
+<para>
+
+The Umbrello developers only release source packages of the program, and these source packages are
+the only ones we can officially support. However,
+FIXME I officially support the packages I make
+We understand that for many users it is difficult to
+install a program from sources, so we try to build pre-compiled packages for the systems/distributions
+we have access to.
+If you want to install Umbrello from a binary package
+you can check if there is a pre-compiled package available for your platform at
+<ulink url="http://uml.sourceforge.net"
+>Umbrello's home page</ulink
+>.
+There we will publish the packages we can make ourselves, as well as packages made by 3rd parties for
+the systems we do not have access to.
+</para>
+
+<para>
+If you can make a binary package for a distribution for which there are currently no packages available
+at our site, please consider contacting the &umbrello; developers and contributing your package so that
+other users can benefit from it.
+</para
+> -->
+
+</sect1>
+
+<sect1 id="binary_installation">
+<title
+>Instalación de paquetes binarios</title>
+<para
+>Para instalar Umbrello a partir de un paquete precompilado, utilice el programa de administración de paquetes que se incluya en su sistema. También puede utilizar el administrador de paquetes directamente desde la línea de comandos. Por ejemplo, para instalar un paquete deb, debe situarse en el directorio en el que haya descargado el archivo y ejecutar el siguiente comando: <screen width="40"
+><prompt
+>% </prompt
+><userinput
+>dpkg -i umbrello-1.1-i386.deb</userinput
+>
+</screen>
+</para>
+<para
+>En el caso de los paquetes rpm el comando sería <screen width="40"
+><prompt
+>% </prompt
+><userinput
+>rpm -i umbrello-1.1-i386.rpm</userinput
+>
+</screen>
+</para>
+<para
+>Consulte en la documentación de su sistema los comandos correspondientes a otras plataformas. </para>
+</sect1>
+
+<sect1 id="source_installation">
+<title
+>Instalación desde el código fuente</title>
+&install.compile.documentation; </sect1>
+
+
+<sect1 id="running_program">
+<title
+>Inicio del programa</title>
+<para
+>Una vez que haya instalado &umbrello;, puede ejecutarlo desde la línea de comandos con la orden <screen
+><prompt
+>%</prompt
+> <userinput
+><command
+>umbrello</command
+></userinput
+>
+</screen>
+</para>
+<para
+>O seleccionando la entrada correspondiente en el &kmenu;. Este programa se encuentra en el menú <guimenu
+>Desarrollo</guimenu
+> con el nombre <emphasis
+>Modelador UML Umbrello</emphasis
+>. </para>
+
+<screenshot>
+<screeninfo
+>Ventana principal de &umbrello;</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="pics/umbrello-main-screen.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>La ventana principal de &umbrello;</phrase>
+ </textobject>
+ <caption>
+ <para
+>La ventana principal de &umbrello; </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+
+</sect1>
+</appendix>
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/introduction.docbook b/tde-i18n-es/docs/tdesdk/umbrello/introduction.docbook
new file mode 100644
index 00000000000..203e053d884
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/introduction.docbook
@@ -0,0 +1,55 @@
+<chapter id="introduction">
+<title
+>Introducción</title>
+
+<para
+>&umbrello; es una herramienta de diagramas &uml; que ayuda en el proceso del desarrollo de software. &umbrello; le facilitará la creación de un producto de alta calidad, especialmente durante fases de análisis y diseño del proyecto. &UML; también puede usarse para documentar sus diseños de software para ayudarle a usted y al resto de desarrolladores. </para>
+<para
+>Tener una buena maqueta del software es la mejor forma de comunicarse con otros desarrolladores que participen en el proyecto, así como con sus clientes. Una buena maqueta de extremadamente importante para los proyectos de mediano o gran tamaño, pero también resulta útil para los más pequeños. Aunque trabaje en un pequeño proyecto personal, podrá beneficiarse de una buena maqueta porque esta le proporcionará una visión global que le ayudará en la creación de un mejor código. </para>
+<para
+>&UML; es el lenguaje de diagramas que se utiliza para la descripción de tales maquetas. Es posible representar las ideas en &UML; utilizando diversos tipos de diagramas. &umbrello; 1.2 soporta los siguientes tipos: </para>
+<itemizedlist>
+<listitem
+><para
+>Diagrama de clase</para
+></listitem>
+<listitem
+><para
+>Diagrama de secuencia</para
+></listitem>
+<listitem
+><para
+>Diagrama de colaboración</para
+></listitem>
+<listitem
+><para
+>Diagrama de caso de uso</para
+></listitem>
+<listitem
+><para
+>Diagrama de estado</para
+></listitem>
+<listitem
+><para
+>Diagrama de actividad</para
+></listitem>
+<listitem
+><para
+>Diagrama de colaboración</para
+></listitem>
+<listitem
+><para
+>Diagrama de secuencia</para
+></listitem>
+</itemizedlist>
+<para
+>Puede encontrar más información sobre &UML; en la <ulink url="http://www.omg.org"
+>página web de <acronym
+>OMG</acronym
+>, http://www.omg.org.</ulink
+> quien creó el estándar &UML;. </para>
+<para
+>Esperamos que disfrute de &umbrello; y que este le sirva en la creación de software de gran calidad. &umbrello; es una herramienta libre, y lo único que le pedimos es que informe a los desarrolladores de &umbrello; de fallos, problemas o sugerencias en la dirección de correo electrónico <email
+>uml-devel@lists.sourceforge.net</email
+>. </para>
+</chapter>
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/other_features.docbook b/tde-i18n-es/docs/tdesdk/umbrello/other_features.docbook
new file mode 100644
index 00000000000..7663d44c6c1
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/other_features.docbook
@@ -0,0 +1,76 @@
+<chapter id="other-features">
+<title
+>Otras características</title>
+<sect1
+>
+<title
+>Otras características de &umbrello;</title>
+<para
+>Este capítulo explica brevemente otras características que ofrece &umbrello;.</para>
+<sect2 id="copying-as-png">
+<title
+>Copia de objetos como imágenes PNG</title>
+<para
+>Además de ofrecer la funcionalidad normal de copiar, cortar y pegar que se espera en la administración de los objetos de los diferentes diagramas, &umbrello; puede copiar los objetos como imágenes PNG de forma que pueda insertarlos en cualquier otro tipo de documento. No es necesario hacer nada especial para utilizar esta característica, basta con que seleccione un objeto de un diagrama (clase, actor, &etc;) y lo copie (<keycombo
+>&Ctrl;<keycap
+>C</keycap
+></keycombo
+> o mediante el menú), abra un documento de &kword; (o cualquier otro programa que admita el pegado de imágenes) y seleccione la opción de <guimenuitem
+>pegar</guimenuitem
+>. Esta es una gran característica para exportar partes del diagrama como simples imágenes. </para>
+</sect2>
+<sect2 id="export-as-png">
+<title
+>Exportar como imagen</title>
+<para
+>También puede exportar como imagen un diagrama completo. Lo único que tiene que hacer es seleccionar el diagrama que desa exportar y a continuación la opción <guimenuitem
+>Exportar como imagen...</guimenuitem
+> del menú <guimenu
+>Diagrama</guimenu
+>. </para>
+</sect2>
+<sect2 id="printing">
+<title
+>Impresión</title>
+<para
+>&umbrello; le permite imprimir diagramas individuales. Pulse el botón <guiicon
+>Imprimir</guiicon
+> en la barra de herramientas de aplicación o seleccione la opción <guimenuitem
+>Imprimir</guimenuitem
+> en el menú <guimenu
+>Archivo</guimenu
+> para obtener un diálogo de impresión estándar de &kde; donde podrá imprimir los diagramas. </para>
+</sect2>
+<sect2 id="logical-folders">
+<title
+>Carpetas lógicas</title>
+<para
+>Para organizar mejor la maqueta, especialmente en los proyectos grandes, es posible crear carpetas lógicas en la vista de árbol. Basta con que seleccione la opción <menuchoice
+><guimenu
+>Nueva</guimenu
+><guimenuitem
+>Carpeta</guimenuitem
+></menuchoice
+> en el menú contextual de la carpeta predeterminada en la vista de árbol. Las carpetas se pueden anidar, puede mover objetos de una a otras por el procedimiento normal de arrastrar y soltar. </para>
+
+<screenshot>
+<screeninfo
+>Organización de la maqueta con carpetas</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="folders.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>Organización de una maqueta con carpetas lógicas en &umbrello;</phrase>
+ </textobject>
+ <caption>
+ <para
+>Organización de una maqueta con carpetas lógicas en &umbrello; </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+
+</sect2>
+</sect1>
+</chapter>
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/sequence-diagram.png b/tde-i18n-es/docs/tdesdk/umbrello/sequence-diagram.png
new file mode 100644
index 00000000000..5b27ec069cd
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/sequence-diagram.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/state-diagram.png b/tde-i18n-es/docs/tdesdk/umbrello/state-diagram.png
new file mode 100644
index 00000000000..3f83ec813ef
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/state-diagram.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/umbrello-ui-clean.png b/tde-i18n-es/docs/tdesdk/umbrello/umbrello-ui-clean.png
new file mode 100644
index 00000000000..cb0691be2bf
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/umbrello-ui-clean.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/umbrello-ui.png b/tde-i18n-es/docs/tdesdk/umbrello/umbrello-ui.png
new file mode 100644
index 00000000000..3aa50ab51b8
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/umbrello-ui.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/umbrelo-main-screen.png b/tde-i18n-es/docs/tdesdk/umbrello/umbrelo-main-screen.png
new file mode 100644
index 00000000000..df8af8bb09d
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/umbrelo-main-screen.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/uml_basics.docbook b/tde-i18n-es/docs/tdesdk/umbrello/uml_basics.docbook
new file mode 100644
index 00000000000..c416ab80937
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/uml_basics.docbook
@@ -0,0 +1,782 @@
+<chapter id="uml-basics">
+<title
+>Introducción a &UML;</title>
+<sect1 id="about-uml">
+<title
+>Acerca de &UML;</title>
+<para
+>Este capítulo proporciona una introducción rápida a las características básicas de &UML;. Tenga en cuenta que no se trata de un manual de referencia de &UML; sino de una breve introducción. Si desea más información sobre &UML;, o sobre el análisis y diseño del software en general, le recomendamos que lea cualquier de los libros publicados sobre el tema. También hay una buena cantidad de tutoriales en Internet, que puede utilizar como punto de partida. </para>
+
+<para
+>El lenguaje unificado de maquetación (&UML;) sirve para especificar, visualizar y documentar esquemas de sistemas de software orientado a objetos. &UML; no es un método de desarrollo, lo que significa que no sirve para determinar qué hacer en primer lugar o cómo diseñar el sistema, sino que símplemente le ayuda a visualizar el diseño y a hacerlo más accesible para otros. &UML; está controlado por el grupo de administración de objetos (<acronym
+>OMG</acronym
+>) y es el estándar de descripción de esquemas de software. </para>
+<para
+>&UML; está diseñado para su uso con software orientado a objetos, y tiene un uso limitado en otro tipo de cuestiones de programación. </para>
+<para
+>&UML; se compone de muchos elementos de esquematización que representan las diferentes partes de un sistema de software. Los elementos &UML; se utilizan para crear diagramas, que representa alguna parte o punto de vista del sistema. &umbrello; soporta los siguientes tipos de diagramas: </para>
+
+<itemizedlist>
+
+<listitem
+><para
+><emphasis
+><link linkend="use-case-diagram"
+>Diagrama de casos de uso</link
+></emphasis
+> que muestra a los actores (otros usuarios del sistema), los casos de uso (las situaciones que se producen cuando utilizan el sistema) y sus relaciones.</para
+> </listitem>
+
+<listitem
+><para
+><emphasis
+><link linkend="class-diagram"
+>Diagrama de clases</link
+></emphasis
+> que muestra las clases y la relaciones entre ellas.</para
+> </listitem>
+
+<listitem
+><para
+><emphasis
+><link linkend="sequence-diagram"
+>Diagrama de secuencia</link
+></emphasis
+> muestra los objetos y sus múltiples relaciones entre ellos.</para
+> </listitem>
+
+<listitem
+><para
+><emphasis
+><link linkend="collaboration-diagram"
+>Diagrama de colaboración</link
+></emphasis
+> que muestra objetos y sus relaciones, destacando los objetos que participan en el intercambio de mensajes.</para>
+</listitem>
+
+<listitem
+><para
+><emphasis
+><link linkend="state-diagram"
+>Diagrama de estado</link
+></emphasis
+> muestra estados, cambios de estado y eventos en un objeto o en parte del sistema.</para
+> </listitem>
+
+<listitem
+><para
+><emphasis
+><link linkend="activity-diagram"
+>Diagrama de actividad</link
+></emphasis
+> que muestra actividades, así como los cambios de una a otra actividad junto con los eventos que ocurren en ciertas partes del sistema.</para
+></listitem>
+
+<listitem
+><para
+><emphasis
+><link linkend="state-diagram"
+>Diagrama de componentes</link
+></emphasis
+> que muestra los componentes de mayor nivel de la programación (cosas como Kparts o Java Beans).</para
+></listitem>
+
+<listitem
+><para
+><emphasis
+><link linkend="class-diagram"
+>Diagrama de implementación</link
+></emphasis
+> que muestra las instancias de los componentes y sus relaciones.</para
+></listitem
+>
+
+</itemizedlist>
+
+</sect1
+> <!-- about-uml -->
+
+<sect1 id="uml-elements"
+>
+<title
+>Elementos de &UML;</title>
+<sect2 id="use-case-diagram">
+<title
+>Diagrama de casos de uso</title>
+<para
+>Los diagramas de casos de uso describen las relaciones y las dependencias entre un grupo de <emphasis
+>casos de uso</emphasis
+> y los actores participantes en el proceso.</para>
+<para
+>Es importante resaltar que los diagramas de casos de uso no están pensados para representar el diseño y no puede describir los elementos internos de un sistema. Los diagramas de casos de uso sirven para facilitar la comunicación con los futuros usuarios del sistema, y con el cliente, y resultan especialmente útiles para determinar las características necesarias que tendrá el sistema. En otras palabras, los diagramas de casos de uso describen <emphasis
+>qué</emphasis
+> es lo que debe hacer el sistema, pero no <emphasis
+>cómo</emphasis
+>.</para>
+<para>
+<screenshot>
+<screeninfo
+>Ejemplo de un diagrama de casos de uso.</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="use-case-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>&umbrello; mostrando un diagrama de casos de uso</phrase>
+ </textobject>
+ <caption>
+ <para
+>&umbrello; mostrar un diagrama de casos de uso </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+<sect3 id="use-case">
+<title
+>Caso de uso</title>
+<para
+>Un <emphasis
+>caso de uso</emphasis
+> describe, &mdash;desde el punto de vista de los actores&mdash;, un grupo de actividades de un sistema que produce un resultado concreto y tangible.</para>
+<para
+>Los casos de uso son descriptores de las interacciones típicas entre los usuarios de un sistema y ese mismo sistema. Representan el interfaz externo del sistema y especifican qué requisitos de funcionamiento debe tener este (recuerde, únicamente el qué, nunca el cómo). </para>
+<para
+>Cuando se trabaja con casos de uso, es importante tener presentes algunas secillas reglas: <itemizedlist>
+ <listitem
+><para
+>Cada caso de uso está relacionado como mínimo con un actor.</para
+></listitem>
+ <listitem
+><para
+>Cada caso de uso es un iniciador (&ie;, un actor)</para
+></listitem>
+ <listitem
+><para
+>Cada caso de uso lleva a un resultado relevante (un resultado con <quote
+>valor intrínseco</quote
+>)</para>
+ </listitem>
+ </itemizedlist>
+</para>
+<para
+>Los casos de uso pueden tener relaciones con otros casos de uso. Los tres tipos de relaciones más comunes entre casos de uso son:</para>
+<itemizedlist>
+<listitem
+><para
+><emphasis
+>&lt;&lt;include&gt;&gt;</emphasis
+> que especifica una situación en la que un caso de uso tiene lugar <emphasis
+>dentro</emphasis
+> de otro caso de uso</para
+></listitem>
+<listitem
+><para
+><emphasis
+>&lt;&lt;extends&gt;&gt;</emphasis
+> que especifica que en ciertas situaciones, o en algún punto (llamado punto de extensión) un caso de uso será extendido por otro.</para
+></listitem>
+<listitem
+><para
+><emphasis
+>Generalización</emphasis
+> que especifica que un caso de uso hereda las características del <quote
+>super</quote
+> caso de uso, y puede volver a especificar algunas o todas ellas de una forma muy similar a las herencias entre clases. </para>
+</listitem>
+</itemizedlist>
+</sect3>
+<sect3 id="actor">
+<title
+>Actor</title>
+<para
+>Un actor es una entidad externa (de fuera del sistema) que interacciona con el sistema participando (y normalmente iniciando) en un caso de uso. Los actores pueden ser gente real (por ejemplo, usuarios del sistema), otros ordenadores o eventos externos. </para>
+<para
+>Los actores no representan a personas <emphasis
+>físicas</emphasis
+> o a sistemas, sino su <emphasis
+>papel</emphasis
+>. Esto significa que cuando una persona interacciones con el sistema de diferentes maneras (asumiendo diferentes papeles), estará representado por varios actores. Por ejemplo, una persona que proporciona servicios de atención al cliente telefónicamente y realiza pedidos para los clientes estaría representada por un actor <quote
+>equipo de soporte</quote
+> y por otro actor <quote
+>representante de ventas</quote
+>. </para>
+</sect3>
+<sect3 id="use-case-description">
+<title
+>Descripción de casos de uso</title>
+<para
+>Las descripciones de casos de uso son reseñas textuales del caso de uso. Normalmente tienen el formato de una nota o un documento relacionado de alguna manera con el caso de uso, y explica los procesos o actividades que tienen lugar en el caso de uso. </para>
+</sect3>
+</sect2
+> <!-- use-case-diagram -->
+
+<sect2 id="class-diagram">
+<title
+>Diagrama de clases</title>
+<para
+>Los diagramas de clases muestran las diferentes clases que componen un sistema y cómo se relacionan unas con otras. Se dice que los diagramas de clases son diagramas <quote
+>estáticos</quote
+> porque muestran las clases, junto con sus métodos y atributos, así como las relaciones estáticas entre ellas: qué clases <quote
+>conocen</quote
+> a qué otras clases o qué clases <quote
+>son parte</quote
+> de otras clases, pero no muestran los métodos mediante los que se invocan entre ellas. </para>
+<para>
+<screenshot>
+<screeninfo
+>Ejemplo de un diagrama de clases</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="class-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>&umbrello; mostrando un diagrama de clases</phrase>
+ </textobject>
+ <caption>
+ <para
+>&umbrello; mostrando un diagrama de clases </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+<sect3 id="class">
+<title
+>Clase</title>
+<para
+>Una clase define los atributos y los métodos de una serie de objetos. Todos los objetos de esta clase (instancias de esa clase) tienen el mismo comportamiento y el mismo conjunto de atributos (cada objetos tiene el suyo propio). En ocasiones se utiliza el término <quote
+>tipo</quote
+> en lugar de clase, pero recuerde que no son lo mismo, y que el término tipo tiene un significado más general. </para>
+<para
+>En &uml;, las clases están representadas por rectángulos, con el nombre de la clase, y también pueden mostrar atributos y operaciones de la clase en otros dos <quote
+>compartimentos</quote
+> dentro del rectángulo. </para>
+<para>
+<screenshot>
+<screeninfo
+>Una clase en &uml;</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="class.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>Representación visual de una clase en &UML;</phrase>
+ </textobject>
+ <caption>
+ <para
+>Representación visual de una clase en &UML; </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+<sect4 id="attribute">
+<title
+>Atributos</title>
+<para
+>En &UML;, los atributos se muestran al menos con su nombre, y también pueden mostrar su tipo, valor inicial y otras propiedades. Los atributos también pueden ser mostrados visualmente: </para>
+<itemizedlist>
+<listitem
+><para
+><literal
+>+</literal
+> Indica atributos <emphasis
+>públicos</emphasis
+></para
+></listitem>
+<listitem
+><para
+><literal
+>#</literal
+> Indica atributos <emphasis
+>protegidos</emphasis
+></para
+></listitem>
+<listitem
+><para
+><literal
+>-</literal
+> Indica atributos <emphasis
+>privados</emphasis
+></para
+></listitem>
+</itemizedlist>
+</sect4>
+<sect4 id="operation">
+<title
+>Operaciones</title>
+<para
+>La operaciones (métodos) también se muestan al menos con su nombre, y pueden mostrar sus parámetros y valores de retorno. Las operaciones, al igual que los atributos, se pueden mostrar visualmente: <itemizedlist>
+<listitem
+><para
+><literal
+>+</literal
+> Indica operaciones <emphasis
+>públicas</emphasis
+></para
+></listitem>
+<listitem
+><para
+><literal
+>#</literal
+> Indica operaciones <emphasis
+>protegidas</emphasis
+></para
+></listitem>
+<listitem
+><para
+><literal
+>-</literal
+> Indica operaciones <emphasis
+>privadas</emphasis
+></para
+></listitem>
+</itemizedlist>
+</para>
+</sect4>
+
+<sect4 id="templates">
+<title
+>Plantillas</title>
+<para
+>Las clases pueden tener plantillas, un valor usado para una clase no especificada o un tipo. El tipo de plantilla se especifica cuando se inicia una clase (&ie; cuando se crea un objeto). Las plantillas existen en C++ y se introducirán en Java 1.5 con el nombre de Genéricos. </para>
+</sect4>
+</sect3>
+
+<sect3 id="class-associations">
+<title
+>Asociaciones de clases</title>
+<para
+>Las clases se puede relaciones (estar asocionadas) con otras de diferentes maneras:</para>
+<sect4 id="generalization">
+<title
+>Generalización</title>
+<para
+>La herencia es uno de los conceptos fundamentales de la programación orientada a objetos, en la que una clase <quote
+>recoge</quote
+> todos los atributos y operaciones de la clase de la que es heredera, y puede alterar/modificar algunos de ellos, así como añadir más atributos y operaciones propias.</para>
+<para
+>En &UML;, una asociación de <emphasis
+>generalización</emphasis
+> entre dos clases, coloca a estas en una jerarquía que representa el concepto de herencia de una clase derivada de la clase base. En &UML;, las generalizaciones se representan por medio de una línea que conecta las dos clases, con una flecha en el lado de la clase base. <screenshot>
+<screeninfo
+>Generalización</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="generalization.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>Representación visual de una generalización en &UML;</phrase>
+ </textobject>
+ <caption>
+ <para
+>Representación visual de una generalización en &UML; </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+</sect4>
+
+<sect4 id="uml-associations">
+<title
+>Asociaciones</title>
+<para
+>Una asociación representa una relación entre clases, y aporta la semántica común y la estructura de muchos tipos de <quote
+>conexiones</quote
+> entre objetos.</para>
+<para
+>Las asociaciones son los mecanismos que permite a los objetos comunicarse entre sí. Describe la conexión entre diferentes clases (la conexión entre los objetos reales se denomina conexión de objetos o <emphasis
+>enlace</emphasis
+>). </para>
+<para
+>Las asociaciones pueden tener una papel que especifica el propósito de la asociación y pueden ser unidireccionales o bidireccionales (indicando si los dos objetos participantes en la relación pueden intercambiar mensajes entre sí, o es únicamente uno de ellos el que recibe información del otro). Cada extremo de la asociación también tiene un valor de multiplicidad, que indica cuántos objetos de ese lado de la asociación están relacionados con un objeto del extremo contrario. </para>
+<para
+>En &UML;, las asociaciones se representan por medio de líneas que conectan las clases participantes en la relación, y también pueden mostrar el papel y la multiplicidad de cada uno de los participantes. La multiplicidad se muestra como un rango [mín...máx] de valores no negativos, con un asterisco (<literal
+>*</literal
+>) representando el infinito en el lado máximo. <screenshot>
+<screeninfo
+>Asociación en &UML;</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="association.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>Representación visual de una asociación en &UML;</phrase>
+ </textobject>
+ <caption>
+ <para
+>Representación visual de una asociación en &UML; </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+</sect4>
+
+<sect4 id="aggregation">
+<title
+>Acumulación</title>
+<para
+>Las acumulaciones son tipos especiales de asociaciones en las que las dos clases participantes no tienen un estado igual, pero constituyen una relación <quote
+>completa</quote
+>. Una acumulación describe cómo se compone la clase que asume el rol completo de otras clases que se encargan de las partes. En las acumulaciones, la clase que actúa como completa, tiene una multiplicidad de uno. </para>
+<para
+>En &UML;, las acumulaciones están representadas por una asociación que muestra un rombo en uno de los lados de la clase completa. <screenshot>
+<screeninfo
+>Acumulación</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="aggregation.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>Representación visual de una relación de acumulación en &UML;</phrase>
+ </textobject>
+ <caption>
+ <para
+>Representación visual de una relación de acumulación en &UML; </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+</sect4>
+<sect4 id="composition">
+<title
+>Composición</title>
+<para
+>Las composiciones son asociaciones que representan acumulaciones <emphasis
+>muy fuertes</emphasis
+>. Esto significa que las composiciones también forman relaciones completas, pero dichas relaciones son tan fuertes que las partes no pueden existir por sí mismas. Únicamente existen como parte del conjunto, y si este es destruido las partes también lo son.</para>
+<para
+>En &UML;, las composiciones están representadas por un rombo sólido al lado del conjunto. </para>
+<para
+><screenshot>
+<screeninfo
+>Composición</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="composition.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>Representación visual de una relación de composición en &UML;</phrase>
+ </textobject>
+ </mediaobject>
+</screenshot
+></para>
+</sect4>
+</sect3
+> <!--class-associations-->
+
+<sect3 id="other-class-diagram-items">
+<title
+>Otros cmopnentes de los diagrama de clases</title>
+<para
+>Los diagramas de clases pueden contener más componentes aparte de clases.</para>
+<sect4 id="interfaces">
+<title
+>Interfaces</title>
+<para
+>Las interfaces son clases abstractas, esto es, instancias que no pueden ser creadas directamente a partir de ellas. Pueden contener operaciones, pero no atributos. Las clases pueden heredarse de las interfaces pudiendo así realizarse instancias a partir de estos diagramas.</para>
+<!-- FIXME screenshot -->
+</sect4>
+<sect4 id="datatype">
+<title
+>Tipo de datos</title>
+<para
+>Los tipo de datos son primitivas incluidas en algunos lenguajes de programación. Algunos ejemplos son: bool y float. No pueden tener relación con clases, pero las clases sí pueden relacionarse con ellos.</para>
+<!-- FIXME screenshot -->
+</sect4>
+<sect4 id="enum">
+<title
+>Enumeraciones</title>
+<para
+>Las enumeraciones son simples listas de valores. Un ejemplo típico de esto sería una enumeración de los días de la semana. Al igual que los tipos de datos, no pueden relacionarse con las clases, pero las clases sí pueden hacerlo con ellos. </para>
+<!-- FIXME screenshot -->
+</sect4>
+<sect4 id="package">
+<title
+>Paquetes</title>
+<para
+>Los paquetes, en lenguajes de programación, representan un espacio de nombres en un diagrama se emplean para representar partes del sistema que contienen más de una clase, incluso cientos de ellas.</para>
+<!-- FIXME screenshot -->
+</sect4>
+</sect3>
+
+</sect2
+> <!-- class diagram -->
+
+<sect2 id="sequence-diagram">
+<title
+>Diagramas de secuencia</title>
+
+<para
+>Los diagramas de secuencia muestran el intercambio de mensajes (&ie; la forma en que se invocan) en un momento dado. Los diagramas de secuencia ponen especial énfasis en el orden y el momento en que se envían los mensajes a los objetos.</para>
+
+<para
+>En los diagramas de secuencia, los objetos están representados por líneas intermitentes verticales, con el nombre del objeto en la parte más alta. El eje de tiempo también es vertical, incrementándose hacia abajo, de forma que los mensajes son enviados de un objeto a otro en forma de flechas con los nombres de la operación y los parámetros. </para>
+
+<!-- FIXME update screenshot to show synchronous messages -->
+<screenshot>
+<screeninfo
+>Diagrama de secuencia</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="sequence-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>&umbrello; mostrando un diagrama de secuencia</phrase>
+ </textobject>
+ <caption>
+ <para
+>&umbrello; mostrando un diagrama de secuencia </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+
+<para
+>Los mensajes pueden ser o bien síncronos, el tipo normal de llamada del mensaje donde se pasa el control a objeto llamado hasta que el método finalize, o asíncronos donde se devuelve el control directamente al objeto que realiza la llamada. Los mensajes síncronos tienen una caja vertical en un lateral del objeto invocante que muestra el flujo del control del programa.</para>
+</sect2
+> <!-- sequence diagrams -->
+
+<sect2 id="collaboration-diagram">
+<title
+>Diagramas de colaboración</title>
+
+<para
+>Los diagramas de colaboración muestran las interacciones que ocurren entre los objetos que participan en una situación determinada. Esta es más o menos la misma información que la mostrada por los diagramas de secuencia, pero destacando la forma en que las operaciones se producen en el tiempo, mientras que los diagramas de colaboración fijan el interés en las relaciones entre los objetos y su topología.</para>
+
+<para
+>En los diagramas de colaboración los mensajes enviados de un objeto a otro se representan mediante flechas, mostrando el nombre del mensaje, los parámetros y la secuencia del mensaje. Los diagramas de colaboración están indicados para mostrar una situación o flujo programa específicos y son unos de los mejores tipos de diagramas para demostrar o explicar rápidamente un proceso dentro de la lógica del programa. </para>
+
+<screenshot>
+<screeninfo
+>Colaboración</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="collaboration-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>&umbrello; mostrando un diagrama de colaboración</phrase>
+ </textobject>
+ <caption>
+ <para
+>&umbrello; mostrando un diagrama de colaboración </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+
+</sect2
+> <!-- collaboration diagrams -->
+
+<sect2 id="state-diagram">
+<title
+>Diagrama de estado</title>
+<para
+>Los diagramas de estado muestran los diferentes estados de un objeto durante su vida, y los estímulos que provocan los cambios de estado en un objeto. </para
+>
+<para
+>Los diagramas de estado ven a los objetos como <emphasis
+>máquinas de estado</emphasis
+> o autómatas finitos que pueden estar en un conjunto de estados finitos y que pueden cambiar su estado a través de un estímulo perteneciente a un conjunto finito. Por ejemplo, un objeto de tipo <emphasis
+>NetServer</emphasis
+> puede tener durante su vida uno de los siguientes estados: </para>
+<itemizedlist>
+<listitem
+><para
+>Listo</para
+></listitem>
+<listitem
+><para
+>Escuchando</para
+></listitem>
+<listitem
+><para
+>Trabajando</para
+></listitem>
+<listitem
+><para
+>Detenido</para
+></listitem>
+</itemizedlist>
+<para
+>y los eventos que pueden producir que el objeto cambie de estado son</para>
+<itemizedlist>
+<listitem
+><para
+>Se crea el objeto</para
+></listitem>
+<listitem
+><para
+>El objeto recibe un mensaje de escucha</para
+></listitem>
+<listitem
+><para
+>Un cliente solicita una conexión a través de la red</para
+></listitem>
+<listitem
+><para
+>Un cliente finaliza una solicitud</para
+></listitem>
+<listitem
+><para
+>La solicitud se ejecuta y ser termina</para
+></listitem>
+<listitem
+><para
+>El objeto recibe un mensaje de detención</para
+></listitem>
+<listitem
+><para
+>etc</para
+></listitem>
+</itemizedlist>
+<para>
+<screenshot>
+<screeninfo
+>Diagrama de estado</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="state-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>&umbrello; mostrando un diagrama de estado</phrase>
+ </textobject>
+ <caption>
+ <para
+>&umbrello; mostrando un diagrama de estado </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+<sect3 id="state">
+<title
+>Estado</title>
+<para
+>Los estados son los ladrillos de los diagramas de estado. Un estado pertenece a exactamente una clase y representa un resumen de los valores y atributos que puede tener la clase. Un estado &UML; describe el estado interno de un objeto de una clase particular </para
+>
+<para
+>Tenga en cuenta que no todos los cambios en los atributos de un objeto deben estar representados por estados, sino únicamente aquellos cambios que pueden afectar significativamente a la forma de funcionamiento del objeto</para>
+<para
+>Hay dos tipos especiales de estados: inicio y fin. Son especiales en el sentido de que no hay ningún evento que pueda devolver a un objeto a su estado de inicio, y de la misma forma no hay ningún evento que pueda sacar a un objeto de su estado de fin. </para>
+</sect3>
+
+</sect2
+> <!-- state diagrams -->
+
+<sect2 id="activity-diagram">
+<title
+>Diagrama de actividad</title>
+<para
+>Los diagramas de actividad describen la secuencia de las actividades en un sistema. Los diagramas de actividad son una forma especial de los diagramas de estado, que únicamente (o mayormente) contienen actividades. </para>
+<para>
+<screenshot>
+<screeninfo
+>Ejemplo de un diagrama de actividad.</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="activity-diagram.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>&umbrello; mostrando un diagrama de actividad</phrase>
+ </textobject>
+ <caption>
+ <para
+>&umbrello; mostrando un diagrama de actividad </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+</para>
+<para
+>Los diagramas de actividad son similares a los diagramas de flujo procesales, con la diferencia de que todas las actividades están claramente unidas a objetos.</para>
+
+<para
+>Los diagramas de actividad siempre están asociados a una <emphasis
+>clase</emphasis
+>, a una <emphasis
+>operación</emphasis
+> o a un <emphasis
+>caso de uso</emphasis
+>.</para>
+
+<para
+>Los diagramas de actividad soportan actividades tanto secuenciales como paralelas. La ejecución paralela se representa por medio de iconos de fork/espera, y en el caso de las actividades paralelas, no importa en qué orden sean invocadas (pueden ser ejecutadas simultáneamente o una detrás de otra).</para>
+<sect3 id="activity">
+<title
+>Actividad</title>
+<para
+>Una actividad es un único paso de un proceso. Una activa es un estado del sistema que actividad interna y, al menos, una transición saliente. Las actividades también pueden tener más de una transición saliente, si tienen diferentes condiciones. </para
+>
+<para
+>Las actividades pueden formar jerarquías, lo que significa que una actividad puede estar formada de varias actividades <quote
+>de detalle</quote
+>, en cuyo caso las transiciones entrantes y salientes deberían coincidir con las del diagrama de detalle. </para>
+
+</sect3>
+</sect2
+> <!-- activity diagram -->
+
+<sect2 id="helper-elements">
+<title
+>Elementos de ayuda</title>
+<para
+>Existen unos pocos elementos en &UML; que no tiene un valor semántico real en la maqueta, pero que ayudan a clarificar partes del programa. Estos elementos son </para>
+<itemizedlist>
+<listitem
+><para
+>Línea de texto</para
+></listitem>
+<listitem
+><para
+>Notas de texto y enlaces</para
+></listitem>
+<listitem
+><para
+>Cajas</para
+></listitem>
+</itemizedlist
+>
+<para
+>Las líneas de texto son útiles para añadir información textual a un diagrama. Es texto es libre y no tiene ningún significado para la maqueta. </para
+>
+
+<para
+>Las notas son útiles para añadir información más detallada de un objeto o una situación específica. Tienen la gran ventaja de que se pueden anclar a los elementos &UML; para mostrar que una nota <quote
+>pertenece</quote
+> a un objeto o situación específicos </para>
+
+<para
+>Las cajas son rectángulos repartidos libremente que pueden usarse para juntar objetos haciendo los diagramas más legibles. No tienen significado lógico en la maqueta</para>
+
+<!-- FIXME, screenshot -->
+</sect2
+> <!-- helper elements -->
+
+<sect2 id="component-diagram">
+<title
+>Diagramas de componentes</title>
+<para
+>Los diagramas de componentes muestran los componentes del software (ya sea las tecnologías que lo forman como Kparts, componentes CORBA, Java Beans o simplemente secciones del sistema claramente distintas) y los artilugios de que está compuesto como los archivos de código fuente, las librerías o las tablas de una base de datos.</para>
+
+<para
+>Los componentes pueden tener interfaces (&ie; clases abstractas con operaciones) que permiten asociaciones entre componentes.</para>
+</sect2>
+
+<sect2 id="deployment-diagram">
+<title
+>Diagramas de implementación</title>
+
+<para
+>Los diagramas de implementación muestran las instancias existentes al ejecutarse así como sus relaciones. También se representan los nodos que identifican recursos físicos, típicamente un ordenador así como interfaces y objetos (instancias de las clases).</para>
+
+</sect2>
+
+</sect1
+>
+</chapter>
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/use-case-diagram.png b/tde-i18n-es/docs/tdesdk/umbrello/use-case-diagram.png
new file mode 100644
index 00000000000..74120220bf9
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/use-case-diagram.png
Binary files differ
diff --git a/tde-i18n-es/docs/tdesdk/umbrello/working_with_umbrello.docbook b/tde-i18n-es/docs/tdesdk/umbrello/working_with_umbrello.docbook
new file mode 100644
index 00000000000..7d16031b5b6
--- /dev/null
+++ b/tde-i18n-es/docs/tdesdk/umbrello/working_with_umbrello.docbook
@@ -0,0 +1,415 @@
+<chapter id="working-with-umbrello">
+<title
+>Trabajando con &umbrello;</title>
+<!-- Umbrello basics: creating diagrams, creating classes, adding objects to diagrams,
+ associations, editing properties, anchor points in associations, removing objects, removing
+ diagrams
+-->
+
+<para
+>Este capítulo presentará el interfaz de usuario de &umbrello; y le informará de todo lo que necesita saber para iniciar su primer esquema. Todas las acciones de &umbrello; son accesibles a través del menú y de las barras de herramientas, pero &umbrello; también hace un constante uso del botón <mousebutton
+>derecho</mousebutton
+> del ratón. Puede utilizar el &RMB; en la práctica totalidad de los elementos del área de trabajo o de la vista en árbol de &umbrello; para abrir un menú con las funciones más útiles aplicables al elemento en particular sobre el que está trabajando. Algunos usuarios encuentran el manejo de estos menús un tanto confuso inicialmente, porque están más acostumbrados a trabajar con el menú o las barras de herramientas, pero una vez que se acostumbre al botón <mousebutton
+>derecho</mousebutton
+>, verá que puede acelerar enormemente su trabajo. </para>
+
+<sect1 id="user-interface">
+<title
+>Interfaz de usuario</title>
+<para
+>La ventana principal de &umbrello; está dividida en tres áreas que le ayudarán a mantener una visión general de todo el sistema y a acceder rápidamente a los diferentes diagramas mientras trabaja en su proyecto. </para>
+<para
+>Esas áreas reciben el nombre de:</para>
+<itemizedlist>
+<listitem
+><para
+>Vista en árbol</para
+></listitem>
+<listitem
+><para
+>Área de trabajo</para
+></listitem>
+<listitem
+><para
+>Ventana de documentación</para
+></listitem>
+</itemizedlist>
+
+<screenshot>
+<screeninfo
+>Interfaz de usuario de &umbrello;</screeninfo>
+ <mediaobject>
+ <imageobject>
+ <imagedata fileref="umbrello-ui.png" format="PNG"/>
+ </imageobject>
+ <textobject>
+ <phrase
+>Interfaz de usuario de &umbrello;</phrase>
+ </textobject>
+ <caption>
+ <para
+>Interfaz de usuario de &umbrello; </para>
+ </caption>
+ </mediaobject>
+</screenshot>
+
+<sect2 id="tree-view">
+<title
+>Título</title>
+<para
+>La vista en árbol está situada en la parte superior izquierda de la ventana, muestra todos los diagramas, clases, actores y casos de uso de los que está compuesto su esquema. Le permite tener una perspectiva de los elementos que componen su esquema. La vista en árbol también le proporciona una forma rápida de pasar de un diagrama a otro de su esquema así como de introducir elementos de su esquema en el diagrama actual. </para>
+<para
+>Si está trabajando en un modelo con bastantes clases y diagramas, la vista en árbol le puede ayudar a controlarlo todo organizando los elementos de su esquema en carpetas. Puede crear nuevas carpetas seleccionando la opción adecuada en el menú contextual (&RMB; </para>
+</sect2>
+
+<sect2 id="documentation-window">
+<title
+>Ventana de documentación</title>
+<para
+>La ventana de documentación es esa ventana pequeña situada al fondo a la izquierda de &umbrello;, le permite previsualizar rápidamente la documentación para el objeto seleccionado. Esta ventana es bastante pequeña debido a que su propósito es darle una rápida noción del elemento en cuestión sin acaparar mucho espacio en la pantalla. Si desea ver la documentación más detalladamente puede abrir las propiedades del objeto. </para>
+</sect2>
+<sect2 id="work-area">
+<title
+>Área de trabajo</title>
+<para
+>El área de trabajo es el la ventana principal de &umbrello; y donde todo se lleva a cabo la parte importante del trabajo. Aquí es donde editará y verá los diagramas de su esquema. El área de trabajo muestra el diagrama sobre el que se está trabajando en cada momento, sólo es posible mostrar uno cada vez. </para>
+</sect2>
+</sect1
+> <!--user-interface-->
+<sect1 id="load-save">
+<title
+>Crear, cargar y guardar proyectos</title>
+<para
+>Lo primero que necesita para empezar a hacer cosas interesantes en &umbrello; es crear un esquema sobre el que trabajar. Cuando se inicia &umbrello;, siempre se carga el último esquema sobre el que se ha estado trabajando o crea uno vacío (según la configuración establecida en preferencias). Esto le permitirá empezar a trabajar inmediatamente. </para>
+<sect2 id="new-model">
+<title
+>Nuevo proyecto</title>
+<para
+>Si en algún momento necesita crear un nuevo esquema, hágalo seleccionando (<guimenuitem
+>Nuevo</guimenuitem
+><guimenu
+>Archivo</guimenu
+> o pinchando sobre el icono <guiicon
+>Nuevo</guiicon
+> en la barra de herramientas. Si está trabajando en un esquema que ha sido modificado, &umbrello;le preguntará si quiere o no guardar sus cambios antes de cargar el nuevo esquema. </para>
+</sect2>
+<sect2 id="save-model">
+<title
+>Guardar modelo</title>
+<para
+>Puede guardar su esquema en cualquier momento seleccionando <guimenuitem
+>Guardar</guimenuitem
+> desde el menú <guimenu
+>Archivo</guimenu
+> o pulsando sobre el botón <guiicon
+>Guardar </guiicon
+> en la barra de herramientas de la aplicación. Si necesita guardar su modelo con un nombre diferente puede usar la opción <guimenuitem
+>Guardar como</guimenuitem
+> desde el menú <guimenu
+>Archivo</guimenu
+>. </para>
+<para
+>&umbrello; también le permite ir guardando su trabajo automáticamente cada cierto tiempo. Puede indicar si desea o no esta opción así como el intervalo de tiempo en <guimenu
+>preferencias</guimenu
+>.</para>
+</sect2>
+<sect2 id="load-model">
+<title
+>Cargar modelo</title>
+<para
+>Para cargar un esquema ya existente puede seleccionar la opción <guimenuitem
+>Abrir</guimenuitem
+> desde el menú <guimenu
+>Archivo</guimenu
+> o pulsar sobre el icono <guiicon
+>Abrir</guiicon
+> de la barra de herramientas. Puede acceder a los esquemas usados recientemente en el submenú <guimenuitem
+>Abrir reciente</guimenuitem
+> en el menú <guimenu
+>Archivo</guimenu
+>. </para>
+<para
+>&umbrello; sólo puede trabajar en un sólo esquema al mismo tiempo, esto hace que si intenta cargar un nuevo esquema en el programa cuando ha realizado alguna modificación sobre el que está trabajando, &umbrello; le preguntará si quiere guardar sus cambios antes de cerrarlo y abrir el nuevo. Puede iniciar dos o más instancias de &umbrello; al mismo tiempo, también puede copiar y pegar entre dos instancias. </para>
+</sect2>
+</sect1
+> <!--load-save-->
+<sect1 id="edit-model">
+<title
+>Editar modelo</title>
+<para
+>En &umbrello; existen básicamente dos formas de editar los elementos de su modelo. <itemizedlist>
+<listitem
+><para
+>Editar los elementos del esquema directamente a través de la vista en árbol.</para
+></listitem>
+<listitem
+><para
+>Editarlos a través de un diagrama.</para
+></listitem>
+</itemizedlist>
+</para>
+<para
+>Usando el menú contextual de los distintos elementos de la vista en árbol podrá añadir, eliminar y modificar casi todos los elementos de su esquema. Pinchando con el botón <mousebutton
+>derecho</mousebutton
+> del ratón sobre las carpetas en la vista en árbol también podrá crear diferentes tipos de diagramas dependiendo si la carpeta en cuestión es <emphasis
+>vista de caso de uso</emphasis
+> o <emphasis
+>vista lógica</emphasis
+>, actores, casos de uso, clases, etc... </para>
+<para
+>Una vez que ha añadido algún elemento a su modelo, podrá editarlo mediante su diálogo de propiedades al que podrá acceder seleccionando la opción <emphasis
+>Propiedades</emphasis
+> en el menú contextual que aparece al pinchar con el botón <mousebutton
+>derecho</mousebutton
+> en los objetos de la vista en árbol. </para>
+<para
+>También puede editar su esquema creando o modificando sus elementos por medio de los diagramas. En la siguiente sección tiene más detalles de como hacer esto. </para>
+</sect1>
+<sect1 id="add-remove-diagrams">
+<title
+>Añadir y eliminar diagramas</title>
+<para
+>Su esquema &UML; está formado por un conjunto de elementos de &UML; y las asociaciones entre ellos. Dado que no es posible ver el esquema directamente, se usan <emphasis
+>diagramas</emphasis
+> para ello. </para>
+<sect2 id="create-diagram">
+<title
+>Crear diagramas</title>
+<para
+>Para crear un nuevo diagrama en su esquema seleccione el tipo de diagrama que necesita en <guimenuitem
+>Nuevo</guimenuitem
+> del menú <guimenu
+>Diagrama</guimenu
+> y asígnele un nombre. Se creará el diagrama y podrá verlo en la vista de árbol </para>
+<para
+>Recuerde que &umbrello; emplea a menudo menús contextuales, también puede pulsar &RMB; sobre una carpeta de la vista en árbol y seleccionar el tipo de diagrama que desee desde la opción <guisubmenu
+>Nuevo</guisubmenu
+> del menú contextual. Observe que puede crear diagramas de caso de uso sólo desde las carpetas de vista de casos de uso y los otros tipos de diagramas sólo pueden ser creados en las carpetas de vista lógica. </para>
+</sect2>
+<sect2 id="remove-diagram">
+<title
+>Eliminar diagramas</title>
+<para
+>Si desea eliminar un diagrama de su esquema, puede hacerlo activándolo y seleccionando <guimenuitem
+>Borrar</guimenuitem
+> desde el menú <guimenu
+>Diagrama</guimenu
+>. También puede eliminarlo seleccionado <guimenuitem
+>Borrar</guimenuitem
+> desde el menú contxtual del diagrama en la vista en árbol. </para>
+<para
+>Dado que el borrado de diagramas es algo delicado porque se puede perder mucho trabajo si se hace accidentalemente, &umbrello; le pedirá confirmación antes de eliminar cualquier diagrama. Una vez que un diagrama ha sido borrado y el archivo ha sido guardado, ya no será posible recuperarlo. </para>
+</sect2>
+<sect2 id="rename-diagram">
+<title
+>Renombrar diagramas</title>
+<para
+>Si quiere cambiar el nombre de un diagrama ya existente, puede hacerlo seleccionando Renombrar desde el menú que le aparece al &RMB; sobre la vista de árbol. </para>
+<para
+>Otra forma de renombrar un diagrama es hacerlo a través de su diálogo de propiedades que puede ver seleccoinado 'Propiedades' desde el menú contextual o haciendo doble click sobre la vista de árbol. </para>
+</sect2>
+</sect1>
+<sect1 id="edit-diagram">
+<title
+>Editar diagramas</title>
+<para
+>Cuando esté trabajando en un diagrama, &umbrello; tratará de ayudarle indicándole algunas sencillas reglas sobre qué elementos son válidos en los distintos tipos de diagramas así como las relaciones que pueden existir entre ellos. Si usted es un experto en &UML; seguramente ni se dé cuenta, pero si está empezando le ayudará a crear correctamente diagramas que cumplan el estándar. </para>
+<para
+>Una vez que ha creado sus diagramas, es hora de editarlos. Algún novato observador habrá observado la diferencia entre editar un diagrama y editar el <emphasis
+>esquema</emphasis
+>. Como ya sabrá, los diagramas son <emphasis
+>vistas</emphasis
+> de su esquema. Por ejemplo, si crea una clase editando un diagrama de clases estará editando el diagrama y el modelo, pero si cambia el color o otra opción visual en un diagrama de clases, estará editando sólo el diagrama sin modificar el esquema. </para>
+<sect2 id="insert-elements">
+<title
+>Insertar diagramas</title>
+<para
+>Una de las primeras cosas que hará cuando edite un nuevo diagrama es insertar elementos en ellos (clases, actores, casos de uso,&etc;). Existen básicamente dos formas de hacer esto:</para>
+<itemizedlist>
+<listitem
+><para
+>Arrastrando elementos ya existentes en su esqumas desde la vista en árbol.</para
+></listitem>
+<listitem
+><para
+>Crear nuevos elementos en su modelo y añadirlos a su diagrama al mismo tiempo usando alguna de las herramientas de edicción de la barra de herramientas.</para
+></listitem>
+</itemizedlist>
+<para
+>Para introducir elementos ya existentes en su esquema, simplemente arrástrelos desde la vista en árbol y suéltelos en el lugar del diagrama donde quiere situarlos. Siempre podrá mover elementos en los diagramas empleando la herramienta 'Seleccionar'. </para>
+<para
+>la segunda forma de añadir elementos a su diagrama es usando las herramientas de edicción de la barra de herramientas principal (observe que esto también añadirá los elementos a su esquema). </para>
+<para
+>La barra de herramientas principal está situada, por omisión, en la parte derecha de la ventana de la aplicación. Desde &umbrello; 1.2 se situa en la parte superior de la ventana. Puede situarla en cualquier otra parte o anclarla en otro punto. Las herramientas que contiene (es decir, lo botones que ve sobre ella) cambiarán según el modelo de diagrama sobre el que esté trabajando en cada momento. El botón de la herramienta que está seleccionada en cada momento aparece activado. Podrá pasar a la herramienta de selección pulsando &Esc;. </para>
+<para
+>Una vez que ha seleccionado una herramienta de edición en la barra de herramientas de trabajo (por ejemplo la herramienta para insertar clases) el puntero del ratón adopta forma de cruz, ahora puede insertar elementos en su esquema haciendo click en su diagrama. Observe que los elemtos en &UML; deben tener un <emphasis
+>nombre único</emphasis
+> así que si tiene una clase llamada <quote
+>claseA</quote
+> en un diagrama y utiliza la herramienta insertar para introducir otra clase en otro diagrama, no podrá llamarla <quote
+>claseA</quote
+>. Dado que se supone que se trata de elementos diferentes, sus nombres también deberán serlo. Si lo que quiere hacer es añadir el <emphasis
+>mismo</emphasis
+> elemento en su diagrama la herramienta insertar clase no es adecuada para esto, lo que debe hacer es arrastar y soltar la clase desde la vista en árbol. </para>
+</sect2>
+<sect2 id="delete-elements">
+<title
+>Borrar elementos</title>
+<para
+>Podrá borrar cualquier elemento seleccionando la opción <guimenuitem
+>Borrar</guimenuitem
+> desde su menú contextual. </para>
+<para
+>De nuevo hay una <emphasis
+>gran</emphasis
+> diferencia entre eliminar un objeto de un diagrama y eliminarlo de todo el esquema. Si borra un objeto de un diagrama, únicamente lo eliminará de ese diagrama concreto, seguirá formando parte de su esquema y si otros diagramas lo usan seguirá estando ahí. En cambio, si borra el elemento desde la vista en árbol sí que lo eliminará completamente de su <emphasis
+>esquema</emphasis
+>, con lo que desaparecerá de todos los diagramas donde aparecía. </para>
+</sect2>
+<sect2 id="edit-elements">
+<title
+>Editar elementos</title>
+<para
+>Puede editar la mayoría de los elementos de &UML; de sus esquemas y diagramas abriendo su diálogo de propiedades y seleccionando las opciones pertinentes. Para editar las propiedades de un objeto, seleccione <guimenuitem
+>Propiedades</guimenuitem
+> desde su menú contextual (haciendo &RMB;). Cada elemento tiene un diálogo de varias páginas donde configurar las opciones correspondientes a estos elementos. En algunos elementos, como los actores, sólo disponen de un par de opciones como el nombre del objeto y su documentación mientras que para otros como las clases puede editar sus atributos y operaciones, seleccionar lo que quiere que se vea en el diagrama, incluso los colores. </para>
+
+<para
+>Para la mayoría de los elementos &UML;, si usa la herramienta selección (la flecha) puede abrir el diálogo de propiedades haciendo doble click sobre ellos. La exepción a esto son las asociaciones en cuyo caso un doble click crearía un punto de anclaje, para ello tiene que emplear el menú contextual (haciendo &RMB;) e ir al diálogo de propiedades. </para>
+
+<para
+>Observe que también puede seleccionar la opción de propiedades desde el menú contextual de los elementos en la vista en árbol. Esto también le permite editar las propiedades de los diagramas como seleccionar si la rejilla debe o no verse. </para>
+</sect2>
+<sect2 id="edit-classes">
+<title
+>Editar clases</title>
+<para
+>Aunque la edición de propiedades de todos los objetos ya haya sido tratada en la sección anterior, las clases merecen una explicación adicional debido a su mayor complejidad y a que poseen más opciones que la mayoría de los elementos de &UML;. </para>
+<para
+>En el diálogo de propiedades de una clase es posible configurar cualquier parámetro, desde el color que emplea hasta sus atributos y operaciones. </para>
+<sect3 id="class-general-settings">
+<title
+>Preferencias generales de clase</title>
+<para
+>La pestaña de preferencias generales del diálogo de propiedades se explica por si mismo. Desde ahí podrá cambiar el nombre de la clase, la visibilidad, la documentación, &etc;. Esta pestaña siempre está disponible. </para>
+</sect3>
+<sect3 id="class-attributes-settings">
+<title
+>Configuración de los atributos de las clases.</title>
+<para
+>En la configuración de atributos podrá añadir, editar o borrar atributos (variables) de una clase. Puede mover atributos arriba y abajo en la lista pulsando la flecha del lateral de la ventana. Esta pestaña siempre está disponible. </para>
+</sect3>
+<sect3 id="class-operations-settings">
+<title
+>Configuración de operaciones de clase</title>
+<para
+>De modo similar a la página de configuración de atributos, aquí podrá añadir, editar y borrar operaciones de su clase. Cuando añada o edite una operación, deberá insertar la información básica en el diálogo <emphasis
+>Propiedades de operaciones</emphasis
+>. Si lo que desea es añadir parámetros a su operación deberá pulsar sobre <guibutton
+>Nuevo parámetro</guibutton
+> para que se muestre el diálogo <emphasis
+>Propiedades del paámetro</emphasis
+>. Esta página siempre está disponible. </para>
+</sect3>
+<sect3 id="class-template-settings">
+<title
+>Configuración de la plantilla de clase</title>
+<para
+>Desde ahí podrá añadir plantillas de clase, es decir clases no especificas o tipos de datos. En Java 1.5 recibirán el nombre de genéricas. </para>
+</sect3>
+<sect3 id="class-associations-page">
+<title
+>Página de asociaciones de clase</title>
+<para
+>La página de <guilabel
+>asociaciones de clase</guilabel
+> muestra todas las asociaciones de esa clase en el diagrama actual. Si hace doble click sobre una asociación podrá ver sus propiedades y, dependiendo del tipo de asociación podrá modificar algunos parámetros tales como el nombre del rol o incluir multiplicidad. Si la asociación no permite que estas opciones sean modificadas, el diálogo de propiedades de asociación será de sólo lectura y sólo podrá modificar la documentación asociada con esta asociación. </para>
+<para
+>Esta página sólo estará disponible si abre las propiedades de clase desde un diagrama. Si selecciona las propiedades de clase en un menú contextual desde la vista en árbol, esta página no estará disponible. </para>
+</sect3>
+<sect3 id="class-display-page">
+<title
+>Página de visualización de clase</title>
+<para
+>En la página de <guilabel
+>opción de visualización</guilabel
+> podrá definir los elementos que deben mostrarse en un diagrama. Una clase podrá mostrarse simplemente como un rectángulo con su nombre escrito en él (especialemente útil si tiene varias clases o si, de momento, no está interesado en los detalles de cada clase) o bien mostrar completamente todos los paquetes, estereotipos,atributos y operaciones. </para>
+<para
+>Dependiendo de la cantidad de información que desee ver, podrá seleccionar las correspondientes opciones en esa página. Los cambios que realize ahí sólo será <emphasis
+>opciones de visualización</emphasis
+> para el diagrama. Esto quiere decir que <quote
+>esconder</quote
+> la opercación de una clase sólo hará que no se muestren en el diagrama, pero la operción seguirá ahí formando parte de su esquema. Esta operación sólo estará disponible si selecciona las propiedades de clase desde un diagrama. Si abre las propiedades de clase desde la vista en árbol está página no estará disponible ya que esta opción de visualización carece de sentido en este contexto.</para>
+</sect3>
+<sect3 id="class-color-page">
+<title
+>Página para configurar los colores de la clase</title>
+<para
+>En la página <guilabel
+>color de objetos</guilabel
+> podrá configurar los colores que desee para las líneas y el relleno de los objetos. Obviamente, esta opción sólo tiene sentido para las clases que se muestran en los diagramas y no aparece cuando abre el diálogo de propiedades de clase desde la vista en árbol. </para>
+</sect3>
+</sect2>
+
+<sect2 id="associations">
+<title
+>Asociaciones</title>
+<para
+>Las asociaciones relacionan dos objetos &UML; entre si. Normalemente, las asociaciones se definen entre dos clases, sin embargo algunos tipos de asociación también pueden darse entre casos de uso y actores. </para>
+<para
+>Para crear una asociación seleccione la herramienta adecuada en la barra de herramientas de trabajo (asociación genérica, generalización, agregación, &etc;) y pinche primero sobre el primer elemento de la asociación y luego sobre el segundo. Observe que lo que hacemos son dos clicks, <emphasis
+>no</emphasis
+> arrastrar el click de un objeto a otro. </para>
+<para
+>Si intenta crear una asociación que no se ajuste a las especificaciones de &UML;, &umbrello; no aceptará crearla y le mostrará un mensaje de error. Un ejemplo de esto sería si exixtiera una generalización desde la clase A hasta la B y tratase de crear otra desde B hasta A. </para>
+<para
+>Pulsando con el botón <mousebutton
+>derecho</mousebutton
+> del ratón sobre una asociación verá un menú contextual con las acciones que pueden realizarse. Si quiere borrar una asociación, simplemente seleccione la opción <guimenuitem
+>Borrar</guimenuitem
+> en ese menú contextual. También puede seleccionar la opción <guimenuitem
+>propiedades</guimenuitem
+> y, según el tipo de asociación, editar los atributosque posea. </para>
+<sect3 id="anchor-points">
+<title
+>Puntos de anclaje</title>
+<para
+>por omisión, las asociaciones se representan mediante una línea recta que conecta los dos objetos de un diagrama. </para>
+<para
+>Podrá añadir puntos de anclaje haciendo <mousebutton
+>doble</mousebutton
+> click en cualquier parte de la línea de asociación.Esto puntos de anclaje se representan mediante un punto azul cada vez que se selecciona la línea, podrá moverlo a su antojo hasta dar la forma deseada a la (ex)recta de asociación. </para>
+<para
+>Si desea eliminar puntos de anclaje, haga <mousebutton
+>doble</mousebutton
+> click sobre ellos. </para>
+<para
+>Observe que el único modo de editar las propiedades de una asociación es a través del menú contextual. Si trata de hacer <mousebutton
+>doble</mousebutton
+> click sobre él como haría con cualquier otro objeto &UML;, se insertará un punto de anclaje. </para>
+</sect3>
+</sect2>
+
+<sect2 id="notes">
+<title
+>Notas, textos y cajas</title>
+<para
+>Las notas,textos y cajas pueden aparecer en cualquier tipo de diagrama, carecen de valor semántico pero son útiles para añadir comentarios o explicaciones adicionales para facilitar la comprensión del diagrama. </para>
+<para
+>Para añadir una nota o texto debe seleccionar la herramienta correspondiente de la barra de herramientas y pinchar sobre el punto del diagrama donde desee añadirlo. Puede editar el texto a través de su menú contextual o, en el caso de las notas, haciendo <mousebutton
+>doble</mousebutton
+> click sobre él. </para>
+<sect3 id="anchors">
+<title
+>Anclajes</title>
+<para
+>Los anclajes sirven para unir una nota con otro elemento &UML;. P. ej. si suele usar una determinada nota para explicar o realizar algún comentario sobre una clase o una asociación en concreto, puede usar los anclajes para dejar claro que la nota <quote
+>pertenece</quote
+> a esa clase o asociación y no a otras. </para>
+<para
+>Para anclar una nota con otro elemento &UML;, utilice la herramienta anclaje de la barra de herramientas de trabajo. Primero deberá pinchar sobre la nota y luego sobre el elemento &UML; al que quiere asociar la nota. </para>
+</sect3>
+</sect2>
+</sect1>
+</chapter>
+<!--edit-diagram-->