Ohjelma
Tiistaina 1.12.
Software Architecture Fundamentals
- Understanding complexity and why software projects fail
- Building shared mental models
- Architecture documentation techniques
Discovering the Domain
- Event Storming for business process discovery
- Introduction to Domain-Driven Design (DDD)
- Ubiquitous Language and Bounded Contexts
Designing the Domain Model
- Aggregates and entity design
- Modeling systems using Event Modeling
- From business requirements to architecture
Data and State Management
- Database theory
- Choosing between SQL and NoSQL
- Introduction to Event Sourcing
Conclusion of the day
Keskiviikkona 2.12.
Event-Driven Architectures in Practice
- Event Sourcing implementation
- Separating reads from writes
- CQRS principles and architecture
Building Reliable Applications
- Testing and Behavior-Driven Development (BDD)
- Application resiliency
- Circuit breakers and error handling
Architectural Styles
- The monolith: when it still makes sense
- Microservices architecture
- Migrating from monolith to microservices (and back again)
Putting It All Together
- Core architectural concepts for distributed applications
- Combining DDD, Event Sourcing and CQRS
- Architecture patterns, trade-offs and best practices