Ir al contenido principal
SAP

Código Z sin uso: qué dice el benchmark de 40% a 60%

Benchmarks de la industria ubican entre 40% y 60% el código Z obsoleto en un sistema SAP promedio. Qué significa esa cifra —y qué no— antes de convertir.

AGT
Equipo AGT Comunidades

· 11 min de lectura

Ingeniera de mantenimiento recorre un patio de equipos de una empresa de servicios públicos, con piezas metálicas oxidadas apiladas a un lado y componentes nuevos al otro

En la entrega anterior de esta serie planteamos la primera pregunta que debería anteceder a cualquier proyecto de conversión: qué código Z existe realmente en el sistema, y cuál de ese código se ejecuta. Es una pregunta incómoda porque su respuesta casi nunca está documentada. Y lo es por una segunda razón: antes de medir, nadie sabe qué proporción del inventario simplemente no aporta nada.

Esta entrega intenta poner una referencia sobre la mesa. No una ley general —no existe—, sino una cifra publicada, con su fuente y sus límites, para que un equipo de TI de una utility de América Latina pueda estimar el orden de magnitud del problema mientras consigue su propia medición.

La cifra que circula en el mercado

La cifra que circula en el mercado
Cómo leer el benchmark de 40% a 60%
Leerla como diagnóstico de su sistema
Naturaleza Se toma como diagnóstico del sistema propio
El número Se busca el número exacto como conclusión
La fuente Una cifra que se repite en presentaciones comerciales
Leerla como referencia de mercado
Naturaleza Se toma como referencia de mercado, para estimar el orden de magnitud mientras se consigue la propia medición
El número 40% a 60% en una publicación y 40% a 70% en otra, del mismo autor: la conclusión útil es que en sistemas maduros la porción inactiva del repositorio tiende a ser la mitad o más
La fuente Material de un proveedor cuyo negocio es automatizar la remediación y el retiro de ese código, que analiza repositorios reales de sus clientes
DIAGNÓSTICO DE SU SISTEMAREFERENCIA DE MERCADO

El material del proveedor de remediación smartShift sostiene que los benchmarks de la industria ubican entre 40% y 60% las personalizaciones técnicamente obsoletas en un sistema SAP promedio (smartShift, 2026). Es la cifra que más se repite en presentaciones comerciales, y conviene leerla con precisión: proviene de un proveedor cuyo negocio es, justamente, automatizar la remediación y el retiro de ese código. Eso no la invalida —ese proveedor analiza repositorios reales de sus clientes—, pero sí obliga a tratarla como referencia de mercado y no como diagnóstico de su sistema.

El propio material del proveedor muestra por qué esa distinción importa. En otra de sus publicaciones el rango se amplía a entre 40% y 70% de personalizaciones que no están, o ya no están, en uso (smartShift, 2026). Dos rangos distintos, del mismo autor, sobre el mismo fenómeno. La conclusión útil no es el número exacto: es que en sistemas maduros la porción inactiva del repositorio tiende a ser la mitad o más.

Lo que el benchmark mide, y lo que no

Lo que el benchmark mide, y lo que no
Cuatro lecturas erróneas del código sin uso
Lectura errónea
Lo que dice el dato
«Técnicamente obsoleto» significa que el código no tiene valor de negocio
Es una afirmación sobre ejecución, no sobre valor de negocio
Un objeto que no se llamó en producción durante el período observado está sentenciado
Es un candidato a retiro, no una sentencia: puede ser un programa de cierre anual, un reporte que solo corre ante una fiscalización o un include del que depende un objeto activo
El rango publicado se cumple parejo en todos los sistemas
En los casos que el mismo proveedor documenta con nombre propio, los retiros reales fueron de un tercio a un 40% de los objetos personalizados, no del 60%
El código Z es una anomalía
95% de las organizaciones construye y ejecuta código ABAP propio para extender SAP, y el principal desafío al mover a SAP S/4HANA es tener demasiadas personalizaciones en las instancias antiguas
El código Z no es una anomalía: es la norma. La pregunta es cuánto de él sigue vivo.
¿Conversamos sobre su repositorio?

