4+1= modelo de arquitectura de software

 A lo largo de la clase vimos diferentes temas que abarcaban desde las razones que hacían un buen diseño; cómo y por qué se tenía que diseñar; si éste aún estaba presente en la, tan cambiante, realidad posmoderna; los problemas a los que se enfrentan los profesionales actuales relacionados a esta temática así como las soluciones que se han planteado en la industria para sobrellevarlos. Sin embargo, lo que más vimos y pusimos en práctica fueron modelos, patrones o estructuras ya definidas que dan pie a una arquitectura de software. En esta última entrega, esto no fue diferente pues, se nos presentó como alumnado, y próximos ingenieros de software, el modelo 4 + 1, el cual, a opinión personal es el más creativo pero el más asertivo en establecer las razones intrínsecas de la labor de diseñar. 

Durante el video The 4 1 Model, se da, como es de esperarse, la introducción formal al tema. Se describe claramente cómo y de qué está formado, así como las características de cada una de estas entidades. A modo de resumen breve, en éste se presentan las 5 vistas que dan lugar al modelo, así como los posibles diagramas que cada uno puede tener:

  • Vista Lógica: Interacciones y entidades que conforman al sistema. Se usan diagramas de clase, de objetos, de estado, etc.
  • Vista de procesos: Describe procesos dentro del sistema (qué tiene que pasar y cómo). Se usan diagramas de actividad.
  • Vista física: Modela en ambiente o entorno en donde se usará el sistema. Se usan diagramas de despliegue.
  • Vista de desarrollo: Describe los módulos, paquetes y librerías que hay dentro del sistema, con el fin de brindar facilidad a la hora de conocer las capas del mismo. Se usan diagramas de componentes. 
  • Vista de casos de uso: Describe la funcionalidad general del sistema, sus objetivos y posibles escenarios. Se usan diagramas de casos de uso. 
Sin embargo, a pesar de que se menciona en este mismo que este modelo surge con el afán de poder comprender mejor y de manera simplificada la complejidad de un sistema, son el resto de material (el video Six Blind Men y el escrito The elepahnt and the blind programmers por Grady Booch) los que ejemplifican de manera abstracta, pero clara que, como seres humanos y, por ende, como programadores, nuestra percepción hacía un objeto, así como nuestro entendimiento de nuestra realidad, se ve beneficiada si nuestro proceso cognitivo es dividido o estructurado de manera tal, que logremos obtener un panorama general y completo, a partir de varias otras vistas pequeñas y especializadas. A modo de conclusión, se tiene que hacer hincapié en que, más que profesionales, somos personas cuyo entendimiento no ha cambiado desde hace mucho tiempo y, aunque hemos logrado coexistir en un mundo ahora con dos especies con inteligencia (sí, me refiero a las máquinas aún siendo consciente de las limitantes que éstas presentan), mientras más aceptemos nuestras limitantes, mejor ventaja podremos obtener de ellas y nos resultará más fácil, y, hasta en cierto sentido obvio ciertos procesos de nuestra industria. 

Comentarios

Entradas populares de este blog

SOLID Princples

Los microservicios

Las corporaciones necesitan de arquitectos más que el software