järjestelmäriippuvuus
Järjestelmäriippuvuus tarkoittaa ohjelmiston riippuvuutta tietyn ympäristön tarjoamista ominaisuuksista, kuten käyttöjärjestelmän rajapinnoista, järjestelmäkirjastoista ja laitteistosta. Se kuvaa tilanteita, joissa ohjelman toimivuus tai käytettävyys on sidottu kohtiin, jotka voivat muuttua eri järjestelmissä tai eri asennusratkaisuissa. Järjestelmäriippuvuudet eroavat ohjelmointikielen sisäisistä kirjastoista, sillä ne ovat usein osa käyttöympäristöä eikä niinkään koodin sisäisiä riippuvuuksia.
Tyypillisiä järjestelmäriippuvuuksia ovat esimerkiksi käyttöjärjestelmä ja sen ABI (soveltuvuus tietyn kernelin, glibc:n tai vastaavien kautta), dynaamiset
Hallinta ja siirrettävyys perustuvat riippuvuuksien tunnistamiseen, määrittämiseen ja kontrolliin. Käyttöjärjestelmäkohtaiset paketinhallintajärjestelmät (esimerkiksi apt, yum tai pacman)
Haasteina ovat ohjelman toimivuuden riippuvuus OS-päivityksistä, ABI- ja API-muutoksista sekä vanhentuvista kirjastoversionpäivityksistä. Hyviä käytäntöjä ovat tarkat