Gias Uddin, PhD

PhD, McGill University
MSc, Queen's University

Assistant Professor

Areas of Research

AI4SE: AI for Software Dependability and Documentation
Combine Machine Learning (ML), Natural Language Processing (NLP), and Software Engineering (SE) techniques to automatically analyze and improve software dependability (e.g., software security vulnerability analysis and detection), reliability (e.g., program repair), and documentation (e.g., software review and insight summarization, produce better official software library documentation).
SE4AI: Software Engineering for Machine Learning Application
Improving the design, engineering, quality control, continuous integration, and maintenance of Machine Learning Software Application (MLSA) based on an incorporation of MLSA specific attributes into traditional software development life cycles (SDLC).
Software Analytics
Using statistical, machine learning, and natural language processing techniques to analyze, synthesize, and fuse vast amount of software repository data (e.g., GitHub, Crowd-Sourced Software Developer Forums, software company internal repositories) to derive active and passive insights that could be useful for various software teams and stakeholders.

Supervising degrees

Electrical and Computer Engineering - Masters: Accepting Inquiries
Electrical and Computer Engineering - Doctoral: Accepting Inquiries

More information

Working with this supervisor

I do research on data intensive software systems. My work lies at the intersection of software engineering and data science practices, with a strong focus on the research of practical tools and techniques that aims to solve overarching problems in software and data analytics teams. In particular, I take advantage of Machine Learning (ML) and Natural Language Processing (NLP) techniques to address problems in software documentation and dependability (e.g., security, quality analysis, program repair, information summarization).

My research is influenced by my 10+ years of full-time professional experience at the Industry, both as a data scientist and as a software developer. I was a Senior Data scientist at the Data and Statistics Office of Bank of Canada. I also worked at IBM Canada, both as a researcher and as a software engineer. At IBM, I was part of the IBM Watson Analytics team.

In my PhD, I leveraged Natural Language Processing and Machine Learning techniques on the vast amount data available in online software repositories. As part of my PhD research, I have created Opiner, an online opinion search and summarization engine for APIs. Check out Opiner at:


Contact this supervisor

Complete the following form if you are interested in working with this supervisor for your Graduate Program. All fields are required, unless indicated otherwise.

CAPTCHA This question is for testing whether or not you are a human visitor and to prevent automated spam submissions.