SlideShare una empresa de Scribd logo
1 de 15
Es la primera etapa técnica del
                                           proceso de Ingeniería del
                                       Software, consiste en producir un                   la arquitectura nos identifica
                                       modelo o representación técnica                   los elementos mas importantes
                                            del software que se va a                        de un sistema así como sus
 Diseño de la                                                                             relaciones. Es decir nos da una
                                                   desarrollar
arquitectura de                                                                               visión global del sistema
   software

                                                   •El diseño de datos nos facilita la
                                                         representación de los
                                                                                                               Como
                                                     componentes de datos de la
                                                                                                                se
                                                              arquitectura.
                     Por que es                                                                               inicia?
                                                     •El diseño arquitectónico se
                     importante                    centra en la representación de la
                                                    estructura de los componentes
                                                    del software, sus propiedades e
                                                             interacciones.                    El diseño arquitectónico
                                                                                            comienza con el diseño de datos
   •Facilitan la comunicación entre                                                             y después procede a la
  todas las partes interesadas en el                                                           derivación de una o mas
desarrollo de un sistema basado en                                                              representaciones de la
             computadora.                                                                    estructura arquitectónica del
 •Destaca decisiones tempranas de                                                                      sistema.
  diseño que tendrán un profundo                   Estilos Arquitectónicos
     impacto en todo el trabajo de              •Arquitecturas centradas de                                   3 variables
        ingeniería del software.                            datos.                                            principales
         •Constituye un modelo                •Arquitecturas de flujo de datos.
       relativamente pequeño e                   •Arquitecturas de llamada y
intelectualmente comprensible de                           retorno.
cómo está estructurado el sistema                •Arquitecturas orientadas a                          •Tiempo.
    y de cómo trabajan juntos sus                          objetos.                           •satisfacción del cliente
             componentes                        •Arquitecturas estratificadas                •costo de los desarrollos.
Estilos Arquitectónicos

                                             Sistemas de flujo de datos:
    Un estilo arquitectónico define una
            familia de sistemas de
                                             • Tubos y Filtros
software en términos de su organización      •Procesamiento por lotes
                estructural. Un
    estilo arquitectónico representa los
                                             Sistemas basados en Programa principal y
              componentes y las              subrutinas
        relaciones entre ellos con las
       restricciones de su aplicación
                                             llamada y retorno:
y las asociaciones y reglas de diseño para   • Orientados a objetos
               su construcción.
   Shaw y Garlan (Shaw y Garlan, 1996)
                                             •Organizados en capas
               precisan además,              Sistemas de componentes Comunicación
  que un estilo arquitectónico define un
                vocabulario de
                                             entre procesos
    componentes y tipos de conectores.       independientes
                                             •Cliente/servidor
                                             •Basados en eventos
Sistema de flujo de datos
•El sistema se percibe como
        una sucesión de
                                                                 Es un sistema grafico
transformaciones que sufre
                                                              lógico del plan de trabajo
    una serie de datos de                                      que se ejecutara para la
      entrada a través del                                          solución de un
            sistema.                                           determinado problema.
    •Los datos ingresan al      Esta arquitectura se aplica        A través de él, se
sistema y fluyen a través de       cuando los datos de         planifica la solución del
las componentes una a una              entrada son            problema independiente
                                transformados a través de           del lenguaje de
  hasta que se asignan a un
                                una serie de componentes       computación a usar. De
    destino final: salida o                                     esta manera se separa
       almacenamiento.              computacionales o
                                manipulativos en los datos      loas instrucción es un
     •Son típicos casos de              de salida.              lenguaje determinado
       arquitecturas que                                         con todas las reglas.
 promueven la reusabilidad
     y la modificabilidad.
   •Existen dos subestilos:
        •secuencial por lotes
           •tubos y filtros
Arquitectura de Tubos y Filtros
                                                                           •Enfatiza la
•Filtros y Tuberías (Pipes & Filters)                                      transformación
            Descripción                                                    incremental de los datos
