CHEM 590 / SEMINAR
Term: Spring 2019Units 0

SEMINAR

CHIN 201 / CHINESE I: BEGINNERS
Term: Spring 2019Units 3Days: MON WEDTimes: 10:00-11:15

Basics of grammar and vocabulary, listening, and speaking. Readings include newspapers, poems, and authentic documents. Language labs using multimedia systems are part of the language courses.

CHIN 202 / CHINESE II: BEGINNERS
Term: Spring 2019Units 3Days: MON WEDTimes: 11:30-12:45

Basics of grammar and vocabulary, listening, and speaking. Readings include newspapers, poems, and authentic documents. Language labs using multimedia systems are part of the language courses.

CHIN 301 / CHINESE III : INTERMEDIATE
Term: Spring 2019Units 3Days: MON WEDTimes: 14:30-15:45

CMGM 502 / GLOBAL CITIZENSHIP
Term: Spring 2019Units 1.5Days: FRI*

Responsible leadership considering a wide range of stakeholders. Panel discussions on different sectors. Examining global leadership in relation to people, profit, and planet. Case studies on responsible leadership in global organisations.

CMGM 508 / GLOBAL LEADERSHIP
Term: Spring 2019Units 2Days: MON*Times: 16:00-20:15

Building efficient and effective organizations in multinational companies in order to realize the company’s international strategic objectives. Addressing global developments and new trends related to disruptive strategy. Cooperating and dealing with people and people related issues in an international context.

CMSE 590 / SEMINAR
Term: Spring 2019Units 0

COMP 110 / INTRODUCTION TO COMPUTER PROGRAMMING WITH MATLAB
Term: Spring 2019Units 3Days: TUES THURSTimes: 10:00-11:15

COMP 110 is a first course in computer programming. The objective is to introduce the principles of computer programming and algorithm development using Matlab, with particular emphasise on scientific computation and data processing. Topics covered include basic computer literacy and organization; variables, operators, expressions, data types, arrays, matrices; conditional and repetition control statements; modular programming, built-in and user-defined functions; string manipulation; text and binary file processing; structures; debugging; data plotting and visualization; graphical user interfaces.

COMP 110 / INTRODUCTION TO COMPUTER PROGRAMMING WITH MATLAB
Term: Spring 2019Units 3Days: TUES THURSTimes: 13:00-14:15

COMP 110 is a first course in computer programming. The objective is to introduce the principles of computer programming and algorithm development using Matlab, with particular emphasise on scientific computation and data processing. Topics covered include basic computer literacy and organization; variables, operators, expressions, data types, arrays, matrices; conditional and repetition control statements; modular programming, built-in and user-defined functions; string manipulation; text and binary file processing; structures; debugging; data plotting and visualization; graphical user interfaces.

COMP 110 / INTRODUCTION TO COMPUTER PROGRAMMING WITH MATLAB
Term: Spring 2019Units 3Days: TUES THURSTimes: 16:00-17:15

COMP 110 is a first course in computer programming. The objective is to introduce the principles of computer programming and algorithm development using Matlab, with particular emphasise on scientific computation and data processing. Topics covered include basic computer literacy and organization; variables, operators, expressions, data types, arrays, matrices; conditional and repetition control statements; modular programming, built-in and user-defined functions; string manipulation; text and binary file processing; structures; debugging; data plotting and visualization; graphical user interfaces.

COMP 130 / INTRODUCTION TO PROGRAMMING (JAVA)
Term: Spring 2019Units 3Days: MON WED*Times: 14:30-15:45

This course is a general introduction to programming using the Java programming language. It emphasizes the structured programming language aspects of Java and de-emphasizes its object-oriented aspects. The latter are covered only to the extent that enables students to use standard Java libraries for common tasks. Students who complete this course successfully should gain a solid foundation in algorithmic thinking and structured programming, and should be able to perform basic, common computational tasks easily and efficiently.

COMP 130 / INTRODUCTION TO PROGRAMMING (JAVA)
Term: Spring 2019Units 3Days: TUES THURSTimes: 14:30-15:45

This course is a general introduction to programming using the Java programming language. It emphasizes the structured programming language aspects of Java and de-emphasizes its object-oriented aspects. The latter are covered only to the extent that enables students to use standard Java libraries for common tasks. Students who complete this course successfully should gain a solid foundation in algorithmic thinking and structured programming, and should be able to perform basic, common computational tasks easily and efficiently.

COMP 130 / INTRODUCTION TO PROGRAMMING (JAVA)
Term: Spring 2019Units 3Days: TUES THURSTimes: 08:30-09:45

This course is a general introduction to programming using the Java programming language. It emphasizes the structured programming language aspects of Java and de-emphasizes its object-oriented aspects. The latter are covered only to the extent that enables students to use standard Java libraries for common tasks. Students who complete this course successfully should gain a solid foundation in algorithmic thinking and structured programming, and should be able to perform basic, common computational tasks easily and efficiently.

