Supervisor de obra dirige una grúa que retira una estructura metálica antigua en un patio industrial, con una estructura nueva al fondo
SAP

Decomisionar antes de remediar: la primera palanca de ROI

Retirar código Z muerto antes de la conversión a SAP S/4HANA reduce el scope de remediación y el costo anual de pruebas y mantenimiento en utilities de LATAM.

CVSA
Equipo AGT Comunidades

· 12 min de lectura

Cuando una utility de América Latina presupuesta su conversión a SAP S/4HANA, el número que domina la conversación es el volumen: cuántos objetos Z hay en el repositorio, cuántos hallazgos devuelve el ABAP Test Cockpit, cuántos ciclos de regresión hacen falta antes del go-live. Es una conversación honesta, pero incompleta. Falta una pregunta que casi nunca aparece en el acta del comité: de todos esos objetos, ¿cuántos se ejecutaron en producción el año pasado?

Ya sabemos que el iceberg es grande. Lo que sigue es la consecuencia práctica: antes de remediar, conviene retirar. Y esa decisión, tomada con evidencia, es la palanca de ROI más directa de todo el proyecto, porque no negocia alcance funcional con nadie: solo elimina trabajo que jamás debió entrar al plan.

El costo que nadie presupuesta: mantener lo que nadie ejecuta

Anatomía del costo
El código que nadie ejecuta y aun así se paga todos los años
🧟
Código que sobrevivió a su motivo
No es código roto ni código malo: sobrevivió a la iniciativa que lo originó, al proceso que lo justificaba o al integrante del equipo que sabía para qué servía.
📉
Entre 40% y 60% no se ejecuta
En promedio, entre 40% y 60% del código propio de un sistema no se ejecuta realmente en el panorama productivo (*SAP Community, 2025*).
💸
Costo silencioso que se paga cada año
Se paga en mantenimiento, en revisión de notas, en escaneo de vulnerabilidades y —sobre todo— en pruebas.
🧾
USD 0,25 a USD 0,63 por línea al año
Ese es el costo evitable cuando se decomisiona el código muerto en lugar de migrarlo (*smartShift, 2026*).
📊
USD 250.000 a USD 630.000 por millón de líneas
Aplicado de forma directa, cada millón de líneas retiradas deja de consumir ese monto anual (cálculo aritmético sobre el rango citado).
El mismo material señala que, en la práctica, entre 30% y 50% del código propio puede decomisionarse en vez de transformarse (*smartShift, s.f.*).

La cifra que ordena el problema viene de la publicación técnica de SAP sobre el ABAP Call Monitor en SAP Community: en promedio, entre 40% y 60% del código propio de un sistema no se ejecuta realmente en el panorama productivo (SAP Community, 2025). No es código roto ni código malo: es código que sobrevivió a la iniciativa que lo originó, al proceso que lo justificaba o al integrante del equipo que sabía para qué servía.

Ese código no es gratis. Tiene un costo silencioso que se paga cada año en mantenimiento, en revisión de notas, en escaneo de vulnerabilidades y —sobre todo— en pruebas. El material de la industria sitúa ese costo evitable entre USD 0,25 y USD 0,63 por línea de código al año cuando se decomisiona el código muerto en lugar de migrarlo (smartShift, 2026). Aplicado de forma directa, cada millón de líneas retiradas representa entre USD 250.000 y USD 630.000 anuales que dejan de consumirse (cálculo aritmético sobre el rango citado). El mismo material señala que, en la práctica, entre 30% y 50% del código propio puede decomisionarse en vez de transformarse (smartShift, s.f.).

Reducir el scope es la palanca que no exige negociar con el negocio

Un proyecto de conversión tiene tres formas de mejorar su ecuación económica: bajar el precio unitario del esfuerzo, aumentar la automatización, o reducir la cantidad de cosas que hay que hacer. Las dos primeras dependen del proveedor y del mercado. La tercera depende de una decisión interna respaldada por datos.

