...who thought this was a good idea? (Sorry, being harsh.)
That said, I think the idea is conceptually fine, and, as usual, I think could actually be fairly pleasant with the right (static) tooling applied, e.g. ThoughtWorks's Twist:
http://www.thoughtworks.com/products/twist-agile-testing/
Which is a GUI that provides all the nicities of "what commands are allowed", "what params do they take", "oh, refactor this command name from abc to xyz", etc.
I think PM/testing types would love this sort of setup. Granted, it would still take dev investment to get the fixtures/commands/etc. setup. But if you have a huge line-of-business app that will drive a business for the next 5-10 years, I think that's a good investment.
Disclaimer: I've never actually used Twist because it's a commercial product. Yes, I know I suck.