Architektura systemów

LICZBA DNI: 5 (40h)

KOD KURSU: J/ARCH

POZIOM SZKOLENIA:

# architecture

# requirements

# quality

# uml

Najbliższy termin:

29 marca 2021

4300 PLN netto + 23% VAT

Jeszcze 8 miejsc w tej cenie.

  • stacjonarne
  • zdalne

STACJONARNE

W CENIE

  • 5 dni pracy z trenerem
  • Materiały szkoleniowe
  • Lunch
  • Certyfikat ukończenia szkolenia

ZDALNE

W CENIE

  • 5 dni pracy z trenerem na żywo online
  • Materiały szkoleniowe
  • Certyfikat ukończenia szkolenia

Czy wiesz, że możesz uzyskać nawet do 100% dofinansowania na szkolenie? Dowiedz się jak »

Oferta dla firm

Dostosuj zakres, czas i miejsce szkolenia do potrzeb Twojego zespołu. Uzyskaj indywidualną wycenę szkolenia dla grupy.

Weź udział w szkoleniu

Termin

Lokalizacja

Cena / os

29

marca

Warszawa,

Kraków,

Łódź,

Wrocław,

Gdańsk,

Poznań,

Zdalne,

4300 PLN netto
+ 23% VAT

Termin

29

marca

Lokalizacja

Warszawa,

Kraków,

Łódź,

Wrocław,

Gdańsk,

Poznań,

Zdalne,

Cena / os

4300 PLNnetto
+ 23% VAT

Powiadom
o kolejnych terminach

O szkoleniu

DLA KOGO?

Szkolenie jest odpowiednie dla programistów, projektantów, analityków, jak również dla architektów chcących usystematyzować wiedzę i wymienić doświadczenia w grupie

Dla osób, które chciałyby zapoznać się z praktycznymi aspektami tworzenia architektury

Dla wszystkich, którzy chcą otworzyć przed sobą nowe możliwości w zakresie realizacji zadań związanych z kompetencjami architekta

Dla osób pragnących podejmować lepsze decyzje poprzez osiągnięcie wyższej świadomości konsekwencji płynących z dobranych rozwiązań

WYMAGANIA

Brak wymagań wstępnych

ZALETY

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

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

Wzorce architektoniczne omawiane i na poziomie koncepcyjnym - niezależnym od języka, i na poziomie technologicznym - z oznaczeniem rozwiązań hetero i homogenicznych

Sposób omawiania pozwala uczestnikom na odnajdywanie w przyszłości nowszych technologii danej klasy czy związanych z ich językiem rozwiązań homogenicznych (na szkoleniu przykłady homogeniczne podawane pod Java, ale ogromna przewaga wskazanych rozwiązań jest heterogeniczna)

Cele szkolenia

Zdobycie wiedzy niezbędnej do tworzenia i weryfikacji architektury oraz umiejętności rozpatrywania potencjalnych rozwiązań z punktu widzenia parametrów systemowych

Poznanie języka UML w zakresie modelowania architektury i umiejętności tworzenia modeli architektonicznych

