About CRIM

Dynamic and static analysis of multithreaded java programs

Tracking down sources of errors in multithreaded Java applications via static analysis is a laborious task. The team has identified a library of code patterns that may lead to such errors. Overall 38 so-called anti-patterns have been studied and used in the library. A dozen of anti-patterns were implemented in a tool for code analysis. In order to overcome the limitations of static analysis for revealing more subtle bugs, a complementary dynamic analysis was developed, based on the model checking technology. 

Along with these efforts focusing on multithreading, the team also specializes in measuring the quality of source code and its design. Poor coding and design invariably leads to software that is difficult to understand and to maintain, so it is important to assess the quality of the design and source code. This allows for an early detection of defects, such as non-compliance with well-established design principles and coding conventions.


Upcoming event

  • Gala des Prix Innovation 2020 de l'ADRIQ
    19 November 2020 0:00
    Palais des Congrès de Montréal
    Le Gala Prix Innovation 2020 de l'ADRIQ aura lieu le 19 novembre 2020, au Palais des congrès de Montréal.
  • AIxSPACE RT @AIxSPACE_ca: Registrations are open for AIxSPACE! We're looking forward to meeting you all at the 1st event dedicated to #AI applied to…
  • Vous souhaitez rencontrer des grandes compagnies, chercheurs et startups afin d'avoir une discussion de fond sur la… https://t.co/g6adtJ519H

Recent Publications

  • On The Performance of Time-Pooling Strategies for End-to-End Spoken Language Identification

  • An ensemble Based Approach for Generalized Detection of Spoofing Attacks to Automatic Speaker Recognizers