En el análisis de sistemas clásico, es importante definir correctamente dónde pasan los límites del sistema que se está diseñando: qué funciones se implementan dentro de él, qué se delega a servicios externos y cómo se construye la integración con ellos. En proyectos grandes, esta etapa es crítica para simplificar la arquitectura y minimizar riesgos.
Ya en los años 70 y 80, al analizar grandes sistemas, quedó claro que los límites mal definidos llevan a costosas modificaciones de integración y caos en la arquitectura.
Límites del sistema demasiado amplios o estrechos complican el mantenimiento, aumentan el número de integraciones y generan incoherencias en los datos.
Utilizar la técnica del Diagrama de Contexto, así como la Matriz de Responsabilidad del Servicio para distribuir funciones y responsabilidades. Enfocar la atención en los objetivos comerciales para que los límites del sistema correspondan a la estructura real de la empresa.
¿Siempre se debe aspirar a la máxima autonomía del sistema creado?
No, a veces es más eficiente delegar ciertas funciones a otros sistemas para evitar duplicación.
¿Debe el analista definir los formatos de datos para todas las integraciones antes de comenzar la implementación?
No, esto se hace en el nivel de diseño de alto nivel. Los formatos detallados se desarrollan conjuntamente con arquitectos e integradores más adelante.
¿Es muy malo si la misma función se implementa en varios sistemas?
Esto lleva a duplicación, gastos en sincronización y pérdida de integridad de datos, por lo que se deben evitar tales intersecciones.
Caso negativo:
El sistema fue diseñado sin tener en cuenta la estructura de la empresa, no se definió claramente qué funciones estarían dentro y cuáles estarían en otros servicios.
Ventajas: inicio rápido del diseño, mínima inversión de recursos.
Desventajas: se obtuvieron muchas integraciones duplicadas, constantes problemas con el intercambio de datos y una arquitectura proliferada.
Caso positivo:
Un analista de sistemas desarrolló el diagrama de contexto, acordó los límites del sistema con el negocio y los arquitectos, minimizó las interacciones de integración.
Ventajas: arquitectura transparente, menos errores de integración, soporte cómodo.
Desventajas: gran trabajo preparatorio al inicio, se necesita experiencia en todos los sistemas relacionados.