In software engineering, domain analysis, or product line analysis, is the process of analyzing related software systems in a domain to find their common and variable parts.
The term was coined in the early 1980s by James Neighbors.
It is a key method for realizing systematic software reuse.
This approach to domain analysis is sometimes called model-driven engineering.
In information science, the term "domain analysis" was suggested in 1995 by Birger Hjørland and H.