Witaj na Zine.net online Zaloguj się | Rejestracja | Pomoc

Simon says...

Szymon Pobiega o architekturze i inżynierii oprogramowania
SOA Design Patterns: Capability (Re)composition
To właściwie dwa wzorce: Capability Composition oraz Capability Recomposition.

Pierwszy z nich rozwiązuje problem usługi, która w celu wykonania swojego zadania potrzebueje logiki, która nie mieści się w jej zakresie odpowiedzialności. Aby problem rozwiązać, można poszerzyć zakres odpowiedzialności usługi, jednak prowadzi to do duplikacji logiki. Innym, lepszym i poprawnym, rozwiązaniem jest włączenie wywołania innej usługi jako elementu realizacji logiki tej pierwszej.

Właściwie wydaje się to zupełnie naturalne, przecież właśnie SOA zwykle kojarzy się z nieskończonymi łańcuszkami usług wywołujących się nawzajem.

Wzorzec Capability Composition nie jest jednak zwykłym agregowaniem usługi. To, co go wyróżnia to fakt, że usługi agregowane wywoływane są "zgodnie ze sztuką", czyli np. za pośrednictwem oficjalnego kontraktu.

Capability Recomposition jest bardzo podobnym wzorcem. Tutaj też chodzi o składanie usług w celu rozwiązania dużego problemu. Różnica polega na tym, że Recomposition oznacza, że poszczególne usługi są zaprojektowane w taki sposób, że możliwe jest wykorzystywanie ich do rozwiązania wielu różnych problemów - mogą być elementami różnych, niezwiązanych ze sobą, procesów biznesowych.

Zakres możliwości wykorzystania wzorca Capability Recomposition w twojej architekturze usługowej jest dobrą miarą tego, jak dobrze zastosowałeś zasady (principles) SOA. Im lepiej, tym więcej możliwości wykorzystania CR, czyli ponownego użycia logiki usług.

Opublikowane 3 lipca 2009 09:40 przez simon

Filed under: ,

Komentarze:

# Simon says... : SOA Design Patterns: Capability (Re)composition @ 3 lipca 2009 12:44

Dziękujemy za publikację - Trackback z dotnetomaniak.pl

dotnetomaniak.pl

Komentarze anonimowe wyłączone