Projektowanie skalowalnych architektur z wykorzystaniem zaawansowanych technik DDD Michał Mac macmichal.pl.

Slides:



Advertisements
Podobne prezentacje
PREZENTACJA SYSTEMU eDokumenty
Advertisements

Dokumentacja licencji oprogramowania
Projektowanie i analiza systemów informacyjnych
Pozwól pomóc swojej firmie! Informacje o systemie.
Modelowanie przypadków użycia
Obiektowe metody projektowania systemów Design Patterns STRATEGY.
CORBA Łukasz Wnęk.
Support.ebsco.com Przewodnik Mój folder EBSCOhost (My EBSCOhost) Przewodnik.
Wizja bezpieczeństwa w/g Microsoft Andrzej Zaremba Security Program Manager Microsoft Corporation.
Sposoby implementacji asocjacji
Projektowanie Aplikacji Komputerowych
Tworzenie ASP.NET Web Form
WYZWALACZE (TRIGGERY) Wyzwalacz jest specjalnym rodzajem procedury składowanej, która może być wykonana w odpowiedzi na jedną z trzech sytuacji: UPDATE.
Wzorce projektowe w J2EE
Zarządzanie transakcjami w SQL Server
C.d. wstępu do tematyki RUP
Modelowanie w Visual Studio 2010
Microsoft Lync Server Efektywna komunikacja. Konferencje internetowe.
Wstęp do eksploracji danych
Poczta i zarządzanie czasem. Perspektywa użytkownika.
Zamawianie nagród w programie lojalnościowym IC Premia
Diabeł tkwi w szczegółach
Ogólnie o kartotekach systemu – Klienci, Lekarze, Dostawcy…
Nowoczesny system zarządzania firmą
Outsouring procesów e – commerce Wymierne korzyści dla właścicieli sklepów Cursor S.A. prezentacja przygotowana dla Klientów WellCommerce Warszawa, 2.
Microsoft Lync Efektywna komunikacja w Biznesie
Jak stworzyć internetową personę. Nota Prawna… Prawa Autorskie: Copyright 2013 NETbloger Group Szymon Janik & Wszystkie.
Copyright Status-C, 2010r.. Crowdsourcing – czerpanie wiedzy z t ł umu Metoda konkursu – wybór najlepszych z wielu nadesłanych. Wykorzystanie potencjału.
Agata Blady, Komunikado PR,
CDN OPT!MA integracja z Systemem Microsoft Office 2003.
CRM GigaCon Warszawa Jarosław Żeliński
GRYWALIZACJA W PROCESIE ROZWOJU KOMPETENCJI I EFEKTYWNOŚCI PRACOWNIKÓW
Instrukcja MILO moduł klienta.
Microsoft Dynamics CRM jako platforma deweloperska
Obsługa Klienta – sprzedaż soczewek kontaktowych i artykułów z grupy – pozostałe. Czyli sprzedaż przypisana do Klienta i sprzedaż bezimienna (detaliczna).
Uniwersytet Mikołaja Kopernika w Toruniu
RESCOLD Sp.J. Zamówienia on-line Informacja dla klientów na temat sprzedaży przez internet.
System e-zamówienia.
3 DROGI W ORIFLAME 1. KLIENT 2. SPRZEDAWCA 3. MANAGER
Kontakt: Adam Jarus tel
Exchange Server 2013 Poczta elektroniczna, kalendarze i baza kontaktów dla przedsiębiorstw Adam Dolega Architekt Rozwiązań Biznesowych, Microsoft.
Gwarancja Kontraktowa
Programowanie obiektowe Wykład 7 dr Dariusz Wardowski, Katedra Analizy Nieliniowej, WMiI UŁ 1/20 Dariusz Wardowski.
Zaprojektowanie i wykonanie prototypowego systemu obiegu dokumentów (workflow) dla Dziekanatu Wydziału z wykorzystaniem narzędzi open-source i cloud computing.
Model – View – View Model
Enterprise Architecture Patterns
Jak założyć Społeczność w Google Plus. Nota Prawna… Prawa Autorskie: Copyright 2013 NETbloger Group Szymon Janik & Wszystkie.
Title Slide 1 It starts with you
Jak uruchomić Program Partnerski w WordPress
Internetowego Biura Rachunkowego
Program użytkowania w domu Microsoft® Office Professional Plus
Domain Specific Language Mac Michał Programujący architekt, konsultant.
Responsywne aplikacje w Windows 8 i.NET 4.5 Jakub Binkowski.
Sprawdzanie poczty głosowej 1.Kliknij kartę Telefon. Zostaną wyświetlone wiadomości i informacje o osobach dzwoniących. 2.Zatrzymaj wskaźnik na wiadomości.
Obiektowe metody projektowania systemów Abstract Factory design pattern (aka. Kit)
Podręczna karta informacyjna dotycząca programu Lync 2013 POUFNE. Dystrybucja wyłącznie do partnerów objętych umową o zachowaniu poufności. Firma Microsoft.
POUFNE. Dystrybucja wyłącznie do partnerów objętych umową o zachowaniu poufności. Firma Microsoft nie udziela żadnych gwarancji, wyraźnych ani domniemanych.
Znajdowanie pokoju i wchodzenie do niego Skorzystaj z funkcji wyszukiwania programu Lync w celu znalezienia pokojów, do których masz dostęp. 1.W oknie.
Podręczna karta informacyjna dotycząca funkcji wideo Rozpoczynanie połączenia wideo 1.Zatrzymaj wskaźnik na zdjęciu kontaktu i kliknij przycisk kamery.
X DYSKUSYJNE FORUM UBEZPIECZEŃ KOMUNIKACYJNYCH 1 GRUDNIA 2015 AIRPORT HOTEL OKĘCIE, WARSZAWA, UL. 17 STYCZNIA 24 NAJWAŻNIEJSZA.
A long time ago, in Redmond far, far away…. WSTĘP DO PRISM 5.0 Jak przygotować aplikację WPF do współpracy z Prism? Łukasz Rabiec
Prezentacja Informacyjna. O firmie: Na rynku od 1998 roku (specjalizacja w systemach CRM) Inkubator. Pomysły => projekty => firmy 2001 / Nagroda Deloitte.
Zintegrowane systemy informatyczne
Tworzenie dokumentacji w systemie Doxygen Paweł Strużyński 25 maja 2011.
Komunikacja pomiędzy luźno powiązanymi komponentami Mateusz Sionkowski.
Pierwsza w Polsce porównywarka w zakresie usług branży poligraficznej. PaperPrint.pl.
MIESZKANICZNIK evenem.pl.
Przygody z EventSourcing i CQRS
Zapis prezentacji:

