Ir al contenido principal

Tipos y niveles de la Arquitectura

Es común percibir la confusión entre distintos tipos y niveles de Arquitectura. Es muy frecuente, por ejemplo, que se nombren a especialistas en aplicaciones para el rol de Arquitecto de Soluciones, asumiendo que su responsabilidad se centra principalmente en las integraciones. 


Voy a exponer mi forma de entender los distintos niveles de Arquitectura acudiendo a la experiencia que seguramente muchos viven en su día a día.

 

Arquitectura Técnica

 

Desde el punto de vista de TOGAF, siempre me he desempeñado en dos dominios de la Arquitectura técnica: aplicaciones y tecnología. Recordemos que varios frameworks y metodologías la dividen en 3 que resumo a 10 mil pies de altura:

 

  • Arquitectura de Datos: De acuerdo a ADM se desarrolla en la fase C, Arquitectura de sistemas de información. Describe la estructura de los datos físicos  y lógicos de una organización. Su utilidad radica en habilitar el gobierno de los datos generados y almacenados, haciendo recurrente la práctica en cada proyecto de arquitectura. Es común que se empleen frameworks como DAMA para lograr este propósito.

  • Arquitectura de Aplicaciones: Al igual que la anterior, se desarrolla en la fase C, Arquitectura de sistemas de información. Se centra en identificar y documentar la interacción a nivel de software entre aplicaciones, plataformas y en general los sistemas de información. Es común que se genere un mapa de funciones de aplicación vs funciones y procesos de negocio que soportan estas aplicaciones al que se denomina blueprint. Al igual que los datos, los sistemas deben ser gobernados. Entender qué capacidades expone cada sistema de información y cómo interactúan hace posible realizar ejercicios racionales de comprar, hacer o reusar cada vez que se ejecute un proyecto de arquitectura. 

  • Arquitectura Tecnológica: Se desarrolla en la fase D, Arquitectura de tecnología. Se centra en la infraestructura y la seguridad describe, por tanto, la interacción de los dispositivos físicos y elementos de hardware sobre los cuales se despliegan los sistemas de información y se habilitan funciones tecnológicas. Aborda un amplio espectro físico y lógico, entre servidores, dispositivos de red, dispositivos de IoT, sensores, políticas de control de acceso, etc. 

 

Arquitectura de negocio

 

Por otro lado, creo que podemos estar de acuerdo en que los usuarios funcionales suelen conocer mucho mejor el negocio, interpretan la experiencia de usuario de acuerdo a su propia interacción y la de sus colegas con los sistemas de información y además reconocen las oportunidades de mejora de los procesos y las aplicaciones. En general, son los usuarios funcionales o sus jefes, directores de segmento de negocio o de producto,  los que en un proyecto cubren el rol de product owner.

 

Debido al conocimiento que tienen estos actores acerca del negocio y en el mejor de los casos, con el apoyo del área de proceso, es común que se encarguen de definir, modelar y proponer la optimización en las funciones y procesos. En ausencia de un Arquitecto de negocio, he sido testigo de que esta practica se generaliza.

 

De acuerdo a TOGAF, la Arquitectura de negocio se encuentra fuera del ámbito de la Arquitectura técnica. Permite hacer visible y gobernar la relación entre la estrategia y la operación. En otras palabras describe la relación entre objetivos estratégicos con las funciones y procesos que los soportan. Su práctica favorece la optimización de los modelos de negocio al intervenir las variables que giran alrededor, entre otros: costos, tiempos, experiencia, personas, etc. En un ejercicio de Arquitectura Empresarial, es el primer dominio a trabajar; fase B de ADM.

 

Arquitectura de Solución

 

Una solución se enfoca en la implementación, describe cómo se resuelve una capacidad en particular. De acuerdo a TOGAF,  La unión de dos o más Solution Building Block (la red, el proceso, la entidad de negocio, la aplicación) soportan una capacidad descrita por un Architecture Building Block (servicios de cartera, servicios de cliente, servicios de linea de producción, etc). A nivel de arquitectura, la especificidad es la misma, la Arquitectura empresarial identifica las distintos brechas requeridas para llevar la organización a un estado deseado, cada transición se conforma de proyectos de implementación traducidos, cada uno, en una Arquitectura de solución.

 

