Figure : an example Dynamic Distributed Graphical User Interface
The Software Engineering and Programming Systems domain gathers five faculty members and about twenty researchers around the federating goal of supporting the development and maintenance of advanced, complex and dependable software.
Principal Investigators :
Kim Mens, Charles Pecheur, Etienne Rivière, Peter Van Roy
Research Labs :
The REsearch Laboratory on Software Evolution And Software Development Technology (RELEASeD) focuses on a variety of research topics related to programming technology, languages and tool support for software development. The main research themes of this research group are: mechanisms, languages, formalisms, methodologies and tools to support software engineers during maintenance and evolution of a software system; advancing the state-of-the art in software development technology from a language engineering angle; technology to support the evolution and development of aspect-oriented software; context-oriented programming for ambient software.
The activities of the Programming Languages and Distributed Computing (PLDC) Research Group have as general theme to increase the expressiveness of programming languages, with a special focus on support for distributed computing. The research is a combination of theory and practice: new concepts are suggested by development needs, which leads both to theoretical results and system building. Our research vehicle is often the Mozart Programming System, a full-featured development platform based on the Oz multiparadigm programming language.
The Louvain Verification Lab (LVL) team investigates principles, tools and applications of formal analysis and verification of computer systems. Fields of interest of LVL researchers include symbolic and bounded model-checking, verification of concurrent systems and partial-order Reduction, verification of human-computer interaction, structural coverage criteria for specifications, temporal and epistemic logics, analysis of observability and diagnosis, and verification of autonomous and intelligent systems.
Research Areas :
Requirements engineering (RE) is widely recognized as the most critical phase of the software lifecycle. Goal-oriented RE refers to the use of goals for eliciting, elaborating, structuring, specifying, analysing, negotiating, documenting, and modifying requirements. Such use is based on a multi-view model showing how goals, objects, agents, scenarios, operations, and domain properties are inter-related in the system-as-is and the system-to-be. (By "system" we mean the target software together with its environment made of human agents, devices, legacy software, etc.). The KAOS methodology provides a multi-view graphical language for system modelling, a lightweight formalism for model specification, an optional real-time temporal logic for model analysis, a systematic method for model elaboration, and various dedicated techniques for goal refinement and operationalisation, conflict management, hazard analysis, agent responsibility assignment, goal mining from scenarios, etc. The methodology is supported by various tools (Objectiver, Faust) and has been used over more than 25 industrial projects.
Abstract interpretation is a mathematical methodology (introduced in 1977 by Patrick and Radhia Cousot) to develop static analyses of programs. Such analyses are performed at compile-time or independently of any program execution. They aim at automatically computing semantic properties of the program, which may then be used to optimize compilation or to highlight programming errors. We currently apply abstract interpretation to logic programs (Prolog) and to object-oriented programs (Java). We work on the definition and implementation of generic frameworks to analyze these languages. We have implemented a generic abstract interpretation framework has been developed for a subset of Java and an analyzer of operational properties of logic programs that combines in a single analysis almost all identified analyses from literature.
Most recent publications
Below are listed the 10 most recent journal articles and conference papers produced in this research area. You also can access all publications by following this link : see all publications.