<p class="wp-block-paragraph">Welcome to 2022. While I was in a blogging hiatus, my time was spent closing out conversations with business and technology leaders looking to <strong>modernize</strong> their technology solutions as they were looking to adapt them new market needs and challenges. I thought Web3.0 was the big buzz word but it looks like Modernization is…More
Category Archives: business architecture
Sustainability as a key Software Architecture Choice
<p class="wp-block-paragraph">As an architect my day-to-day involves helping my clients solve wicked problems while delighting their customers and staying profitable and sustainable as a business. I do this by obsessively reasoning about <strong>software architecture and design</strong> choices. As an architect circa 2021 growing climate crisis has me concerned especially as the software industry and the…More
Domain Model != Data Model
<p class="wp-block-paragraph">One of the smells when practicing DDD (Domain Driven Design) is when you are presented with a Data Model (extracted from an existing set of tables or constructed through rigorous but confirmed hypotheses) and asked to consider this as your Domain Model</p> <p class="has-text-align-center wp-block-paragraph">Domain Model is not the same as a Data Model</p>…More
DDD Anti-patterns: 5 things we get wrong with Domain Driven Design in practice
<p class="wp-block-paragraph">As a software architect I have been using various design techniques including Domain Driven Design (DDD) which has been incredibly useful for building APIs and Microservices and for strategic architecture consulting engagements requiring discovery/mapping of socio-technical organisation structure and in documenting an API strategy </p> <p class="wp-block-paragraph">I have also been training architects across organisations…More
How does having an API Catalogue accelerate Business Integration?
<p class="wp-block-paragraph">An API Catalogue is a view of <strong>your business products</strong> <em>expressed</em> as <strong>technical services</strong> as visible to <strong>internal and external</strong> consumers to <strong>facilitate fast and self-service integration</strong> to deliver richer value to end customers and deliver it faster</p> <p class="wp-block-paragraph">An API Catalogue lets your customers <em>view</em> and <em>interact</em> with your <strong>product</strong> <strong>brouchre</strong></p> <p class="wp-block-paragraph">A…More
Mapping Business Capabilities to Services
<p class="wp-block-paragraph">One of the key questions around API strategy we get asked is <em>how do we map business capabilities to services</em>. An approach is to use domain driven design and build domain services, in this post we will look at what this looks like</p> <p class="wp-block-paragraph"><strong>Capabilities</strong> </p> <p class="wp-block-paragraph">Businesses domains offer capabilities. Given domains are…More
Domain Driven Design (DDD): Core concepts and Enterprise Architecture
<p class="wp-block-paragraph">If you are building or designing APIs, Microservices or integrating systems then Domain Driven Design (DDD) offers a valuable design technique for mapping business domains to build software services of value </p> <p class="wp-block-paragraph">Using DDD is incredibly useful when designing services because it helps you rationalise the granularity of your software, the ownership boundaries…More
DDD Context Mapping By Example: Customer Management and Customer 360
<p class="wp-block-paragraph">In the continuation from the previous post, here we look at how to do context mapping from sample real-world examples. In this post we look at how to model Customer Management from a customer support perspective and how Customer 360 would look like as a context map</p> <p class="wp-block-paragraph">With this post, I hope to…More
DDD Context Mapping by example: Policy Management
<p class="wp-block-paragraph">DDD context mapping can be confusing without real-world examples. In this post we will model sample implementations for two scenarios using bounded context maps and learn to analyse the relationships from the maps. With this post, I hope to give you a fair idea of how to do apply DDD into build good distributed…More
Strategic DDD and Context Mapping for Architects
<p class="wp-block-paragraph">Conway’s law says the structure of our organisation guides how we build software and this holds specially true today as we build distributed software services rapidly and at scale. </p> <p class="wp-block-paragraph">So how do we map business domains, technology services, engineering teams, communication patterns, dependencies as enterprise architects and integration domain architects? </p> <h2…More
User Journey, User Story vs Domain Story: What’s the difference?
<p class="wp-block-paragraph">While running DDD workshops with clients, I have had this question come up several times – “What is the difference between a Domain story vs a User Story?” </p> <p class="wp-block-paragraph">Here is a quick look at differences:</p> <ul class="wp-block-list"> <li><strong>User journey story:</strong> Is a technique for describing how the <strong>user interacts </strong>with our business…More
Tackling complexity: Using Process maps to improve visibility of integrated system features
<p style="font-size:12px;">“Entropy<em> always increases</em><span style="font-size:15px;"> “</span>– second law of thermodynamics</p> <p style="font-size:12px;">Enterprise systems are similar to isolated physical systems, where the entropy or hidden-information always increases. As the business grows, our technology footprint grows as new systems are implemented, new products and cross-functional features are imagined and an amazing network of integrations emerge</p> <p style="font-size:12px;">Knowing…More