La Importancia de la Arquitectura de Soluciones

Publicado en

Frecuentemente los clientes se preguntan: ¿por qué es tan caro pagar una consultoría de arquitectura? ¿Realmente la necesito? ¿De qué me sirve que alguien haga esos “diagramitas” y documentos?

Un arquitecto de soluciones, es una profesional con la experiencia necesaria para saber “de todo un poco” pero teniendo una visión end-to-end de la solución. Es el encargado de escuchar las necesidades del cliente y diseñar una solución, mapeando los requerimientos funcionales hacia tecnologías. De igual manera, el arquitecto es el puente entre el cliente con sus necesidades, y los ingenieros que implementarán la solución. Esto quiere decir que si algún requerimiento cambia, el arquitecto debe ser capaz de saber qué componentes de la solución son afectados y de qué manera.

El arquitecto también es responsable en crear un diseño con miras al futuro y a las posibles integraciones que la solución pueda requerir. Y entre más compleja sea la solución o más integraciones tenga, más evidente se hace la necesidad de tener un diseño claro para poder implementar la solución.

Es así que la importancia de un buen diseño es de gran valor para los proyectos de medianos a grandes. Tú no harías tu casa sin un diseño (planos), ¿o sí? De hecho, tal vez podrías hacer una casa muy sencilla sin necesidad de planos de diseño, pero ahora imagina un edificio de 500 oficinas o un hotel de 1,200 habitaciones. Ahí las cosas se empiezan a complicar, estacionamiento, tuberías, cimientos, instalaciones eléctricas, etcétera. Todo esto debe ser planeado y estimado. Y es un arquitecto quien lo hace.

Ahora bien, pensemos en una solución compleja, como puede ser una nube privada para el Gobierno Federal de un país mediano. El objetivo es disminuir costos en infraestructura de TI y al mismo tiempo agilizar la provisión de recursos de cómputo. Para ello se decide centralizando todos los centros de datos de las diferentes dependencias en un solo gran centro de datos. De tal suerte que cuando una de las dependencias necesite infraestructura para un proyecto de IT, en lugar de darle presupuesto para comprar un nuevo equipo, simplemente se le aprovisionarán recursos a partir un pool centralizado que provee infraestructura como servicio (IaaS).

La mejor solución para este ejemplo es una nube privada de tipo multi-tenant en la cual cada dependencia de gobierno será “cliente” de la nube centraliada y, dependiendo el tamaño de su presupuesto, se le estará asignando una serie de recursos virtuales (red, seguridad, cómputo, almacenamiento, etcétera).

El arquitecto debe ser la persona encargada de planear a detalle cómo será implementada la solución, desde todos los puntos de vista: servicio, oferta, integraciones, mediciones, monitoreo, etcétera. Conforme realiza esto, siempre debe tener en cuenta la sustentabilidad de la solución y las proyecciones de crecimiento. El resultado de este diseño y arquitectura es un documento estilo “receta de cocina” en el cual se plasman todos los detalles de la arquitectura, por ejemplo en este caso:

Servicio

  • Catálogo de servicio (ofertas de servicio y con qué opciones).
  • Cómo será entregado este servicio (portal de auto aprovisionamiento).
  • Cómo será cobrado el servicio (billing/chargeback).

Infraestructura

  • Qué infraestructura física se usará y cómo se dispondrán en la nube.
  • Qué almacenamiento y cómo se usará.
  • Qué infraestructura de red se usará y cómo se configurará la red (switches, IPS, ruteadores, firewalls, etc.).

Tecnologías

  • Qué hipervisor se usará y cómo.
  • Qué tecnología se usará para gestionar el aprovisionamiento de la nube.

Monitoreo

  • Seguridad perimetral.
  • Reporteo.
  • Integraciones con otros sistemas (SAP por ejemplo).

Todas estas tecnologías deben integrarse de una manera estandarizada en la cual todo funcione de forma integrada. Contar con una arquitectura bien diseñada desde antes de empezar la implementación es crítico, ya que esto contribuye a:

  • Identificar posibles fallas y/o retos desde antes de la implementación que podrían ser muy costosos después.
  • Tener una vista “punto a punto” de cómo funcionará la solución.
  • Tener un plan general de cómo se debe implementar la solución, facilitando así la asignación de actividades durante la implementación.
  • Evitar retrabajo.
  • Facilitar el mantenimiento y extensibilidad.

Conclusión

Esto es un primer vistazo del tipo de cosas que se definen en la arquitectura de soluciones de TI, y su importancia. En futuras entregas platicaremos más a fondo sobre esto.

Bio

Miguel Ángel Barajas (@gnuowned) es un Arquitecto Senior de Soluciones especializado en cómputo en la nube. Actualmente colabora con Cisco Systems atendiendo clientes en la región de Latinoamérica.