•Cada componente tiene un conjunto de entradas y un conjunto de            a través de las sucesivas
salidas.                                                                   componentes.
•Un componente lee entradas y las transforma en salidas                    •Cada componente (filtro)
            Restricciones:                                                 es un traductor que
•Los filtros deben ser independientes.                                           •procesa los datos
            No deben compartir estado con otros filtros.                         de entrada
•Los filtros realizan la labor independientemente del flujo de entrada.          •usa poca
            Especializaciones del estilo                                         información de
•Pipelines                                                                       contexto
•Bounded pipes                                                                   •no retiene
•Typed pipes                                                                     información de
                                                                                 estado




                                   Traducir al inglés              Escribir inglés
           Leer

                                   Traducir al chino               Escribir chino
Ventajas
•   Permite entender el sistema global en términos de la combinación de
    componentes
•   Soporta de buena manera la reutilización.
           Los filtros son independientes de sus vecinos
•   Facilidad de Mantenimiento y mejora
•   Facilidad de diagnóstico (rendimiento, deadlocks)
•   Soportan la ejecución concurrente
                     Desventajas
•   No aconsejable para cuando se necesita interactividad
•   Problemas de rendimiento ya que los datos
•   se transmiten en forma completa entre
•   filtros
Procesamiento por lotes
•Los pasos de procesamiento o
componentes son programas
independientes y se supone que
cada       paso    se    ejecuta
completamente antes de seguir al
siguiente.
•Los pasos son programas
independientes, y corren en una
secuencia predefinida.
•Aplicaciones             típicas:
Procesamiento de datos clásica
Desarrollo de programas
Como funciona el sistema de flujo
           de datos
   Se representa por arcos
    dirigidos, en donde la
        flecha indica la
    dirección de los datos




             Debe tener un nombre o
                 rotulo que los
                   identifique
Sistemas basados en llamado y
             retorno
•Este estilo arquitectónico permite
     al diseñador del software
 (arquitecto del sistema) construir
    una estructura de programa
 relativamente fácil de modificar y
          ajustar a escala.
•Existen dos sub-estilos dentro de
           esta categoría:
    –arquitecturas de programa
              principal.
   –arquitecturas de llamada de       Persigue obtener cualidades de Escalabilidad y
       procedimiento remoto.          modificabilidad.

                                      Este estilo a dominado en grandes sistemas de
                                      software
                                      Tiene tres variaciones:
                                      •Capas
                                      •O.O
                                      •Programa principal y subrutinas
Capas
•   Organización Jerárquica
•   Cada capa provee servicios a sus capas vecinas
•   Los conectores son definidos por los protocolos que determinan como
    interactúan las capas
•   Restricciones topológicas incluyen limitación de interacciones a capas
    adyacentes
•   Cada capa sucesiva es construida basada en su antecesor
•   Ej: Modelo OSI, Sistema X-Windows , etc

Aplicabilidad                                    Invariantes/ Restricciones
                         Componentes


                                        Mecanismos de
                                       interacción entre
            Aplicación                   componentes
Organización de capas
                      Nivel n: aplicaciones de usuario




                                                          Retorno
           Llamados
                      Nivel n: aplicaciones de usuario


                       Nivel n: aplicaciones de usuario
Sistema de componentes
                    independientes



Consiste de un número de objetos o
procesos independientes que se
comunican a través de mensajes.
•La modificabilidad se logra por el
desacoplamiento en varias porciones
de procesamiento.
•Solo se envían mensajes entre los
objetos, sin tener control directamente.
Sistema basados en eventos
•   Los componentes interactúan por medio
    de      invocaciones      explícitas    de
    procedimientos o funciones
•   Los componentes exponen datos que son
    compartidos con su entorno
•   Los componentes pueden registrarse a una
    clase de datos de interés
•   Existe un manejador de mensajes que
    coordina      la    comunicación     entre
    componentes, invocando al componente
    cuando un mensaje que llega es para ese
    determinado componente.
•   Existen algunas técnicas de integración
    alternativas,
•   Componentes:
    objetos y procesos
•   Conexiones:        Encadenamiento      de
    eventos-procedimientos