COMP 132 / ADVANCED PROGRAMMING
Term: Spring 2019Units 3Days: TUES THURSTimes: 13:00-14:15

Advanced programming techniques and large scale programming. Inheritance and Type Hierarchies. Polymorphism. Object-oriented Programming. Code reuse. Graphical User Interfaces. Advanced class and template libraries. Introduction to low-level languages. Pointers and references. Resource management: Dynamic storage allocation, memory management. Virtual functions.

COMP 198 / TEACHING COMPUTER SCIENCE
Term: Spring 2019Units 3Days: TUES THURSTimes: 19:00-20:00

The aim of the course is to give qualified engineering students a unique opportunity to teach as a part of their undergraduate experience. Students are responsible for teaching sections for the course COMP130 Introduction to Programming. Students cover and teach materials such as functional decomposition, control statements, methods, recursion, strings, arrays, abstract data types, exception handling, graphical user interface and other fundamental elements of modern programming by using the Java language.

COMP 202 / DATA STRUCTURES&ALGORITHMS
Term: Spring 2019Units 3

Basic data structures, algorithms, and their computational complexity. List, stack, queue, priority queue, map, tree, balanced tree, hash table, heap, skip list, trie, graph. Basic search, selection, sorting, and graph algorithms. Recursion.

COMP 304 / OPERATING SYSTEMS
Term: Spring 2019Units 3Days: TUES THURSTimes: 14:30-15:45

Introduction to operating systems concepts, process management, memory management, virtual memory, input-output and device management, file systems, job scheduling, threads, process synchronization, deadlocks, interrupt structures, case studies of operating systems.

COMP 305 / ALGORITHMS&COMPLEXITY
Term: Spring 2019Units 3Days: MON WEDTimes: 08:30-09:45

Advanced topics in algorithms, and their computational complexity. Amortized complexity analysis. Randomized algorithms. Greedy algorithms. Dynamic programming. Linear programming. Advanced graph algorithms. Turing machines and models of computation. NP-completeness reductions.

COMP 306 / DATABASE MANAGEMENT SYSTEMS
Term: Spring 2019Units 3Days: TUES*Times: 08:30-09:45

Introduction to database management systems, file structure, organization and processing, sequential files, direct files, sort/merge, indexed and hash files, relational data model, logical database design, entity-relationship data model, data description and query languages.

COMP 404 / DIGITAL SPEECH AND AUDIO PROCESSING
Term: Spring 2019Units 3Days: MON WEDTimes: 11:30-12:45

Sound and human speech systems, phonetics and phonology, speech signal representations, role of pitch and formants, pitch-scale and time-scale modifications, basics of speech coding and VoIP systems, fundamentals of pattern and speech recognition, search algorithms for speech recognition.

COMP 410 / COMPUTER GRAPHICS
Term: Spring 2019Units 3Days: TUES THURSTimes: 10:00-11:15

Theory and practice of 3D computer graphics. Topics covered include graphics systems and models; geometric representations and transformations; graphics programming; input and interaction; viewing and projections; compositing and blending; illumination and color models; shading; texture mapping; animation; rendering and implementation; hierarchical and object-oriented modeling; scene graphs; 3D reconstruction and modeling.

COMP 415 / DISTRIBUTED COMPUTING SYSTEMS
Term: Spring 2019Units 3Days: TUES THURSTimes: 13:00-14:15

Principles and concepts of distributed systems, middleware, peer-to-peer systems and algorithms, design and implementation issues, virtualization, communication and coordination in distributed systems, logical clocks, causality, distributed mutual exclusion, election algorithms, consistency and replication, consistent global states, fault tolerance, distributed deadlocks, recovery, agreement protocols, distributed transactions, cloud computing.

COMP 429 / PARALLEL PROGRAMMING
Term: Spring 2019Units 3Days: TUES THURSTimes: 11:30-12:45

Fundamental concepts of parallelism. Overview of parallel architectures, multicores, heterogeneous systems, shared memory and distributed memory systems. Parallel programming models and languages. Multithreaded, message passing, data driven, task parallel and data parallel programming. Design of parallel programs, decomposition, granularity, locality, communication, load balancing, and asynchrony. Performance modeling of parallel programs, sources of parallel overheads.

COMP 434 / COMPUTER AND NETWORK SECURITY
Term: Spring 2019Units 3Days: MON WEDTimes: 16:00-17:15

Overview of Computer Security Techniques, Conventional Encryption, Public-Key Cryptography, Key Management, Message Authentication, Hash Functions and Algorithms, Digital Signatures, Authentication Protocols, Access Control Mechanisms, Network Security Practice, TCP/IP Security, Web Security, SSL (Secure Socket Layer), Denial-of-Service Attacks, Intrusion Detection, Viruses.