Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 14198
  • Last Modified:

What is the difference between Domain Class Diagram and Design Class Diagram


I want to know the difference between Domain Class Diagram and Design Class Diagram. Also, what are the classes should it includes?

Thank you very much!

  • 2
1 Solution
A domain class diagram models the concepts in the problem space.   Typically a domain class diagram just shows the name of the classes and helps model the vocabulary of the problem space.  A design class diagram is, as you'd expect, to help model the actual design concepts.  Obviously this has more detail than the domain diagram, because it must model the fine-grained concepts of implementation.  

As an example, if you had to implement a design pattern, the classes needed to support this would not be in the domain class model (after all the design pattern is to solve a particular problem, not the general one).  

In short - the domain class diagram models the high level concepts in the system, not the implementation details.  

In this respect the domain class diagram can be compared to a platform independent model (PIM).  The domain class digram should be modelled without concern for the underlying implementation language.

Hope that helps!
charles_cpAuthor Commented:
Thank you for your help! It is so abstract!

For example, there is a online order system. A registered user must login first. Next, the user selects the item from the item list. Then, the user enter the address ,and delivery date. After that, the user confirm all of the details. Last, system shows the payment.

In this case, what are the classes of domain class diagram and design class diagram?

Domain classes would be all the things that are implementation independent

Delivery Address
Delivery Date

In the design class we'd need to be more specific to the implementation of the language.  For example, we might want to implement the Strategy pattern for the Payment class (so we could deal with sales taxes in a variety of countries), so we'd now start to model that, we'd end up with a number of more specific classes (see http://www.exciton.cs.rice.edu/JavaResources/DesignPatterns/StrategyPattern.htm for the general idea).
Syeda JeeCommented:
What is the relationship between domain model and class diagram?

Featured Post

Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now