Mastodon
  
Research
 I am a software engineering researcher, interested in
software quality and safety.  My goal is to help engineers build better
systems, and to diagnose their weaknesses. This ranges from design,  model
driven engineering of software systems, design of languages, to bug finding,
testing, static analysis, and verification. I study actual systems in order to
understand what quality problems can be addressed.  I also design new
technologies, including modeling languages, code generators, or analysis and
verification tools to improve quality of software. My recent interests are in
AI and robotics, considering classical properties like safety and reliability,
but also newer challenges like privacy.
 I have worked with systems in multiple domains: robotics
(ROS), safety critical embedded systems (such as an electric engine safety
controller for an elevator), operating system kernels (Linux, Free BSD, eCos),
and business software (such as an open source ERP system Open for
Business).  I have spent a lot of time researching software systems that
are produced in families of similar products - the so called software product
lines. I am very invested in work with Open Source communities and with
industrial partners.
 My Google Scholar Profile. My DBLP entry
PhD Students & Post-docs
Past Students & Research Staff
- Raul Pardo (moved to be a faculty at ITU)
- Mahsa Varshosaz (moved to be a faculty at ITU)
- Adam Alami (moved to be a post-doc at ITU, now faculty in Aalborg)
- Ahmad Salim Al-Sibahi (phd, post-doc, now at DIKU)
- Thorsten Berger (post-doc, now professor at Ruhr University Bochum)
- Radu Mitache (research programmer) (now at Getinge)
- Fabrizio Biondi (phd student, now at Avast)
- Paulius Juodisius (research programmer, now at Facebook)
- Louis-Marie Traonouez (post-doc, now at INRIA Rennes)
- Helge Pfeiffer (phd student, now assistant professor at IT University of Copenhagen) 
- Raghava Rao Mukkamala (post-doc, now associate professor at Copenhagen Business School)
- Alexandru Florin Iosif-Lazăr (phd student, now at Configit)
- Stefan Catalin Stanciulescu (phd student, now post-doc at UC Davis)
- Iago Abal (phd student, co-advisor Claus Brabrand, moved to Prover Technologies)
- Tony Beltramelli (research programmer, founded Uizard Technologies)
- Aleksandar Dimovski (post-doc, moved to Skopje)
- Jean Melo (phd student, main advisor Claus Brabrand, now at Dixa)
Projects & Activities
Teaching Activities
-  Probabilistic Programming (MSc level) 2024, 2022, 2021, 2020
-  Advanced Programming (MSc level) 2023, 2022, 2021, 2020, 2019, 2018 (Spring and Fall), 2017, 2016, 2015
-  Advanced Software Analysis (MSc): 2024, 2023, 2022
-  Modeling Languages and Systems (MSc level) 2019
-  Domain Specific Languages (MSc level) 2017, 2016
-  Model-driven development project (MSc Level) 2015, 2014, 2013, 2012, 2011
- Spring 2012: Compositional Design and Verification of Real-Time Systems (QMC PhD School) 
- Winter 2011: Foundations of Model-Driven Software Development (PhD level)
- Fall 2010: Introductory Software Engineering Seminar
- Spring 2010:  Algorithms and Data Structures (BADS) for undergraduate students 
   (also in Spring 2009 and Spring 2008)
- Spring/Summer 2009: a Reading group on experimentation in software engineering.
- Fall 2008: System 
Architecture and Security in the graduate programme (SDT). I will not 
actually give any lectures but I actively influence the design of this 
course.
- Fall 2007: Performance & Test with 
    Henrik Reif Andersen 
    and others (previous editions Fall 2006,
                Spring 2007).
- Spring 2007: A small fraction of the course on Test and 
Verification in Computer Science Department in Aalborg,
with Ulrik Nyman, Kim G. Larsen, Brian Nielsen, and Arne Skou (also in F2006).
- Spring 2007: Software Programmable
    Signal Processing Platform Analysis at the Department of Communication Technology of Aalborg University. In CS terms this course is a
    compiler mini-course with emphasis on DSP specific
    optimizations. (Previous editions Spring 2005,  Spring 2006).
- Spring 2006: Logic
  Based Methods for Optimization, a PhD course with Rune Møller
  Jensen at IT University.
- Spring 2006:  
  Introduction to Algorithms and Data Structures (IADS) at IT University.
        Together with Anna Östlin Pagh.
  (Previous editions Fall 2005, 
               Spring 2005, 
         Fall 2004).
- Spring 2005: Programming
    Languages, Interpreters and Compilers together
    with Peter
    Sestoft (previous editions 
  Spring 2004,
  Spring 2003,
  Spring 2002).
-  Fall 2003: A guest lecture on modeling with
    statecharts in DTU course on 
    Operating Systems for Embedding (course
    responsible is Jørgen
    Steensgaard-Madsen).  
- Fall 2003: Inżynieria
    oprogramowania (Software Engineering, in Polish) at Warsaw
    University of Technology. The course is given by Krzysztof Kaczmarski. I
    am only responsible for a small fraction on formal methods.
- Fall 2001: Efficient
            Algorithms and Programs (in English) at IT
          University together with Henrik
            Reif Andersen and Henrik
            Hulgaard. 
- Fall 2000, in Polish: Niektóre ćwiczenia laboratoryjne
        z przedmiotu Programowanie w Internecie
        do wykładu Macieja Grzendy.
        (Ostatnio prowadzone: Wydział MiNI PW, semestr zimowy
  2000/2001  NIEAKTUALNE)