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. It is a model of wider business context for the system. The term was coined in the early 1980s by James Neighbors.[1][2] Domain analysis is the first phase of domain engineering. It is a key method for realizing systematic software reuse.[3]
Domain analysis produces domain models using methodologies such as domain specific languages, feature tables, facet tables, facet templates, and generic architectures, which describe all of the systems in a domain. Several methodologies for domain analysis have been proposed.[4]
↑Neighbors, J.M. Software Construction using Components. Technical Report 160, Department of Information and Computer Sciences, University of California, Irvine, 1980.
↑Neighbors, J.M. "The Draco Approach to Constructing Software from Reusable Components". IEEE Transactions on Software Engineering, SE-10(5), September 1984.
↑Frakes, W.B. and Kyo Kang, (2005), "Software Reuse Research: Status and Future", IEEE Transactions on Software Engineering, 31(7), July, pp. 529-536.
↑B. Hjørland, H. Albrechtsen, "Toward a New Horizon in Information Science: Domain-Analysis", Journal of the American Society for Information Science, No. 6, vol. 46 (1995), pp. 400-425