Situaciones idiotas

Hace unos meses, llegó a mis manos un documento de un cliente sobre un sistema donde alteraban fundamentalmente algo que querían. Ese documento estaba lleno de inconsistencias y unos tres o cuatro errores simples pero fatales. Tuve reuniones por otra cosa con directores generales y otras personas. Se me dio la razón en varias cosas.

Voy a explicar el asunto pero desde el punto de vista no técnico

  • Quieren que construyas una navaja suiza que haga todo, cuando lo único que necesitan es un destapador. Y además, la navaja suiza que piden no cabe en la caja donde va guardada, y rompe todo lo demás al intentar meterla.

Pero además:

A)

De la semana pasada, el lunes recibí el aviso con el mismo cliente: querían algo urgente. Por correo fue el aviso y me comentaban que se vería el martes. Dije desde que recibí el correo que si era urgente no tenía caso hablar con la persona que tenía que hablar el martes, y medio me llamaron la atención. Vi a esta persona el martes. Se verificó que el problema es que mis datos no cuadraban supuestamente con contabilidad. Ya había explicado yo meses antes que el sistema del que les doy datos maneja inventario, y las salidas son en base a la fecha de pedido, cuadrado al 100%. El problema era una diferencia medio fuerte que ya había pasado antes con Contabilidad, que se basa en su sistema contable, y decenas de miles de facturas por año. (Días después me entero de que necesitan eso para obtener un reembolso bastante fuerte de una institución financiera).

Así que:

Martes: demuestro que mis cifras están completamente correctas y cuadradas. Le pido a Contabilidad (contadora en jefe) una hoja de Excel, y lo que recibo es su hoja de trabajo de Excel sobre una hoja de trabajo que hizo mi asistente en enero. Resulta entonces que mis datos, con y sin ajustes financieros, cuadran perfectamente con las cifras de control, según contabilidad, porque cuadran, y porque la base es lo que hizo mi asistente. En la hoja de contabilidad vienen ventas externas por SAE y notas de crédito financieras que no afectan inventario. Recibo un correo de ir a las oficinas contables para junta con dos personas el miércoles, aunque ya vieron que mis datos cuadran.

Miércoles: Llego el miércoles y las dos personas no han llegado. Una hora y media después, se repite que mis datos son correctos, y me piden hacer un añadido reporte en ciertas circunstancias. Se me pide que lo revise con contabilidad para no triangular. Veo que hay una cantidad B y una cantidad C que no pueden cuadrar con mis datos porque son de sistemas distintos y externos. Hago el reporte, contabilidad me dice que está perfecto y que ya quedó.

Viernes a las cuatro: La persona del martes me dice que no es eso, que la cantidad no cuadra. Que haga un ajuste en mi nuevo reporte cuadrando a fuerzas con la cantidad B (que se basa en doce celdas de mes con mes CAPTURADAS de la venta). La reviso tres veces por teléfono, detengo la facturación de la empresa por una hora en todas sus sucursales, cambio mi reporte y saco una tabla de PHP con Java exportable a Excel que da la cantidad B. Pongo porcentajes, desglose, número de factura y notas de crédito y porcentajes sobre las mismas, desglosado al mes en el año que les interesa. Lo mando por correo como debe ser.

Viernes a las siete: Me hablan a mi casa para decirme que no es eso, que necesitan un desglose por producto y no por mes, pero con los números que no tengo de un sistema externo. Lo reconstruyo y mando.

Hoy a las 10 de la mañana (una semana después), llamada telefónica: que la cantidad no es. Me piden que ponga el anexo de las cuatro de la tarde del viernes. Después, a eso de las dos, recibo un correo de la persona del martes con copia al director general y a contabilidad, que dice algo completamente diferente y que no cuadra. Mi respuesta a eso de las dos: «Mándame un documento de Word como lo quieres y te hago el reporte igualito».

Sin respuesta al momento, diez y media de la noche.

Lo bueno es que me basé en los datos que cuadraron con y sin ajustes financieros directamente de contabilidad, y que contabilidad me confirmó que era correcto, y luego la persona del martes me dijo tres veces la cantidad B.

Lo peor del caso es que tenía yo razón. Si era urgente, era mejor que no tuviera que ver esta persona, porque el reembolso se ha demorado por lo mismo. Mis datos cuadran y se ha hecho lo pedido, comprobado de todas las maneras posibles.


B)

El director general me cambia el layout el lunes de la semana pasada sobre su reporte de Excel gigantesco. Es un cambio simple en la base que forma la estructura del reporte, creando decenas de filas nuevas en un nuevo orden, y como se genera una hoja de cálculo con unas 3000 fórmulas dentro del libro, es algo pesadísimo. Digo que me toma tres semanas y empiezo a hacerlo. Es algo tan complejo (más de 4000 líneas de código exclusivamente para generar las fórmulas del reporte) que no puedo trabajar en ello más de 4 horas seguidas, y termino siempre con un dolor de cabeza fenomenal. Además, cada cambio y prueba que hago requiere regenerar el reporte, lo que son unos tres minutos con conexión decente, pero si alguien de sistemas está viendo YouTube, me tardo 20 minutos por cada paso y verificación. A la mitad del trabajo del lunes, me lo suspenden por el punto A.


