In “Talking Models and Domains to Enterprise Applications”, I called the domains as “application system technical domain” and “applied domain”, which an enterprise application should be involved in. I wanted to highlight a complete, clear distinction for the related things, but it appears somewhat not very well or satisfied. In the discussion on MDSN, Rui Curado and Andreas Leue offered some apropos comments. Reference to their views, do a bit of improvement again, and adding more explanation for my view, see the figure below.
A little of summary:
- All the things involved in an enterprise application can be divided into two basic domains – referred to Andreas’ comments – may call them as IT domain and business domain. They are a basic background to discussing about enterprise applications.
- About the concepts of Solution Domain and Problem Domain. They may be seen as a part of IT domain and business domain, roughly – it would need more discussion.
- Thus, as the place of the system model (black-box) and application system in the figure, the intermediate region should be a focus to us: for such the topic of separation of concerns and the bridge over the gap between business and IT.
In much discussions about the subject, the AS IS and TO BE distinction was ignored, I want to highlight that, this is an significant understanding for some sort of applications, such as enterprise applications: an application is not mechanically inserted into the old business (AS IS) but will be an organic component of a new business (TO BE).