0% encontró este documento útil (0 votos)
20 vistas13 páginas

Desarrollar La Arquitectura de Software de Acuerdo Al Patrón de Diseño Seleccionado

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
20 vistas13 páginas

Desarrollar La Arquitectura de Software de Acuerdo Al Patrón de Diseño Seleccionado

Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 13

DESARROLLAR LA ARQUITECTURA DE SOFTWARE DE ACUERDO AL PATRÓN DE

DISEÑO SELECCIONADO
GA4-220501095-AA2-EV05

DEYQUER HANS MEDINA


APRENDIZ

HECTOR OSWALDO JEREZ DUARTE


INSTRUCTOR

PROGRAMA: ANÁLISIS Y DESARROLLO DE SOFTWARE


FICHA: 2977368
2024
INTRODUCCION

Los patrones de diseño son herramientas esenciales en el desarrollo de software,


son una solución general, utilizable y aplicable a diferentes problemas de diseño de
software; proporcionando soluciones probadas para estructurar la interacción entre
objetos, clases e interfaces
En este proyecto se busca dar una idea de los patrones de diseño más usados y mas
adecuados dependiendo de las necesidades las que nos enfrentamos.
DISEÑOS DE PATRONES DE SOFTWARE

Los patrones de diseño representan un concepto originado en el ámbito de la


arquitectura de software, extendiéndose gradualmente al diseño orientado a objetos
ya que facilita la reutilización de diseños y arquitecturas de software.
Los patrones de diseño de software es un conjunto de formas estandarizadas para
resolver un problema en particular.
Debe estar estructurado por 4 componentes:

1.NOMBRE: Identifica de manera única el patrón, brindando una referencia


clara para su aplicación.

2.PROBLEMAS O CONTEXTO DE LA APLICACIÓN: Describe el escenario o


los desafíos específicos a los que se enfrenta el patrón. Proporciona un
contexto para comprender cuándo y por qué aplicar el patrón.

3.SOLUCIÓN PROPUESTA: Detalla la estructura y las interacciones entre los


elementos del diseño que componen la solución. Este componente ofrece una guía
para implementar el patrón de manera efectiva.

4.VENTAJAS Y DESVENTAJAS: Evalúa los beneficios y las limitaciones


asociadas con la aplicación del patrón. Proporciona una visión equilibrada para
ayudar a los desarrolladores a tomar decisiones informadas sobre su
implementación.

Los patrones de diseño más representativo de la industria del software

• Implica conocimiento y la aplicación de criterio que aportan calidad.

• Favorecen la estandarización del código fuente de determinada aplicación.


LOS PATRONES DE DISEÑO SE CLASIFICAN EN 3 GRUPOS.

Patrones de diseño

Patrones
Patrones estructurales
comportamentales Patrones creacionales

PATRONES COMPORTAMENTALES
Se centran en definir la manera en que los objetos interactúan entre ellos por medio
de mensajes.
Se cuentan con 3 tipos:
Estrategia, comando e iterador

Patrón de
estrategia

Permite definir una familia de


PATRONES algoritmos, encapsular cada
COMPORTAMENTALES uno de ellos y hacer que sean
intercambiables. Esto permite
que el cliente pueda elegir el
algoritmo que mejor se adapte
a sus necesidades en tiempo
de ejecución.

Este se utiliza cuando tenemos varios algoritmos para una tarea especifica y el
cliente decide la implementación real que se utilizara en tiempo de ejecución
EL PATRON DE COMANDO

Patrón de comando

El patrón de Comando
PATRONES encapsula una solicitud como
COMPORTAMENTALES un objeto, permitiendo
parametrizar clientes con
diferentes solicitudes, encolar
solicitudes y realizar
operaciones reversibles.

Este diseño de comando perite la ejecución de operaciones sin conocer los detalles
de la implementación de la misma. Las operaciones son conocidas como comandos
y cada operación es implementada como una clase independiente que realiza una
acción muy concreta, para lo cual puede o no recibir parámetros para realizar su
respectiva tarea.
PATRONE ITERADOR

PATRONES
COMPORTAMENTALES

PATRONE ITERADOR El patrón de iterador


