Domain (software engineering)

In software engineering, domain is the targeted subject area of a computer program. Formally it represents the target subject of a specific programming project, whether narrowly or broadly defined.[1] For example, for a particular programming project that has as a goal of the creation of a program for a particular hospital, that hospital would be the domain. Or, the project can be expanded in scope to include all hospitals as its domain.[1]: 352  In a computer programming design, you define a domain by delineating a set of common requirements, terminology, and functionality for any software program constructed to solve a problem in the area of computer programming, known as domain engineering. The word "domain" is also taken as a synonym of application domain.[1]

Domain in the realm of software engineering commonly refers to the subject area on which the application is intended to apply. In other words, during application development, the domain is the "sphere of knowledge and activity around which the application logic revolves." —Andrew Powell-Morse[2]

Domain: A sphere of knowledge, influence, or activity. The subject area to which the user applies a program is the domain of the software. —Eric Evans[3]

  1. ^ a b c Bjørner, Dines (2006). "The Triptych of Software Engineering". Software Engineering 3 – Domains, Requirements, and Software Design (book). Vol. I. Springer Verlag. p. 9. ISBN 978-3-540-33653-2. Retrieved 2016-12-19.
  2. ^ Andrew Powell-Morse (April 21, 2017). "Domain-Driven Design - What is it and how do you use it?". Retrieved May 2, 2020.
  3. ^ Eric Evans (2015). "Domain Driven Design Reference: Definitions and Pattern Summaries" (PDF). domainlanguage.com. Retrieved May 2, 2020.