He received the BMath and MMath degrees in Computer Science from the University of Waterloo, and the PhD degree in Computer Science in 1990 from the University of Victoria. His main research interest is software engineering, especially software specification, verification, and testing. He has had substantial interaction with industry through collaborative research projects, training and consultation in the area of software V&V. He is a member of the editorial board of the Journal on Software Testing, Verification and Reliability, of the Steering Committee for the Asia-Pacific Software Engineering Conference, and the Chair of the Steering Committee for the Australian Software Engineering Conference.