Bij software verwijzen vereisten naar de noodzakelijke componenten, software, bibliotheken of configuraties die aanwezig moeten zijn *voordat* een specifieke softwareapplicatie of -systeem kan worden geïnstalleerd en correct kan functioneren. Dit zijn feitelijk afhankelijkheden.
Voorbeelden van vereisten zijn onder meer:
* Specifieke besturingssysteemversies (OS): Voor een programma is mogelijk Windows 10 of hoger, macOS 12 of hoger of een specifieke Linux-distributie vereist.
* Runtime-omgevingen: Voor veel toepassingen, vooral die welke zijn geschreven in talen als Java of .NET, is een runtime-omgeving (JRE, .NET Framework, etc.) nodig.
* Bibliotheken en raamwerken: De software kan afhankelijk zijn van externe bibliotheken of raamwerken (zoals OpenGL voor grafische afbeeldingen of specifieke databasestuurprogramma's) om bepaalde taken uit te voeren.
* Specifieke hardware: Voor sommige software is mogelijk een bepaalde hoeveelheid RAM, een specifieke grafische kaart of andere hardwarecomponenten vereist.
* Andere softwareapplicaties: Een applicatie kan ervan afhankelijk zijn dat eerst een andere applicatie wordt geïnstalleerd (bijvoorbeeld een plug-in waarvoor een specifieke browser nodig is).
* Specifieke versies van andere software: Het is niet altijd voldoende dat er een voorwaarde is om te *bestaan*; het kan zijn dat het een specifieke versie of hoger moet zijn.
* API's: Sommige software is afhankelijk van een externe Application Programming Interface. Als de juiste versie van die API niet aanwezig is, mislukt de applicatie.
Als niet aan de vereisten wordt voldaan, zal de installatie van de software waarschijnlijk mislukken, of kan de software na de installatie vastlopen of defect raken. Installatieprogramma's controleren vaak op vereisten voordat ze verder gaan en rapporteren eventuele ontbrekende componenten. |