Service Assurance Architecture Pattern

Data: 2016-02-02
Autor: Sebastian Konkol
Service Assurance Architecture Pattern

W kilku ostatnich projektach przyszło mi zajmować się zagadnieniami jakości rozwiązań IT. Muszę przyznać, że czuję się zbudowany, gdyż do organizacji finansujących tworzenie systemów IT docierają wreszcie dwa podstawowe fakty: jakość decyduje o wartości biznesowej rozwiązania oraz że zapobieganie jest zdecydowanie tańsze, niż leczenie – zapewnienie jakości należy „wbudować” w tworzenie systemu, a nie „testować” jakość na końcu procesu.

Nie ma co przynudzać, że IT ma zasadniczy problem z dostarczaniem jakości. Widać to na każdym kroku. Duża część „nowości” w organizacji działań IT próbuje rozwiązywać ten problem. „Zwinne” metody rozwoju oprogramowania nakazują myśleć o oprogramowaniu przez pryzmat ciągłego weryfikowania jego jakości (TDD). Konstrukcja struktur organizacyjnych IT (DevOps) także na tym opiera swoją skuteczność. Gros tych prac dotyczy jednak wewnętrznych procesów i praktyk działania IT. Czy to wszystko, co zaoferować może IT dla „wbudowania” jakości w rozwiązania informatyczne? Zdecydowanie nie!

Większą część mojego profesjonalnego zainteresowania poświęciłem branży telekomunikacji – nie tyle informatyce w firmach telekomunikacyjnych, co rozwiązaniom telekomunikacyjnym. Z perspektywy jakości, rozwiązania telekomunikacyjne są już dorosłe, podczas gdy rozwiązania IT – dopiero dorastają. Równocześnie złożoność środowisk IT – ich liczba, wzajemne powiązania, rozrzut wykorzystywanych technologii i zmiany „aktualnie obowiązujących” trendów – zaczyna doganiać świat rozwiązań telekomunikacyjnych. To właśnie w „patentach” wykorzystywanych w świecie telekomunikacji IT powinno poszukiwać inspiracji dla rozwiązania własnych problemów.

Według słownika IT jestem architektem, więc na rozwiązywanie problemów patrzę z perspektywy architektonicznej. Nie tak dawno swoimi pomysłami na rozwiązanie problemu jakości w IT dzieliłem się z partnerami zza oceanu. Rozwiązanie to określiłem jako wzorzec architektoniczny zapewnienia jakości. Wzorzec ten określa sposób konstrukcji systemów IT zapewniający wspólne spojrzenie na zapewnienie jakości tego systemu – od pierwszej linii napisanego kodu przez każdy etap procesu wytwórczego, wdrożenie systemu, jego eksploatację i zmiany, aż po wyłączenie systemu.

Inspiracją dla tego wzorca, chyba nie będzie to zaskoczeniem, są rozwiązania stosowane w dorosłym świecie telekomunikacji – standardy i praktyki OSS (Operations Support Systems). Podstawą dla tego wzorca jest konstrukcja systemu IT jako „poddającego się” zasadom Service Assurance – jednego z elementów OSS – a szczególnie monitoringowi systemów. Na takiej podbudowie, przy wykorzystaniu „infrastruktury” agentów nadzoru systemów, budowane jest spójne rozwiązanie, stosowane w taki sam sposób zarówno podczas testów modułów, integracyjnych, wydajnościowych i akceptacyjnych, jak i podczas nadzoru systemu pracującego produkcyjnie, czy detekcji i izolacji błędów w takim działaniu. Sam wzorzec skupia się nie tyle na nadzorze systemu (przecież wszyscy znają HP OpenView, MS SCCM, Nagios i Zabbix), co na warstwie biznesowej – nadzorze usługi i procesu „biznesowego” realizowanego przez system.

Takie podejście – wbudowanie perspektywy jakości w konstrukcję systemu – jest krytyczne dla osiągnięcia jakichś efektów poprawy. Trendy obecnie sterujące rozwojem myślenia o IT – Complex Event Processing, Cloud Computing – wzmacniać będą jeszcze bardziej konieczność stosowania takich rozwiązań. Uczyńcie więc swoje systemy zarządzalnymi w myśl wzorca architektury Service Assurance i zacznijcie na poważnie zapewniać jakość rozwiązań IT. Wasi klienci to docenią.

Pozostaw komentarz