Istnieje ogromna liczba technologii projektowania programów oraz tyle samo architektur. W czasach społeczeństwa informacyjnego, gdy ogromna ilość ludzi pracuje za pomocą różnych systemów wykorzystując wiele programów nastała potrzeba zunifikowania komunikacji między tymi programami. Potrzebny był język komunikacji, który był wstanie przesyłać dane pomiędzy innymi architekturami. Reakcją na te zapotrzebowanie był XML. Język znaczników, podobny do HTML, który jest interpretowany przez większość systemów. Z jego wykorzystaniem możliwe stało się importowanie danych dla przykładu z MySQL do baz danych Oracle. Szczególnie ważne stało się to dla ewolucji rynku narzędzi w rodzaju SaaS (Software as a Service), gdzie pracuje ze sobą jednocześnie kilkanaście systemów, nie zawsze od tego samego producenta.W aplikacjach typu Software as a Service klient obsługuje tylko GUI, bardzo często nie zdaje sobie sprawy że za wynikiem pytania, który mu zwrócono jest odpowiedzialnych kilka wzajemnie współpracujących systemów. Wszystkie techniki komunikacji między systemami takie jak SOAP opierają się na XML! Bez tej technologii ani jedna technologia mobilna nie miałaby praktycznie możliwości zaistnienia. Dzięki XML bardo prosta stała się praca z różnymi serwerami, co jeszcze bardziej stymuluje rozwój sieci.