I lead the SENSE Lab, a multidisciplinary software engineering research laboratory at Polytechnique Montréal. Our research focuses on understanding the problem-solving strategies developers use during software development tasks, with particular attention to human factors such as gender and native language. By combining human-centric design with experimental methodologies, we investigate the cognitive processes involved in these strategies—leveraging biometrics to deepen our insights and enhance the overall developer experience.
Our mission is to improve software engineering tools and methodologies, making them more inclusive and better suited to the diverse needs of developers.
Current active projects include:
In software development, where integration of diverse tools and artifacts is widespread, the issue of trust in software—whether developed in-house or by others—becomes paramount. This trust is crucial for software reuse and hinges on reliability, safety, and effectiveness. Yet, developers may either overtrust, ignoring potential flaws, as seen in the Heartbleed vulnerability case, or undertrust, such as in their reluctance to adopt machine-generated code despite its proven quality. Despite the importance, research on how developers perceive software trustworthiness and its impact on their cognitive processes is limited. Factors like age and gender are known to influence trust, suggesting a need for a deeper investigation into these aspects. Our research seeks to fill this gap by examining how trustworthiness perceptions affect developers' cognitive processes and software engineering (SE) outcomes, emphasizing the roles of age and gender. Through controlled studies and tools like eye tracking and neuroimaging, we aim to gain insights into the cognitive dynamics of software trust.
Related articles:
Creative ideation and its adaptive value in reacting to new events are critical to advancing scientific and technological innovation. Software development involves problem-solving, which inherently requires creativity. Yet, the available research on creativity, particularly in software engineering, is fragmented and limited. In addition, there is a need for a consensus on the degree to which creativity is essential in software engineering tasks and how it can be effectively integrated into the development process. This project aims to empirically evaluate and comprehend the impact of creativity on developers’ cognitive processes during the execution of diverse software engineering tasks. The principal objectives that have been set forth for the proposed research projects are twofold: Firstly, to explore the influence of creativity on the performance and outcome of developers, and secondly, to examine the extent to which human factors, such as gender and native language, play a role in the impact of creativity on software engineering tasks. By combining the traditional psychometric approach of using creative thinking test scores with analyzing attention parameters measured through eye-tracking methodology, we aim to understand the creative thinking process for software engineering tasks comprehensively. In addition, we favor biological objective measures collected by neuroimaging to provide insights into the cognitive processes that underlie various software engineering activities and to complement and enhance the data collected. Our compound approach has the potential to capture the interplay between the participants’ creativity level, cognitive load, and the outcome
Related articles: