Reinvent the wheel

From CSSEMediaWiki
Jump to: navigation, search

The term greenfield (in Greenfield System, an alias of Reinvent the Wheel) originates from the construction industry. It refers to a new construction site where there are no legacy buildings to introduce constraints on the new building’s architecture.

Custom software systems are built from the ground up, even though several systems with overlapping functionality exist. The software process assumes “greenfield” (build from scratch) development of a single system. Because top-down analysis and design lead to new architectures and custom software, software reuse is limited and interoperability is accommodated after the fact.

Most current software methods assume that developers are building custom software from scratch, and that they are building a single system in isolation. These are called greenfield system assumptions.

Greenfield systems inevitably become stovepipes that lack potential for interoperability, extension, and reuse. Greenfield assumptions are mismatched to most real-world software development problems, where legacy systems exist, and interoperation with them is an important requirement for many new systems. Greenfield assumptions also ignore significant reusable software assets in the form of Internet freeware and commercially available software.

from http://sourcemaking.com/antipatterns/reinvent-the-wheel

This anti-pattern refers to when developers re-write code that has already been written

Personal tools