Blog Logo
TAGS

Event Versioning: Pros and Cons of the Most Common Options

You have decided to adopt an event-driven architecture, modeled your events, and decided what style of event you will expose. One of the aspects that I recommended was for you to add to the events the...

Read more...

Rethinking Architectural Boundaries: From Layered to Vertical Slice Architecture

When it comes to building strong and reliable software and creating a sustainable design, the aim should always be to reduce complexity and make the code easy to understand. This article discusses the...

Read more...

How to design software architecture pragmatically

I’ve run numerous workshops in recent years. It’s intriguing to see different ways people solve the same problem. Some start from general vision and go into details, some the other way. Each approach ...

Read more...

Cell-Based Architecture — Architecture Pattern

Cell-based architecture in computing involves designing systems that consist of interconnected cells, each cell capable of executing tasks independently. Like the cells in a biological organism, these...

Read more...

The Architecture Heat Map - Communicating Progress for Software Projects

Communicating progress and plan of action for a software project is important to coordinate other aspects of the project. Lack of transparency can cost time and money. Using architectural diagrams in ...

Read more...

Evolution and Systems Architecture | by Ivan Padabed | system5.dev | Sep, 2023 | Medium

The “Evolutionary Architecture” phrase has already been coined by Neal Ford, Rebecca Parsons, and Patrick Kua in their excellent book “Building Evolutionary Architectures,” but I would like to add a n...

Read more...

Ultimate .NET Project Setup with Clean Architecture and Domain-Driven Design

An opinionated ASP.NET Core solution setup for creating web applications using Clean Architecture and Domain-Driven Design principles. This setup follows all the latest modern practices and includes f...

Read more...

Map Camp: Weird Mapping - How to Create a Revolution

Dave Anderson spoke at Map Camp on How to Create a Revolution. The event includes talks and workshops about mapping techniques used in organizations. The session discussed mapping essential elements f...

Read more...

Complex Software is an Occupational Health Hazard!

!Complex Software is an Occupational Health Hazard! # Whaally.Domain [![NuGet Badge](https://img.shields.io/nuget/v/Whaally.Domain)](https://www.nuget.org/packages/Whaally.Domain) The goal of the `Wh...

Read more...

Mapper Contexts & Supercontexts: Decoupling Domain-Specific and Domain-Generic Bounded Contexts

You’re building a new system and two members of your team propose alternative architectures for sending notifications. The first developer proposes a push model: bounded contexts should instruct the n...

Read more...

Easily build resilient applications using distributed durable async/await

Restate allows you to easily build resilient applications by providing distributed durable async/await functionality. With Restate, you can write RPC handlers that execute reliably, recover partial pr...

Read more...

Software Architects are building on Centuries of Architectural Discipline

After my son was accepted to architecture design school, I became fascinated with the connection between designing physical structure and designing complex software. Of course, there are unique aspect...

Read more...

Best Observability Tools for Microservices

Microservices architecture has become popular among developers due to its scalability and flexibility. This article discusses 10 observability tools tailored explicitly for microservices architectures...

Read more...

StranglerFigApplication - Legacy Rehab and Application Architecture

When rewriting an important system, the Strangler Fig Application metaphor offers a gradual approach, reducing risk and allowing new value to appear earlier. By gradually creating a new system around ...

Read more...

The Magic of Message Orchestration

Message orchestration can be a key to implementing component models that deliver on the promise of microservices without the complexity and performance penalties so frequently paid. A message orchestr...

Read more...

5 Ways to Standout as an Architect

Forget about technical mastery; focus on breadth. Improve communication skills. Learn to capture impeccable notes. Develop analytical problem-solving skills. Prioritize delivery without compromising q...

Read more...

Graphic Design for Software Engineers and Architects

As engineers, we often use technical diagrams that can be difficult for others to understand. Graphic design can make these diagrams clean and visually appealing, improving communication and comprehen...

Read more...

The Past, Present, and Future of Data Architecture

A journey through time and the introduction to data mesh. Becoming a data-driven organization remains one of the top strategic goals of many companies. Data-driven means placing data at the center of ...

Read more...

Outbox pattern with session per request

The outbox pattern ensures that some actions are going to happen if and only if some other set of actions succeeds first. The most common implementation is a transactional outbox. Here, actions, expre...

Read more...

Scaling Your Artifacts With Your Team

The term microservices has become ubiquitous in our industry, promising framework freedom and stability through asynchronous communication. However, the consensus on microservices as a superior archit...

Read more...