Ny testmetod höjer kvaliteten i datorprogram
Nu finns bättre och effektivare metoder för att hitta och analysera fel vid utveckling av datorprogram. Hans Svensson vid Chalmers introducerar nya testmetoder i sin avhandling inom datavetenskap. Kunskapen är särskilt intressant för datorer i nätverk där programvaran är fördelad över flera datorer som ska fungera tillsammans, så kallade distribuerade system.
Datorprogram är sällan felfria. Av en mängd orsaker innehåller i princip alla program fel. Studier visar att ett ordinärt utvecklingsprojekt för datorprogram spenderar 40 till 50 procent av sin budget på att hitta och avlägsna fel. Detta innebär att det finns stora ekonomiska vinster att göra på att utveckla bättre verktyg och effektivare metoder.
Vissa fel i programvara kan man hitta på formell väg, andra fel hittar man genom att köra programmet. I avhandlingen introducerar och utvärderar Hans Svensson olika metoder för kvalitetssäkring av distribuerade och feltoleranta datorprogram. Han har särskilt fokuserat på problemet att säkra program uppbyggda av befintliga algoritmer, framförallt algoritmer designade för distribuerade och feltoleranta system. Ett distribuerat system består av datorer i nätverk där programvaran är fördelad över flera datorer som ska fungera ihop. Distribuerade system är vanligt när man vill sprida datortrafik på flera datorer, exempelvis webbservrar. Ett så kallat feltolerant system består av program som hanterar fel utan att krascha.
Avhandlingen innehåller även en ny formell beskrivning av de distribuerade delarna i programmeringsspråket Erlang. Beskrivningen har använts i verktyget McErlang, som automatiskt kontrollerar om ett Erlang-program uppfyller en given egenskap. McErlang presenteras i detalj i avhandlingen. Avhandlingen presenterar också en logik-baserad metod för att formellt bevisa egenskaper hos distribuerade och feltoleranta algoritmer.
Hans Svenssons doktorsavhandling ”Verification of Distributed Erlang Programs using Testing, Model Checking and Theorem Proving” försvarades vid en offentlig disputation den 21 april.
Avhandlingens abstract i Chalmers publikationsdatabas, CPL >>
http://publications.lib.chalmers.se/cpl/record/index.xsql?pubid=69328
Kontaktinformation
För mer information, kontakta:
Hans Svensson, Institutionen för data- och informationsteknik, Chalmers
Tfn: 031-772 10 79, hanssv@chalmers.se