Está en la página 1de 11

DESARROLLAR LA ARQUITECTURA DE SOFTWARE DE ACUERDO AL PATRÓN

DE DISEÑO SELECCIONADO.

GA4-220501095- AA2-EV05.

EDINSON MAGDANIEL PUSHAINA


1

DESARROLLAR LA ARQUITECTURA DE SOFTWARE DE ACUERDO AL PATRÓN

DE DISEÑO SELECCIONADO.

GA4-220501095- AA2-EV05.

APRENDIZ:

EDINSON MANUEL MAGDANIEL PUSHAINA

C.C: 1.124.403.311

CÓDIGO DE PROGRAMA: 2675794

TUTOR(A):

FERNANDO FELIPE TORRES CERON

SERVICIO NACIONAL DE APRENDIZAJE SENA

TECNOLOGÍA EN ANALISIS DE DESARROLLO DE SOFTWARE

MANAURE LA GUAJIRA

2023
2

Tabla de contenido

INTRODUCCION………………………………………………………………........…3

1. OBJETIVO………………………………………………………………………4

2. DISEÑO DE PATRONES…………..…………………………………………5

3. DIAGRAMA DE COMPONENTE……..………………………………………8

4. DIAGRAMA DE DESPLIEGUE…………...…………………………………..9

5. CONCLUSIÓN…………………………………………………………………10
3

INTRODUCCIÓN

Con este informe se pretende identificar y relacionar los conceptos de diseño de

patrones de software donde tenemos que investigar para poder tener una característica

en común y que sobre todo podemos interpretarlo de la mejor manera o también

conocidos design patterns (patrones de diseño) ya que se puede reutilizar y son aplicable

a diferentes problemas diseños de software, donde vamos a ver cómo se van a identificar

los problemas en el sistema y que a la vez proporcionan soluciones apropiadas a

problemas generales.
4

1. OBJETIVOS

 Tener en cuenta el paso a paso para hacer algunos de los diagramas para nuestro

proyecto ya sea personal o empresarial.

 Identificar todo lo relacionado con los patrones y sus tipos de patrones para tener

una idea clara para tener un tema claro y definido.

 Identificar los diferentes tipos de patrones de diseño de software para crear el

código más fácil y que las estructuras del código que ya han sido probadas y con

garantías de que funcionara.


5

2. DISEÑO DE PATRONES

Es una solución a un problema en un contexto particular, ya que estos patrones

facilitan la reutilización de diseños y arquitecturas de software que han tenido éxito, los

patrones pueden ser la base de un manual de ingeniería de software y los patrones están

orientados al cambio. Es necesario usar patrones de diseño para identificar las

condiciones del error y problemas en el código que puedan interferir en el proceso, a

través de esto nos puede ayudar para estar seguro de la validez del código para que

funciones y sean aprobadas por muchos desarrolladores.

En la actualidad existen 3 tipos de diseños de patrones: Patrones Creacionales,

Patrones Estructurales y Patrones de Comportamiento.

Patrones Creacionales

Nos permite la flexibilidad y la reutilización de algún código existente de una

manera adecuada a la situación a desarrollar.

Abstract Factory: Este patrón, es una interfaz para crear conjuntos o familias de objetos

relacionados sin especificar el nombre de la clase.

Builder Patterns: Nos permite producir diferentes tipos y representaciones de un objeto

utilizando el mismo código de construcción. Se utiliza para la creación etapa por etapa

de un objeto complejo combinando objetos simples. La creación final de objetos depende

de las etapas del proceso creativo, pero es independiente de otros objetos.

Factory Method: Esto proporciona una interfaz para crear objetos en una superclase,

que permite que las subclases alteren el tipo de objetos que se crearán. Proporciona

instanciación de objetos implícita a través de interfaces comunes.


6

Prototype: Esto nos permite copiar objetos existentes sin hacer que su código dependa

de sus clases. Se utiliza para restringir las operaciones de memoria / base de datos

manteniendo la modificación al mínimo utilizando copias de objetos.

Singleton Este patrón de diseño restringe la creación de instancias de una clase a un

único objeto.

