Es raro pero no se le da la importancia necesaria a la diferencia de los modelos que hay entre sistemas que soportan distintos negocios, se crea finalmente una pre concepción que todos los datos deben ser iguales, puede deberse a que nos gusta pensar en patrones, ¿a quien no le interesa aprender una nueva forma de resolver un problema común?, por eso proliferan los patrones de diseño, patrones arquitectónicos, de infraestructura, de integración y muchos más, y claramente cuando se llega a la parte de la representación de los datos se quiere hacer lo mismo, y justo en el manejo de datos es donde hay que ser cuidadoso y ponerle el apellido del negocio.

Por ejemplo, una discusión que tuve hoy con un colega, me decía que haciendo un modelo de personas se podía usar el mismo modelo en todos lados, que la persona natural y la persona jurídica son hijos de una persona genérica y que se puede hacer un modelo escribirlo con sangre y ese mismo se podía usar en todos los sistemas que usaran personas, que a lo más se necesitaría una adaptación de añadir o sacar atributos, que traducido a las bases de datos sería según su apreciación “siempre las mismas tablas con las mismas relaciones y solo en algunos cambiar una que otra columna, principalmente añadiendo”.

Me mostró su modelo maestro y me dijo que se podía aplicar en todos lados, sin excepción, así que le pregunté (con algo de malicia debo admitir) ¿como se aplicaba ese modelo a un sistema de administración de Justicia?, me dijo que tal cual como estaba, le calzaba perfecto, una pregunta de análisis (hecha con maldad y alevosía) fue clave para hacerlo cambiar de opinión, ¿Qué para si se cambia de nombre?, en Chile significa cambio de rut, por lo tanto en el sistema teórico jurídico que utilizara su modelo de personas único cambia de persona sentenciada y no sería la misma persona, por lo que tendría el historial limpio, admitió que ere era un caso donde no se aplicaba, y me desafió a buscar otro, las respuestas fueron: sistema de reunión de antecedentes para la policia de investigaciones, sistema de seguimiento de deportistas, sistema de ficha clínica; en cada uno de estos casos se puede ver que si la persona cambia de nombre se pierde historial.

Creyendo su modelo maestro desmoronado, pensaba que tenía que hacerlo nuevamente para admitir la nueva “regla de negocio” del cambio de nombre = cambio de rut, y ahora me puse de lado de su modelo, que estaba bien, que servía para esto, esto y esto otro, luego de un rato estaba nuevamente seguro que su modelo funcionaba, y que era un buen patrón para algunos negocios.

No me malinterpreten, a mi me gustan los patrones, busco hasta el cansancio patrones de datos para modelar problemas comunes, y así controlar mejor la implementación al tener una solución conocida a un problema, pero siempre lo importante y lo mandatorio es el negocio, todo nace de la necesidad que cubre el sistema, siempre un patrón, para un tipo de negocio, no hay soluciones maestras, lamentablemente.