Best practise for seperating functionality into individual modules, but maintaining all flows in one app?

I've got the task to merge two and a new app into one holistic app. Basically, incorporate functionality and pages of different apps (each a single module) into one app. The user will use all of those three areas in one single new to build app. But I'm struggling with the best practise on how to organize my document structure in Mendix. Each module (application) consists of it's own pages, microflows and resources (snippets, ENUMs, etc.). My thought was to create an additional module 'Application' and have that module as a base for the app. It will consist of the cross-app microflows and pages that refer to the snippets (of each module pages), instead of those application pages themselves. This way, no page data or app specific microflows will exist in the 'application' module, a user can still access each section of the holistic app and, technical-wise, each section (app) can easily be exported if required. This would mean that all pages of each app should be converted to snippets and in Application a lot of empty pages will exist with a single snippet (aside from template (header, navigation) items. Who can suggest me some best practices, an approach on how to seperate those three apps, but still have them together in one single app?   - - -  It simply feels silly to have a navigation layout that refers to different pages in different modules. It would seem more logical to have all navigational pages in one single module and have those pages refer to snippets in each module. User-wise everything exists in one module, but technically everything is spread and organized in each app module. :)
1 answers

Hi Sander, the reason to create a module is to treat it like standalone replacable service. And I understand if you create additional modules for supporting services, i.e. layouts or something. The best practise is to move in steps I guess. 

I'm not sure if I understand correctly, but what's the reason to put an application into a module ?