Pierwotne metody informatyczne stosowane w ubiegłym stuleciu do realizacji ciągów operacji biznesowych prowadzących do osiągnięcia założonego celu, opierały się o przenoszenie danych na tradycyjnym nośniku informacji - na papierze. Przykładem może być zakład produkujący małe elementy metalowe, do którego zlecenie na nowy element przysyłane było najczęściej w formie papierowej, dokument rejestrowany w rejestrze dokumentów przychodzących trafiał w obieg (zwykle zmieniając swoją zawartość po drodze) od kosztorysanta, przez projektanta, halę produkcyjną, kontrolę jakości, magazyn aż po sprzedaż. Cały proces realizacji zamówienia kontrolowany był tak, aby zapewnić praw idłową, zgodną z dokumentacją realizację zamówienia.
Pierwsza informatyzacja procesów biznesowych opierała się o przetworzenie tej informacji z wersji papierowej na elektroniczną. Polegało to na indeksacji dokumentów, ich gromadzeniu, przetwarzaniu, archiwizowaniu, itp. z wykorzystaniem komputera. Ewentualna wędrówka informacji po kolejnych miejscach realizacji operacji biznesowych polegała na przenoszeniu jej z użyciem nośników cyfrowych (karty, taśmy, dyskietki) lub znów na papierze w formie wydruku.
Dopiero technologie sieciowe dały możliwość przesyłania informacji skojarzonej z realizacją danego procesu biznesowego z pominięciem nośników wy magających bezpośredniego zaangażowania człowieka. Programowanie usług sieciowych pozwoliło tworzyć oprogramowanie umożliwiające na wędrówkę informacji między kolejnymi systemami informatycznymi wchodzącymi w skład ścieżki realizacji procesu biznesowego. Usługi sieciowe (ang. network services) znalazły zastosowanie w technologiach na wyższym poziomie abstrakcji, jak np.: w programowaniu rozproszonym, obliczeniach równoległych, technologiach gridowych.
Opracowanie wysoko abstrakcyjnej koncepcji architektury zorientowanej na usługi (SOA, ang. Service-Oriented Architecture) wniosło reguły projektowania systemów, w których usługa to niezależne (od innych usług, platformy, technologii wykonania, itp.) oprogramowanie mogące wejść w skład złożonego procesu biznesowego. Z usługi SOA można korzystać komunikując się z nią za pomocą bardzo elastycznego definiowalnego protokołu komunikacyjnego. Do tego celu usługa udostępnia interfejs, który mówi tylko co usługa może zrealizować i z założenia nie informuje jak wykona złożone zlecenie.
Obecnie rozwijane są technologie na jeszcze wyższym poziomie abstrakcji, tj. chmury obliczeniowe (ang. cloud computing). W tym przypadku dostarczanie usług realizowane jest z obszaru teleinformatycznego nieidentyfikowanego bezpośrednio ze sprzętem. Chmurą może być każdy z poziomów architektury, od sprzętu, przez infrastrukturę, platformę aż po usługę.
Niniejszy skrypt przedstawia inżynieryjne wprowadzenie do architektury zorientowanej na usługi. Skrypt składa się z ośmiu następujących po sobie ćwiczeń laboratoryjnych, począwszy od tematu serwera aplikacji, środowiska programistycznego, przez podstawowe technologie programistyczne aż po interfejs i protokół oraz elementy architektury. Każde ćwiczenie składa się z przedstawienia tematyki laboratorium, zagadnień do przygotowania przed przystąpieniem do ćwiczenia, z opisu laboratorium (które zajmuje najobszerniejszą część ćwiczenia) oraz zadań do samodzielnej realizacji.