Patrones estructurales

Nos facilitan algunas soluciones y estándares eficientes con respecto a las

composiciones de clase y las estructuras de objetos. El concepto de herencia se utiliza

para componer interfaces y definir formas de componer objetos para obtener nuevas

funcionalidades.

Adapter: Esto se utiliza para vincular dos interfaces que no son compatibles y utilizan

sus funcionalidades. El adaptador nos permite que las clases trabajen juntas de otra

manera que no podrían al ser interfaces incompatibles.

Bridge: En este patrón hay una alteración estructural en las clases principales y de

implementador de interfaz sin tener ningún efecto entre ellas. Estas dos clases pueden

desarrollarse de manera independiente y solo se conectan utilizando una interfaz como

puente.

Composite: Se usa para agrupar objetos como un solo objeto. Permite componer

objetos en estructuras de árbol y luego trabajar con estas estructuras como si fueran

objetos individuales.
7

Decorator: Este patrón restringe la alteración de la estructura del objeto mientras se le

agrega una nueva funcionalidad. La clase inicial permanece inalterada mientras que una

clase decorator proporciona capacidades adicionales.

Facade: Proporciona una interfaz simplificada para una biblioteca, un marco o cualquier

otro conjunto complejo de clases.

Flyweight: El patrón Flyweight se usa para reducir el uso de memoria y mejorar el

rendimiento al reducir la creación de objetos. El patrón busca objetos similares que ya

existen para reutilizarlo en lugar de crear otros nuevos que sean similares.

Proxy: Se utiliza para crear objetos que pueden representar funciones de otras clases u

objetos y la interfaz se utiliza para acceder a estas funcionalidades.

Patrones de comportamiento

Se utiliza para la comunicación entre objetos de clase para detectar la presencia

de patrones de comunicación ya presentes y pueden manipular estos patrones. Estos

patrones de diseño están específicamente relacionados con la comunicación entre

objetos.

Chain of responsibility: Es un patrón de comportamiento que evita acoplar el emisor

de una petición a su receptor dando a más de un objeto la posibilidad de responder a

una petición.

Command: con esto se puede convertir a una solicitud en un objeto independiente que

contiene toda la información sobre la solicitud.

Interpreter: Es utilizado para la evaluación del lenguaje o la expresión para crear una

interfaz que indique el contexto para la interpretación.


8

Iterator: Es proporcionar un acceso secuencial a un número de elementos presentes

dentro de un objeto de colección sin realizar ningún intercambio de información relevante.

Mediator: Es el encargado de proporcionar una comunicación fácil a través de su clase

que permite la comunicación para varias clases.

Memento: Esto nos permite recorrer elementos de una colección sin exponer su

representación subyacente.

Observer: Nos permite definir un mecanismo de suscripción para notificar a varios

objetos sobre cualquier evento que le suceda al objeto que está siendo observado.

3. DIAGRAMA DE COMPONENTE

Como su nombre lo indica es diagrama que contienen componentes, interfaces y

relaciones entre ellos. Desde el punto de vista del diagrama de componentes se tienen

en consideración los requisitos relacionados con la facilidad de desarrollo, la gestión del

software, la reutilización, y las restricciones impuestas por los lenguajes de programación

y las herramientas utilizadas en el desarrollo.


9

4. DIAGRAMA DE DESPLIEGUE

Despliegue ilustra a los diferentes componentes de Hardware (nodos) del sistema

se relacionan entre ellos en el ambiente de producción. Cada nodo es un dispositivo de

cómputo específico, el cual ofrece la posibilidad de ejecutar el Software que fue

desarrollado para suplir los requerimientos del sistema.

Elegir herramientas necesarias para optimizar los procesos.

Diagrama UML

Diagrama de flujo
10

5. CONCLUSIONES

El objetivo es ser capaz de describir el comportamiento de un sistema, subsistema u

operación particular mediante cualquier tipo de diagrama el cual muestra la interacción

de un conjunto de objetos en una aplicación a través del tiempo y se modela para cada

diagrama y conformar el sistema de hardware o software para desarrollar los

requerimientos del sistema.

También podría gustarte