robusthet

i datorvetenskap: förmåga hos ett it‑system att fungera tillfredsställande, trots fel. Ett robust program ska vid fel inte producera felaktiga utdata, inte krascha och inte gå in i en slinga. – Fel kan vara:

  • – tekniska fel vid programkörningen (en sladd rycks ut, glappkontakt, avbrott i nätverket…);
  • indata som programmet inte kan behandla (fel datatyp, division med noll, andra värden som programmeraren inte har förutsett…)
  • – fel i programkoden.

– Robust programmering går ut på dels att förebygga sådana fel, dels att se till att systemet kan hantera dem. Programmet bör alltså kunna känna igen fel när de uppstår. Programmet bör rapportera fel till användaren, och om möjligt fortsätta med andra delar av programmet tills felet är rättat. (Se abort, retry, ignore, fail?.) – Fyra principer för robust programmering är:

  • – Sjuklig misstänksamhet. Andra kan vara ute efter att missbruka eller sabotera programmet; programmeraren är medveten om att hon själv kan göra fel;
  • Dumhet. Om det går att göra fel så kommer någon användare att göra fel. (Se Murphys lag.) Skriv därför tydliga och lättfattliga felmeddelanden – inte obskyra felkoder;
  • Dölj farliga redskap. Ge inte användarna möjlighet att modifiera programmet;
  • Sådant händer aldrig. – Jo det gör det. Gardera även mot osannolika fel.

– På engelska: robustness.

[datorvetenskap] [fel] [it-system] [15 oktober 2018]