Domain = A sphere of knowledge, influence, or activity
Domain = A field or industry in which the business operate
Domain = Represents a problem space from software perspective
Each business Domain is composed of Sub-Domains. In an organization there are multiple Subject Matter Experts (SME) that hold intimate knowledge of one or more sub-domains. For example in a banking domain, there are SME’s on retail banking, loan products, credit cards etc.
Business may not operate in all sub domains in that overarching domain (industry). It depends on the focus of the business.
Sub-domains are categorized into 3 types based on their complexity & business value:
Core - This is the Differentiator for the business. Core sub-domains give a competitive edge to the business. E.g., Walmart’s supply chain
Supporting - Does not provide business a competitive advantage but core depends on it!! E.g., Amazon’s customer support
Generic - Known solutions exist for such subdomains. E.g., Human Resource functions in an enterprise
Here is a decision flow on assigning a type to the sub-domain.
Understanding of sub domain types help with the decision making process on to which domain resources should be allocated.
Here are examples of action taken based on domain category:
The circumstances or facts that form the setting for a statement, event or idea
For understanding the Business Domain, it is a MUST that IT teams understand the business context
Refer to the illustration below - you are told that a “Customer deposited to the account”. This action has a different meaning in the context of different types of accounts.
Credit card - means that customer paid the credit card bill
Saving account - means that customer deposited money that will be available for withdrawal
Merchant account - it may mean that customer paid some form of merchant fee
For this reason one MUST understand the Context to understand the business domain.
To understand a Domain and IT expert must understand the: