martes, 28 de octubre de 2008

Enterprise Architecture Training - Clase 1

Hoy asisti a la primera de cuatro clases de Enterprise Architecture, cuyo orador es [Mike Rosen]

A continuación les dejo los puntos que mas me quedaron de este dia:

Comenzo hablando de para que es necesaria una arquitectura (complejidad del negocio y la tecnología, requerimientos de una semántica uniforme a toda la empresa, relacionar todos los activos implicados en el desarrollo de las soluciones, ...), y siguió definiendo que es una arquitectura. La definió de la siguiente manera:
  • "El diseño y especificación de la estructura de un sistema completo" David Garlan and Mary Shaw
  • "El concepto de mas alto nivel de un sistema en su entorno" IEEE
  • "La organización o estructura de los componentes significativos de los sistemas, interactuando a través de interfaces" RUP
Personalmente, no me cerró ninguna completamente.

Yendo al tema en cuestión del curso, Arquitectura Empresarial, se la definió como el entendimiento de todos los elementos que forman la empresa (personas, procesos, sistemas), y las decisiones necesarias para que estos elementos se relacionen de una forma tal que acompañen la estrategia empresarial.

La arquitectura debe responder las tres principales cuestiones:
  1. ¿Cuales son los conceptos importantes?
  2. ¿Cuales son las relaciones entre los mismos?
  3. ¿Como provee valor al negocio?

Objetivos de la arquitectura Empresarial

  1. Interoperabilidad entre sistemas
  2. Tecnología consistente
  3. Dar un maximo beneficio al negocio mediante el apropiado reuso de la tecnología
  4. Tecnología cost-effective, mediante la centralización de principios, políticas, estándares, y productos aprobados.

Repositorio

Es importante para una arquitectura empresarial, la existencia de un repositorio de activos de IT, entre los que se encuentran:


Activos de negocio
  • Estrategia de arquitectura
  • Organización del area de arquitectura
  • Productos de la empresa
  • Cadenas de valor de la empresa y arquitectura
Activos de solución
  • Procesos de negocio
  • Definición de la información
  • Diseño de Software
  • Catalogo de servicios
Activos IT
  • Aplicaciones
  • Productos IT
  • Plataformas SW
  • Hardware
Activos de arquitectura
  • Metamodelos
  • Arquitecturas de referencia

Architecture-Driven Design Process

Resumiendo, lo que dice este proceso o metodología de desarrollo es, en primera instancia, pensar el sistema totalmente agnóstico de tecnologías, basandose en los requerimientos del negocio (Arquitectura de Negocio).


Una vez definida la arquitectura agnóstica, decidir cual es la tecnología a implementar, y definir la arquitectura propia basada en la tecnología.


De esta manera, ganamos:

  • Flexibilidad de la arquitectura
  • No atar las decisiones de arquitectura a cuestiones propias de una tecnología
  • Maximizar la reutilización de componentes

Principios de arquitectura

Los principios que guían a una arquitectura, son:
  • Separación de incumbencias
  • Tener el cuenta el futuro (versiones de productos, estrategias de la empresa, nuevas tecnologías)
  • Ser riguroso en las definiciones
  • Enfocarse en la comunicación
  • Buscar el desarrollo de aplicaciones en forma consistente y efectiva
  • Buscar una implementación de los cambios por fases

Definición del área de arquitectura
Un punto que me intereso, fue como ve Rosen los pasos para establecer un grupo de arquitectura empresarial. Estos pasos son:
  1. Establecer un plan de implementación por fases (seleccionando los proyectos menos criticos pero mas visibles al principio, y luego buscar reutilizar lo maximo)
  2. Definir la estructura y staff del equipo (teniendo en cuenta tamaño de la empresa, y tipos de arquitectura)
  3. Definir interacciones con otros grupos de trabajo, y de que manera se va a realizar.
  4. Desarrollar estándares EA y arquitecturas de referencia
  5. Crear, mantener y distribuir un repositorio EA
  6. Capacitación, auditoría, consultoría, y mentoring dentro del grupo de EA y con el resto de IT
  7. Definir e implementar métricas

Para mi, le falta un punto antes, que es establecer en que estado se encuentra la arquitectura, y definir una visión para el grupo y un objetivo al que quiero llegar.

Factores de éxito
Para terminar, les dejo 10 puntos que segun Rosen son factores críticos para el éxito de una arquitectura empresarial:
  1. Enfocarse en los resultados. Permitir que los otros sean exitosos usando arquitectura. Remover las barreras entre los distintos grupos y EA.
  2. Entregar un valor al negocio en forma continua
  3. Implementar los cambios necesarios teniendo en cuenta toda la empresa (SOA, Enterprise Architecture)
  4. Integrar modelos empresariales para soportar los servicios de negocio, procesos de negocio, y procesos de desarrollo
  5. Implementar, recolectar y reportar métricas para demostrar valor
  6. Usar un enfoque de implementación por fases, teniendo siempre en cuenta la visión de la arquitectura
  7. Proveer una infraestructura que facilite la reutilización
  8. Integrar el programa de arquitectura con los procesos de IT
  9. Implementar una separación entre los procesos e información a nivel empresarial, de los datos y APIS de las aplicaciones
  10. Evitar esquemas de financiamiento complicados
Prometo agregar mas detalle de cada punto, pero como resumen, creo que me pase de largo!

1 comentario: