Domain (software engineering)

Target subject of a computer program

For other uses, see Domain.

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, one defines 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]

## See also

[edit]

* Domain-driven design
* Domain-specific programming language
* Domain model
* Programming domain

## References

[edit]

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?". Archived from the original on May 31, 2025. Retrieved June 1, 2025.
3. ^ Eric Evans (2015). "Domain Driven Design Reference: Definitions and Pattern Summaries" (PDF). domainlanguage.com. Retrieved May 2, 2020.

This computer-programming-related article is a stub. You can help Wikipedia by expanding it.

|

* v
* t
* e

*[v]: View this template
*[t]: Discuss this template
*[e]: Edit this template