I have an idea of all of the problems with it and ideas for solutions from a birds eyehigh level. The software team are up for making changes but I need to come up with a good detailed proposal of what direction we need to go in.
There are about 5 different big things I'd like to change so I was going to create a document with those 5 sections and within each section highlighting the areas to be changed, breaking down:
- motivation for change - exact problem as I see it - proposed solution (from end user perspective) - pros of making that change as I see them - cons of making that change as I see them
Is this the kind of information a software team/product manager could use to go ahead and start planning a project to overhaul this? If not, what better approach could I take to get some momentum on this?
Unless you have lots of time and money to throw at this, most architect-level programmers will vote for the first solution, change the UI to make the user happy. Not a being a programmer yourself, its impossible for you to know if it's really "built on sand." It might be great under the hood and have a terrible interface; that's very common.
A real architect would need to weigh-in on the technical deficits that would be incurred by rewriting or discarding parts of the existing system, including thinking about all the switching costs of getting everyone over to the new product. Its possible that your dev team might vote for that, but more likely that they will put your feature requests in the "feature request bucket" and get to them as time and tech allow.
If you work at a for profit company make sure the "motivation for change" is framed in a way to satisfy the "profit motive" itch somehow. (save time, increase sales, whatever)
Ensure your "proposed solution" is articulated in terms of optimizing the workflow for all users. Try to avoid suggesting things that come down to your personal preferences. Avoid suggesting a specific technological solution. (build this in x because I read on HN ... or ... FAANG company uses x and they're awesome so we should use x)