Bases de Uml - Adso

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

1

S.E.N.A

SERVICIO NACIONAL DE APRENDIZAJE

Centro de Comercio y Servicios – Regional Bolívar

Aprendiz:

Fabian Enrique Quintero Tordecilla

Tecnología:

Análisis y Desarrollo de Software

Ficha:

2721488

GA4-220501095-AA2-EV03

Bases Conceptuales Acerca del Lenguaje Unificado de Modelado (UML) y Patrones de Diseño

Barranquilla, Colombia

2023
2

TABLA DE CONTENIDO

1. Introducción
2. Desarrollo de la Actividad
3. Conclusión
4. Bibliografía
3

1. INTRODUCCIÓN

Unified Modeling Language (UML) es un lenguaje estándar y poderoso utilizado en el ámbito de


la ingeniería de software para visualizar, especificar, construir y documentar sistemas complejos.
Desde su concepción en la década de 1990, UML ha proporcionado a los desarrolladores una
herramienta universal para modelar sistemas, independientemente de la complejidad o el tamaño
del proyecto. Su evolución continua y aceptación generalizada lo convierten en un componente
esencial en el desarrollo de software moderno.

UML no solo ofrece una sintaxis gráfica clara y comprensible, sino que también establece un
conjunto de estándares que facilitan la comunicación entre los miembros del equipo de desarrollo
y con los stakeholders. Con una variedad de diagramas que abarcan desde la representación
estructural hasta la dinámica de un sistema, UML se ha convertido en un lenguaje común que
mejora la comprensión, colaboración y documentación en el proceso de desarrollo de software.
4

2. DESARROLLO DE LA ACTIVIDAD

Unified Modeling Language (UML) es un estándar de la industria para visualizar, especificar,


construir y documentar los artefactos de un sistema de software. Su origen se remonta a la década
de 1990, cuando Grady Booch, James Rumbaugh e Ivar Jacobson unieron sus metodologías de
modelado para crear un lenguaje unificado. UML no es simplemente un conjunto de diagramas;
es un conjunto completo de especificaciones que abarcan desde la conceptualización hasta la
implementación.

La creación de UML tenía como objetivo abordar la complejidad creciente en el desarrollo de


software, proporcionando un marco común comprensible por todos los miembros del equipo,
independientemente de su rol. A lo largo de los años, UML ha evolucionado para adaptarse a las
cambiantes necesidades de la industria del software y ha demostrado ser esencial en el desarrollo
de sistemas grandes y complejos.

2.1 Tipos de Diagramas en UML

UML ofrece una variedad de diagramas para modelar distintos aspectos de un sistema. Los
diagramas estructurales, como los de clases y objetos, proporcionan una representación estática
de la arquitectura del sistema. Estos diagramas son fundamentales para entender las relaciones
entre las entidades y la estructura interna del sistema.
Los diagramas de comportamiento, como los de secuencia y actividad, se centran en la dinámica
del sistema, mostrando cómo las entidades interactúan en el tiempo y responden a eventos. Estos
diagramas son esenciales para comprender el flujo de trabajo y la lógica detrás de las operaciones
del sistema.

Además, los diagramas de despliegue y componentes modelan aspectos de implementación y


despliegue. Proporcionan una visión clara de cómo los diferentes componentes del sistema se
distribuyen en hardware físico o lógico. UML posee los siguientes tipos de diagramas.

• Diagrama de casos de uso.


• Diagrama de clases.
• Diagrama de objetos.
• Diagrama de secuencia.
• Diagrama de colaboración.
• Diagrama de estados.
• Diagrama de actividades.
• Diagrama de componentes.
• Diagrama de despliegue.

2.2 Casos de Uso en UML

Los casos de uso son una parte integral de UML y se utilizan para capturar los requisitos del
sistema desde la perspectiva del usuario. Estos describen cómo los actores externos interactúan
con el sistema para lograr ciertos objetivos.

Los diagramas de casos de uso representan visualmente estas interacciones y ayudan a


establecer los límites del sistema y a comprender su funcionalidad desde una perspectiva global.
5

Los casos de uso no solo sirven para la captura de requisitos, sino que también son esenciales
para la validación y verificación durante todo el ciclo de desarrollo del software. Proporcionan un
marco claro para entender las funcionalidades esperadas y ayudan a mitigar posibles
malentendidos entre los desarrolladores y los stakeholders.

2.3 Relaciones y Conexiones en UML

Las relaciones entre las clases son fundamentales para modelar la complejidad de los sistemas.
UML proporciona varios tipos de relaciones, como asociaciones, agregaciones y composiciones,
para representar cómo las clases se conectan entre sí. Las asociaciones establecen conexiones
entre las clases, mientras que las agregaciones y composiciones indican la naturaleza de la
relación.

La herencia y la generalización son conceptos clave en UML que permiten la creación de nuevas
clases basadas en clases existentes. Esto fomenta la reutilización de código y la creación de
jerarquías de clases, mejorando la eficiencia del desarrollo.

2.4 Uso de UML en el Ciclo de Desarrollo de Software

