I lead SENSE Lab, a multidisciplinary software engineering research laboratory at Polytechnique Montreal. Our research is centered on exploring problem-solving strategies employed by developers during software development tasks, with a particular emphasis on the influence of human factors such as gender and native language on these strategies. By integrating human-centric approaches with experimental methodologies, we seek to delve into the cognitive processes underlying these strategies, utilizing a range of biometrics to enhance our understanding and ultimately elevate the developers' experience. Our goal is to refine software development tools and methodologies to be more inclusive, accommodating the diverse needs of developers. My current active projects are:
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: