Iterative/Incremental Development
The generally accepted best practice is to develop your programs using an iterative, incremental process..
Start with working program
If there is a program which is similar to the desired program, many professional programmers will start with the existing program and make alterations..
Iterative/Incremental Development
For large programs this is typically divided into two parts: unit testing tests individual modules and integration testing sees if the total program works when all the modules are run together..