UML no es una herramienta estática, sino que se integra a lo largo de todo el ciclo de desarrollo
del software. En la fase de análisis, se utilizan diagramas de casos de uso para capturar y definir
los requisitos. Durante el diseño, los diagramas estructurales y de comportamiento ayudan a
modelar la arquitectura y la lógica del sistema. En la fase de implementación, los diagramas de
despliegue y componentes proporcionan información valiosa sobre cómo se implementará el
sistema.

Además, UML se adapta a metodologías ágiles, permitiendo una representación visual rápida y
colaborativa de conceptos complejos. Herramientas especializadas facilitan la creación,
modificación y colaboración en los diagramas UML, lo que contribuye a un desarrollo más
eficiente y comprensible.

2.5 Glosario UML

Objeto: En programación orientada a objetos (POO), un objeto es una instancia específica de


una clase. Una clase es una plantilla que define un conjunto de atributos y métodos comunes
para los objetos que se crean a partir de ella. Un objeto, por lo tanto, es una entidad concretada
en tiempo de ejecución que posee un estado (representado por sus atributos) y puede realizar
acciones (a través de sus métodos).

Clase: Una clase, en programación orientada a objetos, es una plantilla o un plano para la
creación de objetos. Representa un conjunto de atributos y métodos que describen el
comportamiento y las características de los objetos que se derivarán de ella. Las clases
proporcionan un mecanismo para la abstracción y organización del código, permitiendo la
encapsulación de datos y funcionalidades relacionadas.}

UML (Unified Modeling Language): Lenguaje de modelado unificado que proporciona


estándares para visualizar, especificar, construir y documentar los elementos de un sistema de
software.

Diagrama de Clases: Representación visual de la estructura estática de un sistema, mostrando


clases, atributos, métodos y relaciones entre ellas.
6

Diagrama de Objetos: Muestra una instancia particular de una clase y sus relaciones en un
momento específico, proporcionando una vista estática del sistema.

Diagrama de Casos de Uso: Describe las interacciones entre actores externos y el sistema,
identificando los casos de uso que representan las funciones del sistema desde la perspectiva
del usuario.

Diagrama de Secuencia: Modela las interacciones entre objetos a lo largo del tiempo, mostrando
cómo los mensajes se transmiten entre ellos durante un escenario específico.

Diagrama de Actividad: Ilustra el flujo de control entre actividades en un sistema, ayudando a


comprender el comportamiento dinámico y los procesos de negocio.

Diagrama de Despliegue: Muestra cómo los componentes físicos y lógicos se distribuyen en el


hardware físico, proporcionando una vista de la arquitectura de implementación.

Diagrama de Componentes: Representa la organización de los componentes de software y sus


dependencias, facilitando la comprensión de la estructura modular.

Asociación: Relación entre clases que indica una conexión, pudiendo tener multiplicidades para
expresar la cardinalidad.

Agregación: Tipo de relación de asociación que indica una relación parte-todo, donde una clase
es una parte de otra, pero puede existir independientemente.

Composición: Relación más fuerte que la agregación, donde la parte no puede existir sin el todo,
representando una relación más estrecha.

Herencia: Mecanismo que permite la creación de nuevas clases basadas en clases existentes,
compartiendo sus atributos y comportamientos.

Generalización: Relación que establece una jerarquía entre clases, donde una clase más general
comparte características con clases más específicas.

Caso de Uso: Descripción de una interacción entre el sistema y un actor externo, identificando
las acciones y respuestas del sistema.

Actores: Entidades externas que interactúan con el sistema, representadas en los diagramas de
casos de uso.

Encapsulamiento: Principio que oculta la implementación interna de una clase, exponiendo solo
las interfaces necesarias para interactuar con ella.

Polimorfismo: Capacidad de un objeto para tomar varias formas, permitiendo que un mismo
nombre de método se comporte de manera diferente en diferentes clases.

Interfaz: Especificación de métodos públicos que una clase debe implementar, proporcionando
una forma de lograr la abstracción y el polimorfismo.

Colaboración: Interacción entre objetos que trabajan juntos para lograr un objetivo común,
representada en diagramas de colaboración.
7

3. CONCLUSIÓN

En conclusión, UML se erige como un pilar fundamental en la disciplina de la ingeniería de


software. Desde su creación, ha evolucionado para adaptarse a las cambiantes necesidades de la
industria y ha resistido la prueba del tiempo como un estándar sólido y versátil. La capacidad de
UML para modelar aspectos estructurales y de comportamiento de sistemas, junto con su
integración en todo el ciclo de desarrollo de software, lo posiciona como una herramienta esencial
para arquitectos, desarrolladores y demás profesionales involucrados en la creación de software
de alta calidad. En un entorno donde la comunicación clara y la comprensión compartida son
cruciales, UML sigue desempeñando un papel fundamental al proporcionar un lenguaje común que
trasciende las barreras entre diferentes equipos y disciplinas, allanando el camino hacia el éxito en
proyectos de desarrollo de software.

4. BIBLIOGRAFÍA

✓ https://sena.territorio.la/content/index.php/institucion/Titulada/institution/SENA/Tecnolog
ia/228118/Contenido/OVA/CF15/index.html#/

✓ https://www.lucidchart.com/pages/es/que-es-el-lenguaje-unificado-de-modelado-uml

✓ http://profesores.fi-b.unam.mx/carlos/aydoo/uml.html

✓ https://www.uv.mx/personal/maymendez/files/2011/05/umltotal.pdf

También podría gustarte