Znane jest bardzo dużo technologii tworzenia oprogramowania oraz tyle samo architektur. W dobie społeczeństwa informacyjnego, Podczas gdy wielu ludzi pracuje za pomocą różnych systemów z wykorzystaniem wielu narzędzi pojawiła potrzeba unifikacji komunikacji pomiędzy tymi narzędziami. Potrzebny był język komunikacji, który mógł przekazywać informacje między różnymi architekturami. Reakcją na te potrzeby był XML. Język znaczników, zbliżony do HTML, który może być czytany przez większość systemów. Dzięki niemu możliwe jest przekazywanie danych dla przykładu z MySQL do Oracle. Szczególnie ważne stało się to dla ewolucji narzędzi typu SaaS (Software as a Service), gdzie działa razem kilkanaście systemów, często od innego producenta.W aplikacjach typu SaaS klient widzi jedynie GUI, często nie wie że za wynikiem pytania, który otrzymał stoi kilka a nawet kilkanaście wzajemnie pracujących systemów. Wszystkie techniki komunikacji pomiędzy systemami na przykład SOAP opierają się na XML! Bez tej technologii ani jedna technologia mobilna nie miałaby praktycznie szansy zaistnienia. Dzięki XML o wiele prostsza okazała się komunikacja z różnymi serwerami, co jeszcze bardziej przyśpieszyło rozwój internetu.