Ewolucja usług oprogramowania
Usługi oprogramowania są obecnie wyjątkowo liczne i coraz gęściej ze sobą połączone, obejmując sektory od komunikacji i bankowości po automatyzację produkcji i logistykę. W przypadku systemów zorientowanych na usługi (SOC — service-oriented computing) usługę definiuje się jako zestaw funkcji. Podejście SOC dobrze sprawdza się przy tworzeniu i utrzymywaniu złożonych systemów rozproszonych funkcjonujących w dynamicznych, otwartych środowiskach. Usługi oprogramowania zdolne adaptować się i ewoluować w sposób podobny do systemów biologicznych nazywane są usługami polimorficznymi. Pionierskie prace naukowców pozwoliły opracować ujednolicone podejście do takiej ewolucji i adaptacji, które jest w pełni zgodnie z paradygmatem SOC i ma strategiczne znaczenie dla inżynierii oprogramowania. Do osiągnięcia celów projektu "Composition and management of polymorphic services" (COMPOSER) wykorzystano jakościowe zmienne kontekstowe i logikę rozmytą. Logika rozmyta służy do modelowania niepewności kontekstu. Ewolucja całego systemu polega na ewolucji zestawów reguł rozmytych reprezentujących poszczególne bodźce kontekstowe. Każdy otrzymywany zestaw danych powoduje modyfikację reguł. Adaptację zamodelowano jako reakcję na bodźce kontekstowe. Ewolucja usług odzwierciedla zatem kontekstowe informacje zwrotne ze środowiska usługowego. Wypracowane podejście zastosowano do zarządzania ruchem ulicznym w miastach, uzyskując obiecujące wyniki. Opracowane przez projekt COMPOSER podejście do usług polimorficznych wpasowuje się w szerszą tematykę autonomicznego zestawiania usług i zarządzania nimi. Obecnie jest ono coraz szerzej akceptowane przez społeczność SOC. Prace są kontynuowane, a dodatkowo zgłoszono krajową propozycję zastosowania tej metodologii do poprawy warunków pracy w środowiskach przemysłowych.
Słowa kluczowe
Usługi oprogramowania, systemy zorientowane na usługi, usługi polimorficzne, inżynieria oprogramowania, logika rozmyta