> Then scale down the bureaucracy and bring back the decision-making power down to the leaf nodes. Have each institution working as a "microservice" which is responsible only for defining the interfaces on how to interact with them, but leave the internal implementation completely up to the department. You can of course have some collaborative structure where these departments can use as a reference guide, but they are completely free to override those decisions when it best suits them.
Dear god no. That's how you end up with contracts assigned to "Joe's Nephew Software Design" that don't just smell but reek of nepotism (although I will admit, the "big bodyshops" aka Accenture and friends aren't much better), neverending GDPR et al. compliance issues, and massive employee overhead in training and onboarding costs when every local government does its own shit and economies of scale can't be leveraged.
Also, even assuming "Joe's Nephew Software Design" manages to complete the DMV software on time and in budget... who's guaranteeing that in 10 or 20 years Joe's Nephew will still be around to provide updates? It's (way) easier and cheaper to do continuous maintenance when there are lots of clients to fund upkeep, compared to just one.
> the "big bodyshops" aka Accenture and friends aren't much better.
You said it yourself. Corruption and abuse of power will always exist. But if I had to choose between the invisible corruption of faceless bureaucrats enabling cronies or the local crook who will try to put his finger on the pie, I will take the local crook every time. At the very least, I can get a bunch of people and bang on their doors with some pitchforks.
> who's guaranteeing that in 10 or 20 years Joe's Nephew will still be around to provide updates?
We are taking about a scenario where open source is the norm and the stakes for each individual project are lower. "off-the-shelf" components would be the norm. Whatever customization or improvements done by the departments would also be released as FOSS.