En resumen

 

La Arquitectura Empresarial se expande a toda la organización, genera las brechas requeridas para llevarla a un estado deseado. Para lograrlo, cada brecha o transición se conforma de un conjunto de proyectos priorizados y estructurados a través de la Arquitectura de Solución. A su vez, cada Arquitectura de solución estará conformada de uno o más de los diferentes dominios: Arquitectura de negocio, datos, aplicaciones y/o tecnología. Adicionalmente, una Arquitectura técnica puede ser de datos, tecnología o aplicación y finalmente,  tanto datos como aplicación hacen parte de la Arquitectura de sistemas de información.

 

Tal vez, el siguiente modelo conceptual podría ayudar a comprender cómo interpreto la relación semántica entre los distintos niveles de la arquitectura: 




Referencias:


  1. http://www.opengroup.org/public/arch/p4/bbs/bbs_adm.htm. Building Blocks and the Architecture Development Method
  2. https://pubs.opengroup.org/architecture/togaf9-doc/arch/chap02.html. Core concepts


Comentarios

Entradas populares de este blog

Proceso para la creación de la Arquitectura

Hoy quiero contarles acerca de un modelo que he adoptado para la construcción y entrega de la Arquitectura de Software, el cual lo he relacionado con éxito al interior de la compañía para la cual trabajo y que considero, bien puede adaptarse a cualquier tipo de especialidad de la Arquitectura Empresarial. Cuando era desarrollador escuchaba hablar constantemente acerca de varias metodologías de desarrollo. Durante mucho tiempo apliqué RUP, XP y metodologías AGILES, usé PSP y TSP como procesos de desarrollo. Pero durante todo ese tiempo nunca oí hablar de metodologías orientadas a la generación de la Arquitectura de Software, aún luego de comenzar a estudiar y al día de hoy he tenido muy pocas referencias. Quiero aclarar que existen varios modelos y  frameworks bastante conocidos para la Arquitectura Empresarial que son confrontados a profundidad en unas entregas muy completas de Microsoft, estas pueden estudiarse en este link . Pues bien, el método al que me refiero es ACDM, ...

Expandir espacio en disco duro en Virtual Box y con Partition Logic

Cuando nos quedamos sin espacio en nuestra máquina virtual, tenemos problemas para seguir usándola adecuadamente. Los siguientes son  los pasos que seguí para aumentar el espacio en disco duro, para la unidad principal de una máquina virtual de Windows XP instalada en mi Mac Book.  Probé una herramienta llamada Partition Logic   y, debido a que no la conocía, decidí documentarlo. Tenía asignadas 5GB a la unidad donde está instalado el sistema operativo, y se veía así: Mi máquina, con 5GB de tamaño en disco duro. 1. Redimensionar la unidad vdi. el siguiente es el comando que realiza toda la magia en VirtualBox: VBoxManage modifyhd "ruta/unidad.vdi" --resize [tamaño] En mi caso aumenté el tamaño a 20GB. VBoxManage modifyhd "/Users/oscar/VirtualBox VMs/WindowsXP/WindowsXPClone.vdi" --resize 20000 Como anotación,  debí clonar la unidad, pues había creado el disco de tamaño fijo en Virtual Box y no me permitía aumentarlo (generaba error...

Atributos de Calidad

¿Qué son los Atributos de Calidad? Los Arquitectos debemos participar en el entendimiento de las necesidades de los usuarios. Sí, esa es nuestra principal responsabilidad.  En mi experiencia he debido iniciar con leer términos de referencia para aplicar a licitaciones públicas y privadas y luego acompañar al equipo de análisis en el levantamiento de requerimientos. Los usuarios finales, a excepción de algunos muy técnicos, hablarán en el lenguaje del negocio, de otros sistemas que conocen, de lo que hace la competencia, de lo que otro proveedor les contó, de lo que alguno de sus más influyentes operarios conoce o del patrón de trabajo que ejecutan a diario. Muy pocas veces nos dirán exactamente lo que quieren y por eso debemos estar presentes; debemos ayudar a traducir esos relatos prosaicos de necesidades a requerimientos técnicos.  Los requerimientos técnicos se dividen principalmente en 2: los funcionales (functional requirements) y los no funcionales (Non-functi...