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.

Teams

Upcoming event

  • Santé et sécurité du travail 2020 - Événement les Affaires
    23 September 2020 8:30
    Présentation en ligne
    Le CRIM est fier d'être partenaire de la 10e édition de la conférence Santé et sécurité du travail organisée par les Événement Les Affaires. Présentation en ligne.
    +
  • Merci @Grenier_enbref! #donnees #geospatial @opengeospatial @NASA @environnementca @ESA_EO @RNCan
  • @economie_quebec @SciChefQC @lsirois007 @inocanada @FPInnovations #Technologie #Recherche #Industrie #Investissement #Croissance

Recent Publications

  • An end-to-end approach for the verification problem: learning the right distance

    +
  • The Indigenous Languages Technology Project at NRC Canada: an empowerment-oriented approach to developing language software

    +