Architektura dla analityków
Architektura dla analityków
Kod szkolenia: ARCH-AN
Szkolenie adresowane jest do analityków biznesowych, którzy chcieliby zapoznać się architekturą systemów, aby lepiej komunikować się z architektami oraz zrozumieć cele i rozwiązania architektoniczne. Tym samym wiedzieć nie tylko, jak lepiej definiować wymagania niefunkcjonalne, ale również jak wykrywać w trakcie analizy aspekty istotne dla architektury, potencjalne rozwiązania, ograniczenia, ryzyka. Szkolenie bardzo pomoże również analitykom, na których spadło utrzymanie istniejącej architektury.
Celem szkolenia jest zdobycie wiedzy niezbędnej do wykrywania zagrożeń architektonicznych, tak aby analityk biznesowy stał się pierwszą linią tworzenia założeń architektonicznych już podczas wywiadów z klientem. Materiał pozwala nie tylko zrozumieć cele i rozwiązania architektoniczne, ale także ułatwia ustalanie szczegółów z klientem podczas rozwoju istniejących systemów, dzięki zrozumieniu aktualnej budowy systemu i osiąganych przez niego parametrów.
Za cel szkolenia obrano także wsparcie analityków, na których spadło utrzymanie istniejącej architektury.
Szkolenie kładzie duży nacisk na osiągnięcie wysokiej świadomości konsekwencji związanych z doborem rozwiązań, technologii, wzorców i innych decyzji architektonicznych. W oparciu o tę świadomość ćwiczymy i budujemy umiejętność podejmowania i weryfikacji decyzji architektonicznych, poruszając się w realiach nieklarownych wizji systemu i dużej ilości założeń architektonicznych. Decyzje rozpatrywane są z punktu zalet i wad dla poszczególnych parametrów systemowych.
W ramach szkolenia omawiany jest również zakres popularnych technologii z podziałem na poszczególne warstwy oraz architektoniczne diagramy UML na poziomie wystarczającym do zrozumienia budowy systemu.
5 dni, po 8 godzin. Łącznie 40 godzin(y) szkolenia.
Uwaga: Szkolenie posiada również wersję 5 dniową dla architektów z innym zakresem szczegółów oraz ćwiczeń, na której dodatkowo omawiane są tematy: prototypowanie, weryfikacja architektury (Architektura 5 dni).
Oczekiwane przygotowanie słuchaczy przed szkoleniem
Brak wymagań wstępnych.
Polecane szkolenia uzupełniające
Na architekturze dotykamy mnóstwa technologii na wysokim poziomie abstrakcji (konsekwencje dla parametrów systemowych – wady, zalety), znajomość różnych technologii jest pomocna, aczkolwiek nie jest wymagana.
- Podstawy Architektury
- Czym jest architektura
- Architektura a projekt
- Cele tworzenia architektury
- Kim jest architekt i jaką pełni rolę
- Kim jest architekt - różne poziomy
- Technolog
- Strateg
- Polityk
- Co robi architekt
- Potrzeba istnienia architekta a skala projektu
- Zarządzanie ryzykiem
- Parametry systemowe
- Czym są parametry systemowe
- Jak poprawnie definiować wymagania niefunkcjonalne
- Opis parametrów systemowych
- Wygoda użytkownika (Usability)
- Bezpieczeństwo (Security)
- Wydajność (Performance)
- Przepustowość (Throughput)
- Czas odpowiedzi (Response Time)
- Czas reakcji (Responsivness)
- Dostępność (Availability)
- Niezawodność (Reliability)
- Skalowalność (Scalability)
- Różne wymiary elastyczności systemu
- Rozszerzalność (Extensibility)
- Reużywalność (Reusability)
- Przenaszalność (Portablity)
- Elastyczność (Flexibility)
- Realizowalność (Realizability)
- Testowalność (Testability)
- Utrzymanie (Maintainability)
- Serwisowalność (Serviceability)
- Zarządzalność (Managebility)
- Wymiary systemu
- Wymiary związane z infrastrukturą
- Pojemność (Capacity)
- Redundantność/Replikacja (Redundancy)
- Modułowość (Modularity)
- Wpływ wymiarów na parametry systemu
- Priorytety parametrów systemowych
- Skąd wynikają priorytety?
- Problemy priorytetowania
- Wzorce architektoniczne
- Wprowadzenie do wzorców
- Definicja wzorca
- Cechy i zalety wzorców
- Rodzaje wzorców
- Stable Dependency Principle
- Wzorce podziału odpowiedzialności
- Wzorce infrastruktury
- Wzorce EAI
- Microservices i technologie
- Przedstawienie wybranych szablonów wzorców
- Architektura warstwy klienta i prezentacji
- Przechowywanie sesji
- Podział klientów
- Klient gruby
- Klient Cienki
- RIA
- Technologie klienta grubego
- Swing
- SWT
- RCP
- Technologie klienta cienkiego
- HTML Statyczny
- HTML Dynamiczny
- JSF (Java Server Faces)
- Ajax
- Java Script
- Prototype
- Prime[Faces|NG|Vue|React]
- Wsparcie JavaScript
- JSON
- jQuery
- SPA/SPI
- Angular
- Vue
- React
- WebSocket
- Opis protokołu
- Kiedy używac WebSocket
- Architektura warstwy biznesowej
- Przetwarzanie rozproszone
- Komunikacja zdalna a lokalna
- Protokoły komunikacyjne:
- CORBA i IIOP
- Web Services (SOAP)
- SOAP
- WSDL
- Web Services (REST)
- REST
- WADL i alternatywy (API Blueprint, Swagger)
- GraphQL
- Sockets (własny protokół)
- RMI (Remote Method Invocation)
- COBRA, SOAP, REST, GraphQL, Sockets, RMI, gRPC...
- Architektura warstwy integracji i zasobów
- Technologie utrwalania danych:
- Bazy relacyjne
- Bazy hierarchiczne (LDAP)
- NoSQL
- BigData
- RDBMS, hierarchiczne DB, NoSQL, BigData
- Komunikacja asynchroniczna
- Przegląd architektury w UML
- Diagram komponentów (component diagram)
- Komponent (component)
- Komponenty zagnieżdżone (composite component)
- Interfejs (interface)
- Interfejs wymagany (required interface)
- Interfejs dostarczany (provided interface)
- Złączenie interfejsów (assembly)
- Porty
- Konektory
- Realizacja komponentu
- Diagram wdrożenia (deployment diagram)
- Węzeł (node)
- Łącze komunikacji (communication path)
- Łącze kierunkowe
- Liczność łącza