My Courses

Computer Essentials
The essentials of computer software, hardware, and laptop management form the foundation for building further technical programming skills.
- CST8101
- Level 01

Introduction to Computer Programming
Possessing the fundamentals of logic, problem-solving and programming language structure provides a solid foundation for further study in the field.
- CST8116
- Level 01

Introduction to Database
Databases are used to store data and are a core component of many information technology systems.
- CST8215
- Level 01

Technical Mathematics for Computer Science
The study of algebraic and transcendental functions is an essential prerequisite to Calculus.
- MAT8001C
- Level 01

Communications I
Using a practical, vocation-oriented approach, students focus on meeting the requirements of effective communication.
- ENL1813T
- Level 01

Achieving Success in Changing Environments
Students explore the possibilities ahead, assess their own aptitudes and strengths, and apply critical thinking and decision-making tools to help resolve some of the important issues in our complex society with its competing interests.
- CST8300
- Level 01

Database Systems
Students acquire practical experience using market-leading object-relational database management systems like Oracle and MySQL.
- CST2355
- Level 02

Operating System Fundamentals (GNU/Linux)
Students explore the basic concepts and components of Operating Systems (OS), and how they function and interact with hardware and software components.
- CST8102
- Level 02

Object Oriented Programming (Java)
Students explore object-oriented programming methodology using the Java programming language. Object oriented concepts, such as encapsulation, inheritance, abstraction and polymorphism are covered and reinforced with practical applications.
- CST8284
- Level 02

Web Programming
Students develop basic skills of web programming, website design and implementation. JavaScript, HTML5, and PHP are used to explore web-based solutions to problems of increasing interactivity and complexity.
- CST8285
- Level 02

Technical Communication for Engineering Technologies
Students are exposed to exercises and assignments designed to foster independent and collaborative critical thinking, research, writing, visual communication and presentation skills related to technical topics.
- ENL2019T
- Level 02

Cooperative Education Readiness
Students are guided through a series of activities that prepare them to conduct a professional job search and succeed in the workplace.
- GEP1001
- Level 02

Systems Analysis and Design
Software methodologies discussed include the Systems Development Life Cycle (SDLC), agile approach, Rational Unified Process (RUP)and Rapid Application Development (RAD).
- CST2234
- Level 03

Mobile Graphical Interface Programming
Students learn how to program applications using the latest Android development tools. Topics include application architecture, interface design, network communication, and database integration.
- CST2335
- Level 03

Network Programming
Students explore topics including the basic structure,
design and layered communications models, with an emphasis on data
communications, TCP/IP protocol suite, socket programming and
multi-threading concepts.
Labs include practical exercises in basic networking and using socket
programming.
- CST8109
- Level 03

Object Oriented Programming with Design Patterns
Students implement best practices of object-oriented
program development with software design patterns.
Course topics include refactoring, domain modelling, JDBC and multithreaded
servlet programming. Students develop proficiency in creating, testing,
debugging, deploying and documenting programs and servlets through practical
application.
- CST8288
- Level 03

Advanced Database Topics
Topics including database administration (using Oracle), data governance,
globalization, security and advances in database technology. Topic coverage
includes business intelligence, data warehouses, data visualization, big
data, NoSQL and graph databases.
Database administration tasks requiring knowledge of
database architecture are examined: relational vs. non-relational models,
security, performance, database distribution, database sharing, backup and
recovery.
- CST8276
- Level 04

Enterprise Application Programming
Students examine the commonly used enterprise systems development technologies such as Java/Jakarta Enterprise Edition, cloud computing, security and the corporate database repository.
- CST8277
- Level 04

Software Development Project
Following the agile software engineering methodology, teams work
with clients to analyze business needs, determine computer system
requirements, model system designs, build prototypes, test code and
deliver final products.
Project management techniques are used to monitor progress and
organize tasks.
- CST8319
- Level 04

Programming Language Research Project
Students explore this process of self-study by applying project planning, applied research, testing, and implementation of basic and advanced concepts appropriate to the language or framework under study.
- CST8333
- Level 04