Program

  • Czym jest architektura
  • Cele tworzenia architektury
  • Kim jest architekt i jaką pełni rolę
  • Proces architektoniczny
  • Dokumentacja architektoniczna
  • Zarządzanie ryzykiem
  • Czym są parametry systemowe
  • Jak poprawnie definiować wymagania niefunkcjonalne
  • Parametry systemowe
    • Usability, Security, Performance
    • Scalability, Availability, Reliability
    • Extensibility, Reusability, Portablity, Flexibility
    • Realizability, Planability, Testability
    • Maintainability, Serviceability, Manageability
  • Wymiary systemu i ich wpływ na parametry systemu
  • Priorytetyzacja parametrów systemowych
  • Wprowadzenie do wzorców
  • Stable Dependency Principle
  • Wzorce podziału odpowiedzialności
    • MVC i SPA, Desktop, Client-Server
    • Web-centric, Application-centric, Enterprise
    • Architektura wielowarstwowa (Layers Pattern)
  • Wzorce infrastruktury
    • Redundancja Ścieżek, Skalowanie poziome i pionowe
    • Load Balancing, Clustering, HA, Failover
    • Forward Proxy Cache, Cloud
  • Wzorce EAI (Enterprise Application Integration)
    • MOM, SOA, ESB
  • Microservices i technologie
    • Microservices a SOA
    • Microservices a monolit
    • Client-side a Server-side service discovery
    • DevOps i Continuous Delivery/Deployment
    • Zalety i problemy microservices
    • On Premise(s), IaaS, CaaS, PaaS, FaaS, SaaS
    • Microservices i skalowanie 3D
    • Jak tworzyć architekturę microservices
    • Polyglot Persistence
    • CQRS i Event Sourcing jako wsparcie microservices
    • Niespójne dane, czyli ACID kontra BASE i CAP Theorem
    • Kiedy migrować do microservices
  • Słów kilka o szablonach: Microservices Patterns, POSA, PEAA, Core J2EE, DDD, EIP
  • Po co prototypować
  • Prototyp Proof of Concept
  • Prototyp ewolucyjny
  • Antywzorzec Lava Flow
  • Metodyka kaskadowa
  • USDP (UP) - Unified Software Development Process
  • RUP - Rational Unified Process
  • Metodyki Agile: XP, Scrum i pochodne
  • Podejście hybrydowe
  • Przechowywanie sesji
  • Podział klientów: gruby, cienki, RIA
  • Technologie klienta grubego: Swing, SWT, RCP
  • Technologie klienta cienkiego
    • HTML Statyczny i dynamiczny
    • MVC na przykładzie JSF
    • SPA/SPI (Angular, React, Vue)
    • AJAX i jego wsparcie (Java Script, Prototype, Ajax4JSF, PrimeFaces)
    • WebSocket
  • Przetwarzanie rozproszone
  • Komunikacja zdalna a lokalna
  • Optymalizacja komunikacji sieciowej
  • Protokoły komunikacyjne
    • CORBA i IIOP
    • Web Services SOAP i REST
    • GraphQL, Sockets (własny protokół)
    • RMI, EJB i RMI-IIOP
    • Inne rozwiązania na rynku
  • Serwery aplikacji i kryteria wyboru
  • Technologie utrwalania danych:
    • Bazy relacyjne, hierarchiczne, NoSQL
  • Komunikacja asynchroniczna
    • Do czego przydatna
    • Jak zwrócić odpowiedź
    • API kontra protokół, czyli JMS a AMQP
    • Czym są wzorce EIP i jakie mają wsparcie
    • Przykładowe rozwiązania MOM: RabbitMQ, ActiveMQ, Kafka
    • Modele komunikacji w różnych implementacjach
    • Co uwzględnić przy wyborze message brokera?
  • Systemy legacy
  • Screen Scrapping
  • Technologie scaffolding'owe
  • Jak wzorce projektowe wpływają na architekturę
  • Wybrane wzorce Core J2EE warstw prezentacji, biznesowej i integracji
  • Wybrane wzorce GOF:
    • Factory Method, Abstract Factory,
    • Strategy, Proxy, Adapter,
    • Façade, Mediator, Observer
  • Diagram komponentów
  • Diagram wdrożenia
  • Instancyjne diagramy wdrożenia
  • Niskopoziomowe diagramy wdrożenia
  • Szablony architektoniczne
  • Model wdrożenia na diagramach wdrożenia (artefakty)
  • Diagram pakietów
  • Warstwy i komponenty a realizacja projektu
  • Warstwy i komponenty a model projektowy
  • Uwzględnienie ograniczeń architektury w projekcie
  • Zarządzanie bezpieczeństwem
  • Mechanizmy bezpieczeństwa
  • Serwery SSO (Single Sign On)
  • Podstawowe rodzaje ataków
  • ACID i BASE a CAP Theorem
  • Wpływ transakcji na system
  • Poziomy izolacji i skutki uboczne
  • Konflikty zapisu danych
  • Transakcje rozproszone
    • Transakcja lokalna a rozproszona
    • X/Open (TX, XA)
    • 2PC a wydajność
    • JTA i alternatywy
    • Microservices bez 2PC (Saga i inne)
  • Transakcje kompensacyjne
  • Transakcje w WebService
  • Kontrola obciążenia systemu transakcjami
  • Po co weryfikować?
  • Zespół weryfikujący
  • Techniki weryfikacji i oceny
  • Proces weryfikacji
  • Raport z weryfikacji

POLITYKA COOKIES:

Korzystamy z plików cookies, by móc jak najlepiej dostosować stronę do Twoich potrzeb oraz wyświetlać Ci przydatne i adekwatnych dla Ciebie reklamy w serwisie i poza nim. Możesz kontrolować ustawienia ciasteczek w swoich ustawieniach swojej przeglądarki. Odwiedzając tę stronę, wyrażasz zgodę na wykorzystywanie przez nas plików cookies.