Il y a le système de base et les plugins/services qui s'y greffent par un mécanisme de “Plug & Play”.
On peut donc considérer ce pattern en 3 modules : le noyau, les services internes et les services externes. Ceux-ci communiquant par le biais d'une API commune.