J'ai obtenu une "laurea" en droit à l'université de Rome (Italie) en 1961 et, la même année, j'ai écrit mon premier programme informatique.
Jusqu'en 1967, j'ai travaillé chez Olivetti, Olivetti-Bull, General Electric et Siemens en tant que programmeur et analyste de systèmes.
De 1967 à 1969, j'ai été chercheur associé à l'Institute for Computer Studies de l'université du Manitoba, où j'ai obtenu une maîtrise en sciences informatiques en 1969. J'ai ensuite obtenu un doctorat en informatique à l'université de Waterloo en 1974.
De 1973 à 2002, j'ai travaillé à l'Université d'Ottawa, d'abord au département d'informatique, puis à l'école des technologies de l'information et de génie (SITE).
J'ai été directeur du département d'informatique de 1991 à 1997 et directeur administratif de l'EITI en 1997/98. J'ai pris des congés sabbatiques à Bell Northern Research (qui est devenu Nortel), à l'université de Twente (Pays-Bas) et à l'université de Stirling (Écosse).
J'ai pris ma retraite de l'Université d'Ottawa et, depuis le 1er juillet 2002, je suis professeur à l'Université du Québec en Outaouais, Département d'informatique et ingénierie.