Better Software Design

Better Software Design podcast. Rozmowy o projektowaniu oprogramowania, architekturze i wyzwaniach z tym związanych.
Technologia
47. O nauce DDD i bi-temporalnych eventach domenowych z Andrzejem Krzywdą
2022-12-20 01:00:00
Materiały dodatkowe:
- Bitemporal History, wpis na blogu Martina Fowlera na temat problemu modelowania bitemporalnego
- As Time Goes By…, a Bi-temporal Event Sourcing story, prezentacja - Thomas Pierrain z konferencji DDD Europe 2018
- 4 Strategies for future events with Event Sourcing, strategie rozwiązywania problemu "zdarzeń z przyszłości"
- Eventsourcing Patterns: Multi-temporal Events, wpis na blogu Mathiasa Verraesa na temat rozróżniania momentu rejestracji zdarzenia i zmiany przez niego opisywanej
- Patterns for Decoupling in Distributed Systems: Summary Event, kolejny wpis Matthiasa na temat emisji pojedynczego eventu summary zamiast całego streamu zdarzeń
Materiały od zespołu Arkency:
- Fixing the past and dealing with the future using bi-temporal EventSourcing, wpis Łukasza Reszke na blogu Arkency
- Take advantage of Turbo Streams in event handlers, wpis Piotra Jurewicza na temat aktualizacji read-modeli i UI aplikacji
- Speed up aggregate roots loading with snapshot events, wpis Piotra Jurewicza na temat odtwarzania stanu agregatu z użyciem snapshottingu
- RailsEventStore/ecommerce, repozytorium z kodem poligonu doświadczalnego aplikacji ecommerce z użyciem RailsEventStore
- Demo ecommerce, prosty interfejs www powyższej aplikacji
46. O testowaniu mutacyjnym z Marcinem Zajączkowskim
2022-12-13 01:00:00
Materiały dodatkowe:
- Testowanie mutacyjne, prezentacja Marcina na temat testowania mutacyjnego z konferencji Boiling Frogs 2016
- Slajdy prezentacji
- Jak szybkie (lub wolne) jest testowanie mutacyjne?, artykuł Marcina na temat szybkości testowania z mutantami, na przykładzie PIT i projektów FOSS
- Blog Marcina
- Twitter Marcina
Przykładowe narzędzia testowania mutacyjnego:
- Java, PIT - https://pitest.org/
- Java, Arcmutate - https://www.arcmutate.com/
- .NET, Stryker.NET - https://stryker-mutator.io/
- JavaScript, Stryker.JS - https://stryker-mutator.io/
- PHP, Infection - https://infection.github.io/guide/
- PHP 5.x (historycznie), Humbug - https://github.com/humbug/humbug
- Ruby, Mutant - https://github.com/mbj/mutant
- Python, Mutmut - https://mutmut.readthedocs.io/en/latest/
- Python, Mutatest - https://mutatest.readthedocs.io/en/latest/
- Python, Cosmic Ray - https://cosmic-ray.readthedocs.io/en/latest/
45. O testowalności oprogramowania z Kamilem Grzybkiem
2022-11-29 01:00:00
Materiały dodatkowe:
- An Introduction to General Systems Thinking , książka Geralda M. Weinberga
44. O programowaniu reaktywnym z Tomkiem Nurkiewiczem
2022-11-15 01:00:00
Materiały dodatkowe:
- Reactive programming: lessons learned, prezentacja Tomka z konferencji JDD 2018
- What Color is Your Function?
- RxMarbles, interaktywne diagramy Rx
- nurkiewicz.com, strona Tomka i jego podcastu Around IT in 256 Seconds
- Reactive Programming with RxJava: Creating Asynchronous, Event-Based Applications
Narzędzia:
- ReactiveX, pełna lista wspieranych języków jest na tej stronie
- Spring Reactive
- Project Reactor
- RxJS
43. O subdomenach biznesowych ze Sławkiem Sobótką
2022-11-01 01:00:00
Aktualizacja... Podczas publikacji odcinka niestety nie zapisały się linki do książek.
- Enterprise Patterns and MDA: Building Better Software with Archetype Patterns and UML, Jim Arlow, Ila Neustadt
- Analysis Patterns: Reusable Object Models, Martin Fowler, z przedmową Ralpha Johnsona i Warda Cunninghama
- Data Model Patterns: Conventions of Thought, David C. Hay
- The Data Model Resource Book: A Library of Universal Data Models for All Enterprises, Len Silverston - książek z tej serii jest kilka, kolejne dotykają różnych domen biznesowych lub są rozwinięciem poprzedniego wydania
Mały komentarz w kwestii powyższych pozycji... Moim zdaniem nie są to książki, które czyta się od przysłowiowej deski do deski. Są to katalogi modeli lub pomysłów, po które się sięga w razie potrzeby, gdy spotyka się dany problem. Oczywiście niektóre problemy są bardziej uniwersalne i powszechne, choć literatura nie klasyfikuje tego w ten sposób. Niezależnie od tego, trzeba te koncepty przefiltrować przez własne doświadczenie.
42. O analizie biznesowej i systemowej z Moniką Perendyk
2022-10-18 01:00:00
Materiały dodatkowe:
- Software Requirements, Karl Wiegers, Joy Beatty, wydanie III
- Requirements Engineering Fundamentals: A Study Guide for the Certified Professional for Requirements Engineering Exam - Foundation Level, Klaus Pohl, Chris Rupp
- Specification by Example: How Successful Teams Deliver the Right Software, Gojko Adzic
- Facylitacja-wiedza, umiejętności, sztuka czy magia
Na stronie Moniki można też przeczytać kilka artykułów na tematy, które zostały poruszone w rozmowie:
- Wymaganie biznesowe a reguła biznesowa
- Atrybuty wymagania
- Kategoryzacja wymagań
- Dług techniczny
- Adaptowanie produktu w czasach kryzysu, czyli czym jest PIVOT
Monikę można obserwować m.in. na Instagramie lub LinkedIn.
41. O Domain Storytelling z Maciejem Jędrzejewskim
2022-10-04 01:00:00
Materiały dodatkowe:
- Domain Storytelling Quick Start Guide, szybkie wprowadzenie do techniki
- Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software, Henning Schwentner oraz Stefan Hofer
- Find Context Boundaries with Domain Storytelling, prezentacja Henninga Schwentner oraz Stefana Hoferz konferencji DDD EU 2018
- LeasingNinja, przykład z użyciem Domain Storytellingu
- Egon.io, proste narzędzie do wizualizacji historyjek
- Egion.io - examples, repozytorium z kilkoma przykładami do Egon
40. O architekturze frontendu z Tomaszem Ducinem
2022-09-27 01:00:00
Materiały dodatkowe:
- The Testing Trophy And Testing Classification, artykuł Kenta C. Doddsa dotyczący zmiany struktury testów w projekcie
- GOTO Conferences, nagrania z różnych edycji konferencji GOTO
Pozwoliłem też sobie wybrać kilka konkretnych prezentacji z GOTO:
- Structure and Interpretation of Test Cases, Kevlin Henney, GOTO 2022
- When To Use Microservices (And When Not To!), Sam Newman & Martin Fowler, GOTO 2020
- The Many Meanings of Event-Driven Architecture, Martin Fowler, GOTO 2017
39. O driverach architektonicznych z Kubą Pilimonem
2022-09-20 01:00:00
Materiały dodatkowe:
- Software Architecture for Developers, książka Simona Browna
- Design It! : Pragmatic Programmers: From Programmer to Software Architect, książka Michaela Keelinga
- Thinking Architecturally, książka Nathaniela Schutty
- Thinking Architecturally, prezentacja Nathaniela związana z powyższą książką