Studēja Latvijas Universitātes Fizikas un matemātikas fakultātē (1968-1973), bijis Studentu celtnieku vienības I zonas komisārs (1970)[2], LVU komjaunatnes komitejas sekretāra vietnieks (1971–1972).[3]
No 1973. līdz 1992. gadam dažādos amatos strādāja Latvijas Universitātes Matemātikas un informātikas institūtā. Līdztekus no 1974. gada docētājs Latvijas Universitātē.[4] 1989. gadā papildinājās Baltkrievijas Zinātņu akadēmijas Matemātikas institūtā.[4]
Papildinājās Stokholmas Universitātē un Zviedrijas Karaliskajā Tehnoloģiju institūtā (1991). Pēc 1992. gada vadīja "SWH Rīga" un "SWH informatīvā sistēma" Programmatūras kvalitātes grupu (1992-1994), bija Rīgas Informācijas tehnoloģiju institūta direktors (1995-2010) un RTU profesors (2000-2008). Ieguvis Sertificētas Informācijas Sistēmu Auditora (CISA) apliecību (1997). Dibinājis Information Systems Audit and Control Latvijas nodaļu, ir arī vadījis to.[4] A/s Exigen Services Latvija prezidenta vietnieks (2001–2010).
2009. gadā kļuva par jaunizveidotās Latvijas Universitātes Datorikas fakultātes dekānu.
Ieviesis neatkarīgu datorprogrammu testēšanu un programminženierijas standartus Latvijā. Apmēram 150 zinātnisku rakstu autors. Angļu—latviešu—krievu valodas skaidrojošās vārdnīcas "Personālie datori" sastādītājs.[4]