Introducción a la arquitectura de software (02)

Поделиться
HTML-код
  • Опубликовано: 30 сен 2024
  • En este vídeo muestro dos arquitecturas diferentes (cada una derivada de un estilo arquitectónico distinto) para el mismo sistema. Los estilos arquitectónicos usados son: tubos y filtros (pipes and filters) e invocación implícita (también conocido como publicar y suscribir o tool abstraction u orientación a eventos). Si quieren aprender más sobre estilos arquitectónicos pueden leer mi apunte de clase ``Catálogo incompleto de estilos arquitectónicos'' que pueden descargar de aquí www.fceia.unr.e....

Комментарии • 90

  • @seve-voraz
    @seve-voraz 5 лет назад +31

    ESTE HOMBRE MERECE MAS SUBS!!

  • @diegorangel5448
    @diegorangel5448 4 года назад +5

    Muchas graciasprofesor ....es un honor tenerlo a usted en youtube

  • @eperez_yt
    @eperez_yt 4 года назад +2

    Primeramente, muchas gracias por subir éste tipo de contenido tan valioso.
    Viendo el vídeo me surgen dos dudas:
    1) ¿Cuál sería la diferencia entre el estilo arquitectónico pipes & filters y el patrón de diseño Chain of Responsability?
    2) ¿Al momento de diseñar la arquitectura P&F, debe existir alguna especie de contrato entre filtros para mantener el orden en el tratamiento de los datos?
    !Saludos!

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  4 года назад +2

      Gracias a vos por visitar el canal.
      La primera diferencia entre P&F y CoR es que con un estilo arquitectónico vos podés diseñar un sistema entero pero con un patrón de diseño no. La segunda diferencia importante es que la interfaz de un filtro son puertos que solo reciben datos (tal vez de un cierto tipo), técnicamente la interfaz de un filtro no es un conjunto de métodos o subrutinas. Otra diferencia es que en P&F podés tener una red y no solo una cadena (pipeline en términos de P&F). En general en una CoR solo un nodo de la cadena procesa la petición, en cambio en un sistema de P&F potencialmente todos los filtros pueden procesar los datos. En general en una CoR el nodo que procesa la petición no modifica lo que recibe y lo pasa al siguiente nodo; en P&F todos los filtros hacen eso. La idea es que cada filtro implementa una pequeña parte del proceso general y cada uno transforma los datos poco a poco. Hay otras diferencias.
      Sobre la segunda pregunta, la respuesta es no. Los filtros se desarrollan de forma independiente unos de otros. Solo tienen que respetar la interfaz de puertos. Cada filtro recibe un dato y lo procesa; no sabe cuándo ese dato fue procesado por el filtro anterior. Por ejemplo un filtro puede tomar dos datos consecutivos y sacarlos por un puerto de salida en el orden inverso.

  • @vbleguizamon177
    @vbleguizamon177 3 года назад +2

    Gracias por este video. Muy clara y amena la explicación. Me da mucho orgullo saber que es un profesional que está en mi país. Infinitamente agradecida, me ayudó comprender!!

  • @perlaarroyo857
    @perlaarroyo857 4 года назад +3

    Graciasss, excelente vídeo, en la universidad nos avientan a los leones y usted lo explicó de maravilla

  • @centuriondev
    @centuriondev 4 года назад +2

    Muchas gracias por estos videos! Solo soy alguien que programa por que le gusta, siempre desde casa, y nunca tuve acceso a material académico hasta estos ultimos años donde gracias a personas como usted se puede adquirir grandes conocimientos que antes solo podian encontrarse en las Universidades
    Dejeme decirle que hoy aprendi mucho de usted gracias a sus videos y que estos conocimientos mejoraran grandemente mis futuros proyectos! Gracias!

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  4 года назад +1

      Gracias a vos por visitar el canal y me alegra mucho que te sirvan los vídeos.

  • @ramiroghilino4546
    @ramiroghilino4546 2 года назад

    Hola, en el archivo pdf "Catálogo Incompleto de Estilos Arquitectónicos" se menciona los TADs y toolies para la arquitectura basada en eventos pero en este video solo se mencionó los toolies, podría aclarar el significado de TADs?

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  2 года назад +4

      TAD es Tipo Abstracto de Dato y en este contexto se usa para indicar un módulo (más o menos una clase en POO) que tiene una interfaz más o menos estable. En los TAD se codifican las entidades y cuestiones del sistema que son estables y básicas del sistema. Por ejemplo, en un sistema bancario habría un TAD para las cajas de ahorros, otro para los plazos fijos, etc.

  • @abimelecmartinez7387
    @abimelecmartinez7387 3 года назад +2

    En primer lugar darle las gracias por tomar el tiempo para preparar estos videos tan pedagógicos y esclarecedores. Admiro mucho su forma de explicar porque transmite conceptos tan complejos de manera muy sencilla. Quiero aprender mucho más y agradecería me oriente con un listado de libros para consultar respecto a este tema. ¡Es maravilloso su contenido!

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  3 года назад +2

      Software Architecture in Practice de Bass, Clements y Kazman
      Pattern-oriented software architecture de Meunier, Buschmann y otros
      En castellano no sé si hay algo. Lo que podés ver es un apunte de clase que uso en Ingeniería de Software 2 de la UNR:
      www.fceia.unr.edu.ar/ingsoft/estilos-cat.pdf
      Gracias por visitar el canal.

    • @abimelecmartinez7387
      @abimelecmartinez7387 3 года назад +1

      @@MaximilianoCristiaIS Muchas gracias.

  • @lucassuleta3697
    @lucassuleta3697 3 года назад

    Buen dia Profe! Lucas de Cordoba Capital le molesta... Queria empezar Testing y me recomendo un docente sus videos... Por cual usted me recomienda comenzar?

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  3 года назад

      Hola; no es molestia. Hay una lista de reproducción con algunos vídeos sobre validación y verificación que incluyen cosas de testing:
      ruclips.net/p/PLxwq_p7jhKRHihAUm7AULn1LYaIeUuJ0n
      Igual tené en cuenta que son cosas más bien generales y conceptuales.

  • @joseluiscastrobenitez4464
    @joseluiscastrobenitez4464 2 года назад +1

    Buena tarde Profesor, muchas gracias por el aporte ya he visto 2 de sus clases que por cierto han sido muy útiles para mi. Un saludo desde México y nuevamente gracias por compartir.

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  2 года назад +1

      Gracias a vos por visitar el canal. Me alegra que te resulte útil.

  • @blasmofero
    @blasmofero 5 лет назад +2

    genial profe!!! te pasaste viejo. quiero mas videos de esto!! gracias!!!

  • @luisgarciacueva8357
    @luisgarciacueva8357 5 лет назад +2

    Gracias por el video, era lo que esperaba, esperare atento a sus nuevas publicaciones.
    ingrese a la ruta del final de video y me muestra un mensaje de error.

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  5 лет назад +1

      Me alegro de que te haya gustado. Recién probé la ruta que está al final del vídeo y funciona correctamente. Por las dudas la copio acá: www.fceia.unr.edu.ar/is2

  • @maximilianodiazvargas2153
    @maximilianodiazvargas2153 3 года назад +1

    Gracias, Saludos desde México

  • @jesusgarciaaguilar6218
    @jesusgarciaaguilar6218 4 месяца назад

    Excelente profe, contenido de calidad.
    Gracias!

  • @martinjulioluzuriaga4584
    @martinjulioluzuriaga4584 4 года назад +2

    Hola excelente video, en q carrera y en q año se da esa materia?

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  4 года назад +2

      Se da en Ingeniería de Software 2 que es una materia del cuarto año de la Licenciatura en Ciencias de la Computación (dcc.fceia.unr.edu.ar/es/lcc) de la Universidad Nacional de Rosario.

  • @tadeogonzalezalvarez6488
    @tadeogonzalezalvarez6488 3 года назад

    Acabo de conocer su contenido y me he viciado viendo mas que en una serie, muchas gracias!!!
    Por otro lado me llamo la atención la arquitectura Orientada a eventos. Ya tengo conocimientos sobre patrones, pero me gustaría saber su opinión, el administrador de eventos, en un principio lo vi como el patrón Observer, sin embargo una característica de este patrón es que un evento lo notifica a todos sus subscriptores sin una lógica intermedia y el administrador de eventos la necesita, por lo tanto el administrador podría ser una implementación del patrón Mediator, usted que opina?

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  3 года назад

      Es como vos decís, observer y mediator y posiblemente command.
      Gracias por visitar el canal.

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  3 года назад +1

      Es un ejemplo de cómo una arquitectura tiene una representación más detallada en términos de patrones de diseño.

  • @wfpc92
    @wfpc92 3 года назад

    Hoy al año 2020 el link que muestra al final no funciona. Sería interesante si lo vuelves a subir al google drive, onedrive, dropbox, o cualquier otra herramienta que perdure con el tiempo. Excelente contenido, estoy mirando casi todos tus videos!

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  3 года назад

      Justo en este fin de semana estuvieron actualizando los servidores de la facultad y en consecuencia estuvieron fuera de servicio. El documento que menciono también lo podés encontrar acá:
      www.researchgate.net/publication/268176997_Catalogo_Incompleto_de_Estilos_Arquitectonicos
      Gracias por visitar el canal.

    • @wfpc92
      @wfpc92 3 года назад

      @@MaximilianoCristiaIS Mil Gracias! voy a recomendar este canal con mis colegas, porque tu contenido está maravilloso y este recurso educativo INVALUABLE!

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  3 года назад

      @@wfpc92 nuevamente muchas gracias.

  • @pedrotaborda9779
    @pedrotaborda9779 2 года назад +1

    Gracias profesor Maximiliano por compartir conocimiento con tanta claridad.

  • @luisyapuchura5486
    @luisyapuchura5486 Год назад

    Saludos desde La Paz-Bolivia Profesor … es muy didáctica su explicación… deberían haber mas canales así de Ingeniería de Software.

  • @TheBitles
    @TheBitles 4 года назад +1

    Muchas gracias por el video y por su manera tan clara de explicar los temas. He sido desarrollador por algunos años y me gustaría conocer mas a fondo la arquitectura de software, ¿Qué libros me recomendaría que traten sobre el tema?

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  4 года назад +2

      Muchas gracias por el comentario. Como para empezar te recomiendo Software Architecture in Practice de Bass, Clements y Kazman. Tal vez también te interesen los vídeos sobre patrones de diseño que están en el canal.

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  4 года назад +1

      También podés ver mi apunte de clase sobre estilos arquitectónicos: www.fceia.unr.edu.ar/ingsoft/estilos-cat.pdf

  • @zeupez616
    @zeupez616 5 лет назад +1

    Esperaba nuevo vídeo
    GRACIAS!!!
    volviste

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  5 лет назад +1

      Me lleva tiempo hacer cada vídeo. Sobre todo pensar el contenido para poder comunicar el tema en poco tiempo. Pensá que cuando doy clase en la facu estos temas me llevan un par de semanas. Saludos!

  • @jackalvarez9866
    @jackalvarez9866 4 года назад

    El diseño se hace en simultáneo con la especificación formal?? o de manera jerárquica: Primero la especificación y luego el diseño??

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  4 года назад +1

      Se puede hacer de las dos formas y cuál es la mejor depende del proyecto. En proyectos de software crítico se suele empezar por la especificación formal porque lo más importante, por lejos, es que el programa no tenga errores; la modificabilidad en estos casos es secundaria. En proyectos no críticos, pero donde se quiere tener un alto nivel de calidad, se suele empezar por el diseño y luego se especifican formalmente los componentes más complejos o críticos. Cualquier otra pregunta avisame. Gracias por visitar el canal.

  • @peuielpotro
    @peuielpotro 2 года назад

    Maximiliano. Que placer haber visto estas dos clases donde se da una intro clara a la arquitectura.
    Muchas gracias por el catalogo. Ya le estoy pegando una mirada.
    Me gustaría que recomiende blibliografía (si es en español mejor, pero sino en inglés esta bien).
    Gracias nuevamente! Saludos

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  2 года назад

      Software Architecture in Practice de Bass, Clements y Kazman
      Pattern-oriented software architecture de Meunier, Buschmann y otros
      En castellano no sé si hay algo. Lo que podés ver es un apunte de clase que uso en Ingeniería de Software 2 de la UNR:
      www.fceia.unr.edu.ar/ingsoft/estilos-cat.pdf
      Gracias por visitar el canal.

  • @jhonnymorales7732
    @jhonnymorales7732 4 года назад

    Muy buen contenido Profesor, solamente tengo una duda, en dónde o qué categoría entran los microservicios, monolito, etc, que algunos consideran arquitecturas?, muchas gracias desde ya.

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  4 года назад

      Es algo relativamente nuevo, no creo que aún esté bien estudiado. Probablemente sea una especialización del estilo cliente/servidor.

  • @cesalab4738
    @cesalab4738 3 года назад

    Un ejemplo de arquitectura de eventos, es MQTT

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  3 года назад

      No lo conozco en detalle pero está basado en publicar y suscribir.

    • @cesalab4738
      @cesalab4738 3 года назад

      @@MaximilianoCristiaIS en efecto, yo lo vi MQTT para aplicaciones basadas en IoT... tu video es muy útil para entender la arquitectura, gracias por compartir!!

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  3 года назад +1

      @@cesalab4738 Gracias a vos por visitar el canal.

  • @agustinquintanilla5051
    @agustinquintanilla5051 3 года назад

    Excelente explicación, clara y directa, con un enlace a los apuntes para poder descargarlo ... No se puede pedir más ... Tu labor es el ejemplo de 'vocación por la enseñanza'

  • @CesarSanchez-kn6hp
    @CesarSanchez-kn6hp 3 года назад

    No se como apareció su canal en el menú de You Tube pero para mi ha resultado una Bendicion de Dios a través de sus enseñanzas Saludos desde Venezuela a Usted, su Familia y la querida hermana Argentina

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  3 года назад

      Me alegra mucho lo que decís. Muchas gracias a vos por visitar el canal.

  • @cesalab4738
    @cesalab4738 3 года назад

    aveces uno quiere empezar a pegar ladrillos y sin un plano... aquí las respuestas a mis dudas, grande profe!! ya me estoy dando una idea para lo relacionado a sistemas embebidos...

    • @MaximilianoCristiaIS
      @MaximilianoCristiaIS  3 года назад

      Genial, me alegra que te sirva. Suerte y gracias por visitar el canal.

  • @joseivangarzon3441
    @joseivangarzon3441 5 лет назад +1

    Super video. Sigue adelante profe.

  • @victorfernandogilcalderon6242
    @victorfernandogilcalderon6242 2 года назад

    Excelente explicación

  • @CesarSanchez-kn6hp
    @CesarSanchez-kn6hp 3 года назад

    Muchas Gracias estimado Prof Maximiliano sobre este tema de interes muy bien explicado Gracias

  • @javiercustodioore778
    @javiercustodioore778 4 года назад

    es un maestro

  • @CesarSanchez-kn6hp
    @CesarSanchez-kn6hp 3 года назад

    Muchas Gracias estimado Prof Maximiliano sobre este tema de interes

  • @ruskohl6382
    @ruskohl6382 8 месяцев назад

  • @jorgeespinozah.8904
    @jorgeespinozah.8904 4 года назад

    ERI UN CRACK

  • @olivervalienteoliva4335
    @olivervalienteoliva4335 3 года назад

    Este video esta muy buenos, felicidades!!!!

  • @ProiectoERP
    @ProiectoERP 4 года назад

    Muy buena explicacion, Felicitaciones.

  • @sorcey9532
    @sorcey9532 2 года назад

    Dónde ha estado este canal durante toda mi carrera!

  • @carloshenryanguloalban8473
    @carloshenryanguloalban8473 5 лет назад

    Excelente video, muy bien explicado

  • @Emmap11
    @Emmap11 3 года назад

    Excelente sin duda!

  • @cristian8467
    @cristian8467 4 года назад

    Genial !!!!