Jean-Christophe Bach, Associate Professor at IMT Atlantique



email with x → jc and y → bach Phone (+33) (0)2 29 00 15 73 Office D03-124 Public key 0x520E0E85EA19F34E / Fingerprint=A8C3 C208 1C6A 209B DE2A 2D6C 520E 0E85 EA19 F34E Jabber (IM), with the same previous rewriting rules

Current institutional page (should be updated…)

Short bio


Research interests

I am interesting in improving trust in software systems. I am interesting in the product (software) and in the production process (the process to obtain the software system, from design to delivery) in order to improve the security of software systems.

Therefore I work to improve the software security from the beginning of the process. It is usually called « security by design ». It reduces the usual reactive process where software engineers wait for vulnerabilities to write a patch.

To achieve this goal, my main research interests are the following:

  • software engineering
  • security
  • software quality to improve security and safety
  • languages
  • transformations (of languages, models, programs,…)
  • traceability (of transformations, …)
  • formal methods
  • verification helpers
  • model federation
  • software evolution
  • software migration

Domains of application can easily change, however I am currently focusing on software security (“cybersecurity”) and Industry 4.0.

Current PhD students

I do not have an HDR, therefore PhDs are co-advised.

  1. Etienne Louboutin, 11/2016 – 1/2021
    • Software sensitivity to control flow hijack (Sensibilité de logiciels au détournement de flot de contrôle)
    • Keywords: Control flow hijack, Security-by-design, Sensitivity to attacks, Binary analysis
    • Co-advised with F. Dagnat (PhD director)
    • funded by chaire de cyberdéfense des systèmes navals
  2. Benjamin Somers, 11/2020 –
    • Modélisation d’infrastructure informatique pour l’identification et la prévention des risques
    • Co-advised with F. Dagnat (PhD director)
    • funded by Arkea

Past PhD students




I am mainly involved in the following courses:

    • IDL (Ingénierie du Développemenet Logiciel) – Software Development Engineering: responsible of the UE; lectures, practical work and contribution to FLOSS projects
    • MAPD (Méthodes Avancée et Processus de Développement) – Advanced Methods and Development Process)
    • CONC
    • LANGLOG – Languages and Logics: formal méthods, languages, compilation, λ-calculus, OCaml
    • FIAB
  • FIP (1st year)
    • basics of C programming language (practical work)