Vous êtes sur la page 1sur 5

UNIVERSIDAD NACIONAL ABIERTA Y ADISTANCIA DE MXICO

INGENIERA EN DESARROLLO DE SOFTWARE



CUATRIMESTRE CUATRO


ANLISIS Y DISEO ORIENTADO A OBJETOS

PROF: JUDITH RUBY SANCHEZ GARCIA


ALUMNO: MARIO OSCAR RAMREZ CORTES
AL10506012


Actividad 3. Patrones de arquitectura de software

JUNIO, 2014

Actividad 3. Patrones de arquitectura de software.
Que son los patrones?
Disciplina de resolucin de problemas, es una regla de tres partes que expresa
una relacin entre un contexto, un problema y una solucin; permite el re uso del
diseo y de la arquitectura; se construyen sobre la experiencia colectiva de
ingenieros de software experimentados. Son bloques de construccin mental,
tiles para proceder con aspectos de diseo limitados y especficos en el momento
del desarrollo de un sistema de software; son plantillas que describen los
principios estructurales y globales que rigen la base de la creacin de un software
(Rosanigo, Almeira, & Perez Cavenago, 2007).
Patrones de arquitectura Caractersticas
Del Fango a la Estructura Ayudan a evitar un mar de
componentes u objetos apoyando una
descomposicin controlada de una
tarea del sistema global en sub-tareas
cooperantes.
- Layers Estructura aplicaciones que pueden
descomponerse en grupos o subtareas,
pasa las solicitudes desde la capa del
nivel superior hasta el nivel inferior.
Componentes complejos requieren de
ms descomposicin. Sus principales
ventajas son la estandarizacin,
portabilidad y cambiabilidad, pero tiene
baja efciencia, trabajo inecesario por
tener que pasar la instruccin por todas
las capas as que tambin tiene bajo
performance.
- Pipes and filters Se usa para sistemas de
procesamiento de datos de flujo ya que
a travs de los filters se hacen sub
procesos y los piper interconectan cada
proceso, tiene la ventaja de no
necesitar archivos intermedios, es
flexible por su estructura y adems
reutilizable, eficiente en el
procesamiento paralelo, bajo
rendimiento pues algunos filters pueden
consumir grandes cantidades de
recursos.
- Blackboard Es til para los problemas en los cuales
no se conoce ninguna estrategia de
solucin determinstica, se usan
muchos subsitemas con un monton de
soluciones (algoritmos) esperando que
uno de ellos funcione. Provee de
experimentacin, tolerancia a fallos y
robustez, entre otras pero es difcil de
testear, y se requiere un gran esfuerzo
de desarrollo
Sistemas Distribuidos Se usan como una herramienta para
todo cliente que requiere un software
manejable y gestionado de manera
simultanea y remota.
- Broker Estructura sistemas de software
distribuidos con componentes
desacoplados que interactan por
invocaciones de servicios remotos. Un
componente Broker es responsable de
coordinar la comunicacin, remitir las
demandas, as como transmitir
resultados y excepciones.los clientes
no necesitan saber donde esta el
servidor, ya que su portabilidad y re uso
le permiten ser modificado incluso en
tiempo de ejecucin.
Sistemas Interactivos permiten un grado alto de interaccin
del usuario, generalmente, con la ayuda
de interfaces de usuario grficas,
proporcionan un acceso conveniente a
sus servicios, lo cual permite a los
usuarios aprender la aplicacin y
producir resultados rpidamente.
- Model-View-Controller El Modelo contiene la funcionalidad
central y los datos, las Vistas
despliegan la informacin al usuario y
los Controladores manejan la entrada
del usuario. La misma informacin es
presentada en forma diferente en
diferentes vistas. Los cambios en los
datos se deben reflejar inmediatamente
en las vistas y el comportamiento. Su
principal desventaja es la conexin
entre las vistas y su actualizacin
ptima.
- Presentation-Abstraction-Control define una estructura para los sistemas
de software interactivos en forma de
jerarqua de agentes cooperantes.
Cada agente es responsable de un
aspecto especfico de la funcionalidad
de la aplicacin y tiene tres
componentes: presentacin,
abstraccin, y control.
Sistemas Adaptables Los sistemas evolucionan con el tiempo
- se agrega nueva funcionalidad y los
servicios van cambiando. Ellos deben
soportar nuevas versiones de operar
sistemas operativos, otras plataformas,
otras interfases de usuarios y
bibliotecas. Puede ser necesario
adaptarlos a nuevos estndares o
plataformas. Tambin puede ser
necesario proporcionar servicios que
difieran de un cliente a otro.
- Microkernel se aplica a los sistemas de software
que pueden adaptarse a cambios en los
requerimientos. La plataforma de
aplicacin debera ser portable,
extensible y adaptable para permitir una
fcil integracin de tecnologas
emergentes, la funcin central de la
plataforma de aplicacin debera
separarse en un componente con
tamao de memoria mnimo, y servicios
que consuman la menor cantidad de
posible procesamiento.
- Reflection provee un mecanismo para estructura
cambiante y conducta dinmica de
sistemas de software, tienen una
estructura interna compleja. Aspectos
que estn sujetos a cambios son
encapsulados dentro de componentes
separados; Los cambios pueden ser a
cualquier escala, desde proveer un
conjunto de teclas rpidas para
comandos usados normalmente como
tambin adaptar una aplicacin
framework para un cliente especfico.

Comentarios finales:
Los patrones de arquitectura que a mi parecer son ms utilizados en la actualidad
son los de tipo interactivos y adaptables, porque el desarrollo de las tecnologas
de la informacin lo han hecho necesario. La mayora de las aplicaciones se
basan en una interface grfica desde la cual se accede al servidor y estas se
actualizan cada determinado tiempo de acuerdo a las necesidades del cliente o
bien de las observaciones y deteccin de errores de los desarrolladores para un
mejor performance; un ejemplo de aplicaciones que usan este tipo de patrones de
arquitectura de software son las redes sociales que pueden ser accedidas desde
una Lap, PC, una Tablet o un celular. No por ello quiero decir que los dems
patrones sean obsoletos, ya que an se utilizan en sistemas de software donde se
requiere el procesamiento en pequeas subtareas como por ejemplo el sistema de
un laboratorio donde cada rea tiene un modulo de acceso desde donde se
modifica la informacin para finalmente integrarla y para este ejemplo se puede
usar un patrn de filters and pipers o bien de layers.
Trabajos citados
Rosanigo, Z. B., Almeira, A. S., & Perez Cavenago, V. (2007). Arquitectura de Software: Estilos y
Patrones. Argentina: Universidad Nacional De La Patagonia San Juan Bosco.
Sommerville, I. (2005). Ingeniera del software. Madrid: PEARSON EDUCACIN. S.A..

Vous aimerez peut-être aussi