About me
Welcome to my page. My name is Abdallah Mohamed. I received my Ph.D. degree in Software Engineering with emphasis on Decision Support Systems for component-based software development from the University of Calgary in Canada. I am currently an instructor of Computer Science at the University of British Columbia - Okanagan Campus. Here is an article with a bit more information about me: SoTL Spotlight |
Teaching
- COSC 101 - Digital Citizenship
- COSC 111 - Computer Programming I
- COSC 121 - Computer Programming II
- COSC 122 - Computer Fluency
- COSC 123 - Computer Creativity
- COSC 211 - Machine Architecture
- COSC 304 - Introduction to Database Systems
- COSC 407/507 - Introduction to Parallel Computing
- COSC 445 - Computer Vision
-
COSC 447 - Directed Studies in Software Maintenance
COSC 448 - Directed Studies in Computer Science
COSC 449 - Honours Thesis - Decision Support (projects: Course Planning, TA Allocation)
- AI in Education: (projects: Generative AI to Support Learning, Collaborative Filtering, Spaced Repetition, Intelligent Tutoring Systems)
- Flexible Learning: (projects: Personalized, Domain Oriented Learning)
- Gamified Learning: (projects: Motivation Stimulation, Gamified Learning)
- Equity, Diversity, Inclusion: (projects: Gender Disparity in CS)
- AI Misc: (projects: Identifying Dangerous Online Behavior)
- Computer Vision: (projects: Image Querying, Cell Biology, Whiteboard Transcription)
- Navigation: (projects: Indoor Positioning Using IBeacon)
Research
My research focuses on decision support systems (DSS). This involves studying and developing novel methodologies that integrates concepts and techniques, such as optimization methods and expert systems, to support informed decision-making. Such methodologies could be used when decisions are to be made in complex, uncertain, and/or dynamic environments.
My current interest is in using DSS to foster quality and creativity in higher education. I have been involved in several initiatives that investigate and propose techniques and technologies that can be used to improve the current state of practice of higher education learning, see here and here (must be on UBC VPN) for example. The ultimate aim is to improve the learning experiences of students.
Projects that would interest me include, for example, building tools that help students understand and analyze complex concepts (e.g. algorithms, data structures, etc.), or creating games or apps that imporove student motivation and success. There are many other ideas, some of which can be found HERE. If you have other ideas to improve the teaching/learning practices at UBC-O or other universities, I would be happy to discuss it with you and investigate possible ways to secure the resources required to implement this idea.
In the past, I have developed DSS techniques in the area of Software Engineering. For example, I have developed an approach that integrates expert systems along with optimization techniques for analyzing the impact of software component mismatches when integrated into different software systems. I have also developed a novel technique that can be used to generate diversified solution alternatives for optimization-based DSS systems.
Selected Projects
- LearnCoding with Personalized, Expandable Learning Modules
- A learning portable with contents that can be customized to learner's needs. Learners can quickly switch the customization settings to compare-and-contrast content (e.g. syntax: Java vs Python, or discipline: Math vs Physics). More details here.
- learncoding.ok.ubc.ca via UBC VPN
- NuTeach Learning Portal
- A learning platform that uses gamification and dopamine-rewards to stimulate learners’ intrinsic motivation.
- nuteach.ok.ubc.ca via UBC VPN
- Course Planner
- An optimization-based interactive decision support system to help undergraduates create long-term course plans. The system uses an intuitive interface for visually constructing course plans via drag-and-drop functionality. Once initial plan is in place, students can request the system to optimize the plan using mathematical optimization to generate alternative course plans based on students’ preferences and university regulations.
- courseplanner.ok.ubc.ca via UBC VPN (limited featrues - full featrues soon)
- (might not be up to date with recent calendar changes - must refer to official calendar for verifying your degree requirements and course prerequisites)
- Data Playground
- Web tool for data structures learning, using gamification and visual aids. Covers four data structures, and offers programming challenges and visual animations of the data structures as programs are executed..
- dataplayground.ok.ubc.ca via UBC VPN
- ULearn
- Web tool combining machine learning and adaptive techniques to offer quizzes shaped by collaborative student-performance.
- ulearn.ok.ubc.ca via UBC VPN
- TA Allocator
- An optimization-based decision support system for allocating Teaching Assistants (TAs) to courses and labs. The system uses linear integer programming and considers a variety of soft and hard constraints.
- Access Limited to CMPS department
- Generative AI in Education
- Studies the use of generative AI to support learning. Current projects include studying current trends, using AI as a Tutor, using AI to genarate and answer questions.
- Availability: some results are published, some will be available as online tools in 2025.
- Equity, Diversity, and Inclusion
- Studies that aim to identify and address equity, diversity, and inclusion issues in Computer Science at UBC-O and elsewhere.
- Availability: published articles (available soon).
Useful Links
- Important Dates (UBCO Calendar)
- Irving K. Barber Faculty of Science
- Computer Science (BSc , BA)
- Student Services
- Undergraduate Student Resources (Department)
- Student Jobs
- Library
Contact
University of British Columbia (Okanagan)
Irving K. Barber Faculty of Science
1177 Research Road, SCI-2ooB
Kelowna, B.C., Canada, V1V 1V7
Phone: 250-807-8247
E-Mail:
Website: https://cmps-people.ok.ubc.ca/abdalmoh