Cliente/ servidor
Modelo de Sistemas Distribuido, el            Conjunto de servidores “stand-
cual muestra como los datos y                 alone”, los cuales proporcionan
procesamiento están distribuidos              servicios    específicos      como
entre un rango de componentes.                impresión, manejo de datos, etc.




 Redes que permiten que los clientes          Conjunto de clientes que llaman a
 acceden a los servidores                     estos servicios.


                     Ventajas
                                                                 Desventajas
     La Distribución de datos es directa.
                                               El modelo no comparte datos con los diferentes
     Permite el uso efectivo de sistemas de
                                               subsistemas empleados en la organización.
     red.
                                               El intercambio de datos puede ser ineficiente.
     Puede requerir hardware barato.
                                               Administración redundante en cada servidor.
     Es fácil añadir nuevos servidores o
                                               No existen registros centrales de nombres y
     actualizar los existentes.
                                               servicios -esto hace difícil encontrar los
                                               servidores y servicios disponibles.
Notación para
Estilos Peer-
                                            arquitectura
  to-Peer
                                              software
                                            “UML” es 3 cosas:
Esta familia, también llamada de            – Meta-modelo de sistemas de software
componentes independientes, enfatiza la     • clases, subsistemas, componentes,
modificabilidad por medio de la             nodos
separación de las diversas partes que
                                            – Notación para describir cosas usando
intervienen en la computación. Consiste
por lo general en procesos independientes   orientación a
o entidades que se comunican a través de    objetos
mensajes. Cada entidad puede enviar         – Mecanismo extensible para describir
mensajes a otras entidades, pero no         cosas usando
controlarlas directamente. Los mensajes     orientación a objetos
pueden ser enviados a componentes           • Históricamente:
nominados o propalados mediante             1. Descripción de software ( pre-UML)
broadcast.
                                            2. Ampliación a describir modelos de
                                            análisis (UML pre-
                                            OMG)
                                            3. Generalización como mecanismo

Más contenido relacionado

La actualidad más candente

Vistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareVistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de Software
Roberth Loaiza
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
kaolong
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Sergio Sanchez
 
2 1 vistas arquitectonicas
2 1 vistas arquitectonicas2 1 vistas arquitectonicas
2 1 vistas arquitectonicas
landeta_p
 
Sistemas operativos distribuidos.
Sistemas operativos distribuidos.Sistemas operativos distribuidos.
Sistemas operativos distribuidos.
Daniela Velasquez
 
MODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWAREMODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWARE
Micky Jerzy
 

La actualidad más candente (20)

Vistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareVistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de Software
 
Tema N° 14 Especificación de Requisitos del Software
Tema N° 14 Especificación de Requisitos del SoftwareTema N° 14 Especificación de Requisitos del Software
Tema N° 14 Especificación de Requisitos del Software
 
Sistemas distribuidos
Sistemas distribuidosSistemas distribuidos
Sistemas distribuidos
 
Diseño arquitectónico
Diseño arquitectónicoDiseño arquitectónico
Diseño arquitectónico
 
Chipset en el mercado
Chipset en el mercadoChipset en el mercado
Chipset en el mercado
 
Conclusiones de Unidad 1 - Sistemas Operativos.
Conclusiones de Unidad 1 - Sistemas Operativos.Conclusiones de Unidad 1 - Sistemas Operativos.
Conclusiones de Unidad 1 - Sistemas Operativos.
 
Modelos de análisis estructurado
Modelos de análisis estructuradoModelos de análisis estructurado
Modelos de análisis estructurado
 
Patrones de diseño I
Patrones de diseño IPatrones de diseño I
Patrones de diseño I
 
Etapas del Proceso de la Ingeniería del Software
Etapas del Proceso de la Ingeniería del SoftwareEtapas del Proceso de la Ingeniería del Software
Etapas del Proceso de la Ingeniería del Software
 
Componentes y evolucion del modelado de negocios(investigacion)
Componentes y evolucion del modelado de negocios(investigacion)Componentes y evolucion del modelado de negocios(investigacion)
Componentes y evolucion del modelado de negocios(investigacion)
 
