b'\n_START_ARTICLE_\nSilumine\n_START_PARAGRAPH_\nSilumine on tarkvaraarenduse protsess, mille k\xc3\xa4igus leitakse ja parandatakse vigu koodis, mis takistavad programmi v\xc3\xb5i s\xc3\xbcsteemi korrektset toimimist. _NEWLINE_Silumist tuleb eristada silurist, mis on tarkvaraprogramm v\xc3\xb5i -moodul, mida kasutatakse silumiseks. Silumist v\xc3\xb5ib kasutada ka koodi ridahaaval l\xc3\xa4bimiseks, et seda paremini m\xc3\xb5ista._NEWLINE_Silumisel on erinevaid tehnikaid ja l\xc3\xa4henemisi, millest tuntuimad on interaktiivne silumine, juhtimisvoo anal\xc3\xbc\xc3\xbcs, komponenditestimine, integratsioonitestimine, logifailianal\xc3\xbc\xc3\xbcs, rakenduse- v\xc3\xb5i s\xc3\xbcsteemitasemel programmi seisu j\xc3\xa4lgimine erinevatel ajahetkedel, m\xc3\xa4lut\xc3\xb5mmis ja profileerimine.\n_START_SECTION_\nVahendid\n_START_PARAGRAPH_\nSilumise keerukus v\xc3\xb5ib erineda suuresti s\xc3\xb5ltuvalt programmist v\xc3\xb5i s\xc3\xbcsteemist. Tegemist v\xc3\xb5ib olla lihtsate vigade parandamisega, aga ka aegan\xc3\xb5udvate ja v\xc3\xa4sitavate andmete kogumise, anal\xc3\xbc\xc3\xbcsi ja uuenduste planeerimisega. Programmeerija silumisoskus v\xc3\xb5ib suuresti m\xc3\xb5jutada silumisedukust, kuid tarkvara silumise raskusaste varieerub suuresti s\xc3\xb5ltuvalt s\xc3\xbcsteemi keerukusest. Mingil m\xc3\xa4\xc3\xa4ral s\xc3\xb5ltub see ka kasutatud programmeerimiskeelest ja saadaval olevatest siluritest. Silurid on tarkvarat\xc3\xb6\xc3\xb6riistad, millega on v\xc3\xb5imalik j\xc3\xa4lgida programmi t\xc3\xa4itmist, seda peatada, uuesti alustada, vaatluspunkte seada ja m\xc3\xa4lus olevate andmete v\xc3\xa4\xc3\xa4rtusi muuta._NEWLINE_\xc3\x9cldiselt on parim siluda k\xc3\xb5rgema taseme programmeerimiskeeltes nagu Java, mida lihtsustavad selliste keelte mitmed omadused, n\xc3\xa4iteks erindite k\xc3\xa4sitlemine ja t\xc3\xbc\xc3\xbcbikontroll. Programmeerimiskeeltes nagu C ja assembler v\xc3\xb5ib juhtuda, et tekkinud vead on peidetud, n\xc3\xa4iteks m\xc3\xa4lusaaste puhul. Seet\xc3\xb5ttu on keeruline leida, kust algne probleem tekkis. Neil juhtudel v\xc3\xb5ib olla vaja kasutada m\xc3\xa4luspetsiifilist silurit._NEWLINE_Keelespetsiifilisi t\xc3\xb6\xc3\xb6riistu nimetatakse staatilise koodianal\xc3\xbc\xc3\xbcsi t\xc3\xb6\xc3\xb6riistadeks ja teatud olukordades on nad v\xc3\xa4ga kasulikud. Staatilise koodianal\xc3\xbc\xc3\xbcsi t\xc3\xb6\xc3\xb6riistade v\xc3\xb5i vahendite eesm\xc3\xa4rk on otsida spetsiifilisi probleeme koodist, mis v\xc3\xb5ivad olla nii levinud kui haruldased. Selliseid probleeme kompilaator v\xc3\xb5i interpretaator \xc3\xbcldiselt ei leia. Staatilise koodianal\xc3\xbc\xc3\xbcsi vahendid ei kontrolli s\xc3\xbcntaksit vaid semantilisi aspekte.'