Topics change each semester- see the current Academic Schedule for current course descriptions.
| Day | Start Time | End Time | Room |
|---|---|---|---|
Monday | 16:55 | 19:50 | C-501 |
Topics change each semester- see the current Academic Schedule for current course descriptions.
| Day | Start Time | End Time | Room |
|---|---|---|---|
Saturday | 10:00 | 18:00 | Q-A101 |
Wednesday | 15:20 | 21:25 | Q-A101 |
Friday | 15:20 | 21:25 | Q-A101 |
At the end of the course work students have the option of completing a thesis or an 6-credit Internship.
In the last semester of their studies students may choose to complete a 14,000 to 20,000 word thesis (instead of an Internship). Additional paperwork available in the Office of the Registrar is MANDATORY for registration of the thesis. CM 5095 will count as 8 credits for catalogs prior to 2022-2023. 6 credit is in effect for students who start in Fall 2022 and beyond.
Introduces the field of computer science and the fundamental concepts of programming from an object-oriented perspective using the programming language Java. Starts with practical problem-solving and leads to the study and analysis of simple algorithms, data types, control structures, and use of simple data structures such as arrays and strings.
| Day | Start Time | End Time | Room |
|---|---|---|---|
Friday | 13:45 | 16:40 | C-302 |
Tuesday | 13:45 | 15:05 | C-302 |
This project-based course introduces data science by looking at the whole cycle of activities involved in data science projects. Students will learn how to think about problems with rigor and creativity, ethically applying data science skills to address those problems. The course project will address the theoretical, mathematical and computational challenges involved in data science.
| Day | Start Time | End Time | Room |
|---|---|---|---|
Monday | 10:35 | 11:55 | C-302 |
Thursday | 10:35 | 11:55 | C-302 |
This is the second part of the foundation course for the Information and Communication Technologies degree program. Successful students will have a thorough knowledge of the computer language Java, the systematic development of programs, problem-solving and a knowledge of some of the fundamental algorithms of computer science. Essential concepts include inheritance, polymorphism, and error-handling, using exceptions.
| Day | Start Time | End Time | Room |
|---|---|---|---|
Friday | 16:55 | 18:15 | C-302 |
Tuesday | 15:20 | 18:15 | C-302 |
The course provides an understanding on the need for security, privacy and trust in ICT. Legal and ethical aspects will be covered. Technology for security, privacy and trust will be presented at a functional level. The following topics will be covered: security threats and solutions, intellectual property rights, anonymity and identity, business stakeholders privacy obligations, privacy in today applications (search engine, social networks, location oriented services, RFId-based applications), privacy enhancing technologies, privacy policy enforcement, trusted computing.
| Day | Start Time | End Time | Room |
|---|---|---|---|
Monday | 09:00 | 10:20 | C-302 |
Wednesday | 09:00 | 10:20 | C-302 |
The 21st century has seen a big increase in the amount of data which is made accessible. Social media such as Facebook, online shops such as Amazon and many others, are all gathering raw data. But what can be done about this data? Data Science covers tools and methods around the extraction of knowledge from data. Such tools cover its collection, storing, processing and analysis. In this course we will learn about several of the most important tools in the above flow and will apply them to real-world examples.
| Day | Start Time | End Time | Room |
|---|---|---|---|
Monday | 13:45 | 15:05 | C-302 |
Thursday | 13:45 | 16:40 | C-302 |
Studies the design and implementation of general-purpose operating systems on digital computers: memory management, virtual memory, storage hierarchy evaluation, multiprogramming, process creation, synchronization, deadlock, message communication, parallel programming constructs, I/O management, and file systems. Includes case studies of major operating systems.
| Day | Start Time | End Time | Room |
|---|---|---|---|
Tuesday | 12:10 | 13:30 | C-302 |
Friday | 12:10 | 13:30 | C-302 |
Much of the world’s population relies on online technologies, particularly online applications accessed through a web browser, otherwise known as websites. Understanding how websites work and being able to create powerful online applications is an important aspect of the software profession. More than other digital applications, complete web applications require the integration of numerous technologies. This course will introduce students to online technologies and provide the foundations and skills needed for creating professional web applications.
The course will cover HTML, CSS, Javascript, and Node.js. Students will create full-stack websites backed by a SQL database. Prior programming experience is required.
| Day | Start Time | End Time | Room |
|---|---|---|---|
Tuesday | 10:35 | 11:55 | C-302 |
Friday | 10:35 | 11:55 | C-302 |