Sławomir Sobótka

Bio:

Programujący architekt aplikacji specjalizujący się w technologiach Java i efektywnym wykorzystaniu zdobyczy inżynierii oprogramowania. Trener i konsultant w firmie Bottega IT Solutions (http://bottega.com.pl). Entuzjasta Software Craftsmanship.

Do jego zainteresowań należy szeroko pojęta inżynieria oprogramowania: architektury wysokowydajnych systemów webowych (w szczególności CqRS), modelowanie (w szczególności DDD), wzorce, zwinne procesy wytwórcze. Hobbystycznie interesuje się psychologią i kognitywistyką.

W wolnych chwilach działa w community jako: prezes Stowarzyszenia Software Engineering Professionals Polska (http://ssepp.pl), lider lubelskiego Java User Group, publicysta w prasie branżowej i blogger.

W naprawdę wolnych chwilach umila sobie czas przy pomocy turbo-benzynowego silnika, PS3, audiofilskiego zestawu stereo tudzież nocnika małej córeczki;)

Wykład:

Domain Driven Design – sposób na modelowanie złożonych dziedzin biznesowych (wprowadzenie do warsztatu)

Czy zastanawialiście się co jest przyczyną rozkładu średnich i dużych systemów? Czy jest on nieunikniony i jest jedynie kwestią czasu? Może jednak istnieje jakiś sposób na utrzymanie entropii w ryzach? Jednak czy pomocny może być nowy język, nowa specyfikacja servera, nowy framework webowy, nowy kolor karteczek przyklejanych na tablicy, nowe fancy-japońskie słówko?

Na pewno w jakimś stopniu, ale czy w wystarczającym?

Podczas prezentacji zobaczymy w jaki sposób Domain Driven Design pomaga w okiełznaniu chaosu na poziomie modelu. Modelu, który jest sercem złożoności w większości systemów klasy biznesowej.

W prezentacji znajdą się techniki modelowania wchodzące w skład DDD,takie jak:

  • Building Blocks,
  • Ubiquitous Language,
  • Bounded Context,
  • Strategic Design,
  • Architektura z rozwarstwieniem logiki.

 

Zostaną przedstawione również podstawowe jak i zaawansowanetechniki implementacji DDD:

  • przykłady Building Block,
  • Command-query Responsibility Segregation,
  • system zdarzeń oraz modelowanie Sagi biznesowej
  • przypadki racjonalnego wykorzystania zarówno ORM jak i czystego SQL

 

Wykład będzie wstępem do warsztatu, który odbędzie się drugiego dnia konferencji

Warsztat:

Domain Driven Design – sposób na modelowanie złożonych dziedzin biznesowych

Opis Projektu na warsztaty:

Podczas warsztatów będziemy rozwijać moduł systemu klasy ERP na podstawie przykładowego projektu ilustrującego techniki modelowania Domain Driven Design oraz architekturę Command-query Responsibility Segregation na platformie Java (Spring, Hibernate).

Projekt to coś więcej niż jedynie przykład, ale zdecydowanie nie jest to kolejny frameowork… zaczyn – coś z czego robi się dobry chleb.

Założenia projektu:

  • Prezentacja wszystkich Building Blocks DDD w niestrywializowany sposób
  • Prezentacja zaawansowanych technik DDD (np. Bounded Context)
  • Prezentacja rzeczywistych technik implementacji, gotowych do wdrożenia w kodzie produkcyjnym
  • Prezentacja pragmatycznego podejścia do implementacji CqRS
  • Dostarczenie rzetelnie wykonanego, wzorcowego kodu źródłowego
  • Przyjęto nieinwazyjną filozofię – ograniczenie wpływu technologii na kształt projektu
  • Opracowany styl architektoniczny jest przenośny na inne frameworki i platformy
  • Przykłady podejścia do testowania jednostkowego, integracyjnego i akceptacyjnego – z wykorzystaniem Behavior Driven Development (JBehave, Selenium, model Agentów)

Wymagane na warsztatach

Laptop (będziemy programować w parach)

Ulubione środowisko dev + Maven

Server będący kontenerem servletów – może być tomcat

***Najważniejsze: należy pobrać projekt:
http://bottega.com.pl/ddd-cqrs-sample-project

Na wypadek problemów z siecią dobrze wcześniej zainstalować go sobie w lokalnym repo tak aby Maven pobrał wcześniej pluginy i liby.
Bardzo gorąco namawiamy do zapoznania się z wiki projektu, która wyjaśnia podejście i decyzje projektowe:
http://code.google.com/p/ddd-cqrs-sample/wiki/TableOfContents

Limit uczestników: 30

Prowadzący: Sławomir Sobótka, Rafał Jamróz



  • jdd

Organizator

Złoci sponsorzy

  • e-point
  • j-labs

Srebrni sponsorzy

  • Lumesse
  • Luxoft
  • SII

Sponsorzy

  • Redhat
  • WITS

Sponsor Afterparty

  • WITS

Patroni medialni

  • helion
  • Polish JUG
  • Poznan JUG
  • SDJ