stringtranslate.com

Teorema fundamental de la ingeniería de software.

El teorema fundamental de la ingeniería de software ( FTSE ) es un término originado por Andrew Koenig para describir un comentario de Butler Lampson [1] atribuido a David J. Wheeler : [2]

"Podemos resolver cualquier problema introduciendo un nivel adicional de indirección ".

El teorema no describe un teorema real que pueda demostrarse; más bien, es un principio general para gestionar la complejidad a través de la abstracción .

El teorema a menudo se amplía con la cláusula humorística "... excepto por el problema de demasiados niveles de indirección", en referencia al hecho de que demasiadas abstracciones pueden crear sus propios problemas de complejidad intrínseca. Por ejemplo, el uso de capas de protocolos en redes informáticas , que hoy en día es omnipresente, ha sido criticado de maneras que son típicas de las desventajas más generales de la abstracción. [3] Aquí, la adición de niveles adicionales de direccionamiento indirecto puede hacer que las capas superiores dupliquen la funcionalidad de las capas inferiores , lo que genera ineficiencia, y la funcionalidad en una capa puede necesitar datos presentes solo en otra capa, lo que fundamentalmente viola el objetivo de separación en diferentes capas.

Referencias

  1. ^ Abrahams, David ; Gurtovoy, Aleksey (2005). Metaprogramación de plantillas en C++ . Addison Wesley. pag. 13.
  2. ^ Lampson, mayordomo . "Principios para el diseño de sistemas informáticos".
  3. ^ Wakeman, yo; Crowcroft, J.; Wang, Z.; Sirovica, D. (enero de 1992). "¿Las capas son dañinas?". Red IEEE : 20–24. doi :10.1109/65.120719. S2CID  6631446.