wrz
23

Wzorce, style i architektury referencyjne – miszmasz terminologiczny

Źródło: Andrzej Sobczak
Opublikowany w //
Print Friendly

patterns Analizując materiały poświęcone architekturze oprogramowania/architekturze korporacyjnej często spotyka się z określeniami: wzorzec architektoniczny, styl architektoniczny, architektura referencyjna. Niestety często pojęcia te są mylone lub stosowane w niewłaściwym kontekście. Niniejszy tekst ma pomóc uporządkować tą problematykę. Wzorzec architektoniczny, według : L. Bassa, P. Clementsa i R. Kazmana stanowi podstawowy element projektowania architektury systemu, który wykorzystywany jest do tworzenia stylów architektury i modeli referencyjnych. Wzorzec architektoniczny definiuje się jako rozwiązanie architektoniczne mające wpływ na cechy jakościowe budowanego systemu w zakresie jego dostępności, modyfikowalności, efektywności, bezpieczeństwa, testowalności, używalności.

Należy tutaj zauważyć, że o ile nie ma problemów z tą definicją na poziomie systemu informatycznego, o tyle zdecydowanie trudniej jest ją odnieść do architektury korporacyjnej. Wówczas można odnieść się do definicji wzorca architektonicznego zawartego w TOGAF: “konfiguracja bloków budowlanych (ang. building blocks), która była użyteczna w jednym kontekście i będzie prawdopodobnie użyteczna w innych”. Dzięki wprowadzeniu pojęcia “blok budowlany” zyskujemy możliwość odniesienia tego pojęcia nie tylko do warstwy IT (np. wzorzec ETL [Extract, transform, load], wzorzec ESB [Enterprise Service Bus]), ale również biznesowej (np. wzorzec punktu obsługi klienta).

Styl architektoniczny jest to pakiet wzorców architektonicznych, który obsługuje i przedstawia rozwiązanie powtarzającego się problemu architektonicznego i który powstaje w konkretnych sytuacjach projektowych. Dokumentuje on istniejące, dobrze sprawdzone doświadczenia w zakresie projektowania architektury systemów oraz zapewnia wspólny słownik i rozumienie zasad projektowania, a przez to ułatwia dokumentowanie i interpretowanie architektury systemu.
Zaletą stosowania stylów architektonicznych jest to, że wykazują one znane atrybuty jakościowe, np. w zakresie bezpieczeństwa, dostępności, efektywności. Wybór stylów architektonicznych, które mają być zastosowane, jest poważną, jeżeli nie wręcz kluczową, decyzją architekta systemu.
Każdy styl ogranicza dopuszczalne formy typów elementów i wzorów ich interakcji, co wprowadza do architektury pewną jednorodność. Jest on określany przez zbiór następujących elementów:

  • zbiór typów elementów,
  • układ topologiczny elementów prezentujący ich wzajemne związki,
  • zbiór ograniczeń semantycznych,
  • zbiór mechanizmów wzajemnego oddziaływania, które określają sposób koordynowania elementów w ramach dozwolonej topologii.

Jako przykłady stylów architektonicznych można podać: klient-serwer, SOA

Architektura referencyjna dostarcza ogólnie uznanej wiedzy dotyczącej wybranej klasy zagadnień, zawierającej na bieżących zaleceniach w tym zakresie. Określa ona wybrany zakres komponentów architektonicznych i rodzajów ich powiązań wraz ze zbiorem ograniczeń dotyczących sposobu używania tych komponentów. Najczęściej ograniczenia te związaną są z konkretną dziedziną/problemem.
R. Gabryelczyk i M. Lasek definiują architekturę referencyjną jako architekturę opracowaną dla określonej dziedziny zastosowań, mającą charakter ogólny. Jest ona podstawą, na bazie której konstruowane są rozwiązania architektoniczne dla konkretnych, realizowanych w organizacji projektów. Architektura referencyjna i style architektoniczne nie wykluczają się nawzajem. Przy projektowaniu architektury referencyjnej można wykorzystać style architektonicznej. Jako przykłady architektury referencyjnej wskazać można np. BIAN’a dla bankowości dla Frameworx dla telekomunikacji.

Andrzej Sobczak

Profesor, kierownik Zakładu Zarządzania Informatyką w Instytucie Informatyki i Gospodarki Cyfrowej SGH. Ma ponad 8 letnie doświadczenie we wdrażaniu koncepcji architektury IT i architektury korporacyjnej. Posiada certyfikaty TOGAF 8/9, ArchiMate 2.0, ITIL, MSP.

Polecane wpisy

TAGI DLA WPISU

Dodaj komentarz

W celu wzięcia udziału w dyskusji jako zalogowany użytkownik możesz zalogować się poprzez jeden z poniższych serwisów.

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Captcha Captcha Reload

Możesz użyć następujących tagów oraz atrybutów HTML-a: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>