Cowboy coding is the absence of a defined method: team members do whatever
they feel is right. Agile development's frequent re-evaluation of plans,
emphasis on face-to-face communication, and relatively sparse use of documents
sometimes causes people to confuse it with cowboy coding. Agile teams, however,
do follow defined (and often very disciplined and rigorous) processes.
As with all methodologies, the skill and experience of the users define the
degree of success and/or abuse of such activity. The more rigid controls
systematically embedded within a process offer stronger levels of accountability
of the users. The degradation of well-intended procedures can lead to activities
often categorized as cowboy coding.