“Técnicamente obsoleto” es una afirmación sobre ejecución, no sobre valor de negocio. Un objeto que no se llamó en producción durante el período observado es un candidato a retiro, no una sentencia. Puede tratarse de un programa de cierre anual, de un reporte que solo corre ante una fiscalización, o de un include del que depende un objeto activo. Esa es exactamente la razón por la que el análisis de uso se combina con análisis de dependencias antes de decidir nada.

El rango tampoco se cumple parejo. En los casos que el mismo proveedor documenta con nombre propio, las cifras reales quedaron por debajo del promedio: retiros del orden de un tercio a un 40% de los objetos personalizados, no del 60% (smartShift, 2026). Es una referencia extranjera y la citamos solo como eso —evidencia de dispersión—, no como modelo a replicar.

Lo que sí está sólidamente establecido es la magnitud del fenómeno de base. La investigación que ASUG realizó junto con smartShift entre 174 de sus miembros encontró que 95% de las organizaciones construye y ejecuta código ABAP propio para extender SAP, y que el principal desafío reportado al mover a SAP S/4HANA es tener demasiadas personalizaciones en las instancias antiguas (ASUG, 2024). El código Z no es una anomalía: es la norma. La pregunta es cuánto de él sigue vivo.

Por qué un meter-to-cash de utility tiende al extremo alto

Por qué un meter-to-cash de utility tiende al extremo alto
Cómo se acumula el inventario que nadie depura
🧱
El ciclo acumula capas por diseño
Cada cambio en el marco tarifario, cada esquema de subsidio, cada campaña de normalización de pérdidas no técnicas y cada integración con un nuevo concentrador AMI
🗂️
Cada capa deja su rastro
Programas Z, exits, reportes ad-hoc y tablas auxiliares
📜
La norma cambia, el código se queda
Cuando la resolución que originó ese desarrollo fue derogada o sustituida, el código rara vez se retiró
🔒
Nadie lo borra
Porque nadie puede afirmar que ya no se ejecuta
🔄
Un patrón regional que empuja en la misma dirección
Rotación de equipos y de proveedores, documentación fragmentada y presupuestos acotados que priorizan la continuidad operativa por encima de la higiene del repositorio
📈
El inventario crece más rápido de lo que se depura
Resultado previsible de la acumulación anterior
Por eso, cuando en un IS-U latinoamericano se aplica una medición seria de uso, el resultado suele acercarse al extremo alto del rango publicado —pero eso hay que comprobarlo, no asumirlo.

En una empresa de servicios públicos de la región, el ciclo comercial y de facturación acumula capas por diseño. Cada cambio en el marco tarifario, cada esquema de subsidio, cada campaña de normalización de pérdidas no técnicas, cada integración con un nuevo concentrador AMI dejó su rastro: programas Z, exits, reportes ad-hoc, tablas auxiliares. Cuando la resolución que originó ese desarrollo fue derogada o sustituida, el código rara vez se retiró. Nadie lo borra porque nadie puede afirmar que ya no se ejecuta.

A eso se suma un patrón conocido en la región: rotación de equipos y de proveedores, documentación fragmentada y presupuestos acotados que priorizan la continuidad operativa por encima de la higiene del repositorio. El resultado previsible es un inventario que crece más rápido de lo que se depura. Por eso, cuando en un IS-U latinoamericano se aplica una medición seria de uso, el resultado suele acercarse al extremo alto del rango publicado —pero eso hay que comprobarlo, no asumirlo.

De la cifra ajena a la cifra propia