proporciona una manera de
acceder secuencialmente a los
elementos de una colección sin
exponer su estructura interna

Define una interfaz que declara los métodos necesarios para acceder
secuencialmente a un grupo de objetos de una colección.
Es especialmente útil cuando trabajamos con estructuras de datos complejas, ya
que nos permite recorrer sus elementos mediante un iterador.
COMPONENTES CREACIONALES: se encargan de definir diferentes tipos de
estrategia que son usados para requerir la instancia de un objeto, clase, en
particular.

Aquí encontramos:

SINGLETON: Garantiza que una clase tenga solo una instancia y proporciona un
punto de acceso global a ella.

PROTOTYPE: Permite la creación de nuevos objetos copiando un objeto existente,


evitando depender de las clases concretas de esos objetos.

FACTORY METHOD: Proporciona una interfaz para crear objetos en una superclase
y permite a las subclases alterar el tipo de objetos que se crearan.

BUILDER PATTERNS: Permite la construcción de un objeto paso a paso. Un


director coordina el proceso de construcción utilizando un constructor abstracto.

ABSTRACT FACTORY: Proporciona una interfaz para crear familias de objetos


relacionados o dependientes sin especificar sus clases concretas.

PATRONES ESTRUCTURALES: Proveen una orientación relacionada a la forma de


definir los componentes de los objetos, dentro de esta encontramos.

PATRON FACHADA: La fachada actúa como una interfaz unificada que proporciona
un conjunto simplificado de métodos para interactuar con un sistema más complejo.

El patrón fachado se utiliza cuando el sistema está compuesto por varios subsistemas
y se hace complejo gestionar los mensajes que debe realizar el cliente en cada uno de
estos subsistemas. Este patrón permite generar al cliente una vista de alto nivel que
simplifica el control y el envío de mensajes a los subsistemas, ocultando los detalles
relacionados con la gestión de las clases e instancias.
PATRON DELEGAT: Implica que un objeto controle la funcionalidad de otro objeto.
Actúa como un sustituto o representante de otro objeto y controla el acceso a él.

El patrón delegate se usa cuando se quiere reutilizar y extender funcionalidades de


una clase sin hacer uso de la herencia. Este patrón permite de cierta forma
implementar algo similar a la herencia múltiple que no es admitido por algunos
lenguajes de programación, pero adicionalmente permite tener un control más
detallado sobre este proceso ya que se puede ocultar parte de los elementos
heredados o, incluso, compartir elementos que no son posibles de heredar bajo el
mecanismo de herencia tradicional.

INCORPORAR PATRONES DE DISEÑO PROPENDIENDO EN MEJORES


PRÁCTICAS PARA LACODIFICACIÓN Y MANTENIBILIDAD DEL SOFTWARE.

Realizando un estudio un poco mas externo y en apoyo a los videos de formación vía
internet he decidido utilizar el patrón de diseño iterador debido a que este es un objeto
que permite recorrer una colección y devolver un valor al terminar, básicamente es un
objeto que permite implementar el protocolo de interacción a través del método next
el cual devuelve u objeto con dos propiedades .

Patrón de diseño de comportamiento que permite el recorrido secuencial por una


estructura de datos compleja sin exponer sus detalles internos.

El patrón de diseño Iterador, define una interfaz que declara los métodos necesarios
para acceder secuencialmente a un grupo de objetos de una colección. Algunos de los
métodos que podemos definir en la interfaz Iterador son:

Primero (), Siguiente (), Hay Mas () y Elemento Actual ().

Este patrón de diseño permite recorrer una estructura de datos sin que sea necesario
conocer la estructura interna de la misma.

Propósito

El patrón Iterador es un mecanismo de acceso a los elementos que constituyen una


estructura de datos para la utilización de estos sin exponer su estructura interna.
ELABORAR LA VISTA DE COMPONENTES PARA VISUALIZAR EL SOFTWARE EN
FASES AVANZADAS DEL CICLO DE VIDA.

CICLO DE VIDA:

En este documento explicare lo relacionado a grandes rasgos el proceso de desarrollo


de software de principio a fin.

El ciclo de vida es la secuencia estructurada y bien definidas de las etapas de