Patrones diseño y arquitectura
Patrones diseño y arquitecturaPatrones diseño y arquitectura
Patrones diseño y arquitectura
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
 
2 1 vistas arquitectonicas
2 1 vistas arquitectonicas2 1 vistas arquitectonicas
2 1 vistas arquitectonicas
 
Estilos de Software
Estilos de SoftwareEstilos de Software
Estilos de Software
 
Etapa de estudio de viabilidad de un proyecto informático c4
Etapa de estudio de viabilidad de un proyecto informático c4Etapa de estudio de viabilidad de un proyecto informático c4
Etapa de estudio de viabilidad de un proyecto informático c4
 
Diseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-softwareDiseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-software
 
Sistemas operativos distribuidos.
Sistemas operativos distribuidos.Sistemas operativos distribuidos.
Sistemas operativos distribuidos.
 
Diseño a Nivel de Componentes
Diseño a Nivel de ComponentesDiseño a Nivel de Componentes
Diseño a Nivel de Componentes
 
Vista lógica
Vista lógicaVista lógica
Vista lógica
 
MODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWAREMODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWARE
 

Similar a Diseno de la arquitectura

Clase7 unidad1
Clase7 unidad1Clase7 unidad1
Clase7 unidad1
zurda21
 
Arquitectura de software
Arquitectura de softwareArquitectura de software
Arquitectura de software
Liliana Pacheco
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico
landeta_p
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico
landeta_p
 
Diseño de arquitectura del software
Diseño de arquitectura del softwareDiseño de arquitectura del software
Diseño de arquitectura del software
deahesy najera garcia
 

Similar a Diseno de la arquitectura (20)

Clase7
Clase7Clase7
Clase7
 
Clase7 unidad1
Clase7 unidad1Clase7 unidad1
Clase7 unidad1
 
Ingenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareIngenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de software
 
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
 
Arquitectura. de Software. en ambientes distribuidos.
Arquitectura. de Software. en ambientes distribuidos.Arquitectura. de Software. en ambientes distribuidos.
Arquitectura. de Software. en ambientes distribuidos.
 
Arquitecturas de software
Arquitecturas de softwareArquitecturas de software
Arquitecturas de software
 
Arquitectura de Software
Arquitectura de SoftwareArquitectura de Software
Arquitectura de Software
 
Arquitectura de software
Arquitectura de softwareArquitectura de software
Arquitectura de software
 
presentacion hebelyn
presentacion hebelynpresentacion hebelyn
presentacion hebelyn
 
Metodología de Diseño Estructurado.pptx
Metodología de Diseño Estructurado.pptx Metodología de Diseño Estructurado.pptx
Metodología de Diseño Estructurado.pptx
 
Ingenieria inversa
Ingenieria inversaIngenieria inversa
Ingenieria inversa
 
Principios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del softwarePrincipios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del software
 
Capitulo 3 arquitecturas_de_desarrollo_web
Capitulo 3 arquitecturas_de_desarrollo_webCapitulo 3 arquitecturas_de_desarrollo_web
Capitulo 3 arquitecturas_de_desarrollo_web
 
Principios diseño del software
Principios diseño del software Principios diseño del software
Principios diseño del software
 
Unidad 4. diseno del sistema
Unidad 4. diseno del sistemaUnidad 4. diseno del sistema
Unidad 4. diseno del sistema
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico
 
Diseño de arquitectura del software
Diseño de arquitectura del softwareDiseño de arquitectura del software
Diseño de arquitectura del software
 
9.diseño de la arquitectura
9.diseño de la arquitectura9.diseño de la arquitectura
9.diseño de la arquitectura
 
Diseno de software_-_gabriel_gonzalez
Diseno de software_-_gabriel_gonzalezDiseno de software_-_gabriel_gonzalez
Diseno de software_-_gabriel_gonzalez
 

Último

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Último (11)

Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 

