runoff calculation.

I am in process of calculating the runoff from a watershed. We are having data like soil type, rainfall data, vegetation grow etc. I want to opt for some software solution for this purpose, any recommendations please?