Md Saidur Rahman

Md Saidur Rahman
Polytechnique Montréal · Computer Engineering and Software Engineering

PhD in Software Engineering
Senior Data Scientist (R&D), Desjardins, Canada

About

20
Publications
1,995
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
168
Citations
Introduction
I am a Senior Data Scientist (R & D) at Desjardins, Canada. I was a Postdoctoral Fellow at SWAT Lab, Polytechnique Montreal, Canada. My research interests include: Machine Learning, Data Science, Code Smells, Software Engineering for Machine Learning, Mining Software Repositories. Details here: https://md-saidur-rahman.github.io/
Additional affiliations
November 2017 - present
Polytechnique Montréal
Position
  • PostDoc Position
September 2010 - August 2016
University of Saskatchewan
Position
  • Research Assistant
Education
September 2010 - October 2017
University of Saskatchewan
Field of study
  • Software Engineering

Publications

Publications (20)
Article
Full-text available
Multi-language systems became prevalent with technological advances. Developers opt for the combination of programming languages to build a single application. Such combinations of programming languages allow the reuse of existing code and libraries without re-implementing the code from scratch. Software quality is achieved by following good softwa...
Article
Full-text available
Deep Learning applications are becoming increasingly popular worldwide. Developers of deep learning systems like in every other context of software development strive to write more efficient code in terms of performance, complexity, and maintenance. The continuous evolution of deep learning systems imposing tighter development timelines and their i...
Preprint
Full-text available
Nowadays, intelligent systems and services are getting increasingly popular as they provide data-driven solutions to diverse real-world problems, thanks to recent breakthroughs in Artificial Intelligence (AI) and Machine Learning (ML). However, machine learning meets software engineering not only with promising potentials but also with some inheren...
Preprint
Full-text available
Deep Learning applications are becoming increasingly popular. Developers of deep learning systems strive to write more efficient code. Deep learning systems are constantly evolving, imposing tighter development timelines and increasing complexity, which may lead to bad design decisions. A copy-paste approach is widely used among deep learning devel...
Preprint
Full-text available
During software evolution, inexperienced developers may introduce design anti-patterns when they modify their software systems to fix bugs or to add new functionalities based on changes in requirements. Developers may also use design patterns to promote software quality or as a possible cure for some design anti-patterns. Thus, design patterns and...
Article
Full-text available
Nowadays, modern applications are developed using components written in different programming languages and technologies. The cost benefits of reuse and the advantages of each programming language are two main incentives behind the proliferation of such systems. However, as the number of languages increases, so do the challenges related to the deve...
Article
Full-text available
During software evolution, inexperienced developers may introduce design anti-patterns when they modify their software systems to fix bugs or to add new functionalities based on changes in requirements. Developers may also use design patterns to promote software quality or as a possible cure for some design anti-patterns. Thus, design patterns and...
Preprint
Full-text available
Nowadays, modern applications are developed using components written in different programming languages. These systems introduce several advantages. However, as the number of languages increases, so does the challenges related to the development and maintenance of these systems. In such situations, developers may introduce design smells (i.e., anti...
Preprint
Full-text available
SAP is the market leader in enterprise software offering an end-to-end suite of applications and services to enable their customers worldwide to operate their business. Especially, retail customers of SAP deal with millions of sales transactions for their day-to-day business. Transactions are created during retail sales at the point of sale (POS) t...
Article
Full-text available
Clone has emerged as a controversial term in software engineering research and practice. The impact of clones is of great importance from software maintenance perspectives. Stability is a well investigated term in assessing the impacts of clones on software maintenance. If code clones appear to exhibit a higher instability (i.e., higher change-pron...
Conference Paper
Full-text available
Exact or similar copies of code fragments in a code base are known as code clones. Code clones are considered as one of the serious code smells. Stability is a widely investigated perspective of assessing the impacts of clones on software systems. A number of existing studies show that clones are often less stable than non-cloned code. This suggest...
Conference Paper
Full-text available
Clones are the duplicate or similar code blocks in software systems. A large number of studies concerning the impacts of clones on software systems mainly focus on the frequency of changes to evaluate stability, consistency in evolution and introduction of bugs. Although it is obvious that not each type of changes has equal impact on software syste...
Conference Paper
Full-text available
Knowledge of similar code fragments, also known as code clones, is important to many software maintenance activities including bug fixing, refactoring, impact analysis and program comprehension. While a great deal of research has been conducted for finding techniques and implementing tools to identify code clones, little research has been done to a...
Conference Paper
Full-text available
Code cloning is a controversial software engineering practice due to contradictory claims regarding its effect on software maintenance. Code stability is a recently introduced measurement technique that has been used to determine the impact of code cloning by quantifying the changeability of a code region. Although most of the existing stability an...
Conference Paper
Full-text available
The impacts of clones on software maintenance is a long-lived debate on whether clones are beneficial or not. Some researchers argue that clones lead to additional changes during the maintenance phase and thus increase the overall maintenance effort. Moreover, they note that inconsistent changes to clones may introduce faults during evolution. On t...
Conference Paper
Full-text available
Multicasting is a challenging task that facilitates group communication among the nodes using the most efficient strategy to deliver the messages over each link of the network. In spite of significant research achievements in recent years, efficient and extendable multicast routing in Mobile Ad Hoc Networks (MANETs) is still a difficult issue. To e...
Conference Paper
Full-text available
We have presented a method for tracking multiple objects in video sequences based on background subtraction and SIFT feature matching where camera is fixed and input video sequences are real time or self captured. Object is detected automatically by background subtraction, then successful tracking is performed by observing the motion and SIFT featu...

Network

Cited By

Projects

Project (1)
Project
To develop a framework for automated feature engineering. This project aims to apply search-based optimization techniques to automate feature engineering tasks for machine learning (ML) application development, especially for time-series data.