Eh bien, ils sont des animaux totalement différents. MVC est tout sur la présentation des données, en contrôlant la navigation de la boîte de dialogue de l'utilisateur et de la logique métier dans la construction du modèle de données.
SOA consiste à récupérer des données auprès d'un fournisseur de services. Du côté client, vous pouvez utiliser SOA dans la partie Model du modèle MVC pour créer votre modèle avec les données d'un service SOA. Du côté du service, comme il n'y a pas de présentation et pas de dialogue utilisateur, la plupart du modèle MVC devient redondant. De plus, une bonne conception SOA devrait se concentrer sur la fourniture d'un service utile quel que soit le magasin de données sous-jacent, de sorte que la partie «modèle» devient en grande partie accessoire. Il est vrai que de nombreux services sont "stateful" (par exemple, les commandes sont validées, payées, expédiées puis reçues), mais ces états font partie intégrante de la logique métier et ne se prêtent pas à la gestion de session typique du motif MVC.