When you are doing software developing without any methodology, actually you are doing ad-hoc.
lets look at one example to make it clear what dose it mean when we said ad-hoc. Imagine you are traveling to a city for first time, and you here that this city have very nice hotel call goal. You really don’t know how to get there and have no idea where it is. You go and find cab and ask driver to send you to hotel goal.
In this case you are the customer and cab driver is your developer and Hotel goal is your goal. If you pay some attention to the example you will find out that customer know where he want to go and also cab driver know way. Its very ideal case which all the programmer know its rare and may not happen in real life. Ad-hoc is experimental exercise, without any plan or documentation.
This method have lots of problem, for example process capability is unpredictable because the software process is constantly changed or modified as the work progresses.
You cant schedule your time and budgets, functionality, and product quality are generally inconsistent.
Project is depend on individual and how strong is team programmer.
At the end if you have strong programmer team and customer also know what exactly need to be done and of course the problem is simple you can use this methodology at your project.