I think the example is not great. The problem is not that we could be doing better, but rather that without a more granular view, the model will simply not work.
More like trying to model the pixels on a screen without accessing the underlying program that's making decisions on what to show.