...It frequently requires practitioners to know the syntax of the language, and then design from both the top-down and bottom-up system approaches to get at the final solution. Once the programmer believes he/she has a final solution, program should also undergo testing. Programs are usually targeted towards certain end-users, and therefore, do require end-users approval as well. (read more)