Ohjelmiston ylläpito on prosessi, jolla tietokoneohjelmaa muutetaan tai päivitetään sen julkaisun jälkeen. Vaikka termi “ylläpito” voi tarkoittaa korjauksia ja virheiden korjauksia, vain osa tästä prosessista on tarkoitettu tähän tarkoitukseen, jota kutsutaan “korjaavaksi”. Paljon ohjelmistojen ylläpitoa käytetään “mukautuvaan” työhön, joka varmistaa, että ohjelma on edelleen tehokas ja käyttökelpoinen muuttuvissa ympäristöissä, sekä “täydellisiin” menettelyihin, jotka parantavat toiminnallisuutta. Ennaltaehkäisevää ylläpitoa käytetään helpottamaan prosessia tulevaisuudessa tarjoamalla lisäasiakirjoja ja työkaluja myöhempien päivitysten kehittämisen helpottamiseksi.
Suuri osa ohjelmistojen ylläpidosta suoritetaan kehittäjien luomien ja sitten julkisesti julkaistujen korjaustiedostojen avulla. Tietokoneen käyttäjä asentaa nämä tiedostot ja ne muuttavat järjestelmän perusohjelman toimintoja ja rakennetta. Tämä tehdään ohjelman julkaisun jälkeen, vaikka varhaisessa ohjelmistokehityksessä on otettava huomioon ylläpito.
Korjaava ohjelmiston ylläpito on prosessi, jossa kehitetään muutoksia ohjelmaan, joka korjaa vikoja tai korjaa ongelmia. Tämä ei lisää uusia ominaisuuksia, elleivät ne ole jo olemassa, mutta niitä ei voida käyttää ohjelmointivirheen vuoksi. Vain noin neljäsosa ohjelmistojen ylläpidosta käytetään korjaaviin ongelmiin, mutta ohjelman käyttäjät pitävät sitä usein tärkeimpänä tekijänä.
Suuri osa ohjelmistojen ylläpidosta kutsutaan “mukautuvaksi”, jota käytetään ohjelman säätämiseen toimimaan uudessa ympäristössä. Ohjelmat on yleensä suunniteltu ja kehitetty toimimaan tietyissä käyttöjärjestelmissä. Jotkin ohjelmistot voivat toimia uudemmissa versioissa, mutta monet ohjelmat eivät pysty siihen. Mukautuva korjaustiedosto ohjelmaan voi muuttaa koodia, jotta se voi toimia kunnolla uudessa järjestelmässä, pitää sen ajan tasalla ja käyttökelpoisena.
Täydellistä ohjelmiston ylläpitoa käytetään lisäämään tuotteeseen uusia ominaisuuksia ja tekemään muutoksia, jotka voivat vaikuttaa suoraan käyttäjään. Yritys saattaa julkaista esimerkiksi tekstinkäsittelyohjelman, joka sisältää muutamia oikeinkirjoituksen tarkistustoimintoja. Jos he julkaisevat korjaustiedoston, joka päivittää ohjelman sanakirjan ja luo lisää virheenkorjausvaihtoehtoja, sitä pidetään täydellisenä ylläpidona. Nämä päivitykset ovat tyypillisesti melko vähäisiä, koska suuret uudistukset edellyttävät yleensä uuden version tai ohjelmiston “asiakkaan” julkaisua.
Kehittäjät voivat myös työskennellä ohjelmistojen ennaltaehkäisevän ylläpidon parissa, mikä tekee tulevista muutoksista entistä yksinkertaisempia. Kehityksen jälkeen yritys saattaa ymmärtää, että on olemassa vika, joka ei ole vielä kehittynyt. He voivat julkaista korjaustiedoston, joka korjaa tämän ongelman ennen kuin siitä tulee todellista ongelmaa. Lisädokumentaatio ja koodin puhdistus voidaan tehdä myös helpottaakseen tai tarpeettomasti tulevaa huoltoa.