Powstało wiele metod tworzenia oprogramowania oraz tyle samo architektur. W dobie społeczeństwa informacyjnego, gdy ogromna ilość ludzi pracuje na różnych systemach z wykorzystaniem wielu narzędzi nastała potrzeba unifikacji komunikacji pomiędzy tymi narzędziami. Potrzebny był język komunikacji, który był wstanie przesyłać informacje pomiędzy różniącymi się architekturami. Reakcją na te zapotrzebowanie został XML. Język znaczników, podobny do HTML, który może być czytany przez większość systemów. Z jego wykorzystaniem możliwe jest wysyłanie danych na przykład z MySQL do Oracle. W szczególności ważne okazało się to dla rozwoju programów typu SaaS (Software as a Service), gdzie pracuje razem kilkanaście systemów, nie rzadko od innego producenta.W oprogramowaniu rodzaju SaaS użytkownik widzi tylko UI, często nie wie że za wynikiem pytania, który otrzymał jest odpowiedzialnych kilka nawzajem współpracujących ze sobą systemów. Wszystkie technologie komunikacji pomiędzy systemami na przykład SOAP opierają się na XML! Bez tej technologii żadna technologia mobilna nie miałaby praktycznie możliwości zaistnienia. Dzięki XML bardo prosta stała się praca z wieloma serwerami, co ogromnie stymuluje ekspansję sieci.