Being part of domain engineering, domain analysis enables identifying domains and capturing their ontologies in order to assist and guide system developers to design domain-specific applications. Domain analysis should consider commonalities and differences of systems in a domain, organize an understanding of the relationships between the various elements in that domain, and represent this understanding in a formal, yet easy to use, way. Several studies suggest using metamodeling techniques for modeling domains and their constraints. These metamodels are basically structural and present static constraints only. We propose an Application-based DOmain Modeling (ADOM) approach for domain analysis. This approach treats a domain as a regular application that needs to be modeled before systems of that domain are specified and designed. This way, the domain structure and behavior are modeled, enforcing static and dynamic constraints on the relevant application models. The ADOM approach consis...