Gran bola de tierra

Big ball of mud  es un  sistema de software con una arquitectura irreconocible . Aunque no son deseables desde el punto de vista de la ingeniería de software, tales sistemas son comunes en la práctica debido a la presión empresarial, la rotación de desarrolladores y la entropía del código. Son un tipo de diseño anti-patrón .

En programas de ordenador

El término se popularizó en un artículo de 1997 del mismo título de Brian Foote y Joseph Yoder, que define el término:

El gran montón de suciedad es una jungla de código espagueti revuelta, extendida, descuidada, limpiada con cinta adhesiva y alambre . Estos sistemas muestran signos inequívocos de crecimiento desregulado y ajustes constantes. La información se comparte indiscriminadamente entre elementos distantes del sistema, a menudo hasta el punto de que casi toda la información importante se globaliza o se duplica. Es posible que nunca se haya definido claramente la estructura general del sistema. Si lo era, se volvió borroso más allá del reconocimiento. Los programadores que entienden al menos un poco de arquitectura evitan este pantano. Y solo aquellos a los que les importa poco, y quizás aquellos a quienes les gusta reparar los agujeros en el sistema todos los días, están satisfechos con trabajar en tales sistemas.

— Brian Foote y Joseph Yoder, Gran bola de barro. Cuarta Conferencia sobre Patrones Lenguajes de Programas (PLoP '97/EuroPLoP '97) Monticello, Illinois, septiembre de 1997

Para controlar una gran bola de tierra, se recomienda encarecidamente a los programadores que la estudien y comprendan lo que hace, y que la utilicen como una base suelta para un conjunto formal de requisitos para un sistema bien pensado que podría reemplazarla. Los cambios tecnológicos como cliente-servidor -> basado en web o basado en archivos -> basado en base de datos pueden ser una buena razón para comenzar desde cero.

Véase también

Enlaces