UML is not dessert topping and floor wax.
The function of good software is to make the complex appear to be simple.
C++ also supports the notion of friends: cooperative classes that are permitted to see each other's private parts.
A fool with a tool is still a fool.
In 2031, lawyers will be commonly a part of most development teams.
All of life is iterative. It goes back to the point I made earlier, which is you can't a priori know enough to even ask the right questions.