Greenfield
dans d'autres disciplines comme le génie logiciel, un greenfield est aussi un projet qui n'a aucune contrainte imposée par des travaux antérieurs. L'analogie est celle de la construction sur des terrains vierges où il n'est pas nécessaire de remodeler ou de démolir une structure existante.
(à partir de http://en.wikipedia.org/wiki/Greenfield_project )
Brownfield
Le développement de friches industrielles est un terme couramment utilisé dans l'industrie informatique pour décrire les espaces à problèmes nécessitant le développement et le déploiement de nouveaux systèmes logiciels en présence immédiate d'applications / systèmes logiciels existants (hérités). Cela implique que toute nouvelle architecture logicielle doit prendre en compte et coexister avec des logiciels live déjà in situ.
(à partir de http://en.wikipedia.org/wiki/Brownfield_(software_development) )
Je pense que cela pourrait être lié aux termes d'urbanisme «terrains nouveaux» et «terrains contaminés» . Les terres Greenfield sont des terres non développées - agricoles, paysagères ou naturelles. Les friches industrielles sont des terres développées.
Une application brownfield est une application existante, tandis qu'une application greenfield est une application qui n'a pas encore été faite ou qui en est aux tout premiers stades de développement.
la source
Applications Greenfield: nouveau développement, aucun travail préalable effectué qui pose des contraintes sur votre solution. Je pense que le terme vient d'un champ "non labouré, vert".
Brownfield: application existante, beaucoup de choses existantes à considérer, etc.
Voir ce post .
la source
Je suppose que c'est une analogie avec la construction
la source
Sur la base de ce que je sais de James Gregory (le gars derrière Fluent NHibernate), je pense que l'entrée de Wikipédia pour brownfield est un peu théorique. Dans le développement d'applications Brownfield , nous le définissons comme:
Version courte: un projet existant qui nécessite du travail mais qui est toujours activement développé (contrairement à la plupart des systèmes hérités).
la source
Il y a beaucoup de débats autour de la décision d'une entreprise de «greenfield» ou «brownfield» ou de refactoriser le code hérité.
La décision doit être prise en tenant compte de nombreux facteurs, notamment les fonds disponibles pour développer une application greenfield. Dans de nombreux cas, l'application héritée est la vache à lait actuelle de l'entreprise et tout remplacement de ce code hérité ne rapportera pas un seul dollar rouge tant qu'il n'aura pas été entièrement développé et entre les mains du premier client payant.
Alors que la préférence de la plupart des ingénieurs en logiciel est de DÉMARRER UN NOUVEAU PROJET GREENFIELD parce qu'ils détestent généralement OPC (Other People's Code), cela peut ne pas toujours être dans la situation financière à long terme de l'entreprise.
J'ai écrit un article qui analyse les risques liés aux projets greenfield en me basant sur une expérience très réelle dans une entreprise que j'ai travaillé il y a plus de 20 ans (montrant mon âge maintenant;). Vous pouvez le lire ici:
http://stepaheadsoftware.blogspot.com.au/2012/09/greenfield-or-refactor-legacy-code-base.html
la source