University of Toronto
Department of Computer Science

A Distinguished Lecture on Computer Science

Axel van Lamsweerde

Building Formal Models for Software Requirements


Requirements engineering (RE) is concerned with the elicitation of the goals to be achieved by the system envisioned, the operationalization of such goals into specifications of services and constraints, and the assignment of responsibilities for the resulting requirements to agents such as humans, devices, and software. Getting high-quality requirements is difficult and critical. Recent surveys have confirmed the growing recognition of RE as an area of primary concern in software engineering research and practice.

The talk will first briefly introduce RE by discussing its main motivations, objectives, activities, and challenges. The role of rich models as a common interface to all RE processes will be emphasized.

We will then review various techniques available to date for system modeling, from semi-formal to formal, with the aim of showing their relative strengths and weaknesses when applied during the RE stage of the software lifecycle, notably, their limited scope, their lack of abstraction, their poor separation of concerns, and their lack of methodological guidance.

The talk will then discuss a number of recent efforts to overcome such problems through RE-specific techniques for goal-oriented elaboration of requirements, multiparadigm modeling and specification, the handling of non-functional requirements, the management of conflicting requirements, and the handling of abnormal agent behaviors.


Axel van Lamsweerde is Full Professor of Computing Science at the University of Louvain, Belgium. He received the M.S. degree in Mathematics from that university, and the Ph. D. degree in Computing Science from the University of Brussels. From 1970 to 1980, he was Research Associate with the Philips Research Laboratory in Brussels where he worked on proof methods for parallel programs and on knowledge-based approaches to automatic programming. He was then Professor of Software Engineering at the Universities of Namur and Brussels before joining UCL in 1990. He is co-founder of the CEDITI technology transfer institute partially funded by the European Union. He has also been a research fellow at the University of Oregon and the Computer Science Laboratory of SRI International, Menlo Park, CA.

van Lamsweerde's professional interests are in technical approaches to requirements engineering and, mor generally, in lightweight formal methods for reasoning about software engineering products and processes.

van Lamsweerde is an ACM fellow. He was program chair of the Third European Software Engineering Conference (ESEC'91), program co-chair of the Seventh IEEE Workshop on Software Specification and Design (IWSSD-7), and program co-chair of the ACM-IEEE Sixteenth International Conference on Software Engineering (ICSE-16). He is member of the Editorial Boards of the Automated Software Engineering Journal and the Requirements Engineering Journal. Since 1995, he is Editor-in-Chief of the ACM Transactions on Software Engineering and Methodology (TOSEM).

Host: contact Prof. Easterbrook regarding the speaker's schedule.

Time and Location: return to the 2000 Colloquia Series main page.