Está en la página 1de 8

GA4-220501095-AA2-EV05

Desarrollar la arquitectura de software de acuerdo con el patrón de diseño seleccionado

AUTORES:
Santiago Rodríguez Hernández: Ficha 2626999
Esteban Bernardo Garay Soto: Ficha 2626997
Edwin Guzmán Molina: Ficha 2626996
Adrián Moreno Lozano: Ficha 2626999

INSTRUCTOR:
FRANCISCO ARNALDO VARGAS BERMUDEZ

Tecnólogo Análisis y Desarrollo de Software

Centro Minero Ambiental

13 de febrero 2023
Lista de contenido
Introducción ................................................................................................................ 3

1. Diseño de patrones ......................................................................................... 4

2. Patrones comportamentales ............................................................................ 4

2.1. Estrategia ................................................................................................ 4

2.2. Iterador: .................................................................................................. 4

3. Patrones Creacionales ..................................................................................... 5

3.1. Fachada: .................................................................................................. 5

4. Diagrama de componentes.............................................................................. 5

5. Diagrama de despliegue.................................................................................. 6

6. Herramientas para optimizar procesos ........................................................... 6

6.1. Editores de diagramas UML ................................................................... 6

6.2. Herramientas de Gestión de Requisitos .................................................. 6

6.3. Herramientas de colaboración ................................................................ 7

6.4. Herramientas de análisis de arquitectura ................................................ 7

Conclusión .............................................................................................................. 8
Introducción

En el mundo del desarrollo de software, la elección de la arquitectura adecuada es

fundamental para el éxito de un proyecto. La arquitectura de software define la estructura y

organización de un sistema, determinando cómo sus componentes interactúan entre sí y con

los usuarios. Uno de los aspectos clave en la definición de esta arquitectura es la selección

de un patrón de diseño apropiado, que proporciona un marco estructurado para resolver

problemas comunes en el desarrollo de software.

En este trabajo, se abordará el desarrollo de la arquitectura de software de un

proyecto específico, centrándonos en la selección e implementación de un patrón de diseño

particular. Este patrón guiará la estructura y organización del sistema, asegurando la

coherencia, flexibilidad y mantenibilidad del software desarrollado.


1. Diseño de patrones

Los diseños de patrones de software, también conocidos simplemente como

patrones de diseño, son soluciones generales y reutilizables a problemas comunes que

surgen durante el diseño y desarrollo de software. Estos patrones proporcionan un enfoque

probado y estructurado para abordar situaciones específicas, ayudando a los desarrolladores

a resolver problemas de manera efectiva y eficiente.

Dentro de nuestro proyecto formativo el cual consiste en la creación de una pagina

web para una academia de conducción para lo cual se ha determinado el uso de los

siguientes patrones

2. Patrones comportamentales

2.1. Estrategia:

El cual permitirá encapsular los algoritmos usados dentro del proyecto para que

tengan un dinamismo durante la ejecución, acorde a las acciones que el usuario

realiza dentro de la interfaz del programa.

2.2. Iterador:

Sera usado para recorres y manipular conjuntos de datos, como los son lista de

elementos de la página, el resultado de una búsqueda o el registro de la base de

datos dentro de la misma, y la manipulación de elementos de formularios,

ayudando a mejorar el modularidad, flexibilidad y la mantenibilidad del código

en el desarrollo de la aplicación.
3. Patrones Creacionales

3.1. Fachada:

Proporcionara una interfaz simplificada para el conjunto de subsistemas de la página

web, el cual ocultara la complejidad de interacciones entre los diferentes componentes del

sistema y proporcionara una interfaz unificada y fácil de usar para los clientes usando la

variación de opaco para que solo se pueda acceder mediante el objeto de fachada

4. Diagrama de componentes

Figura 1 Diagrama de Componentes del software

Nota: Elaboración propia


5. Diagrama de despliegue

Figura 2 Diagrama de despliegue de software

Nota: Elaboración Propia

6. Herramientas para optimizar procesos

Algunas de las herramientas para la optimización de estos procesos están:

6.1. Editores de diagramas UML

• Lucidchart

• Visual Paradigm

• Microsoft Visio

6.2. Herramientas de Gestión de Requisitos

• Trello
6.3. Herramientas de colaboración

• Microsoft Teams

• Slack

6.4. Herramientas de análisis de arquitectura

• SonarQube

• ADR

• Structure101
Conclusión

En este trabajo hemos explorado el proceso de desarrollo de la arquitectura de

software utilizando tres patrones de diseño específicos: Fachada, Estrategia e Iterador.

Estos patrones creacionales y comportamentales proporcionan soluciones efectivas y

estructuradas para abordar problemas comunes en el diseño y desarrollo de software.

El patrón de diseño creacional Fachada nos ha permitido simplificar la interacción

entre diferentes subsistemas de nuestro software, proporcionando una interfaz unificada y

fácil de usar para los clientes. Al encapsular la complejidad de la lógica interna detrás de

una fachada, hemos logrado mejorar el modularidad y la mantenibilidad de nuestro sistema.

Por otro lado, el patrón de diseño comportamental Estrategia nos ha proporcionado

una forma flexible y dinámica de definir y cambiar algoritmos en tiempo de ejecución. Al

separar los algoritmos de su contexto y permitir que se intercambien fácilmente, hemos

logrado mejorar la flexibilidad y la reutilización del código en nuestro sistema.

Finalmente, el patrón de diseño comportamental Iterador nos ha permitido recorrer

y manipular colecciones de elementos de manera eficiente y sin exponer la estructura

interna de la colección. Al proporcionar una interfaz unificada para recorrer diferentes tipos

de colecciones, hemos logrado mejorar la interoperabilidad y la mantenibilidad de nuestro

sistema.

También podría gustarte