Tres palancas
Las tres formas de mejorar la ecuación económica de una conversión
💲
Bajar el precio unitario del esfuerzo
Depende del proveedor y del mercado.
Externa
⚙️
Aumentar la automatización
También depende del proveedor y del mercado.
Externa
✂️
Reducir la cantidad de cosas que hay que hacer
Depende de una decisión interna respaldada por datos. SAP la formaliza con el nombre de *scoping*: definir el alcance permite reducir la cantidad de código propio que debe migrarse y minimizar los esfuerzos de adaptación, y el scoping solo se soporta mediante la app Custom Code Migration (*SAP, 2025*).
Decisión interna

SAP formaliza esa tercera vía con el nombre de scoping: la Guía de Migración de Custom Code para SAP S/4HANA establece que definir el alcance permite reducir la cantidad de código propio que debe migrarse y minimizar los esfuerzos de adaptación, y que el scoping solo se soporta mediante la app Custom Code Migration (SAP, 2025). No es una optimización marginal: es la definición del denominador sobre el que se calculan después todos los costos del proyecto.

El efecto se propaga en cascada. Cada objeto Z que sale del scope deja de generar hallazgos ATC que analizar, deja de requerir adaptación funcional, deja de necesitar un caso de prueba, deja de aparecer en el inventario de regresión previo al go-live y deja de arrastrar documentación, transporte y gestión de defectos. El ahorro de testing no es un beneficio secundario del decomiso: es su resultado principal.

Efecto en cascada
Qué deja de costar cada objeto Z que sale del scope
🔍
Hallazgos ATC
Deja de generar hallazgos ATC que analizar.
🛠️
Adaptación funcional
Deja de requerir adaptación funcional.
🧪
Caso de prueba
Deja de necesitar un caso de prueba.
📋
Inventario de regresión
Deja de aparecer en el inventario de regresión previo al go-live.
📦
Documentación, transporte y defectos
Deja de arrastrar documentación, transporte y gestión de defectos.

Cómo se prueba que un objeto está muerto y no solo dormido

Retirar código sin evidencia es una apuesta. Retirarlo con datos de ejecución productiva es una decisión de ingeniería. SAP documenta la secuencia y sus restricciones técnicas.

Evidencia de uso productivo
La secuencia documentada por SAP para decidir qué se retira
Etapa 1
📡
Activar SCMON en producción
Registra la ejecución real de objetos ABAP: programas, módulos de función, métodos.
Etapa 2
🗄️
Agregar con la transacción SUSG
SCMON conserva los datos por un período corto; SUSG los consolida en el largo plazo.
Etapa 3
📆
Acumular al menos 12 meses
Cobertura completa del ciclo anual antes de decidir qué se retira.
Etapa 4
📥
Snapshot hacia Custom Code Migration
Los datos de uso definen el scope inicial de migración en la app.
Etapa 5
🧾
Generar el transporte de borrado
La app produce la solicitud de transporte con los objetos a eliminar.
Dos detalles técnicos que condicionan todo el ejercicio
1El ABAP Call Monitor solo retiene por un período acotado
Para conservar los datos en el tiempo debe usarse la transacción SUSG, cuyo propósito es agregar esa información e identificar cuándo fue la última vez que un programa o procedimiento se usó productivamente (*SAP Community, 2024*).
2Menos de un año de datos no alcanza
La recomendación de SAP es recolectar datos de uso en producción durante al menos un año antes de la conversión (*SAP, 2025*). Es la única forma de no confundir muerto con dormido: un reporte de conciliación regulatoria anual, una refacturación masiva tras un ajuste tarifario o una rutina de cierre de diciembre son código vivo con once meses de silencio.
SAP Community (2024, 2025); SAP (2025); SAP Learning (s.f.)

Dos detalles técnicos condicionan todo el ejercicio. El primero: el ABAP Call Monitor almacena los datos de uso solo por un período acotado en el sistema, y para conservarlos en el tiempo debe usarse la transacción SUSG, cuyo propósito es agregar esa información e identificar cuándo fue la última vez que un programa o procedimiento se usó productivamente (SAP Community, 2024). El segundo: la recomendación de SAP es recolectar datos de uso en producción durante al menos un año antes de la conversión (SAP, 2025). Después, la app Custom Code Migration es capaz de generar una solicitud de transporte que contiene los objetos a eliminar (SAP Learning, s.f.).

