Modifying a similar pre-written code segment or function to fulfil the requirements
1. Can reduce the time taken for development since it may only be the new elements that will require detailed testing
2. There may be compatibility issues, which mean this is not possible
3. In this case, it is more reliable and effective to start from scratch