Software Engineering and Programming Systems

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.


Conference Papers


1. Schaus, Pierre; Aoga, John; Guns, Tias. CoverSize: A Global Constraint for Frequency-based Itemset Mining. In: the 23rd International Conference on Principles and Practice of Constraint Programming. Vol. LNCS 10416, p. 1-18 (2017). In: Principles and Practice of Constraint Programming - CP, Springer: Berlin Heidelberg, 2017. http://hdl.handle.net/2078.1/186898

2. Aoga, John; Guns, Tias; Schaus, Pierre. Algorithme Efficace pour la Fouille de Séquences Fréquentes avec la Programmation par Contraintes. http://hdl.handle.net/2078.1/186897

3. Aoga, John; Schaus, Pierre. Scalable Constraint Programming approach for Mining Frequent Sequence with gap constraints. http://hdl.handle.net/2078.1/177057

4. Aoga, John; Guns, Tias; Schaus, Pierre. An Efficient Algorithm for Mining Frequent Sequence with Constraint Programming. In: Machine Learning and Knowledge Discovery in Databases: European Conference, ECML PKDD 2016, Riva del Garda, Italy, September 19-23, 2016, Proceedings, Part II (Lecture notes in computer science), 2016, 978-3-319-46227-1, 315-330. doi:10.1007/978-3-319-46227-1_20. http://hdl.handle.net/2078.1/177056

5. Dang, Huynh Tu; Sciascia, Daniele; Canini, Marco; Pedone, Fernando; Soulé, Robert. NetPaxos: Consensus at Network Speed. In: ACM SOSR, 2015, 978-1-4503-3451-8. doi:10.1145/2774993.2774999. http://hdl.handle.net/2078.1/161639

6. Reda, Waleed; Suresh, Lalith; Canini, Marco; Braithwaite, Sean. BRB: BetteR Batch Scheduling to Reduce Tail Latencies in Cloud Data Stores. In: ACM SIGCOMM, 2015, 978-1-4503-3542. http://hdl.handle.net/2078.1/161636

7. Suresh, Lalith; Canini, Marco; Schmid, Stefan; Feldmann, Anja. C3: Cutting Tail Latency in Cloud Data Stores via Adaptive Replica Selection. In: 12th USENIX Symposium on Networked Systems Design and Implementation (NSDI'15), 2015, 978-1-931971-218. http://hdl.handle.net/2078.1/161635

8. Busard, Simon; Cappart, Quentin; Limbrée, Christophe; Pecheur, Charles; Schaus, Pierre. Verification of railway interlocking systems. In: Proceedings 4th International Workshop on Engineering Safety and Security Systems. Vol. 184, no.0, p. 19-31 (2015). Open Publishing Association, 2015. doi:10.4204/EPTCS.184.2. http://hdl.handle.net/2078.1/161206

9. Canini, Marco; Kuznetsov, Petr; Levin, Dan; Schmid, Stefan. A Distributed and Robust SDN Control Plane for Transactional Network Updates. In: IEEE INFOCOM, 2015. doi:10.1109/INFOCOM.2015.7218382. http://hdl.handle.net/2078.1/154961

10. Busard, Simon; Pecheur, Charles; Qu, Hongyang; Raimondi, Franco. Improving the Model Checking of Strategies under Partial Observability and Fairness Constraints. In: Formal Methods and Software Engineering, 2014, 978-3-319-11736-2. doi:10.1007/978-3-319-11737-9_3. http://hdl.handle.net/2078.1/152239


Journal Articles


1. Aoga, John; Guns, Tias; Schaus, Pierre. Mining Time-constrained Sequential Patterns with Constraint Programming. In: Constraint Journal, Vol. 22, no.3, p. 1-23 (2017). doi:10.1007/s10601-017-9272-3. http://hdl.handle.net/2078.1/186881

2. Busard, Simon; Pecheur, Charles; Qu, Hongyang; Raimondi, Franco. Reasoning about memoryless strategies under partial observability and unconditional fairness constraints. In: Information and Computation, Vol. 242, no.0, p. 128-156 (2015). doi:10.1016/j.ic.2015.03.014. http://hdl.handle.net/2078.1/159600

3. Cardozo Alvarez, Nicolás; Gonzalez Montesinos, Sebastian Andres; Van Der Straeten, Ragnhild; Mens, Kim; Vallejos, Jorge; D’Hondt, Theo. Semantics for Consistent Activation in Context-Oriented Systems. In: Information and Software Technology, Vol. 58, p. 71-94 (February 2015). doi:10.1016/j.infsof.2014.10.002. http://hdl.handle.net/2078.1/141451

4. Damas, Christophe; Lambeau, Bernard; van Lamsweerde, Axel. Analyzing critical decision-based processes. In: IEEE Transactions on Software Engineering, Vol. 99, p. 1-28 (2014). doi:10.1109/TSE.2014.2312954. http://hdl.handle.net/2078.1/142148

5. Cordero Fuertes, Juan Antonio. A Probabilistic Study of the Delay caused by Jittering in Wireless Flooding. In: Wireless Personal Communications : an international journal, Vol. 73, no. 3, p. 415-439 (2013). doi:10.1007/s11277-013-1195-8. http://hdl.handle.net/2078.1/143174

6. Schaus, Pierre; Régin, Jean-Charles. Bound-consistent spread constraint. In: EURO Journal on Computational Optimization, (2013). (Accepté/Sous presse). http://hdl.handle.net/2078.1/141320

7. Van Cauwelaert, Sascha; Gutiérrez Sabogal, Gustavo Adolfo; Van Roy, Peter. Practical Uses of Constraint Programming in Music using Relation Domains. In: Emille journal, Vol. 10, p. 21-31 (2013). http://hdl.handle.net/2078.1/128293

8. Cailliau, Antoine; van Lamsweerde, Axel. Assessing Requirements-Related Risks Through Probabilistic Goals and Obstacles. In: Requirements Engineering, p. 1-18 (2013). doi:10.1007/s00766-013-0168-5. http://hdl.handle.net/2078.1/124513

9. Lopez, Xavier Moles; Debeir, Olivier; Maris, Calliope; Rorive, Sandrine; Roland, Isabelle; Saerens, Marco; Salmon, Isabelle; Decaestecker, Christine. Clustering methods applied in the detection of Ki67 hot-spots in whole tumor slide images: An efficient way to characterize heterogeneous tissue-based biomarkers. In: Cytometry. Part A, Vol. 81A, no. 9, p. 765-775 (2012). doi:10.1002/cyto.a.22085. http://hdl.handle.net/2078.1/115274

10. Garcia Diez, Silvia; Laforge, Jérôme; Saerens, Marco. ℜminimax: An Optimally Randomized MINIMAX Algorithm. In: IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics, Vol. 43, no. 1 (2012). doi:10.1109/TSMCB.2012.2207951. http://hdl.handle.net/2078.1/115173