Ese horizonte de doce meses no es burocracia: en una utility es la única forma de no confundir muerto con dormido. Un reporte de conciliación regulatoria que corre una vez al año, un programa de refacturación masiva que solo se activa tras un ajuste tarifario o una rutina de cierre que se ejecuta en diciembre son código perfectamente vivo con once meses de silencio.

Qué cambia en el meter-to-cash de una utility LATAM

Dónde se concentra el custom code en IS-U
El meter-to-cash acumula capas de desarrollos superpuestos a lo largo de dos décadas
🔌
Gestión de dispositivos
Área donde el negocio nunca aceptó el estándar y se acumularon desarrollos propios.
🧮
Cálculo y facturación
Otra de las áreas donde se acumulan capas de desarrollos superpuestos sobre el estándar.
📒
FI-CA
Parte del núcleo donde se superponen las capas de código propio.
📮
Cobranza y mora
Gestión de cobranza y mora, con desarrollos acumulados sobre el estándar.
📡
Interfaces con lectura y telemedición
Incluye interfaces de proveedores de medidores que ya no están en el parque.
🏦
Conectores hacia canales de recaudación
Cierran la vertical donde más duele el testing: cada objeto tocado obliga a validar de punta a punta un proceso que impacta la caja.

En IS-U el custom code no está repartido de forma pareja: se concentra donde el negocio nunca aceptó el estándar. Gestión de dispositivos, cálculo y facturación, FI-CA, gestión de cobranza y mora, interfaces con lectura y telemedición, y los conectores hacia canales de recaudación acumulan capas de desarrollos superpuestos a lo largo de dos décadas. Es exactamente donde más duele el testing, porque cada objeto tocado obliga a validar de punta a punta un proceso que impacta la caja.

Por eso el decomiso previo tiene un efecto desproporcionado en esta vertical. Cada rutina de facturación abandonada, cada reporte de cartera reemplazado por otro y cada interfaz de un proveedor de medidores que ya no está en el parque son objetos que hoy inflan el inventario de regresión sin aportar un solo peso de recaudación. Retirarlos antes de comenzar la conversión reduce simultáneamente el costo del proyecto y el riesgo del go-live, con un presupuesto que en la región casi siempre está acotado.

La conversación gana además un anclaje temporal: el mantenimiento mainstream de SAP ERP 6.0 EHP 6–8 llega a su fin el 31 de diciembre de 2027, con mantenimiento extendido opcional y pago hasta 2030 (SEIDOR, 2025). El tiempo disponible para acumular un año limpio de datos de uso antes de arrancar la conversión no es infinito.

Del inventario a la evidencia forense

Decomisionar no es una tarea de limpieza técnica: es la construcción del caso de negocio. Un inventario de objetos con fecha de última ejecución productiva convierte una discusión de opiniones —“ese programa lo usamos”— en una decisión auditable, con trazabilidad de quién aprobó qué se retira y con qué respaldo. Ese mismo enfoque de auditar, limpiar y dimensionar correctamente antes del go-live es el que después sostiene las decisiones de archivado, retención y dimensionamiento de la huella HANA.

En AGT acompañamos a las utilities de la región a instrumentar esa medición temprano, a leer los datos de uso con criterio funcional y a traducir el resultado en un scope de remediación defendible ante el comité y ante el auditor. Nuestro equipo trabaja el decomiso como lo que es: la primera línea del caso de negocio de la conversión, no un anexo del plan de pruebas.

Ahora bien, la evidencia de uso reduce la duda, no la elimina. La siguiente entrega de esta guía aborda el reverso del problema: cómo validar antes de decidir, para no retirar aquello que sí se usa.

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
#sap s/4hana #custom code #is-u #meter to cash #clean core #utilities latam