I've recently been hired to work on a project which is essentially a system which registers events through a web-service call and delivers reports through another web-service call. I've spent 4 weeks in a fruitless attempt to understand how the current implementation is supposed to work but have failed to do so -- I have a feeling that the rest of the team doesn't quite know how things are supposed to work either. Testing the project requires a lot of arcane magic that I'm not well versed in and neither are the people who wrote it.
I fiddled a bit with the project on my own time and came up with a much simpler design in about 10 minutes. A mock up revealed that the new design would reduce the amount of code by about 98% (yes, that much). The new design is a lot simpler, is easy to understand, is to extend and less resource hungry. It also eliminates the need for 4 of the 5 subsystems, including running background processes every few minutes to do clean up.
I hinted to my boss that we need to scrap the project and start over and that I had a much simpler solution ready -- all she had to do was say 'go', and I'd get it done. I estimate that it would take me about 3 days to implement and test the system (so about a week seems reasonable).
This project lays the foundation for a much bigger project which is partly what management thinks will be the future of the company and if this project isn't fixed now, the bigger project will go down in flames.
How do I tell my boss that I think the current project need to be rebooted?
Bear in mind that I'm the new guy and my foot print on the project right now is pretty much zero. The main developer on the project is leaving for another job and the other person assigned as developer to the project isn't exactly the smartest guy in the world.