Course Objective & Scope
Unlike class-level GoF patterns, enterprise software architecture addresses system-wide concerns such as concurrency, data access strategies, cross-system integration, distributed consistency and high availability. This programme examines in depth the architectural and integration patterns that form the backbone of large-scale enterprise platforms.
Topics include PoEAA domain and data source patterns (Transaction Script, Domain Model, Unit of Work, Identity Map, Optimistic/Pessimistic Offline Lock), Enterprise Integration Patterns (Message Router, Content Enricher, Idempotent Receiver, Outbox), CQRS, modular monoliths vs distributed services, multi-tenant architectures and Architectural Fitness Functions. Participants design an end-to-end reference architecture and integration topology for an enterprise case.
Who Should Attend?
- Software, solution and enterprise architects
- Principal and senior engineers building high-volume applications and multi-system integrations
- Tech leads responsible for platform and core system design
- Prerequisite: experience with OO design patterns and enterprise backend development
Key Takeaways
- Select between Transaction Script, Active Record, Domain Model and CQRS based on domain complexity
- Design optimistic/pessimistic locking and distributed consistency patterns for long-running processes
- Build reliable messaging pipelines across heterogeneous systems using Enterprise Integration Patterns
- Enforce modular monolith boundaries in code with fitness functions such as ArchUnit or NetArchTest
- Incorporate multi-tenancy, caching topologies and disaster recovery requirements into the architecture
Curriculum
Enterprise Application Layers and Domain Logic Patterns (PoEAA)
- Comparing Transaction Script, Table Module, Active Record and rich Domain Model
- Proper boundaries for Data Mapper, Unit of Work and Repository patterns
- Service Layer, DTOs, Assemblers and cross-boundary data transfer costs
Concurrency, Session State and Consistency Patterns
- Optimistic and Pessimistic Offline Lock, Coarse-Grained Lock
- Limits of ACID, the BASE model and eventual consistency
- Logical and physical separation of read and write workloads with CQRS
Enterprise Integration Patterns (EIP)
- Point-to-Point, Publish-Subscribe, Dead Letter and Guaranteed Delivery channels
- Content-Based Router, Splitter, Aggregator, Process Manager and Scatter-Gather
- Transactional Outbox, Inbox/Idempotent Receiver and Claim Check patterns
Macro Architectural Styles, Scalability and Multi-Tenancy
- Modular monolith, SOA and microservice topologies
- Multi-tenant isolation models (silo, bridge, pool) and caching strategies
- High availability, active-active/active-passive setups and RPO/RTO targets
Architectural Governance and Fitness Functions
- Automated verification of architectural rules in CI/CD with ArchUnit / NetArchTest
- Enterprise reference architecture and integration design case workshop
Other Courses in This Category
-
Microservices with .NET, MassTransit and .NET Aspire
End-to-end .NET microservices with ASP.NET Core, .NET Aspire, YARP API Gateway, gRPC, MassTransit (RabbitMQ/Kafka), Polly resilience, Outbox and OpenTelemetry — hands-on training for teams building distributed .NET systems.
- Live Course
- 5 modules
-
Microservices with Java, Spring Boot and Spring Cloud
End-to-end microservices in the Java ecosystem with Spring Boot 3, Spring Cloud Gateway, OpenFeign/RestClient, Resilience4j, Spring for Apache Kafka, Debezium/Outbox, Micrometer Tracing and Testcontainers.
- Live Course
- 5 modules
-
API Development with GraphQL
Schema-first and code-first GraphQL design, queries/mutations/subscriptions, solving N+1 with DataLoader, authorisation, query complexity limits and Apollo Federation — for teams building a flexible client-server data layer.
- Live Course
- 5 modules
-
Software Modelling with Domain-Driven Design (DDD)
Ubiquitous language, Event Storming, Subdomain and Bounded Context mapping, and Aggregate/Entity/Value Object/Domain Event tactical patterns — for engineering and architecture teams modelling complex business domains.
- Live Course
- 5 modules
-
Inter-Service Communication with gRPC and Protocol Buffers
Protocol Buffers (proto3) schema design, HTTP/2 unary and streaming RPC models, schema governance with Buf, deadline/cancellation propagation, load balancing and mTLS security — for teams building low-latency inter-service communication.
- Live Course
- 5 modules
-
Data Structures and Algorithms for Software Engineers
Big-O time and memory complexity, array/hash table/tree/graph/heap data structures, searching and sorting, dynamic programming and cache-friendly design — for backend engineers processing high-volume data without bottlenecks.
- Live Course
- 5 modules
Get in touch