Mohammed Qasem, PhD, MSc, BSc

ATS Assistant Lecturer, Augustana - Sciences

Contact

ATS Assistant Lecturer, Augustana - Sciences
Email
mqasem@ualberta.ca
Phone
(780) 679-1116
Address
2 - 331 Faith & Life Centre
4901-46 Ave
Camrose AB
T4V 2R3

Overview

About

Mohammed Qasem is an assistant lecturer at the department of computing science. He started working at Augustana in July of 2019. Prior to arriving at Augustana, he has taught introductory programming courses, visual programming, logic design, computer architecture, and operating systems. He also worked at Manitoba Hydro International as a Software Developer. His research centers mostly on three areas: (i) ant-inspired clustering models and their applications to dynamic real-world clustering problems; (ii) semi-supervised classification and clustering; (iii) aspect-based sentiment analysis. 


Research

A swarm of organisms, following simple rules, can achieve incredible intelligent tasks. This natural behaviour is called Swarm Intelligence (SI) and is pervasive through diverse ecological systems. An individual ant, for instance, can perform minimal functions, but an ant colony can perform complicated, intelligent tasks such as building bridges, creating superhighways, collecting and sorting piles of food and waging war. More interestingly, such tasks are achieved without central control and beyond the comprehension of any single ant. A colony of ants is self-organized by a process called stigmergy, a small action by individual ant stimulates others to behave differently, leading to a new pattern of behaviour — likewise, flocks of birds, herds of animals, schools of fish and beehives. Very generally, Dr. Qasem primary field of research interest is SI. Within SI, he focused on ant-inspired algorithms with their applications to data analytics. His doctoral research centers on developing two clustering algorithms, inspired by how real ants sort their nests, and their application to classifying large-scale dynamic data. Dr. Qasem current research work focuses on swarm intelligence for social network mining.




Teaching

Teaching philosophy in a nutshell

“All students can learn and succeed, but not in the same way and not in the same day”.

– William G. Spady

 My role as a facilitator (rather than a traditional instructor) is central to my teaching philosophy. I perceive myself as a facilitator in the sense that I take responsibility for the learning environment: it is my responsibility to find out the best approach for teaching computing science in different classes.


Fall 2019

AUCSC 450 Parallel and Distributed Systems

AUCSC 310 Algorithm Design and Analysis 

Past Courses

Digital Logic Design

Computer Architecture and Organization 

Operating System Concepts

Visual Programming 

C/C++ Programming

Data Structures

Computer Science Fundamentals


Courses

AUCSC 111 - Introduction to Computational Thinking and Problem Solving

An introduction to computational thinking, problem solving, and the fundamental ideas of computing. Topics include algorithms, abstraction, and modelling; the syntax and semantics of a high-level language (e.g. Python); fundamental programming concepts and data structures, including simple containers (variables, arrays, lists, strings, dictionaries); sequencing, conditionals and repetition; documentation and style; object-oriented programming; exceptions and error handling; graphical user interfaces and event-driven programming; recursion; simple algorithm analysis and run- time efficiency. Prerequisite: Mathematics 30-1. Note: Credit may be obtained for only one of AUCSC 111, AUCSC 113 (2023), and AUCSC 120 (2019).


AUCSC 218 - Web Design, Development and Scripting

Introduction to modern web architectures and technologies. Web platforms and standards. Client-side/server-side programming and web languages (e.g. HTML, JavaScript, PHP, CSS, Node.js). Introduction to internet security. Design and implementation of a simple web application. Prerequisite: one of AUCSC 113 (2023) or AUSCI 135, or AUCSC 111.


AUCSC 250 - Computer Organization and Architecture I

Introduction to computer systems as multilevel machines. Topics include data representation; the organization and execution cycle of Von Neumann machines; assembly-level programming, addressing modes, control flow, procedure calls, input/output, interrupts, caching; finite state machines, Boolean algebra, logic gates, and digital circuits. Prerequisite: AUCSC 112, or AUCSC 211 and AUSCI 235.


AUCSC 450 - Parallel and Distributed Computing

Parallel architectures, programming language constructs for parallel computing, parallel algorithms and complexity. Message-passing, remote procedure call, and shared-memory models. Synchronization and data coherence. Load balancing and scheduling. Appropriate applications. Prerequisites: AUCSC 250 and AUCSC 370.


AUCSC 480 - Operating Systems Concepts

Operating system functions, concurrent process coordination, scheduling and deadlocks, memory management and virtual memory, secondary storage management and file systems, protection. Prerequisites: AUCSC 250 and AUCSC 370. Note: Credit may be obtained for only one of AUCSC 480 and AUCSC 380 (2022).


AUCSL 361B - Community Service-Learning Practicum

Course content varies from year to year but will include a significant service component. Topics and credit value announced prior to registration period. Pre-and/or corequisite: Consent of the instructor. Note: AUCSL 361 is classified as a science course. Requires payment of additional student instructional support fees. Refer to the Tuition and Fees page in the University Regulations section of the Calendar.


AUIDS 201 - Collaborative Learning

The course will introduce students to ways of working collaboratively to complete a group project. Students will examine a topic from a single disciplinary perspective. Prerequisite: AUIDS 101.


AUSCI 385B - Mentoring in Computing and Mathematics

This course involves tutoring students learning first-year material in mathematics and computing science for 3 hours per week in the Math & Computing Support Centre (MCSC). Tutors will also receive coaching from the MCSC Director in how best to perform their duties. Prerequisites: 15 units in MAT or CSC and third-year standing.


Browse more courses taught by Mohammed Qasem