In der (Software-)Technik ist eine Anforderung (häufig englisch requirement) eine Aussage über eine zu erfüllende Eigenschaft oder zu erbringende Leistung eines Produktes, Systems oder Prozesses.
Anforderungen werden in der Anforderungserhebung aufgenommen, analysiert, spezifiziert und verifiziert. Der Prozess ist in das Anforderungsmanagement eingebettet. Anforderungen können beispielsweise in einem Dokument (z. B. Lastenheft) oder in einem Tabellenkalkulationssystem dokumentiert werden. In agiler Softwareentwicklung kommt Anforderungsmanagement-Software zum Einsatz, die das Anforderungsmanagement unterstützt (Backlog in Scrum, Jira etc.).