Kuollut koodi on ohjelmistossa oleva koodi, jota ohjelma ei voi saavuttaa tai jota se ei itse asiassa käytä. Se voi olla läsnä monista eri syistä, ja kun ihmiset työskentelevät ohjelmiston kanssa, he tunnistavat kuolleen koodin ja päättävät mitä tehdä asialle. Joissakin tapauksissa ihmiset voivat poistaa sen turvallisesti vaarantamatta ohjelmaa, ja he voivat tehdä niin tehostaakseen ohjelmaa. Muut tilanteet voivat vaatia ihmisiä jättämään koodin sisään tai käyttämään varovasti poistettaessa sitä ongelman välttämiseksi.
Yksi syy kuolleeseen koodiin on rutiinien käyttö virheenkorjauksen aikana poistamatta niitä myöhemmin. Ohjelma ei oikeastaan käytä koodia ja se voidaan itse asiassa katkaista siitä, mutta se viipyy järjestelmässä. Ihmiset voivat myös luoda kuolleen koodin käyttämällä uudelleen toisen ohjelman osia, tekemällä muutoksia ohjelmistoon tai lisäämällä koodia ajatuksella käyttää sitä tulevaisuudessa. Ohjelman rakenteesta riippuen se voi suorittaa koodin, mutta ei tehdä mitään sen kanssa, tai se saattaa löytää materiaalin täysin saavuttamattomaksi.
Tämä segmentti ohjelman sisällä hukkaa aikaa ja tilaa. Se voi myös häiritä toimintoja joissakin tapauksissa. Ohjelma saattaa pitää kuollutta koodia hämmentävänä tai harhaanjohtavana ja tuottaa virheitä. Kun ihmiset löytävät esimerkkejä, heidän on tarkistettava ohjelma huolellisesti nähdäkseen, miten koodi on vuorovaikutuksessa sen kanssa. Saattaa olla tarpeen lisätä uusi koodi tai muokata ympäröivää materiaalia koodin poistamiseksi turvallisesti. Muissa tapauksissa se voidaan ottaa turvallisesti pois.
Kun kuollut koodi koostuu materiaalista, joka on lisätty tulevia satunnaisuuksia ajatellen, se voidaan jättää paikalleen. Ihmiset voivat käyttää sitä milloin ja jos sitä tarvitaan ja aktivoida se, jotta ohjelma voi käyttää sitä. Tästä voi olla hyötyä virheenkorjauksen kaltaisissa tilanteissa, joissa asioiden sisällyttäminen ohjelman rakenteeseen voi helpottaa puutteiden ja muiden ongelmien tunnistamista ja korjaamista. Koodi voi myös luoda haavoittuvuuden, joka on tärkeä näkökohta sen käsittelyssä.
Jokaisella päivityksellä ohjelmistolla on tapana kertyä löysiä päitä ja kuollutta koodia ajan myötä. Toiminnot muuttuvat, ihmiset lisäävät materiaalia, uudet ohjelmoijat liittyvät ja ajattelevat koodaushaasteita eri tavalla, ja detritus muodostuu. Säännölliset tarkistukset vieraiden tai mahdollisesti haitallisten koodien tarkistamiseksi ovat tärkeä osa ohjelman hallintaa. Ihmiset voivat antaa korjauksia tai uusia julkaisuja korjatakseen ongelman ja antaa käyttäjille mahdollisuuden nauttia tasaisemmasta käyttökokemuksesta sekä parantaa toimintoja ja turvallisuutta.