C)

Recibo una nueva versión del documento lleno de errores sobre un MÓDULO del sistema que quieren, ignorando todos los comentarios que hice, dejando las cosas ilógicas e imposibles y sin poder hacer entregables. Hay dos o tres párrafos brutales por contradictorios contra el mismo documento. Uno de ellos no solo es contradictorio, sino que va contra lo POSIBLE desde el punto de vista contable. Presento pruebas de lo anterior, pero resulta que le dieron visto bueno a un documento después de ocho meses, para dejarlo igual o peor, e ignorando tanto mis comentarios a la primera versión como lo acordado antes al director general. Implica la nueva versión rehacer desde cero tanto el reporte en Excel como todo un sistema de facturación de más de 70 mil facturas al año, más crear un módulo que haga algo imposible, con un importador universal que haga interfaz desde web para borrar datos del sistema local, que no deben borrarse en primer lugar, y por los cambios debe reemplazar al anterior pero debe existir en la misma base de datos sin borrar el esquema de datos anterior, porque se guardarán saldos en paralelo.

Las implicaciones son destruir la base del sistema para rehacer un módulo sin cumplir lo que hace actualmente. Además, en tres frases indica tres módulos nuevos que hay que hacer.

Solo que el sistema actual tiene 125 opciones de menú, dividido en seis módulos, y son unas 70 mil líneas de código. Lo que quieren cambiar es la base del sistema: la estructura de datos en tablas nuevas me modifica completamente los otros cinco módulos que hacen cinco mil facturas mensuales y los controles de inventario, e ignoran un documento de alcances que mandé en resumen de las implicaciones, porque el área tiene 28 procesos, de los cuales 18 son actuales de ellos, cinco son nuevos que necesitan y cinco son iniciados por terceras personas. Sin tomar en cuenta 17 reportes del módulo que ya existen y que no se pueden generar con los cuatro reportes nuevos que quieren.

Lo que me piden es eliminar todo lo anterior, hacer cuatro reportes nuevos en Excel que exporten millones de operaciones financieras en Excel (que no van a poder abrir en sus PC con XP, y no creo que lo aguanten las versiones actuales de Excel tampoco), y no responden qué se hace con los 28 procesos existentes.

Tampoco dan tiempos ni las tres preguntas que hice al director general y que puse por escrito hace un mes. Si consideramos los imposibles que piden (verificado por tres lados diferentes), y que no contestan a TRES observaciones fundadas y aclaraciones NECESARIAS que pedí antes de un rediseño del módulo por otro asunto, ya es muy secundario que, contablemente hablando, parte de ello es una estupidez según comparten la opinión la contadora en jefe (el COI no soporta lo que quieren), una exauditora que conoce su trabajo, dos de los contadores de mis empresas con los que toqué base, y las leyes respectivas, incluso antes de tomar en cuenta mi propia experiencia. Así que el documento en cuestión se pasa por el arco del triunfo demasiadas cosas a la vez, y soy el único que nota las inconsistencias.

En esta versión del documento, se las ingeniaron en el rediseño del módulo para pedir cosas imposibles, destruir el sistema en su conjunto, pedir cosas contradictorias, pedir un importador universal que es por sí mismo un problema de complejidad NP-iterativo (potencialmente más pesado que todo lo anterior). Una vez hice un importador universal más limitado para control de cierto tipo de siniestros para SEMARNAT, y tomó cuatro meses a pesar de ser un sistema de SOLO 8 dimensiones o formatos de reporte, y no un sistema NP completo (término matemático, pero básicamente es un problema que crece exponencial y logarítmicamente sin información adicional, sin puntos estables o certificados: https://es.wikipedia.org/wiki/Clases_de_complejidad_P_y_NP).

De entrada, no me imagino el desastre que se arma si quito los 17 reportes existentes del módulo.

Mandé un correo comentando lo imposible, que va contra los controles que dice la ley (mandé jurisprudencia), y que no había nada que pudiera ser un entregable o medible en sí o no, o quién, cuándo, dónde y por qué, y que simplemente con esos parámetros era imposible entregar un módulo de calidad. Ni me metí en indicar que es rehacer absolutamente un sistema de setenta mil líneas de código quitando los controles.

Según esto, hay junta el miércoles para que me expliquen el documento de los cambios al módulo, que se hizo basado en un documento de mi asistente de hace dos años, pero al que le han ido añadiendo cosas que van contra el sentido común y que hacen todo lo contrario tanto de lo acordado con el director general como observado en versiones previas, Y CUYO RESULTADO ES UNA VERSIÓN MÁS LIMITADA DEL MÓDULO EXISTENTE.

Staka Brown.