Architektura aplikacji biznesowych

Opis

Szkolenie Architektura aplikacji biznesowych to trzy dni, w czasie których uczestnicy będą mieli okazję poznać i uporządkować kluczowe zasady architektoniczne związane z tworzeniem złożonych aplikacji. Będzie ono niezwykle użyteczne dla doświadczonych programistów jak i osób, które pełnią lub w najbliższym czasie będą pełnić rolę architekta. Szkolenie architektura oprogramowania obejmuje tematykę głównych podejść architektonicznych takich jak: Microkernel, Warstwy, Model dziedzinowy czy Shared Repository, przeglądem konkretnych wzorców przydatnych w różnych obszarach tworzonej architektury – prezentacji, dostępu do danych, asynchroniczność czy zarządzania zasobami. Jednak szkolenie z architektury IT dotyczy także elementom procesowym – czyli jak przypadki użycia wpływają na architekturę, prototypowaniu jako narzędziu eksplorującym zastosowanie konkretnych rozwiązań, pragmatycznym dokumentowaniu architektury z uwzględnieniem podejść zwinnych oraz procesowi rozwoju architektury w systemie, który już istnieje. Dodatkowo omówione będą zagadnienia skalowania związane z rozwojem złożonych aplikacji.

Szkolenie z architektury to intensywne trzy dni, które pomoże Ci bardziej świadomie podejmować decyzje architektoniczne.

Profil uczestnika

  • Uczestnik zna wzorce projektowe na poziomie szkolenia WP.
  • Uczestnik posiada co najmniej dwuletnie doświadczenie w programowaniu systemów informatycznych.

Podstawowy program

Moduł. 1
Strukturyzowanie kodu
Moduł. 2
Architektury warstwy prezentacji
Moduł. 3
Dostęp do danych
Moduł. 4
Asynchroniczność i współbieżny dostęp
Moduł. 5
Zarządzanie zasobami i wydajność
Moduł. 6
Wprowadzenie do Domain-Driven Design
Moduł. 7
Od wymagań do architektury
Moduł. 8
Prototypy
Moduł. 9
Dokumentowanie architektury
Moduł. 10
Proces rozwoju architektury
Moduł. 11
Standaryzowanie architektury
Moduł. 12
Skalowanie na dużą skalę

Szczegółowy program

Moduł. 1
Strukturyzowanie kodu
  • Domain Model
  • Domain Object
  • Architektura warstwowa
  • Architektura Mikrokrernel
  • Architektura Shared Repository
  • Architektura Blackboard
  • Architektura Plug-In
  • Domeny obiektowe i nie obiektowe
Moduł. 2
Architektury warstwy prezentacji
  • Autonomous View
  • Seperated Presentation
  • Synchronizacja stanu
  • Forms and Control
  • Model-View-Controller
  • Presentation Model, MVVM
  • Model-View-Presenter, Passive View
Moduł. 3
Dostęp do danych
  • Data Access Layer
  • Table Data Gateway, Data Access Object
  • Active Record
  • Repository
  • Object/Relational Mapping
  • [opcja] JPA użyteczne wskazówki
  • [opcja] Deklaratywna obsługa transakcji
Moduł. 4
Asynchroniczność i współbieżny dostęp
  • Observer
  • Mediator
  • Broker
  • Messaging
  • Publisher-Subscriber
  • Event, Event Log, Event Sourcing
  • Message, Message Channel, Message Router, Message Translator
  • Monitor Object
  • Half-Sync/Half-Async
  • Active Object, Future Result
Moduł. 5
Zarządzanie zasobami i wydajność
  • Główne założenia
  • Lookup
  • Remote Proxy, Virtual Proxy
  • Task Coordinator
  • Resource Pool, Resource Cache
  • Flyweight
  • Transfer Object i jego odmiany
  • Transfer Object Assembler
  • Logika po stronie aplikacji czy bazy danych?
  • Business Delegate
  • Container
Moduł. 6
Wprowadzenie do Domain-Driven Design
  • Co to jest dziedzina?
  • Izolacja dziedziny
  • Warstwy w DDD
  • Bloki budujące: Entity, Value Object, Aggregate, Repository, Factory, Service, Policy, Specification, Event
  • Bounded Context
  • Continuous Integration, Shared Kernel, Customer/Supplier, Conformist, Anticorruption Layer, Seperate Ways, Open Host Service
Moduł. 7
Od wymagań do architektury
  • Przygotowanie i prowadzenie sesji
  • User stories i Use Cases
  • Modelowanie dziedziny, relacji, usług i innych bloków budujących
  • Od testów akceptacyjnych, przez testy jednostkowe do kodu – proces end-to-end
Moduł. 8
Prototypy
  • Prototypy ekranów
  • Prototypy aplikacji
  • Spikes
Moduł. 9
Dokumentowanie architektury
  • Nieformalne diagramy
  • Widoki 4+1
  • Widok procesu, widok logiczny, widok fizyczny, widok implementacji
  • Diagram komponentów
  • Diagram wdrożenia
  • Diagram klas
  • Konceptualny i implementacyjny model systemu
  • Diagram sekwencji
  • Elementy objaśniające i dokumentujące
  • Kiedy i jak używać modeli i diagramów?
  • Jak zdefiniować i wdrożyć zarządzanie dokumentacją związaną z architekturą?
Moduł. 10
Proces rozwoju architektury
  • Główne problemy z rozwojem architektury
  • Modele organizacyjne
  • Architekt: Rola czy stanowisko
  • Zarządzanie ewolucją architektury
  • Projektowanie i wdrażanie procesu rozwoju architektury
  • Podejścia iteracyjne
  • Praktyki związane z rozwijaniem architektury
Moduł. 11
Standaryzowanie architektury
  • Środowisko programistyczne
  • Konwencje kodowania
  • Przeglądy kodu
  • Proces standaryzacji
Moduł. 12
Skalowanie na dużą skalę
  • Skalowanie horyzontalne i wertykalne – 10 strategii skalowania
  • NoSQL – bazy klucz-wartość, bazy dokumentowe, bazy grafowe, wide column
  • MapReduce
  • Command Query Responsibility Segregation

Parametry szkolenia

Czas trwania
3 x 8h
Forma zajęć
Ćwiczenia - 70%, wykład - 30%
Kod
ARCH
Wielkość grupy
do 10 osób

Jak zamówić

« lista szkoleń