Object Oriented approach. 1) make code file which has such customized details. (derived class) 2) provide override mechanism to end user. 3) support flow of tasks like mentioned in xml but remove perl code from there. There are several alternatives to do this which maybe as simple as reading properties file.