Brownfield (desarrollo de software)


El desarrollo brownfield es un término comúnmente utilizado en la industria de la tecnología de la información para describir espacios problemáticos que necesitan el desarrollo y la implementación de nuevos sistemas de software en la presencia inmediata de aplicaciones / sistemas de software existentes (heredados). Esto implica que cualquier nueva arquitectura de software debe tener en cuenta y convivir con el software en vivo ya in situ . En la ingeniería civil contemporánea , terrenos abandonados significa lugares donde es posible que sea necesario diseñar y erigir nuevos edificios teniendo en cuenta las otras estructuras y servicios que ya existen.

El desarrollo de Brownfield agrega una serie de mejoras a las prácticas de ingeniería de software convencionales . Estos tradicionalmente asumen un entorno de destino de "hoja de papel en blanco " o " terreno nuevo " a lo largo de las fases de diseño e implementación del desarrollo de software. Brownfield extiende esas tradiciones al insistir en que el contexto (paisaje local) del sistema que se está creando se tenga en cuenta en cualquier ejercicio de desarrollo. Esto requiere un conocimiento detallado de los sistemas, servicios y datos en las inmediaciones de la solución en construcción.

La reingeniería confiable de los entornos empresariales y de TI existentes en arquitecturas modernas, competitivas e integradas no es trivial. La complejidad de los entornos empresariales y de TI se ha ido acumulando casi sin control durante cuarenta años, lo que hace que los cambios sean cada vez más costosos. Esto es porque:

Como resultado, una proporción cada vez mayor del esfuerzo de desarrollar nuevas capacidades comerciales se destina a comprender e integrar el complejo sistema y panorama comercial existente en lugar de generar valor. ¿Ha sido observado [ por quién? ] que hasta el 75% del esfuerzo total del proyecto se dedica ahora a la integración y migración de software en lugar de a nuevas funciones. [ cita requerida ]

La industria de TI en su conjunto tiene una tasa de éxito baja en la entrega de cambios a gran escala para sus clientes. La encuesta CHAOS del Standish Group ha registrado una mejora general en el éxito de la entrega de proyectos de TI durante los últimos veinte años, pero incluso en 2006, los grandes proyectos de TI fracasaron con más frecuencia que éxito. Los cambios de ingeniería y en tales entornos tienen muchos paralelismos con las preocupaciones de la industria de la construcción en el redesarrollo de sitios industriales o contaminados. Están llenos de peligros, complejidades inesperadas y tienden a ser riesgosos y costosos de reconstruir. La complejidad acumulada de los entornos de TI los ha convertido en sitios "Brownfield".

No es la complejidad de la nueva función o las nuevas características del sistema las que son la raíz de las fallas de los grandes proyectos, es nuestro [ ¿de quién? ] comprensión y comunicación del requisito general (como se identifica en El mes del hombre mítico ). Para tener éxito, los requisitos deben incluir una comprensión precisa y completa de las limitaciones del negocio y la TI existentes. Actual " Greenfield”Las herramientas y los métodos utilizan abstracciones tempranas, informales y a menudo imprecisas que esencialmente ignoran tal complejidad. Las abstracciones tempranas y mal informadas suelen ser incorrectas y, a menudo, se detectan tarde en la construcción, lo que resulta en retrasos, retrabajos costosos e incluso desarrollos fallidos. Un enfoque orientado a Brownfield abarca la complejidad existente y se utiliza para acelerar de manera confiable el proceso general de ingeniería de la solución, incluida la habilitación de cambios incrementales por fases siempre que sea posible.


Esquema del proceso de desarrollo de Brownfield