Projektowanie skalowalnych architektur z wykorzystaniem zaawansowanych technik DDD Michał Mac macmichal.pl

 Michał Mac  Architekt, konsultant | macmichal.pl   Kontakt z prelegentem

 Po sesji będziesz  Wiedział\a jak projektować autonomiczne komponenty.  Znał\a sposoby luźnego ich wiązania. Cel sesji

DDD book

 Oprogramowanie modułowe.  Czym jest Bounded Context?  Zaawansowane techniki DDD łączenia BC. Plan prezentacji

Modularność

Projekt systemu Projekt

Czym jest produkt?

Projekt systemu Projekt

Projekt systemu

Wytyczona aplikowalność konkretnego modelu. BOUNDING CONTEXTS dają członkom zespołów jasne i spójne zrozumienie tego co musi być wspólne, a tego co może rozwijać się niezależnie od siebie. Bounded Context

DEMO Bounded Contexts

BC - komórki

Integracja BC

Jeśli klient w module CRM zostanie oznaczony jako VIP to nadaj rabat jego wszystkich niezatwierdzonym zamówieniom. Scenariusz

Interakcja CRM Bounded ContextSales Bounded Context

Interakcja CRM Bounded ContextSales Bounded Context

Interakcja CRM Bounded ContextSales Bounded Context EventBroker

public interface IDomainEventPublisher { void Publish (T domainEvent) where T : IDomainEvent; } EventBroker

public interface IDomainEventPublisher { void Publish (T domainEvent) where T : IDomainEvent; } public interface IEventSubscriber { void Subscribe(IEventListener listener); void Unsubscribe(IEventListener listener); } EventBroker

public interface IEventListener { } public interface IEventListener : IEventListener { void Handle(TEvent eventData); } EventBroker

DEMO Domain Events

Jeśli zamówienie zostanie zatwierdzone to dział wysyłki powinien rozpocząć realizację zamówienia. Scenariusz

public class SimpleEventPublisher : IEventSubscriber, IDomainEventPublisher { private ConcurrentHashSet _eventHandlers = new ConcurrentHashSet (); public void Subscribe(IEventListener listener) { _eventHandlers.TryAdd(listener); } public void Unsubscribe(IEventListener listener) { _eventHandlers.TryRemove(listener); } public void Publish (T domainEvent) { foreach (var handler in _eventHandlers) if (handler is IEventListener ) ((IEventListener ) handler).Handle(domainEvent); } Implementacja

In-memory Message bus Możliwe implementacje

Inne zastosowania

Lista faktur

Lista klientów + saldo

 CqRS  Event sourcing  UI  Aggregator  Integracja z logiką domenową Inne zastosowania

Zdarzenia out-of-order

Niektórym zaufanym klientom wysyłamy towar bez dokumentu zamówienia. Scenariusz

Saga to model złożonego procesu, którego stan jest trwały oraz zależy od wielu zdarzeń. Saga

DEMO Saga

 Bounded Context  Domain Events  Saga Podsumowanie

 Michał Mac  Architekt, konsultant | macmichal.pl   Dziękuję za uwagę

  Linki

Organizatorzy MTS czytają wszystkie ankiety. Dzięki nim masz realny wpływ na konferencję oraz merytorykę i prelegentów kolejnego MTS. Wystarczy 5 minut Twojego czasu na wypełnienie ankiety! Masz szansę wygrać m.in. wejściówkę na MTS 2013 (25x) oraz inne nagrody. Gdzie i jak?  Ankiety dostępne są online – na stronie konferencji (konferencjamts.pl)  Można je wypełnić od dziś, aż do 11 listopada 2012 Wypełnij ankietę i wygraj nagrody!

 Strefa ATE dostępna jest w strefie Partnerów  Zapraszamy wszystkich zainteresowanych poszerzeniem wiedzy  Eksperci będą do Państwa dyspozycji Strefa Ekspertów (ATE)

© 2012 Microsoft Corporation. Wszelkie prawa zastrzeżone. Microsoft, Windows oraz inne nazwy produktów są lub mogą być znakami towarowymi lub zastrzeżonymi znakami towarowymi firmy Microsoft w Stanach Zjednoczonych i innych krajach. Zamieszczone informacje mają charakter wyłącznie informacyjny. FIRMA MICROSOFT NIE UDZIELA ŻADNYCH GWARANCJI (WYRAŻONYCH WPROST LUB DOMYŚLNIE), W TYM TAKŻE USTAWOWEJ RĘKOJMI ZA WADY FIZYCZNE I PRAWNE, CO DO INFORMACJI ZAWARTYCH W TEJ PREZENTACJI.