As I’ve posted previously, in most cases it’s possible to determine how a standard program works. The program will be documented, there will be standard reports to check before & after states, plenty of information on metalink & other Oracle resource sites.
Re-use of customizations is a different matter though. With the best will in the world, it is impossible to capture everything in a functional design document. So, if you think a customization might be re-usable for your purpose, how can you find out for sure? What fields are required for this customization to work?
All of the answers are there for you, if you can use technical skills to read the code