Strategiczne Domain-Driven Design
Strategiczne podejście w Domain-Driven Design (DDD) koncentruje się na organizacji i podziale złożonych systemów informatycznych na wyraźnie zdefiniowane części, zwane kontekstami ograniczonymi. Obejmuje identyfikację i modelowanie kluczowych obszarów domeny oraz określanie relacji między nimi. To podejście pomaga w zarządzaniu złożonością poprzez wyodrębnianie niezależnych subdomen i definiowanie granic ich odpowiedzialności. Strategiczne DDD wykorzystuje wzorce takie jak mapy kontekstów, które ilustrują współdziałanie różnych części systemu.
Strategiczne Domain-Driven Design to podejście do projektowania oprogramowania skupione na modelowaniu domeny biznesowej i podziale złożonych problemów na mniejsze obszary. Bywa łączone z określaniem subdomen, organizacją modułów oraz technikami wspierającymi rozwój i utrzymanie aplikacji.
Testowanie zachowania
Testowanie zachowania pozwala sprawdzać system z perspektywy reguł i oczekiwań biznesowych.
- Testy BDD mogą pomóc zweryfikować prawidłowość logiki biznesowej.
- Scenariusze testowe warto formułować jako przykłady obserwowalnego zachowania systemu, tak aby wynik można było ocenić na podstawie tego, co system robi po otrzymaniu określonych danych.
Dokumentowanie działania
Testy BDD opisują działanie aplikacji w sposób zrozumiały dla osób zaangażowanych w jej rozwój.
- Mogą służyć jako dokumentacja działania aplikacji, ponieważ przedstawiają oczekiwane zachowanie w konkretnych sytuacjach.
- Mogą również tworzyć listę zmian w aplikacji, pokazując, jakie zachowania zostały dodane lub zmodyfikowane.
Modelowanie domeny
Model domeny porządkuje złożoność biznesową, wyodrębniając obszary o odmiennych celach i regułach.
- W dużej firmie subdomena może być również domeną.
Modułowa organizacja zmian
Modułowa organizacja zmian pozwala wprowadzać nowe funkcjonalności w sposób bardziej uporządkowany i odseparowany od istniejącego kodu.
- Dodanie nowej funkcjonalności jako osobnego modułu może zmniejszyć obciążenie poznawcze.
- Takie podejście może również ograniczyć ryzyko regresji.
Praktyki wytwarzania
Praktyki wytwarzania pomagają przekładać cele projektowe na małe, szybko sprawdzane kroki implementacji.
- Programowanie w tył, czyli rozpoczynanie od oczekiwanego rezultatu i cofanie się do decyzji potrzebnych po drodze, może ułatwić skupienie na celu.
- W TDD testy powinny wykonywać się w czasie krótszym niż sekunda, aby częste uruchamianie ich nie spowalniało pracy.
Twierdzenia w tym opracowaniu
- Testy BDD mogą pomóc zweryfikować prawidłowość logiki biznesowej1 źródło
- Testy BDD mogą służyć jako dokumentacja działania aplikacji1 źródło
- Testy BDD mogą służyć jako lista zmian w aplikacji1 źródło
- W dużej firmie subdomena może być również domeną1 źródło
- Dodanie nowej funkcjonalności jako osobne moduły może pomóc zmniejszyć obciążenie poznawcze1 źródło
- Dodanie nowej funkcjonalności jako osobnego modułu może zmniejszyć ryzyko regresji1 źródło
- Technika programowania w tył może pozwolić skupić się na celu1 źródło
- Aby wykonywać TDD testy powinny wykonywać się w mniej niż sekundę1 źródło