En el desarrollo de software, la elegancia progresiva , relacionada con la característica progresiva y el efecto de segundo sistema , es la tendencia de los programadores a enfatizar desproporcionadamente la elegancia en el software a expensas de otros requisitos como la funcionalidad, el calendario de envío y la usabilidad.
Los clientes y el personal de ventas también imponen una elegancia progresiva en las últimas etapas del desarrollo del software. A menudo, uno presenta "una característica más" antes de la fecha de entrega, y el desarrollador de software se queda con el caso desesperado de priorizar entre la entrega a tiempo según el cronograma o para satisfacer completamente a los clientes y / o al departamento de ventas.
La complejidad y la legibilidad son las principales razones por las que los programadores tienden a favorecer la elegancia sobre la funcionalidad en igualdad de condiciones, simplemente para mitigar la carga cognitiva más marginal de la tarea, que es muy alta en comparación con muchos otros campos, incluso en informática.
Definitivamente es un área en la que la administración y el marketing entran en conflicto con los programadores, pero la mayoría de los programadores se comportarán de manera muy petulante cuando se les pida que se sumerjan en un pozo negro de código antiguo, complejo, mal documentado y pirateado, y a menudo esto llevará a huevos de Pascua y explotar intencionalmente las vulnerabilidades y la rotación del personal.