Diseno de la arquitectura

  • 1.
  • 2. Es la primera etapa técnica del proceso de Ingeniería del Software, consiste en producir un la arquitectura nos identifica modelo o representación técnica los elementos mas importantes del software que se va a de un sistema así como sus Diseño de la relaciones. Es decir nos da una desarrollar arquitectura de visión global del sistema software •El diseño de datos nos facilita la representación de los Como componentes de datos de la se arquitectura. Por que es inicia? •El diseño arquitectónico se importante centra en la representación de la estructura de los componentes del software, sus propiedades e interacciones. El diseño arquitectónico comienza con el diseño de datos •Facilitan la comunicación entre y después procede a la todas las partes interesadas en el derivación de una o mas desarrollo de un sistema basado en representaciones de la computadora. estructura arquitectónica del •Destaca decisiones tempranas de sistema. diseño que tendrán un profundo Estilos Arquitectónicos impacto en todo el trabajo de •Arquitecturas centradas de 3 variables ingeniería del software. datos. principales •Constituye un modelo •Arquitecturas de flujo de datos. relativamente pequeño e •Arquitecturas de llamada y intelectualmente comprensible de retorno. cómo está estructurado el sistema •Arquitecturas orientadas a •Tiempo. y de cómo trabajan juntos sus objetos. •satisfacción del cliente componentes •Arquitecturas estratificadas •costo de los desarrollos.
  • 3. Estilos Arquitectónicos Sistemas de flujo de datos: Un estilo arquitectónico define una familia de sistemas de • Tubos y Filtros software en términos de su organización •Procesamiento por lotes estructural. Un estilo arquitectónico representa los Sistemas basados en Programa principal y componentes y las subrutinas relaciones entre ellos con las restricciones de su aplicación llamada y retorno: y las asociaciones y reglas de diseño para • Orientados a objetos su construcción. Shaw y Garlan (Shaw y Garlan, 1996) •Organizados en capas precisan además, Sistemas de componentes Comunicación que un estilo arquitectónico define un vocabulario de entre procesos componentes y tipos de conectores. independientes •Cliente/servidor •Basados en eventos
  • 4. Sistema de flujo de datos •El sistema se percibe como una sucesión de Es un sistema grafico transformaciones que sufre lógico del plan de trabajo una serie de datos de que se ejecutara para la entrada a través del solución de un sistema. determinado problema. •Los datos ingresan al Esta arquitectura se aplica A través de él, se sistema y fluyen a través de cuando los datos de planifica la solución del las componentes una a una entrada son problema independiente transformados a través de del lenguaje de hasta que se asignan a un una serie de componentes computación a usar. De destino final: salida o esta manera se separa almacenamiento. computacionales o manipulativos en los datos loas instrucción es un •Son típicos casos de de salida. lenguaje determinado arquitecturas que con todas las reglas. promueven la reusabilidad y la modificabilidad. •Existen dos subestilos: •secuencial por lotes •tubos y filtros
  • 5. Arquitectura de Tubos y Filtros •Enfatiza la •Filtros y Tuberías (Pipes & Filters) transformación Descripción incremental de los datos •Cada componente tiene un conjunto de entradas y un conjunto de a través de las sucesivas salidas. componentes. •Un componente lee entradas y las transforma en salidas •Cada componente (filtro) Restricciones: es un traductor que •Los filtros deben ser independientes. •procesa los datos No deben compartir estado con otros filtros. de entrada •Los filtros realizan la labor independientemente del flujo de entrada. •usa poca Especializaciones del estilo información de •Pipelines contexto •Bounded pipes •no retiene •Typed pipes información de estado Traducir al inglés Escribir inglés Leer Traducir al chino Escribir chino
  • 6. Ventajas • Permite entender el sistema global en términos de la combinación de componentes • Soporta de buena manera la reutilización. Los filtros son independientes de sus vecinos • Facilidad de Mantenimiento y mejora • Facilidad de diagnóstico (rendimiento, deadlocks) • Soportan la ejecución concurrente Desventajas • No aconsejable para cuando se necesita interactividad • Problemas de rendimiento ya que los datos • se transmiten en forma completa entre • filtros
  • 7. Procesamiento por lotes •Los pasos de procesamiento o componentes son programas independientes y se supone que cada paso se ejecuta completamente antes de seguir al siguiente. •Los pasos son programas independientes, y corren en una secuencia predefinida. •Aplicaciones típicas: Procesamiento de datos clásica Desarrollo de programas
  • 8. Como funciona el sistema de flujo de datos Se representa por arcos dirigidos, en donde la flecha indica la dirección de los datos Debe tener un nombre o rotulo que los identifique
  • 9. Sistemas basados en llamado y retorno •Este estilo arquitectónico permite al diseñador del software (arquitecto del sistema) construir una estructura de programa relativamente fácil de modificar y ajustar a escala. •Existen dos sub-estilos dentro de esta categoría: –arquitecturas de programa principal. –arquitecturas de llamada de Persigue obtener cualidades de Escalabilidad y procedimiento remoto. modificabilidad. Este estilo a dominado en grandes sistemas de software Tiene tres variaciones: •Capas •O.O •Programa principal y subrutinas
  • 10. Capas • Organización Jerárquica • Cada capa provee servicios a sus capas vecinas • Los conectores son definidos por los protocolos que determinan como interactúan las capas • Restricciones topológicas incluyen limitación de interacciones a capas adyacentes • Cada capa sucesiva es construida basada en su antecesor • Ej: Modelo OSI, Sistema X-Windows , etc Aplicabilidad Invariantes/ Restricciones Componentes Mecanismos de interacción entre Aplicación componentes
  • 11. Organización de capas Nivel n: aplicaciones de usuario Retorno Llamados Nivel n: aplicaciones de usuario Nivel n: aplicaciones de usuario
  • 12. Sistema de componentes independientes Consiste de un número de objetos o procesos independientes que se comunican a través de mensajes. •La modificabilidad se logra por el desacoplamiento en varias porciones de procesamiento. •Solo se envían mensajes entre los objetos, sin tener control directamente.
  • 13. Sistema basados en eventos • Los componentes interactúan por medio de invocaciones explícitas de procedimientos o funciones • Los componentes exponen datos que son compartidos con su entorno • Los componentes pueden registrarse a una clase de datos de interés • Existe un manejador de mensajes que coordina la comunicación entre componentes, invocando al componente cuando un mensaje que llega es para ese determinado componente. • Existen algunas técnicas de integración alternativas, • Componentes: objetos y procesos • Conexiones: Encadenamiento de eventos-procedimientos
  • 14. Cliente/ servidor Modelo de Sistemas Distribuido, el Conjunto de servidores “stand- cual muestra como los datos y alone”, los cuales proporcionan procesamiento están distribuidos servicios específicos como entre un rango de componentes. impresión, manejo de datos, etc. Redes que permiten que los clientes Conjunto de clientes que llaman a acceden a los servidores estos servicios. Ventajas Desventajas La Distribución de datos es directa. El modelo no comparte datos con los diferentes Permite el uso efectivo de sistemas de subsistemas empleados en la organización. red. El intercambio de datos puede ser ineficiente. Puede requerir hardware barato. Administración redundante en cada servidor. Es fácil añadir nuevos servidores o No existen registros centrales de nombres y actualizar los existentes. servicios -esto hace difícil encontrar los servidores y servicios disponibles.
  • 15. Notación para Estilos Peer- arquitectura to-Peer software “UML” es 3 cosas: Esta familia, también llamada de – Meta-modelo de sistemas de software componentes independientes, enfatiza la • clases, subsistemas, componentes, modificabilidad por medio de la nodos separación de las diversas partes que – Notación para describir cosas usando intervienen en la computación. Consiste por lo general en procesos independientes orientación a o entidades que se comunican a través de objetos mensajes. Cada entidad puede enviar – Mecanismo extensible para describir mensajes a otras entidades, pero no cosas usando controlarlas directamente. Los mensajes orientación a objetos pueden ser enviados a componentes • Históricamente: nominados o propalados mediante 1. Descripción de software ( pre-UML) broadcast. 2. Ampliación a describir modelos de análisis (UML pre- OMG) 3. Generalización como mecanismo