Logo Studenta

Práctica 9 V1

¡Este material tiene más páginas!

Vista previa del material en texto

Carátula para entrega de prácticas 
 
 
Facultad de Ingeniería 
 
 
Laboratorio de docencia 
 
 
Laboratorios de computación 
salas A y B 
 
 
Profesor: Saavedra Hernández Honorato Ing. 
 
Asignatura: Programación Orientada a Objetos 
 
Grupo: 1 
 
No de Práctica(s): 9 
 
Integrante(s): 
Ayala Trejo Albanya Yendalli Téllez González Jorge Luis 
Méndez Costales Luis Enrique Villamar Cortes Juan Antonio 
Santana Sánchez María Yvette Zecua Salinas Juan Carlos 
Téllez González Jorge Luis 
Villamar Cortes Juan Antonio 
Zecua Salinas Juan Carlos 
No. de Equipo de 
cómputo empleado: --- 
 
No. de Lista o Brigada: --- 
 
Semestre: 2020-2 
 
Fecha de entrega: 06/04/2020 
 
Observaciones: 
 
 
 
 
 CALIFICACIÓN: __________ 
Facultad de Ingenierı́a Programación Orientada a Objetos
Índice
1. Introducción 2
2. Objetivo 2
3. UML 2
3.1. Diseño estático o de estructura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.1.1. Diagrama de casos de uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3.1.2. Diagrama de clases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.1.3. Diagrama de objetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2. Diseño dinámico o de comportamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2.1. Diagrama de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.2.2. Diagrama de actividades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3. Diagrama de interacción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3.1. Diagrama de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.3.2. Diagrama de comunicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4. Conclusiones 12
1
Facultad de Ingenierı́a Programación Orientada a Objetos
1. Introducción
En todas las disciplinas de la Ingenierı́a es evidente la importancia que tiene el modelado, ya que permiten
describir el aspecto y el funcionamiento de un determinado sistema; ya sea que este exista, se encuentre
en desarrollo o en una fase temprana de planeación. En este punto los diseñadores del modelo deben de
investigar los requerimientos necesarios para el producto final. Ası́ mismo, un modelo óptimo debe de ser
dividido en un número determinado de vistas que describan un aspecto en especı́fico del producto o sistema
en cuestión.
El Lenguaje Unificado de Modelado UML es un lenguaje o técnica de modelado para la especi-
ficación de sistemas en todas sus fases. Este lenguaje prescribe un conjunto de notaciones y diagramas
estándar con el fin de modelar sistemas orientados a objetos, ası́ mismo, describe la semántica necesaria
para interpretar el significado de los diagramas y sı́mbolos que utiliza.
Figura 1: Componentes esenciales de UML.
En el presente reporte se analizarán los diseños básicos en UML, ası́ como los correspondientes
diagramas que los componen. Con el fin de realizar los diagramas necesarios, se ha optado por el uso del
software StarUML.
2. Objetivo
Utilizar UML como herramienta para diseñar soluciones de software para un lenguaje de programa-
ción orientado a objetos.
3. UML
El lenguaje de modelado UML nace en el año de 1994 como una solución al problema del modelado en el
paradigma orientado a objetos. Sus creadores son Grady Booch, autor del método Booch; James Rumbaugh,
autor del método OMT e Ivar Jacobson, autor de los métodos OOSE y Objectory. La versión 1.0 de UML
se liberó en enero de 1997 y ha visto ampliado su uso a sistemas de diversa ı́ndole, como son: hospitales,
bancos, comunicaciones, aeronáutica, finanzas, etc.
2
Facultad de Ingenierı́a Programación Orientada a Objetos
Los principales beneficios que brinda el uso de UML son los siguientes:
Menores tiempos de desarrollo (en un 50% o más).
Modelado de sistemas (no limitado a Software) utilizando conceptos orientados a objetos.
Encaminar el desarrollo de sistemas crı́ticos de misión crı́tica.
Disponer de un lenguaje de modelado apto para el uso de humanos y máquinas.
Soporte especializado para la planeación y el control de proyectos.
Alta reutilización y minimización de costos.
Los diagramas UML permite modelar aspectos conceptuales como procesos de negocios o funcio-
nalidades de un sistema, cumple con los objetivos siguientes:
1. Visualizar: expresa de forma gráfica la solución.
2. Especificar: muestra las caracterı́sticas del sistema.
3. Construir: genera soluciones.
4. Documentar: especifica la solución implementada.
3.1. Diseño estático o de estructura
Estos diagramas aportan una visión fija del sistema, los diagramas permiten modelar caracterı́sticas para el
lenguaje orientados a objetos y pueden ser los siguientes:
3.1.1. Diagrama de casos de uso
Este tipo de diagrama describe el comportamiento del sistema conforme el usuario interactúa con este, y
muestra la reacción del sistema a las posibles entradas o acciones del usuario.
Los diagramas de casos de uso permiten modelar el comportamiento de un sistema, un subsistema
o, incluso, una clase. Está compuesto por 3 elementos básicos:
1. Actores
2. Casos de uso
3. Relaciones
3
Facultad de Ingenierı́a Programación Orientada a Objetos
Por lo tanto, para generar un diagrama de casos de uso hay que identificar a los actores que van a
interactuar con el sistema, las actividades dentro del sistema, ası́ como los permisos que tendrá cada actor
con los casos de uso.
Figura 2: Ejemplo de un diagrama de casos en un sistema de finanzas y comercio.
3.1.2. Diagrama de clases
Un diagrama de clases sirve para visualizar las relaciones entre las clases que involucran el sistema, las
cuales pueden ser asociativas, de herencia, de uso y de agregación, ya que una clase es una descripción
de conjunto de objetos que comparten los mismos atributos, operaciones, métodos, relaciones y semántica;
mostrando un conjunto de elementos que son estáticos, como las clases y tipos junto con sus contenidos y
relaciones.
Un diagrama de clases está compuesto por los siguientes elementos: atributos, métodos y visibi-
lidad. El conjunto de clases permite observar las relaciones que existen entre ellas dentro del sistema. Por
otra parte, los diagramas de clase están compuestos por 3 elementos básicos:
Clases
Cardinalidad
Relaciones
4
Facultad de Ingenierı́a Programación Orientada a Objetos
Figura 3: Ejemplo de un diagrama de clases que modela vehı́culos y 2 variantes.
3.1.3. Diagrama de objetos
Los diagramas de objetos modelan las instancias de elementos contenidos en los diagramas de clases. Un
diagrama de objetos muestra un conjunto de objetos y sus relaciones en un momento concreto.
Podemos situar a los diagramas de objetos en un punto intermedio, ya que contiene un conjunto de
instancias de los elementos encontrados en el diagrama de clases, representando sólo la parte estática de
una interacción, consistiendo en los objetos que colaboran pero sin ninguno de los mensajes intercambiados
entre ellos.
En general, los diagramas de objetos se utilizan para visualizar, especificar, construir y documentar
la existencia de ciertas instancias en el sistema, junto a las relaciones entre ellas.
Los elementos de los diagramas de objetos son:
Objetos
Atributos
Vı́nculos
5
Facultad de Ingenierı́a Programación Orientada a Objetos
Figura 4: Componentes básicos de un diagrama de objetos.
6
Facultad de Ingenierı́a Programación Orientada a Objetos
Figura 5: Ejemplo de un diagrama de objetos pertenecientes a un cine.
3.2. Diseño dinámico o de comportamiento
El diseño dinámico nos ayuda a modelar los aspectos dinámicos de los sistemas de software usando la
notación y la semántica de UML.
Los diagramas dinámicos o de comportamiento permiten visualizar la comunicación entre elemen-
tos del sistema para un proceso especı́fico, los diagramas que permiten modelarestas caracterı́sticas para
un lenguaje orientado a objetos son los que se describen a continuación:
3.2.1. Diagrama de estados
Los diagramas de estado muestran el conjunto de estados por los cuales pasa un objeto durante su vida en
una aplicación en respuesta a eventos (por ejemplo, mensajes recibidos, tiempo rebasado o errores), junto
con sus respuestas y acciones. También ilustran qué eventos pueden cambiar el estado de los objetos de la
clase. Normalmente contienen: estados y transiciones.
7
Facultad de Ingenierı́a Programación Orientada a Objetos
Los componentes básicos de un diagrama de estado son:
Pseudoestado de opción: es un sı́mbolo con forma de diamante indicando una condición dinámica
con resultados potenciales ramificados.
Punto de salida: a partir de donde se sale de un estado compuesto, o de una máquina de estados. Se
representa con un cı́rculo con una � X �.
Evento: Aquel que activa una transición.
Estado final: Se representa con un cı́rculo negro con una flecha de transición.
Protección: una condición booleana que permite o detiene una transición.
Estado: un rectángulo redondeado que muestra el estado en que se encuentra un objeto.
Subestado: un estado contenido dentro de la región de un estado compuesto.
Disparador: es un mensaje que mueve un objeto de estado en estado.
Transición: una flecha que corre de un estado a otro que indica un estado cambiante.
Estado compuesto: es un estado que contiene sub-estados.
Comportamiento de transición: un tipo de comportamiento resultante que ocurre durante la transición
de un estado. Se escribe arriba de la flecha de transición.
Figura 6: Ejemplo de un diagrama de objetos pertenecientes a un cine.
8
Facultad de Ingenierı́a Programación Orientada a Objetos
3.2.2. Diagrama de actividades
El diagrama de actividades muestra el flujo de acciones, lo cual permite observar los objetos involucrados
dentro de una acción de forma ordenada; de acuerdo a como se va desarrollando determinada acción dentro
del sistema. A su vez, permite ver la comunicación de las actividades de cada objeto ya sea con sus propios
métodos o la interacción con otros objetos, siendo una actividad la ejecución del objeto, cuyo resultado es
un cambio en el estado del sistema o la devolución de un valor.
Los componentes básicos de un diagrama de actividades son:
Nodos de entrada y salida.
Actividades
Transiciones
Figura 7: Ejemplo de un diagrama de actividades relacionadas al uso de un cajero bancario.
3.3. Diagrama de interacción
El diagrama de interacción muestran los mensajes que un cliente u objeto se pasan entre ellos dentro del
caso de uso.
Los elementos básicos de los diagramas de interacción son:
Objeto y cliente
Enlace(s)
Mensaje(s)
9
Facultad de Ingenierı́a Programación Orientada a Objetos
Por otra parte, los diagramas de interacción se dividen en 2 tipos principales:
Diagrama de secuencia
Diagrama de comunicación
3.3.1. Diagrama de secuencia
Esta clase de diagramas tienen como objetivo mostrar una interacción ordenado de los eventos en un siste-
ma, visualizando los objetos participantes en cada interacción, ası́ como los mensaje que intercambian entre
sı́.
Su principal funcionalidad es, por tanto, observar la interacción generada al momento de ejecutar
una determinada acción dentro del sistema, ası́ como los objetos que se involucran durante tal proceso. Los
elementos más básicos de este tipo de diagramas son los siguientes:
Lifelines: Representa a un participante individual en el diagrama de secuencia. Básicamente, cada
instancia en este tipo de diagrama se representa de esta forma. Se encuentran ubicados en la parte
superior del diagrama, su forma es de un rectángulo y su nombre estándar en UML es de la forma:
Nombre De Instancia: Nombre De Clase.
Mensajes: Comunicación entre objetos señalada con flechas. Existen 2 tipos de mensajes: sincroniza-
dos o asincrónicos. Los primeros esperan una respuesta antes de realizar cualquier acción, mientras
que los mensajes asincrónicos no esperan una respuesta. También existen los automensajes y los
mensajes de respuesta, que son representados con una flecha punteada.
Figura 8: Ejemplo de un diagrama de actividades relacionadas al uso de un cajero bancario.
10
Facultad de Ingenierı́a Programación Orientada a Objetos
Figura 9: Ejemplo de tipos de mensaje.
3.3.2. Diagrama de comunicación
El propósito de los diagramas de comunicación consiste en mostrar la interacción entre diversos objetos y el
orden relativo entre ellos. La secuencia de los mensajes y flujos de ejecución concurrentes son determinados
mediante el uso de números secuenciales.
Permiten visualizar interacciones en un determinado proceso e identificar los objetos involucrados,
ası́ como su orden de invocación. Entre otros propósitos, se encuentran los siguientes:
Capturar las interacciones de los objetos durante el paso de mensaje con el fin de identificar sus roles
en el escenario colaborativo.
Identificar los objetos, atributos y operaciones involucradas en cada caso de uso.
Modelar escenarios alternativos de uso en operaciones que involucren la colaboración de diferentes
objetos.
11
Facultad de Ingenierı́a Programación Orientada a Objetos
Figura 10: Ejemplo de un diagrama de comunicación en un sistema de reservación hotelera.
4. Conclusiones
La importancia del lenguaje UML va más allá de cualquier lenguaje de programación orientado a objetos,
ya que este implementa una forma universal de comunicar el desarrollo y los componentes de un sistema
por medio de conceptos orientados a objetos. Tener un dominio adecuado de este lenguaje, por tanto, es
indispensable durante el modelado de sistemas complejos, ya que facilitará en mayor medida la compren-
sión de su funcionamiento y la posibilidad de programarlo en la mayorı́a de los lenguajes pertenecientes al
paradigma de los objetos.
A través del trabajo realizado pudimos comprender la estructura básica de los diferentes diagramas
existentes en UML. Además, se realizaron ejemplos básicos de sistemas en donde estos diagramas puedan
tener una potencial aplicación. Finalmente, la brigada considera que el objetivo principal ha sido cumplido
por medio de los ejemplos desarrollados en cada sección, los cuáles nos permitieron desarrollar habilidades
básicas en su manejo y comprensión.
12
Facultad de Ingenierı́a Programación Orientada a Objetos
Referencias
[1] EL LENGUAJE UNIFICADO DE MODELADO (UML). Recuperado de: http://profesores.
fi-b.unam.mx/carlos/aydoo/uml.html. Fecha de consulta: 3/04/2020.
[2] Qué es UML? Recuperado de: http://stadium.unad.edu.co/ovas/10596_9839/qu_es_uml.
html. Fecha de consulta: 3/04/2020.
[3] UML. Recuperado de: http://lcp02.fi-b.unam.mx/static/docs/PRACTICAS_POO/poo_p9.
pdf. Fecha de consulta: 3/04/2020.
[4] UML. Recuperado de: https://www.visual-paradigm.com/guide/
uml-unified-modeling-language/what-is-communication-diagram/. Fecha de consulta:
3/04/2020.
[5] Unified Modeling Language (UML) — Sequence Diagrams. Recuperado de: https://www.
geeksforgeeks.org/unified-modeling-language-uml-sequence-diagrams/. Fecha de consul-
ta: 3/04/2020.
Los créditos de las fotografı́as pertenecen a sus respectivos autores. c©
LATEX
13
http://profesores.fi-b.unam.mx/carlos/aydoo/uml.html
http://profesores.fi-b.unam.mx/carlos/aydoo/uml.html
http://stadium.unad.edu.co/ovas/10596_9839/qu_es_uml.html
http://stadium.unad.edu.co/ovas/10596_9839/qu_es_uml.html
http://lcp02.fi-b.unam.mx/static/docs/PRACTICAS_POO/poo_p9.pdf
http://lcp02.fi-b.unam.mx/static/docs/PRACTICAS_POO/poo_p9.pdf
https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-communication-diagram/
https://www.visual-paradigm.com/guide/uml-unified-modeling-language/what-is-communication-diagram/
https://www.geeksforgeeks.org/unified-modeling-language-uml-sequence-diagrams/
https://www.geeksforgeeks.org/unified-modeling-language-uml-sequence-diagrams/
	Introducción
	Objetivo
	UMLDiseño estático o de estructura
	Diagrama de casos de uso
	Diagrama de clases
	Diagrama de objetos
	Diseño dinámico o de comportamiento
	Diagrama de estados
	Diagrama de actividades
	Diagrama de interacción
	Diagrama de secuencia
	Diagrama de comunicación
	Conclusiones

Continuar navegando