The term brownfield comes from software development. It describes problems that arise with newly developed software that must fit into an existing software and architecture concept. The brownfield approach involves upgrading an existing network and continuing to use some legacy components. It is similar to a traditional upgrade in that it involves a software refresh, data transformation, and business process adaptation. In contrast to a completely new development ( greenfield ), further development is constrained by legacy infrastructure and frameworks.