desarrollo del sistema de software.
Las principales etapas que conforman el ciclo de vida de desarrollo de software son:

PLANIFICACION:

En esta fase se incluye tareas como la determinación del ámbito del proyecto, el
estudio de viabilidad que se desarrollo anteriormente con el sistema de encuesta para
determinar si es funcional o no, el análisis de riesgo de acuerdo al factor económico
por parte de los cuerpos de bomberos a quien realmente y en principio está dirigido
este sistema.

Uno de los colaboradores de la entidad cuerpo de bomberos voluntarios de Tocancipa


en compañía de su comandante nos apoyo en las necesidades de los cuerpos de
bomberos y las posibles soluciones apoyados con nuestro sistema.

ANALISIS:

Proceso en el que se trata de descubrir lo que se necesita y como llegar a las


características que el sistema debe poseer.
RICEM fue diseñado especialmente para los bomberos de bajo recursos que puedan
tener uso de los sistemas de tecnología con el fin de almacenar la información, pero
en medio del análisis que se ha venido realizando nos hemos dado cuenta de que se
debe generar gran inversión en el desarrollo de este por gestión de arquitectura de
software. El aprendizaje de lenguajes de programación, capacidad operativa
internamente, se ha pensado que también se puede expandir este producto a las
empresas industriales que permitan dar el soporte económico.

DISEÑO:

Se estudian las posibles implementaciones que hay que construir y la estructura


general del software, es una etapa complicada y si la solución inicial no es la más
adecuada habrá que redefinirla

Este sistema se enfoca en el almacenamiento de base de datos con características


especiales de entrada y salida de información- RICEM cuenta con una estructura
eficiente y de fácil uso que permite la interacción con el usuario y no requiere de
conocimiento s de informática avanzada, la fácil interacción se reduce a mirar las
necesidades y dar clic en el módulo que necesite o que la emergencia le solicite.
IMPLEMENTACION:

Se trata de elegir las herramientas adecuadas, un entorno de desarrollo que haga mas
sencillo el trabajo y el lenguaje de programación optimo.
Es importante tener en cuenta la adquisición de productos necesarios para que el
software funcione.
Las necesidades de desarrollo van de acuerdo con las características del sistema el
propósito de su funcionalidad y sobre todo el suplir necesidades, este sistema
comprende productos que relativamente cualquier empresa debería tener en su
escritorio como capacidad de almacenamiento, sistema operativo elegido y demás.

PRUEBAS:

Se busca la detección de las fallas que se hayan cometido en etapas anteriores para
evitar que repercuta en el usuario finalmente.
Esta fase de ciclo de vida se debe repetir tantas veces como sea necesario, ya que la
calidad y estabilidad final del software dependerá si se da con éxito o no.

HERRAMIENTAS NECESARIAS PARA OPTIMIZAR LOS PROCESOS

Las herramientas de software ofrecen un mayor soporte al momento de realizar una


mejora de procesos, ya que ayudan a aplicar una metodología más organizada,
estandarizada, controlada y con el mínimo de errores.

Este tipo de herramientas digitales están diseñadas para automatizar la identificación


de áreas de oportunidad, así como modificar los procesos, productos y servicios
actuales para mejorarlos cada vez que sea necesario

Nosotros como sistema RICEM hemos decidido que la herramienta a utilizar es


DIAGRAMA CAUSA-EFECTO.
DIAGRAMA CAUSA-EFECTO

Esta herramienta se encarga de realizar un análisis con el que se obtiene un cuadro


detallado para visualizar con mayor facilidad que aspectos están ocasionando un
efecto o problema dentro de los procesos del sistema RICEM.

Así es mucho más sencillo identificar las causas de algún resultado que no se
esperaba. Es ideal para investigar de forma sencilla y eficazmente el origen del
problema
CONCLUSIONES

Los patrones de diseño ofrecen una valiosa guía para resolver problemas de
desarrollo al proporcionar soluciones estructuradas. Facilitan la construcción de la
interacción entre objetos, clases e interfaces, ayudan a identificar la arquitectura del
software y sus relaciones, y se presentan de manera gráfica para una comprensión
secuencial efectiva del diseño.

También podría gustarte