|
Code |
Course |
Prerequisites / Conditions |
|
CS 111 |
Discrete Structures in Computer Science and Computation |
|
|
CS 121 |
Digital Systems |
|
|
CS 131 |
Programming Principles |
|
|
CS 132 |
Object Oriented Programming |
CS 131 Programming Principles |
|
CS 202 |
Explorations into Computer Science |
|
|
CS 211 |
Theory of Computation |
CS 111 Discrete Structures in Computer Science and Computation MAS 012 Calculus Ι |
|
CS 221 |
Computer Organization and Assembly Programming |
CS 121 Digital Systems |
|
CS 222 |
Operating Systems |
CS 221 Computer Organization and Assembly Programming CS 232 Programming Techniques and Tools |
|
CS 231 |
Programming Techniques and Tools |
CS 111 Discrete Structures in Computer Science and Computation CS 132 Object Oriented Programming |
|
CS 232 |
Programming Techniques and Tools |
CS 131 Programming Principles |
|
CS 236 |
Algorithms and Complexity |
CS 231 Programming Techniques and Tools |
|
CS 324 |
Communications and Networks |
CS 131 Programming Principles |
|
CS 325 |
Parallel Processing |
CS 221 Computer Organization and Assembly Programming CS 232 Programming Techniques and Tools |
|
CS 326 |
Systems Security |
CS 232 Programming Techniques and Tools |
|
CS 341 |
Artificial Intelligence |
CS 231 Data Structures and Algorithms |
|
CS 342 |
Database Systems |
CS 231 Data Structures and Algorithms |
|
CS 343 |
Software Engineering |
CS 132 Object Oriented Programming |
|
CS 400 –CS 401 |
Diploma Project |
Academic Advisor Approval At least 156 ECTS |
|
CS 412 |
Logic in Computer Sciences |
CS 111 Discrete Structures in Computer Science and Computation |
|
CS 414 |
Basic Principles of Programming Languages |
CS 211 Theory of Computation CS 231 Programming Techniques and Tools |
|
CS 420 |
Computer Architecture |
CS 222 Operating Systems |
|
CS 421 |
Systems Programming |
CS 222 Operating Systems |
|
CS 422 |
Advanced Networks |
CS 324 Communications and Networks |
|
CS 423 |
Network and Information Security |
CS 324 Communications and Networks CS 326 Systems Security |
|
CS 424 |
Digital Signal Processing |
CS 111 Discrete Structures in Computer Science and Computation MAS 029 Linear Algebra MAS 012 Calculus Ι |
|
CS 425 |
Internet Technologies |
CS 132 Object Oriented Programming CS 324 Communications and Networks |
|
CS 426 |
Computer Graphics |
CS 232 Programming Techniques and Tools |
|
CS 427 |
Mobile Computer Networks |
CS 324 Communications and Networks |
|
CS 428 |
Internet of Things: Programming and Applications |
CS 222 Operating Systems |
|
CS 429 |
Theory and Practice of Compilers |
CS 211 Theory of Computation CS 231 Programming Techniques and Tools |
|
CS 431 |
Synthesis of Parallel Algorithms |
CS 231 Programming Techniques and Tools |
|
CS 432 |
Distributed Algorithms |
CS 211 Theory of Computation CS 231 Programming Techniques and Tools |
|
CS 433 |
Constraint Programming and Satisfaction |
CS 111 Discrete Structures in Computer Science and Computation CS 231 Programming Techniques and Tools |
|
CS 434 |
Logic Programming and Artificial Intelligence |
CS 111 Discrete Structures in Computer Science and Computation |
|
CS 435 |
Human Computer Interaction |
|
|
CS 441 |
Advanced Software Engineering |
CS 343 Software Engineering |
|
CS 442 |
Machine Learning |
CS 231 Programming Techniques and Tools |
|
CS 443 |
Software Reuse |
CS 132 Object Oriented Programming CS 343- Software Engineering |
|
CS 444 |
Computational Intelligent Systems |
|
|
CS 445 |
Digital Image Processing |
CS 231 Programming Techniques and Tools MAS 029 Linear Algebra |
|
CS 446 |
Advanced Database Systems |
CS 342 Database Systems |
|
CS 447 |
Computer Vision |
CS 231 Programming Techniques and Tools MAS 029 Linear Algebra |
|
CS 448 |
Data Mining on the Web |
CS 342 Database Systems |
|
CS 449 |
Professional Practice in Software Engineering |
CS 343 Software Engineering |
|
CS 450 |
Network Virtualisation and Management |
CS 324 Communications and Networks |
|
CS 451 |
Software Analysis |
CS 211 Computer Organization and Assembly Programming CS 232 Programming Techniques and Tools |
|
CS 452 |
Datacenter Computing |
CS 222 Operating Systems |
|
CS 484 |
Software Evolution |
CS 343 Software Engineering |
|
CS 499 |
Special Issues in Computer Science: Mobile Computing Systems |
Depending on the offered subject |
|
CS 500 |
Industrial Placement |
CS 342 Database Systems CS 343 Software Engineering |
|
MAS 013 |
Calculus ΙΙ |
MAS 012 Calculus Ι |
|
LAN 111 |
English for Computer Science |
LAN 100 General Advanced English or equivalent |