De la cifra ajena a la cifra propia
Cómo se obtiene el dato de uso del propio sistema
Etapa 1
📡
Activar la captura
ABAP Call Monitor (SCMON) y la transacción SUSG en el sistema productivo
Etapa 2
📅
Observar un ciclo completo
Al menos un año, para que el período observado incluya los cierres trimestrales y de fin de ejercicio
Etapa 3
🔗
Cruzar con dependencias
Identificar includes y grupos de funciones que deben conservarse
Etapa 4
📉
Definir el alcance real
Scoping en la app Custom Code Migration: marcar los objetos que no se llevarán a SAP S/4HANA y generar la solicitud de transporte de borrado
Dónde se rompe
1Medir solo tres meses
En una utility deja fuera la facturación de cierre anual y convierte código crítico en falso candidato a retiro
SAP, 2026; SAP Community, 2026

La cifra del proveedor sirve para dimensionar la conversación con el comité de inversión. Para dimensionar el proyecto hace falta el dato propio, y SAP documenta cómo obtenerlo. La guía de migración de código propio recomienda recolectar datos de uso en el sistema productivo con ABAP Call Monitor (SCMON) y la transacción SUSG durante al menos un año, de modo que el período observado incluya también la funcionalidad de cierres trimestrales y de fin de ejercicio (SAP, 2026). Ese horizonte no es un detalle: medir tres meses en una utility deja fuera la facturación de cierre anual y convierte código crítico en falso candidato a retiro.

La app Custom Code Migration convierte esos datos en alcance: permite marcar los objetos que no se llevarán a SAP S/4HANA y genera la solicitud de transporte de borrado correspondiente (SAP Community, 2026). El inventario deja de ser un listado y pasa a ser una decisión de proyecto.

Qué cambia cuando la cifra es suya

Qué cambia cuando la cifra es suya
Tres cosas que cambian
💵
El costo recurrente
El mismo material de industria estima entre USD 0,25 y USD 0,63 anuales por línea de código el gasto de mantener y probar código que nadie ejecuta
smartShift, 2026
🧪
El esfuerzo de pruebas de regresión
Escala con la cantidad de objetos que se decide conservar
El calendario
Con el fin del mantenimiento mainstream de SAP Business Suite 7 a finales de 2027 y mantenimiento extendido opcional hasta finales de 2030, cada objeto que entra al alcance compite por una ventana que no se amplía
SAP, 2026

Cambian tres cosas. Primero, el costo recurrente: el mismo material de industria estima entre USD 0,25 y USD 0,63 anuales por línea de código el gasto de mantener y probar código que nadie ejecuta (smartShift, 2026). Segundo, el esfuerzo de pruebas de regresión, que escala con la cantidad de objetos que se decide conservar. Tercero, el calendario: con el fin del mantenimiento mainstream de SAP Business Suite 7 a finales de 2027 y mantenimiento extendido opcional hasta finales de 2030 (SAP, 2026), cada objeto que entra al alcance compite por una ventana que no se amplía.

En AGT acompañamos a operadores de utilities y de oil & gas de la región a convertir esa medición en una cifra defendible ante el comité de inversión, antes de que el alcance quede congelado por inercia. La cifra de la industria abre la conversación; la propia es la que la cierra.

La entrega siguiente de esta serie toma la consecuencia natural de este hallazgo: por qué decommissionar antes de remediar es la primera palanca de retorno del proyecto, y no una tarea de limpieza posterior.

Fuentes

Conversemos 30 minutos

¿Este análisis mapea un mercado donde ya operas o estás evaluando entrar?

Revisamos tu caso específico, mapeamos los riesgos que aplican, y te decimos honestamente si es oportunidad para ti —sin pitch comercial, solo discusión técnica y estratégica.

Al enviar aceptas ser contactado por AGT Consultoría para el assessment solicitado. Tus datos no serán compartidos con terceros ni usados para publicidad.

Equipo AGT Comunidades · AGT Consultoría
#custom code #s/4hana #is-u #meter to cash #clean core #utilities