Interviewing Domain Experts

Domain objects can be identified by interviewing domain experts or from requirements document. The domain objects can be categorized into following three types:

  1. Business objects that are things used in a business. These are abstractions such as invoice, account etc.
  2. Real-world objects or concepts that a system keeps track. E.g., Book, Boat etc.
  3. Events that occur such as gate closing, train arrival etc.

This technique can also be used to find the services provided by the objects. Domain experts have very good knowledge in their domain. Interview domain experts and use abstraction to identify classes and services. This approach utilizes their domain expertise and is likely to result in a high quality domain model.

Also this technique can be used in conjunction with other techniques to find the missing domain objects and services. This will improve the quality of the domain model. If this is the case then we get feedback from the domain experts for the results we got from other techniques.

Major drawbacks include that it can result in analysis paralysis (how many experts? what if they disagree?) and the inability to trace the abstractions back to requirements.