Our application is a 6-year old legacy application made by out-of-house contractors. Occasionally we stumble upon the skeleton of something they put together but never implemented, and it causes us to stumble as we try to figure out how it's used in the app.
One of these classes seems like it might be close to what I need for a certain change I've been working on, but large parts of the implementation are missing, and it's not clear at all how it's meant to connect to other parts of the app - meanwhile, there's several functional parts that I could easily pull from and put together to create all new classes for the purpose I'm looking for, and it would have a more accurate name and be re-usable later in app development.
But I also know that it's considered 'best practice' to re-use code whenever possible, and I don't want to be responsible for putting together something entirely new when something else is sitting right there, waiting to be used.
I've spent about half a day trying to implement the old code, and I'm starting to think the skeleton is so incomplete that it'd just be easier to put together new methodology on my own.
So, the short of the question is - when faced with a problem where a solution is present but incomplete, is it better to implement old code that's incomplete, or write your own?