An
artifact is one of many kinds of tangible by-products produced during the development of software. Some artifacts (e.g.,
use cases,
class diagrams, and other
Unified Modeling Language (UML) models, requirements and design documents) help describe the function, architecture, and design of software. Other artifacts are concerned with the process of development itself—such as project plans, business cases, and risk assessments.