Microfrontends in Practice: Effective UI Modularity Explained