Cowboy coding: Difference between revisions

Content deleted Content added
Cscudds (talk | contribs)
mNo edit summary
First adv then dis adv... also changed title of the next section.
Line 5:
 
Both lightweight and heavy weighted methodologies of today still lead to this breakdown as the user(s) attempts to operate within social/political environments within organizations. The probability of this breakdown can be directly correlated to the degree of processes inhibiting the user(s) from deviating from the organization standard, however at the potential cost of efficiency.
 
'''Advantages:'''
 
* Allows for quick solutions for small problems. Often a problem is small enough and well understood enough that documentation and planning are overkill. Typically when the job is going to take a day or two, and involve only a single developer.
* Can allow a 'spike' to see if a programming idea is valid before embarking on a larger project that depends on the idea. A spike is where you write a small proof of concept application to prove that a method is valid. These applications generally do not form part of a real finished application.
 
'''Disadvantages:'''
Line 15 ⟶ 20:
* Is a huge risk to the business. A lone cowboy coder could leave a project, and no one else might understand his/her code well enough to continue development.
 
'''Advantages:'''
 
* Allows for quick solutions for small problems. Often a problem is small enough and well understood enough that documentation and planning are overkill. Typically when the job is going to take a day or two, and involve only a single developer.
* Can allow a 'spike' to see if a programming idea is valid before embarking on a larger project that depends on the idea. A spike is where you write a small proof of concept application to prove that a method is valid. These applications generally do not form part of a real finished application.
 
'''Other SimilarSoftware Development Methods that are commonly confused with Cowboy coding:'''
 
Cowboy coding, often used as a derogatory term, has been confused with other software development methodologies which have solved the issues surrounding cowboy coding. [[Extreme Programming]] for example also does not emphasise documentation. However [[Extreme Programming]] does use methods to document user requirements and guide the software development team. It also addresses code quality through unit tests and peer review, and is thus quite different.