Democratizing Software Development and Machine Learning Using Low Code Applications

dc.contributor.advisorUddin, Gias
dc.contributor.authorAlamin, Md Abdullah Al
dc.contributor.committeememberRuhe, Guenther
dc.contributor.committeememberFar, Behrouz
dc.contributor.committeememberNielsen, John
dc.date2023-02
dc.date.accessioned2022-12-21T18:33:05Z
dc.date.available2022-12-21T18:33:05Z
dc.date.issued2022-12-19
dc.description.abstractLow-code software development (LCSD) is an emerging approach to democratize traditional and Machine Learning (ML) application development for practitioners from diverse backgrounds. Traditional LCSD platforms promote rapid application development with a drag-and-drop interface and minimal programming by hand. Similarly, low-code Machine Learning (ML) solutions (aka, AutoML) aim to democratize ML development to domain experts by automating many repetitive tasks in the ML pipeline (e.g., data pre-processing, feature engineering, model design, and hyper-parameter configuration). The rapid emergence of LCSD platforms warrants systematic studies to understand the challenges developers/practitioners face while using the platforms. This thesis catalogs, for the first time in the literature, the challenges developers face while using low code platforms developed for traditional and ML software application development. To the end, we also offer our hands on experience of developing a low code ML software systems for our industrial partner. Specifically, we investigate the current status, i.e., services of LCSD providers, open-source research \& collaboration. We conduct the LCSD practitioners' challenges by analyzing their discussion on the popular Q&A forum Stack Overflow (SO) to seek technical assistance. To further validate our findings, we conduct to develop a low-code machine learning solution in collaboration with domain experts from industry and academia. Additionally, we develop AutoGeoML, an open-source low-code framework that solves the current limitations of low-code ML solutions. Our qualitative investigation of 121 traditional and 37 AutoML LCSD services shows that around 60% traditional LCSD solutions are related to business process management (BPM) and work process automation, 90% are proprietary, and only 63% platforms support only proprietary cloud deployment options. We find that around 65% of services offer shallow or general purpose ML applications, 57% solutions are open-sourced and offer flexible deployment options. According to our findings, Customization and LCSD Platform Adoption are the most discussed topic, followed by Data Management. We also find that Deployment and Maintenance are still the most difficult Software Development Life Cycle (SDLC) phase. We highlight the limitations of current low-code AutoML services and develop AutoGeoML. This open-source low-code framework provides domain-experts-in-the-loop customizability, and modular abstraction is some of the critical requirements lacking in existing AutoML frameworks. The findings of this thesis have implications for all three LCSD stakeholders: LCSD platform vendors, LCSD practitioners, and Researchers. Researchers and LCSD solution vendors can collaborate to improve different aspects of LCSD, such as better tutorial-based documentation, DevOps support, and expert-in-the-loop customizability.en_US
dc.identifier.citationAlamin, M. A. A. (2022). Democratizing software development and machine learning using low code applications (Master's thesis, University of Calgary, Calgary, Canada). Retrieved from https://prism.ucalgary.ca.en_US
dc.identifier.urihttp://hdl.handle.net/1880/115612
dc.identifier.urihttps://dx.doi.org/10.11575/PRISM/40546
dc.language.isoengen_US
dc.publisher.facultySchulich School of Engineeringen_US
dc.publisher.institutionUniversity of Calgaryen
dc.rightsUniversity of Calgary graduate students retain copyright ownership and moral rights for their thesis. You may use this material in any way that is permitted by the Copyright Act or through licensing that has been assigned to the document. For uses that are not allowable under copyright legislation or licensing, you are required to seek permission.en_US
dc.subjectSoftware Engineeringen_US
dc.subjectAutoMLen_US
dc.subjectEmpirical Studyen_US
dc.subjectLow-Code Software Developmenten_US
dc.subject.classificationComputer Scienceen_US
dc.subject.classificationEngineeringen_US
dc.titleDemocratizing Software Development and Machine Learning Using Low Code Applicationsen_US
dc.typemaster thesisen_US
thesis.degree.disciplineEngineering – Electrical & Computeren_US
thesis.degree.grantorUniversity of Calgaryen_US
thesis.degree.nameMaster of Science (MSc)en_US
ucalgary.item.requestcopytrueen_US
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
ucalgary_2022_alamin_mdabdullahal.pdf
Size:
12.45 MB
Format:
Adobe Portable Document Format
Description:
Main Article
License bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
2.62 KB
Format:
Item-specific license agreed upon to submission
Description: