GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING.
WILSON MIRANDA M
Practica 1: Lenguaje Unificado de Modelado (UML)
Objetivo
Utilizar una herramienta de software que ayude al diseño de modelos en UML. Mostrar la relación
directa que existe entre el diseño de un modelo y su aplicación en el desarrollo de un software.
Materiales y Equipo
Guía de laboratorio # 1 - Lenguaje Unificado de Modelado (UML)
Herramienta de diseño UML (StarUML en su versión disponible)
Introducción
¿Qué es UML?
El Lenguaje de Modelado Unificado (UML - Unified Modeling Language) es un lenguaje
gráfico de propósito general, estándar de la industria para visualizar, especificar y
documentar cada una de las partes que comprende el Desarrollo de Sistemas a través del
uso de diagramas y texto de soporte.
¿Para qué sirve?
Visualizar como es un sistema o como queremos que sea.
Especificar la estructura y/o comportamiento de un sistema.
Hacer una plantilla que guíe la construcción de los sistemas.
Documentar las decisiones que hemos tomado.
Para esta práctica usaremos los diagramas de casos de uso, diagramas de secuencia, y
los diagramas de clase.
Los diagramas de casos de uso y de secuencia, nos servirán para realizar el análisis
necesario para poder hacer un diseño basado en diagramas de clase.
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
Diagramas de Casos de uso.
Este diagrama es una técnica para capturar información de cómo un sistema o negocio
trabaja actualmente, o de cómo se desea que trabaje. Aquí aún no hay orientación a
objetos, más bien es una técnica para el modelado de escenarios.
Los casos de uso se representan por las figuras de “actor”, “caso de uso” y “asociación”, el
actor es una entidad externa que interactúa con el sistema, los casos de uso son las
funciones que realizará nuestro sistema y las asociaciones son los mensajes entre actores
y casos de uso, y los casos de uso entre si:
Figura 1.
Como ejemplo de caso de uso, describimos la forma en que se reserva una hora libre en el
centro de cómputo.
Figura 2.
Diagramas de secuencia.
Estos diagramas nos sirven para describir la lógica de uno o más casos de uso, es decir, la
interacción de los actores con los distintos objetos involucrados en el caso de uso.
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
Los elementos que se usan en un diagrama de secuencia son:
Objeto: instancia de una clase que podemos empezar a identificar como participante en la
secuencia de operaciones que representa este caso de uso
Figura 3.
Actor: son los actores tomados del caso de uso, y que se comunican con el caso de uso
que estamos describiendo.
Vida del objeto: indicamos la existencia de un objeto a lo largo del tiempo mediante una
línea discontinua vertical.
Activación: indicamos cuándo el objeto está realizando una tarea concreta, se representa
por un rectángulo sobre la línea de vida del objeto.
Mensaje: la comunicación entre objetos y sus activaciones, son flechas entre los
rectángulos de las activaciones las cuales muestran la dirección del mensaje.
Como ejemplo se muestra el diagrama de secuencia basado en el caso de uso de
“consulta de hora libre”, se identifican los objetos salon, horario y reserva.
Figura 4.
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
Diagramas de Clases.
Un diagrama de clase muestra un conjunto de clases, interfaces y colaboraciones y sus
relaciones. Estos diagramas son los más comunes del modelado de sistemas orientados a
objetos.
En UML este se presenta como un listado de características de objeto donde se identifican
el nombre de la clase, los atributos de la clase y los métodos que manipulan las
propiedades.
Algunos de los métodos pueden ser identificados según los mensajes entre objetos que se
muestran en el diagrama de secuencia, y algunos atributos con la información que utilizan
los mensajes.
A continuación, se muestra un ejemplo de diagrama de clases basado en el diagrama de
secuencia anterior:
Figura 5.
NOTA IMPORTANTE: Los diagramas de clase y de secuencia pueden hacerse en
paralelo ya que ambos se complementan mutuamente.
INICIANDO STARUML
Nota: Los colores de la interfaz y otros elementos pueden variar levemente de acuerdo a
la versión disponible de la herramienta, sin embargo, las funciones siguen siendo las
mismas.
Selecciona el icono de lanzamiento de la aplicación. Dado que un proyecto se puede
realizar siguiendo distintos enfoques, StarUML nos pregunta cuál queremos utilizar. En esta
práctica utilizaremos el “Default Approach”.
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
Figura 6.
Una vez que iniciamos StarUML, nos aparece una ventana principal, que tiene los
elementos que se muestran a continuación (esto puede variar de acuerdo a la versión
disponible, pero tiene prácticamente los mismos componentes):
Área de trabajo Elementos del
Herramientas de proyecto
los diagramas
Figura 7.
Creación de Casos de Uso.
En el menú principal seleccionamos Modelo (Model) y luego Adicionar diagrama (Add
Diagrama) y después casos de uso y cambiamos el nombre, así:
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
Figura 8.
Al seleccionar este tipo de modelo, nos despliega la barra de herramientas de Casos de
Uso, donde nos permite utilizar los componentes para este tipo de diagrama.
Figura 9.
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
Para seleccionar un componente damos clic al componente deseado y luego damos clic en
el área de trabajo. Cuando el componente es agregado, aparece el nombre sombreado, lo
que indica que podemos cambiar esa propiedad a nuestra conveniencia.
Figura 10.
Para realizar la comunicación entre el actor con los casos de uso, utilizamos el componente
DirectedAssociation
Figura 11.
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
Creación de Diagramas de Clases.
Para crear el diagrama de clases, en el mismo proyecto que tenemos abierto, nos vamos
nuevamente a Model y add diagram y ahora seleccionamos el diagrama de clases. Este
aparecerá cargado en el proyecto
Figura 12.
Ahora lo único que tenemos que hacer es seleccionar el componente clases y dar clic en el
área de trabajo
Figura 13.
Nos centramos en los botones de la derecha. Al pasar el cursor sobre ellos nos muestra
sus nombres y así nos permite agregar atributos o propiedades a la clase
Agregamos un atributo y un método y la clase toma la siguiente forma, note que los métodos
terminan con un paréntesis.
Figura 14.
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
Creación de Diagramas de Secuencia.
Los diagramas de secuencia son más fáciles de crear en StarUML al igual que con el
diagrama de clases vamos a Model y Add diagram para agregar el diagrama de secuencia
Para poder crear el actor lo que hacemos es tomar al mismo utilizado en el diagrama de
casos de uso. En el proyecto aparece el listado de elementos por diagrama, seleccionamos
el actor desde esta parte y lo arrastramos hasta el área de trabajo.
Figura 15.
De igual forma hacemos con las clases, tomamos las ya diseñadas en el diagrama de clases
y las arrastramos al área de trabajo de igual forma que el actor.
Figura 16.
Posteriormente lo único que debemos hacer es seleccionar las líneas de interacción
necesarias para completar el diagrama. Estas están disponibles en la parte inferior izquierda
en las herramientas del diagrama (caja de herramientas) o Toolbox
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
ACTIVIDADES PREVIAS – PREINFORME
Esta actividad práctica pretende mostrar la relación directa que existe entre el diseño de un modelo
y su aplicación en el desarrollo de un software. Se va a utilizar la herramienta de software libre
llamada StarUml que se consigue en la siguiente dirección:
http://staruml.sourceforge.net/en/download.php
Inicialmente vamos a desarrollar las siguientes actividades.
1. Descargar e instalar el programa en su computador.
2. Reconocer el programa y su interfaz.
3. Para realizar de manera más óptima el desarrollo de esta práctica es necesario que los
estudiantes revisen los siguientes tutoriales en línea
Tutorial 1: "Creación de diagramas de casos de uso"
Tutorial 2: "Creación de diagramas de actividad"
Tutorial 3: "Creación de diagramas de clases"
Tutorial 4: "Creación de diagramas de robustez con diagrama de secuencia"
4. Realizar un resumen del Lenguaje Unificado de Modelado UML, en particular sobre los
diagramas de casos de usos, diagramas de secuencias y diagramas de clases. Investigar
también de los demás diagramas UML existentes.
5. Con base en los diagramas en presentación la presentación UML, elaborar los diagramas de
clase, de casos de uso y de secuencia mostrados en las figuras 2, 4 y 5 de esta guía.
TRABAJO DE LABORATORIO
1. Desarrolle los diagramas de caso de uso, secuencia y clase para simular el
sistema básico de préstamo de libros en biblioteca desde el punto de vista de los
bibliotecarios y el alumno.
El alumno consulta al sistema la disponibilidad de un libro cuantas veces sea necesario. Si
lo encuentra da el código del libro para que el bibliotecario lo busque y se lo entregue, el
alumno da su carnet y el bibliotecario verifica su estado de préstamo, si no hay problemas
le dan el libro y la fecha de devolución, para el día de la devolución del libro el alumno lo
entrega a biblioteca o renueva su préstamo.
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
Obtener el modelo conceptual de un sistema de información muy simplificado de una biblioteca.
En ella aparecen socios, que se dan de alta en la biblioteca y a partir de ese momento pueden
tomar prestados libros de la misma. Un socio está caracterizado por un número de socio, un
nombre y una dirección; además, en cada momento se puede saber el número de libros que un
socio tiene prestados, y si tiene más de diez libros.
Por su parte, de cada libro se conoce su código, título, autor y si está o no disponible; además se
puede saber en cualquier momento la localización del libro en la biblioteca, así como la signatura
del mismo. Un libro puede ser cambiado de lugar, y se le puede cambiar igualmente su signatura;
de hecho, siempre que se cambia la signatura de un libro es porque se cambia de lugar.
Los libros se prestan a los socios, y como consecuencia aparece la noción de préstamo; un
préstamo estará caracterizado, además de por el código del libro prestado y el número de socio,
por la fecha del mismo. Por otra parte, también se va a llevar control de los socios que tengan
prestados más de 10 libros, de lo cual se encargará una aplicación, haciendo que estos socios
pasen a especializarse temporalmente en socios no fiables.
Para ello realizar las siguientes tareas:
A. Identificar los actores y sus relaciones.
Figura 17.
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
B. Diagrama de casos de uso del proyecto.
Figura 18.
GUIA DE LABORATORIO DE METODOS NUMERICOS Y DISEÑO DE ALGORITMOS 3 ING. WILSON MIRANDA M
C. Diagrama de secuencia de los casos de uso más importantes del proyecto.
Figura 19.
D. Diagrama de clases más importantes del proyecto.
Figura 20.
2. Diseñe los diagramas de caso de uso, secuencia y de clases para sistematizar la
inscripción de Materias en el curso Básico en la Facultad.
Bibliografía
Stevens, Perdita. Pooley, Rob. Utilización de UML en ingeniería del software con
objetos y componentes. Addison Wesley
Manual StarUML.