
Programme: |
Computer Sciences (2019/2020) |
Module: Computer Sciences |
Study Cycle: | First Cycle (Undergraduate) |
Faculty: | Contemporary Sciences and Technologies |
Academic year: | 2023 / 2024 |
Title: | Bachelor of Science in Computer Sciences / Module: Computer Sciences |
ECTS: | 240 (4 years) |
Decision: |
The Faculty of Contemporary Sciences at SEEU - Tetovo is a higher education institution with a general objective to perform high-educational, scientific-research activity in the field of Computer Sciences, Computer Engineering and Business Informatics.
The Computer Sciences programme is designed to meet the requirements of the local market, yet provide a modern and global perspective.
The programme objectives are:
- to provide students with opportunities to acquire wider communicational, lingual and analytical skills;
- to provide students with opportunities to acquire theoretical and practical knowledge in the field of Computer Sciences, as well as to apply that knowledge in real life and their professional practice;
- to equip students for joining the development and implementation of different software solutions;
- to equip students with the required skills for working on projects, individually or in group, that may be scientific- research, developmental or practical work;
- to provide students with good background for further adaptation to the new technological/ market changes and their application;
- to provide students with support skills for organizing, realizing and implementing methods and procedures in other fields.
After successfully completing the program the graduated students have the opportunity to be employed in different areas of industry, namely: ICT-oriented companies, business sectors, public administration etc.
The graduates will be able:
- to use Computer Systems and Information Technology in everyday life and beyond;
- to effectively apply the studied methods and algorithms;
- to program solutions for different problems;
- to organize databases, design, implement and further maintain and regulate the performance;
- to design and implement Computer Networks;
- to efficiently use the Internet technology;
- to organize and aid the technical solutions for solving different social, economical, scientific- technical issues.
Knowledge and understanding
- Have knowledge and understanding in the theoretical and practical aspects of Computer Science.
- This knowledge involves the main areas such as mathematics for computer science, algorithms, information technologies, networks, programming paradigms and their application, databases as well as variety of specialized courses in select areas within the field of computer science.
- Knowledge and understanding of various programming methodologies in practical problem solving scenarios (object oriented, functional, procedural programming etc.).
- Knowledge and understanding in conducting small scale research and application projects in the field of computer science.
Applying knowledge and understanding
- Ability to apply and use computer systems and information systems in habitual working tasks at advanced level.
- Ability to apply in an autonomous and creative manner standard methods and algorithms in effective matter to solve problems, develop applications (desktop, web or mobile) using standard and advanced computer tools and environments.
- Ability to develop and maintain software, using various development methodologies, environments and practices.
- Ability to create, organize and maintain relational databases.
- Ability to design and implement computer networks starting from small and medium scale local networks.
- Ability to organize information systems in a way to solve different social, economical and/or technological tasks.
- Propose information systems solutions on a beginner and medium level, including analysis, design development and reporting.
Making judgement
- Ability to gather and analyze data for the purpose of proposing software solutions.
- Ability to judge on platforms and development environments.
- Ability to evaluate different information and software solutions as well as to develop other software solutions.
Communication skills
- Ability to use software solutions and to support others in the field of information systems by appropriating the level according to the audience.
- To be able to do effective information systems projects and to be able to present them respecting the standards of the professional field.
- Contribute in the organization of e-society by participating at meetings and decision bodies on various level.
- Has advanced skills and experience in team working.
- Ability to communicate in writing and oral all phases of Computer Science creations and proposals such as technical documentations, requirement specifications, procurements in English and at least one local language at the advanced level.
Learning skills
- Ability to follow the advancements in the field of computer sciences.
- Ability to quickly learn new technologies, programming languages, toolkits and frameworks.
- Ability to apply learning skills in teaching and training information systems in schools or organizations.
- Ability to apply learning skills in project creation and management.
Semester 1
-
[CCS-203]
[6 ECTS]
Programming
The course offers an introduction to programming and covers concepts such as basic data types, arithmetic, operators, input-output commands, conditional structures, loop structures, functions, recursion, algorithms dealing with arrays and matrices, search and sorting algorithms, pointers and pointer operations, declaration of custom data structures.
-
[CCS-101]
[6 ECTS]
Introduction to Computer Sciences
This course presents a wide, integrated introduction to fundamental concepts of computer sciences. The following subjects are covered: history of computing; digital logic and digital systems; introduction to computer architectures, basic algorithms, problem solving and data structures; introduction to programming languages, operating systems, databases, networks, web and software engineering; application types, including specific software descriptions (word processors, database, browsers, etc. ); traditional and multimedia data processing.
-
[ACS-103]
[6 ECTS]
Linear Algebra
This course is designed to train students with the concepts and methods that form the basis of the linear algebra. Linear algebra actually occurs everywhere. Concepts of the subject are used continuously used anywhere without being named as such. The integral is linear, the derivative is linear and so on. Most of the applications of mathematics in "real life" comes to expression through the linear part. This is very important knowledge that will always be important for students in this direction. After completing this course students will be able to use and apply linear equalities and their resolution. Algebra for matrices. Linear transformations and how they are used for the application. Vector spaces. Inherent values and vectors of the real matrix. Determinants and orthogonality. The important goal is to link linear algebra with other areas with or without the use of mathematics.
-
[3 ECTS]
Albanian/Macedonian Language
- [BS018] Macedonian Language for Beginners 1
- [BS152] Macedonian Language for Beginners 2
- [MLIL-01] Macedonian Language Intermediate Level 1
- [MLIL-02] Macedonian Language Intermediate Level 2
- [MAPP1010] Macedonian Language for Professional Purposes 1
- [MAPP1020] Macedonian Language for Professional Purposes 2
- [BAM1010] Albanian Language for Beginners 1
- [BAM2010] Albanian Language for Beginners 2
- [3 ECTS] English Language
-
[6 ECTS]
Elective course (Language, Skills or Culture)
- [EFE-105] German Language
- [BSIL3010] Italian Language
- [EF999] French Language
- [EFE-132] Human Rights and Freedoms
- [EARTL-01] Assisted Reproductive Technology and Law
- [CCS084] Intercultural Communication
- [EWC-01] Web Creation
- [EDMD-02] Digital Media Design
- [EITSOP-03] IT Skills Office Productivity
- [EMOA-01] Microsoft Office Access
- [EMOE-02] Microsoft Office Excel
- [EMOPP-03] Microsoft Office PowerPoint
- [EMOW-04] Microsoft Office Word
- [CLE-203] Legal Writing and Reasoning
- [EITL-02] Information Technology (IT) Law
- [EFE-121] Professional Careеr Development
- [EATN-02] Administrative Terminology and Nomotechnics
- [ESSD-01] Social Skills Development
- [EPA-605] Career Search Strategies
- [ESCHC-01] Selected Chapters in Computing
- [EBI-502] Web Technologies
- [EFE-102] Academic Writing in English
- [EFE-104] Academic Writing in Albanian
- [EFE-103] Academic Writing in Macedonian
- [CBA112] Albanian Language for Specific Purposes
- [EPEG-01] Practical English Grammar
- [ECE-02] Conversational English
- [EDOL-03] Digital and Online Literacy
- [ELE065] Consumer Protection
- [CLE-302] Trade Law
- [ELE-408] Domestic Violence
- [ECS-01] Cyber Security
- [ESML-02] Social Media and the Law
- [EBEM-503] Business Communication
- [ELOD-03] Leadership and Organizational Development
- [EFE-109] Communication Skills
- [ECTHD-01] Critical Thinking Development
- [EPRNM-02] Public Relations and New Media
Semester 2
-
[CCS-102]
[6 ECTS]
Internet Technologies
The main objective of the course is to give students a practical knowledge of basic mechanisms, services and protocols of the global network - Internet. The course provides mastering of the overall architecture of an effective, scalable and secured web page. The students will acquire deep technical knowledge of XML, XHTML (lists, tables, figures, multimedia and forms), CSS (formatting, styles and layouts), and JavaScript (variables, conditions, loops and functions).
-
[CCS-303]
[6 ECTS]
Object - Oriented Programming
The course objective is to introduce the student to the basic concepts of object-oriented programming through the C++ programming language. For that purpose the concepts of objects and classes are introduced. Students will be introduced to class inheritance, hierarchy and polymorphism. The student will be capable, upon the completion of the course, to understand the principles of object-oriented programming and capable for programme writing by using the C ++ programming language.
-
[ACS-204]
[6 ECTS]
Calculus
Through this subject students learn about and fully master the concepts: function (as a separate mapping), ways of setting a function, and continuity of essential functions. Students are also enabled to find the limit of a function (limits), derivatives, solving problems for the determination of the monotony and finding the maximum and minimum value of real functions. This is done in order to finally be able to plot graph of a function from which you can also read all the properties and characteristics of functions. The course also aims to familiarize students with the notion of integral and it will be applied to various practical problems.
-
[3 ECTS]
Albanian/Macedonian Language
- [BS018] Macedonian Language for Beginners 1
- [BS152] Macedonian Language for Beginners 2
- [MLIL-01] Macedonian Language Intermediate Level 1
- [MLIL-02] Macedonian Language Intermediate Level 2
- [MAPP1010] Macedonian Language for Professional Purposes 1
- [MAPP1020] Macedonian Language for Professional Purposes 2
- [BAM1010] Albanian Language for Beginners 1
- [BAM2010] Albanian Language for Beginners 2
- [3 ECTS] English Language
-
[6 ECTS]
Elective course (Language, Skills or Culture)
- [EFE-105] German Language
- [BSIL3010] Italian Language
- [EF999] French Language
- [EFE-132] Human Rights and Freedoms
- [EARTL-01] Assisted Reproductive Technology and Law
- [CCS084] Intercultural Communication
- [EWC-01] Web Creation
- [EDMD-02] Digital Media Design
- [EITSOP-03] IT Skills Office Productivity
- [EMOA-01] Microsoft Office Access
- [EMOE-02] Microsoft Office Excel
- [EMOPP-03] Microsoft Office PowerPoint
- [EMOW-04] Microsoft Office Word
- [CLE-203] Legal Writing and Reasoning
- [EITL-02] Information Technology (IT) Law
- [EFE-121] Professional Careеr Development
- [EATN-02] Administrative Terminology and Nomotechnics
- [ESSD-01] Social Skills Development
- [EPA-605] Career Search Strategies
- [ESCHC-01] Selected Chapters in Computing
- [EBI-502] Web Technologies
- [EFE-102] Academic Writing in English
- [EFE-104] Academic Writing in Albanian
- [EFE-103] Academic Writing in Macedonian
- [CBA112] Albanian Language for Specific Purposes
- [EPEG-01] Practical English Grammar
- [ECE-02] Conversational English
- [EDOL-03] Digital and Online Literacy
- [ELE065] Consumer Protection
- [CLE-302] Trade Law
- [ELE-408] Domestic Violence
- [ECS-01] Cyber Security
- [ESML-02] Social Media and the Law
- [EBEM-503] Business Communication
- [ELOD-03] Leadership and Organizational Development
- [EFE-109] Communication Skills
- [ECTHD-01] Critical Thinking Development
- [EPRNM-02] Public Relations and New Media
Semester 3
-
[CCS-202]
[6 ECTS]
Computer Architecture
This course covers the design and technology behind modern computer architectures and machine programming. It provides a detailed overview of the hardware and software components, the structure, organization and relationship of the subcomponents of a computer, as well as their performances.
-
[CBI-203]
[6 ECTS]
Discrete Structures
The objective of this module is to provide students with mathematical knowledge that have direct application in the Business Informatics field. Some of the concepts provided in this course are already familiar to the students, but the objective here is even greater, to formalize these concepts to a higher level that will allow them to enrich their range of ideas and apply them while solving various practical problems.
-
[CCS-301]
[6 ECTS]
Algorithms and Data Structures
Through this course, students will learn about fundamental concepts and principles of algorithm analysis and design, and in using different data structures. It reviews different algorithms for solving the same problem. It reviews in details the time and space complexity of algorithms and establishing criteria for finding the best algorithm. It studies the design of different, well-known data structures (linear and nonlinear) and considers the possibility of creating new data structures, as well as their concrete application. The final part of the course represents an introduction to graphs and reviewing of basic models for graph-algorithms. Students become familiar with different abstract data types and algorithms, which allows further direct involvement in analyzing, designing and application of specific software projects.
- [6 ECTS] English for Specific Purposes
-
[6 ECTS]
Elective course (Language, Skills or Culture)
- [EFE-105] German Language
- [BSIL3010] Italian Language
- [EF999] French Language
- [EFE-132] Human Rights and Freedoms
- [EARTL-01] Assisted Reproductive Technology and Law
- [CCS084] Intercultural Communication
- [EWC-01] Web Creation
- [EDMD-02] Digital Media Design
- [EITSOP-03] IT Skills Office Productivity
- [EMOA-01] Microsoft Office Access
- [EMOE-02] Microsoft Office Excel
- [EMOPP-03] Microsoft Office PowerPoint
- [EMOW-04] Microsoft Office Word
- [CLE-203] Legal Writing and Reasoning
- [EITL-02] Information Technology (IT) Law
- [EFE-121] Professional Careеr Development
- [EATN-02] Administrative Terminology and Nomotechnics
- [ESSD-01] Social Skills Development
- [EPA-605] Career Search Strategies
- [ESCHC-01] Selected Chapters in Computing
- [EBI-502] Web Technologies
- [EFE-102] Academic Writing in English
- [EFE-104] Academic Writing in Albanian
- [EFE-103] Academic Writing in Macedonian
- [CBA112] Albanian Language for Specific Purposes
- [EPEG-01] Practical English Grammar
- [ECE-02] Conversational English
- [EDOL-03] Digital and Online Literacy
- [ELE065] Consumer Protection
- [CLE-302] Trade Law
- [ELE-408] Domestic Violence
- [ECS-01] Cyber Security
- [ESML-02] Social Media and the Law
- [EBEM-503] Business Communication
- [ELOD-03] Leadership and Organizational Development
- [EFE-109] Communication Skills
- [ECTHD-01] Critical Thinking Development
- [EPRNM-02] Public Relations and New Media
Semester 4
-
[CCS-401]
[6 ECTS]
Operating Systems
The main objective of this course is to introduce the fundamental concepts behind operating systems (OS). As an intermediate level between the hardware and the application level, operating systems need to control and share computer resources. This course starts with a short introduction of the main OS concepts, their evaluation and detailed analysis. The discussion, among others, covers processes and tasks, synchronization points, memory management, input/output devices, file systems and security. The second part of the course deals with the concepts of distributed, multimedia and on-chip operating systems. At the end, the concepts of mobile operating systems will be covered. All these concepts will be accompanied with case studies of specific OS in each category.
-
[CCS-403]
[6 ECTS]
Databases
The course is an introduction to the database concepts and systems. After completing this subject, students will be able to use models and concepts while designing databases. They will be able to use and design simple specific databases, based in the relational database model, use MS SQL Server system for managing databases (DBMS), SQL language and implementation of queries.
-
[CCS-402]
[6 ECTS]
Applied Probability and Statistics
The course objective is to provide students with the required knowledge of probabilities and statistics that have direct application in computer sciences. The goal is to learn about the processing of statistical data, their rules and presentation, and the laws for appropriate conclusions based on processed data. Furthermore, the students will learn about basic principles of probability and their application in different areas of everyday life, especially in the field of computer science.
-
[EACS-05]
[6 ECTS]
Automata and Formal Languages
This course is meant to give the introduction to the theory of computational modeling and computability through formal languages and finite automata.
-
[6 ECTS]
Elective course (Professional)
- [CISM2021] Introduction to Information Systems
- [ECS-401] Advanced Programming in .NET
- [ECS-601] Programming in Java
- [ECS-405] Digital Logic Design
- [EAIT-403] Multimedia System
- [ECS6020] Introduction to Cryptography
- [ECS-507] Numerical Computations
- [ECS-506] Programming Mobile Devices
- [ECS-403] Game Programming
- [ECS-609] Introduction Artificial Intelligence
- [ECS-502] Introduction to Parallel Processing
- [ECS-500] Е-commerce
- [ECCE-603] Computer Network Management
- [EACS-03] NoSQL Databases
- [ECS-701] Mobile and Wireless Networks
- [ECS-702] Computer Ethics
- [ECS-501] Introduction to Semantic Web
- [ECS-703] Business Analytics
- [ECS3036] Parallel Programming
- [ECS3060] IT Professional Ethics
- [ECS-404] Computer Logic Design and Simulation
- [EPL2030] Compilers
Semester 5
-
[CCS-502]
[6 ECTS]
Software Engineering
The course objective is to provide students with in depth, critical and systematic understanding of principles and techniques of software specification, analysis and design, programming, testing and evaluation, maintenance and management with projecting effective software applications. Students will capture clear understanding of tools and methodology for developing software solutions.
-
[CCS-503]
[6 ECTS]
Computer Networks
The course objective is to introduce the basic concepts and principles of computer networks. It reviews the different network components and their interaction. It provides a detailed overview of network architectures and their design. The course illustrates the concepts behind important network architectures such as Ethernet and Internet. The students will obtain the skills needed to analyze, design and implement LAN networks and optimization of their performance.
-
[CCS-501]
[6 ECTS]
Web Programming
This course covers the design and development of web applications, covering both server-side and client-side programming. The course also deals with the design of databases for the web, web programming languages, and data integration in web applications.
-
[6 ECTS]
Elective course (Professional)
- [CISM2021] Introduction to Information Systems
- [ECS-401] Advanced Programming in .NET
- [ECS-601] Programming in Java
- [ECS-405] Digital Logic Design
- [EAIT-403] Multimedia System
- [ECS6020] Introduction to Cryptography
- [ECS-507] Numerical Computations
- [ECS-506] Programming Mobile Devices
- [ECS-403] Game Programming
- [ECS-609] Introduction Artificial Intelligence
- [ECS-502] Introduction to Parallel Processing
- [ECS-500] Е-commerce
- [ECCE-603] Computer Network Management
- [EACS-03] NoSQL Databases
- [ECS-701] Mobile and Wireless Networks
- [ECS-702] Computer Ethics
- [ECS-501] Introduction to Semantic Web
- [ECS-703] Business Analytics
- [ECS3036] Parallel Programming
- [ECS3060] IT Professional Ethics
- [ECS-404] Computer Logic Design and Simulation
- [EPL2030] Compilers
-
[6 ECTS]
Elective course (Professional)
- [CISM2021] Introduction to Information Systems
- [ECS-401] Advanced Programming in .NET
- [ECS-601] Programming in Java
- [ECS-405] Digital Logic Design
- [EAIT-403] Multimedia System
- [ECS6020] Introduction to Cryptography
- [ECS-507] Numerical Computations
- [ECS-506] Programming Mobile Devices
- [ECS-403] Game Programming
- [ECS-609] Introduction Artificial Intelligence
- [ECS-502] Introduction to Parallel Processing
- [ECS-500] Е-commerce
- [ECCE-603] Computer Network Management
- [EACS-03] NoSQL Databases
- [ECS-701] Mobile and Wireless Networks
- [ECS-702] Computer Ethics
- [ECS-501] Introduction to Semantic Web
- [ECS-703] Business Analytics
- [ECS3036] Parallel Programming
- [ECS3060] IT Professional Ethics
- [ECS-404] Computer Logic Design and Simulation
- [EPL2030] Compilers
Semester 6
-
[CCS-602]
[6 ECTS]
Distributed Systems
This course introduces the students with the basic concepts of distributed systems. It provides an overview of distributed system architectures and a look to their advantages and disadvantages compared to traditional centralized systems. The students will learn about inter-process communication and network protocols for communication. Students also will be introduced to basics of client-server programming, middleware platforms (CORBA, JavaBeans, DCOM, .NET), Web Technologies and Web Services as distributed system technologies. The last part of this course deals with transactions, nested transactions and distributed transactions. Students will be familiar with standard application solutions for distributed systems.
-
[ECS4060]
[6 ECTS]
Human - Computer Interaction
This course aims to enable students with knowledge of the theory and practice in software development related to the communication between humans and computers, with the goal of creating usable application interfaces. The course deals with the psycho-motor aspects that influence the way people communicate with machines. Through concrete examples of user interfaces, students should understand the principles and be able to apply them while designing their applications.
-
[ECS-604]
[6 ECTS]
Data Mining
This course covers the concepts and technologies in the field of data mining, terminology, techniques and algorithms for searching large unstructured collections of data with the goal of finding and structuring important knowledge. The covered subjects include: - Data pre-processing; - Data warehousing and OLAP technology for data mining; - Classification and prediction; - Mining association rules in large databases; - Clustering analysis; - Outlier analysis; - Data mining applications and trends in data mining;
-
[6 ECTS]
Elective course (Professional)
- [CISM2021] Introduction to Information Systems
- [ECS-401] Advanced Programming in .NET
- [ECS-601] Programming in Java
- [ECS-405] Digital Logic Design
- [EAIT-403] Multimedia System
- [ECS6020] Introduction to Cryptography
- [ECS-507] Numerical Computations
- [ECS-506] Programming Mobile Devices
- [ECS-403] Game Programming
- [ECS-609] Introduction Artificial Intelligence
- [ECS-502] Introduction to Parallel Processing
- [ECS-500] Е-commerce
- [ECCE-603] Computer Network Management
- [EACS-03] NoSQL Databases
- [ECS-701] Mobile and Wireless Networks
- [ECS-702] Computer Ethics
- [ECS-501] Introduction to Semantic Web
- [ECS-703] Business Analytics
- [ECS3036] Parallel Programming
- [ECS3060] IT Professional Ethics
- [ECS-404] Computer Logic Design and Simulation
- [EPL2030] Compilers
-
[6 ECTS]
Elective course (Professional)
- [CISM2021] Introduction to Information Systems
- [ECS-401] Advanced Programming in .NET
- [ECS-601] Programming in Java
- [ECS-405] Digital Logic Design
- [EAIT-403] Multimedia System
- [ECS6020] Introduction to Cryptography
- [ECS-507] Numerical Computations
- [ECS-506] Programming Mobile Devices
- [ECS-403] Game Programming
- [ECS-609] Introduction Artificial Intelligence
- [ECS-502] Introduction to Parallel Processing
- [ECS-500] Е-commerce
- [ECCE-603] Computer Network Management
- [EACS-03] NoSQL Databases
- [ECS-701] Mobile and Wireless Networks
- [ECS-702] Computer Ethics
- [ECS-501] Introduction to Semantic Web
- [ECS-703] Business Analytics
- [ECS3036] Parallel Programming
- [ECS3060] IT Professional Ethics
- [ECS-404] Computer Logic Design and Simulation
- [EPL2030] Compilers
Semester 7
-
[CCS-601]
[6 ECTS]
Computer Graphics
This course introduces the basic concepts of computer graphics theory, linear algebra and usage of OpenGL API. Previous knowledge of C/C++ programming languages, which will be nessecary in the exercises throughout this course. Some basic knowledge of geometry and trigonometry is also recommended as well as some knowledge on linear algebra, vectors and matrices. In this course, topics regarding Computer Graphics will be covered such as: Transformations and matrices, basic concepts regarding viewports, viewing planes and framebuffer, ideas about anti-aliasing, texture mapping, the usage of cameras and light as well as some techniques and algorithms for implementing the above mentioned concepts.
-
[CCS-701]
[6 ECTS]
Project Management
The aim of the course is for students to be involved in the world of modern projects and to confront them with the opportunities and challenges of real economic life in creating projects suitable for real needs. The specific objectives of the course include how to define a given project (using several phases) and emphasize the important role of the project manager (to understand the need, scope, implementation activities, complexity of modern design, etc.). Students should be trained on how to apply modern tools and techniques of modern design management when transforming a need or creative idea into a real and documented project that will make them more inventive and competitive in the competitive labour market.
-
[CCS-802]
[6 ECTS]
Logic and Functional Programming
This course aims to introduce logic programming paradigm through Prolog language. The subject focuses on syntax and the semantics of Prolog, the working of a Prolog interpreter and various applications of Prolog. In particular, its application database querying, parsing, meta-programming, and problem solving in Artificial Intelligence (AI).
-
[6 ECTS]
Elective course (Professional)
- [CISM2021] Introduction to Information Systems
- [ECS-401] Advanced Programming in .NET
- [ECS-601] Programming in Java
- [ECS-405] Digital Logic Design
- [EAIT-403] Multimedia System
- [ECS6020] Introduction to Cryptography
- [ECS-507] Numerical Computations
- [ECS-506] Programming Mobile Devices
- [ECS-403] Game Programming
- [ECS-609] Introduction Artificial Intelligence
- [ECS-502] Introduction to Parallel Processing
- [ECS-500] Е-commerce
- [ECCE-603] Computer Network Management
- [EACS-03] NoSQL Databases
- [ECS-701] Mobile and Wireless Networks
- [ECS-702] Computer Ethics
- [ECS-501] Introduction to Semantic Web
- [ECS-703] Business Analytics
- [ECS3036] Parallel Programming
- [ECS3060] IT Professional Ethics
- [ECS-404] Computer Logic Design and Simulation
- [EPL2030] Compilers
-
[6 ECTS]
Elective course (Professional)
- [CISM2021] Introduction to Information Systems
- [ECS-401] Advanced Programming in .NET
- [ECS-601] Programming in Java
- [ECS-405] Digital Logic Design
- [EAIT-403] Multimedia System
- [ECS6020] Introduction to Cryptography
- [ECS-507] Numerical Computations
- [ECS-506] Programming Mobile Devices
- [ECS-403] Game Programming
- [ECS-609] Introduction Artificial Intelligence
- [ECS-502] Introduction to Parallel Processing
- [ECS-500] Е-commerce
- [ECCE-603] Computer Network Management
- [EACS-03] NoSQL Databases
- [ECS-701] Mobile and Wireless Networks
- [ECS-702] Computer Ethics
- [ECS-501] Introduction to Semantic Web
- [ECS-703] Business Analytics
- [ECS3036] Parallel Programming
- [ECS3060] IT Professional Ethics
- [ECS-404] Computer Logic Design and Simulation
- [EPL2030] Compilers
Semester 8
-
[CCS-804]
[6 ECTS]
Information Security
This course teaches principles of computer security from an applied viewpoint and provides hands on experience with security threats and countermeasures. The course additionally covers principles and skills useful for making informed security decisions and for understanding how security interacts with the world around it. Applied topics include cryptography, authorization control, operating systems security, and web and network security. Other topics include general security principles, human factors such as trust and social engineering, the security of complex systems, and the economics of security. The course aims to balance theory and practice.
-
[CCS-805]
[6 ECTS]
Software Testing and Analysis
Software plays an important role in our daily activities, often providing critical services to end users. It is important to ensure that these systems function as they are intended with a high degree of quality. Software testing and program analysis are two techniques that are widely used to ensure the software quality. These techniques are used by developers in order to validate, verify, and evaluate the quality of software produced during the software engineering process. This course aims to provide students with advanced knowledge of the techniques used in software testing and program analysis. Students will gain an understanding of the concepts and theories that underlie these techniques. Students will also learn to use existing popular tools that support testing and analysis tasks and will be exposed to new research in the area.
-
[CCS-806]
[6 ECTS]
Service Oriented Architectures (SOA)
The aim of this course is to establish an in-depth study of Service Oriented Architectures (SOA) from three main perspectives: business, architectural and technological point of view. From business perspective, adopting SOA is essential to delivering business agility, therefore the importance of SOA in industry will be explained. The architectural perspective will discuss different architectural models of software development, with focus on SOA design and design patterns. The technology perspective will provide students with the opportunity to gain the required experience to implement and deploy SOA solutions that will meet different functional and non - functional requirements.
-
[CCS-603]
[6 ECTS]
Capstone Project
In this course, students will work on completing an applied or theoretical project. The aim of the course is to enable students to integrate the knowledge gained from the courses across the curriculum, in order to deliver a ‘product’, such as software or thesis. The students will have opportunity to gain experience in designing, programming, and evaluating a computer engineering project. At the end, students document their works in form of written reports and oral presentations, which are evaluated by a faculty committee.
-
[6 ECTS]
Elective course (Professional)
- [CISM2021] Introduction to Information Systems
- [ECS-401] Advanced Programming in .NET
- [ECS-601] Programming in Java
- [ECS-405] Digital Logic Design
- [EAIT-403] Multimedia System
- [ECS6020] Introduction to Cryptography
- [ECS-507] Numerical Computations
- [ECS-506] Programming Mobile Devices
- [ECS-403] Game Programming
- [ECS-609] Introduction Artificial Intelligence
- [ECS-502] Introduction to Parallel Processing
- [ECS-500] Е-commerce
- [ECCE-603] Computer Network Management
- [EACS-03] NoSQL Databases
- [ECS-701] Mobile and Wireless Networks
- [ECS-702] Computer Ethics
- [ECS-501] Introduction to Semantic Web
- [ECS-703] Business Analytics
- [ECS3036] Parallel Programming
- [ECS3060] IT Professional Ethics
- [ECS-404] Computer Logic Design and Simulation
- [EPL2030] Compilers