Undergraduate Courses

Must Courses
Course Code and TitleCENG 105 - Computer Engineering Orientation
Credits2 0 2 (ECTS: 2)
Course DescriptionThis is an orientation course for computer engineering students. It will cover an overview of the computer engineering field, department's academic program, rules and regulations; units, dimensions, error analysis, computer systems, data representation and number systems, compilers, browsers and Internet; ethical, legal and contemporary issues, technical visits and presentations.
Prerequisites-
Course Web Pagehttp://ceng105.cankaya.edu.tr/
Course Code and TitleCENG 111 - Computer Programming I
Credits3 2 4 (ECTS: 4)
Course DescriptionIntroduction to computer programming. Exploring the concepts of algorithm development and basic elements of computer programming. Input and output, data types and variables, expressions, decision and repetition constructs, functions, strings, basic data structures, file management.
Prerequisites-
Course Web Pagehttp://ceng111.cankaya.edu.tr/
Course Code and TitleCENG 114 - Computer Programming II
Credits3 2 4 (ECTS: 7)
Course DescriptionProgramming in C language. Structured problem solving and top-down analysis and design of solution algorithms. Selection statements, Looping statements, Functions, pointers, 1D-2D arrays, character and string manipulations, structures, and text files.
PrerequisitesCENG 111
Course Web Pagehttp://ceng114.cankaya.edu.tr/
Course Code and TitleCENG 124 - Discrete Structures
Credits3 0 3 (ECTS: 5)
Course DescriptionPropositional logic, introduction to proofs, sets, relations and functions, application to data structure and graph representations, partial ordered sets, trees, algebraic structures, Boolean algebra, error correcting codes, introduction to grammars and machines and languages.
Prerequisites-
Course Web Pagehttp://ceng124.cankaya.edu.tr/
Course Code and TitleCENG 200 - Summer Training I
Credits0 0 0 (ECTS: 5)
Course DescriptionStudents are required to attend and successfully complete a minimum of 20 working days summer training. The summer internship should be carried out in accordance with the rules and regulations set by the department. In both internships, students are expected to observe, describe and report their practical experiences.
PrerequisitesCENG 241
Course Web Pagehttps://cengstaj.cankaya.edu.tr/
Course Code and TitleCENG 218 - Data Structures
Credits3 2 4 (ECTS: 7)
Course DescriptionThe course introduces and develops methods for designing and implementing abstract data types using the Java programming language. Specific topics include linked structures, stack, queue, recursive algorithms, binary trees, balanced trees, and hash tables.
PrerequisitesCENG 241
Course Web Pagehttp://ceng218.cankaya.edu.tr/
Course Code and TitleCENG 222 - Computer Organization
Credits3 0 3 (ECTS: 7)
Course DescriptionThis course provides a basic understanding of computer organization: Roles of processors, main memory, and input/output devices; the concept of programs as sequences of machine instructions (assembly language).
PrerequisitesECE 223 || EE213
Course Web Pagehttp://ceng222.cankaya.edu.tr/
Course Code and TitleCENG 235 - Introduction To Probability and Statistics
Credits3 0 3 (ECTS: 6)
Course DescriptionSample spaces and events, conditional probability and independence. Discrete and continuous random variables, their probability distributions, expected value and distribution parameters. Discrete probability distribution functions (Binomial, geometric, negative binomial, Poisson distributions). Continuous probability distributions (uniform, normal, exponential, and gamma distributions). Random sampling, sampling distributions, central limit theorem, confidence intervals.
Prerequisites-
Course Web Pagehttp://ceng235.cankaya.edu.tr/
Course Code and TitleCENG 236 - Numerical Analysis
Credits3 0 3 (ECTS: 6)
Course DescriptionNumerical Computations is intended to provide an understanding of the numerical algorithms, an ability to organize problems in a form suitable for such numerical solutions, and an introduction to common computer methods for their implementation. Topics include the characteristics of floating point arithmetic, analysis of error, the use of computers as numerical computing devices, approximation of roots of equations., direct and iterative methods for linear equations, nonlinear equations, interpolation and function approximation, numerical differentiation and integration.
PrerequisitesCENG 114 && MATH 156
Course Web Pagehttp://ceng236.cankaya.edu.tr/
Course Code and TitleCENG 241 - Object Oriented Programming
Credits3 2 4 (ECTS: 5)
Course DescriptionThe course provides Java language to introduce, Structures and Abstract Data Types, Function overloading, Java classes and concepts such as Operator Overloading, inheritance, virtual functions, templates, and Polymorphism.
PrerequisitesCENG 114
Course Web Pagehttp://ceng241.cankaya.edu.tr/
Course Code and TitleCENG 300 - Summer Training II
Credits0 0 0 (ECTS: 5)
Course DescriptionStudents are required to attend and successfully complete a minimum of 20 working days summer training. The summer internship should be carried out in accordance with the rules and regulations set by the department. In both internships, students are expected to observe, describe and report their practical experiences.
PrerequisitesCENG 200 && (CENG 396 || CENG 356)
Course Web Pagehttps://cengstaj.cankaya.edu.tr/
Course Code and TitleCENG 328 - Operating Systems
Credits2 2 3 (ECTS: 7)
Course DescriptionThe course covers an introduction to the concepts of Operating Systems and their design and implementation issues. It includes operating systems subsystems such as process management and CPU scheduling, memory and device managements, multi-processing, multi-thread programming, inter-process communication, deadlock issues and file processing. Laboratory session are used to practice multi-processing, multi-threading and IPC issues.
PrerequisitesCENG 114 && CENG 222
Course Web Pagehttp://ceng328.cankaya.edu.tr/
Course Code and TitleCENG 329 - Microprocessors
Credits2 2 3 (ECTS: 6)
Course DescriptionIntroduction to microprocessors. Microcomputer architecture. An example microprocessor. Arithmetic Logic Unit structure. Assembly language programming. Timers and interrupts. Parallel and serial Input/Output programming. Application examples.
PrerequisitesCENG 222
Course Web Pagehttp://ceng329.cankaya.edu.tr/
Course Code and TitleCENG 356 - Database Management Systems
Credits2 2 3 (ECTS: 6)
Course DescriptionIntroduction to DBMSs, relational databases, query languages, SQL. Database design issues.
PrerequisitesCENG 218
Course Web Pagehttp://ceng356.cankaya.edu.tr/
Course Code and TitleCENG 382 - Web Development
Credits2 2 3 (ECTS: 6)
Course DescriptionThis course first introduces the basics of web page creation using HTML and CSS. Then, this course will introduce students to modern web frameworks and component-based libraries for efficiently developing modular web page components, and for creating data-driven documents. This course will cover how to represent and exchange data using JavaScript Object Notation (JSON), and how to access RESTful APIs on the web. This course will prepare students to use recent web development frameworks and show them how to integrate them with NoSQL databases.
PrerequisitesCENG 241
Course Web Pagehttp://ceng382.cankaya.edu.tr/
Course Code and TitleCENG 383 - Algorithms
Credits3 0 3 (ECTS: 6)
Course DescriptionThe course introduces and develops fundamental techniques for designing and implementing algorithms, including asymptotic analysis; divide-and-conquer algorithms and recurrences; greedy algorithms; data structures; graph algorithms.
PrerequisitesCENG 218
Course Web Pagehttp://ceng383.cankaya.edu.tr/
Course Code and TitleCENG 393 - Computer Networks
Credits2 2 3 (ECTS: 6)
Course DescriptionThe course covers a thorough understanding of the principles and techniques employed in data communication in the context of local and wide area computer communication networks. It includes overview of computer networking, communication protocol design issues, ISO OSI and TCP/IP protocol suites. Physical, data link, network, transport layers are covered in detail. Domain name system is introduced and network programming is carried out in laboratory.
PrerequisitesCENG 222
Course Web Pagehttp://ceng393.cankaya.edu.tr/
Course Code and TitleCENG 396 - Software Engineering
Credits3 0 3 (ECTS: 6)
Course DescriptionThe goal of this comprehensive module is to introduce students to the key concepts of Software Engineering. It discuses students to apply plan driven and agile software development methodologies, phases of software development from gathering requirements, software design and architecture, and software testing. In light of emerging technologies and trends, basics of project management and software metrics are also discussed.
PrerequisitesCENG 241
Course Web Pagehttp://ceng396.cankaya.edu.tr/
Course Code and TitleCENG 407 - Innovative System Design and Development I
Credits1 2 2 (ECTS: 5)
Course DescriptionUnder the supervision of a staff member, students will be assigned either an industrial team project or an independent/group project in which a solution to the problem identified will be designed/implemented using innovative approaches. In this course, students are expected to perform requirements analysis and preliminary design for their selected project in cooperation with industry.
PrerequisitesCENG 396 || CENG 356
Course Web Pagehttp://cengproject.cankaya.edu.tr/
Course Code and TitleCENG 408 - Innovative System Design and Development II
Credits1 2 2 (ECTS: 6)
Course DescriptionUnder the supervision of a staff member, students will be assigned either an industrial team project or an independent/group project in which a solution to the problem identified will be designed/implemented using innovative approaches.
PrerequisitesCENG 407
Course Web Pagehttp://cengproject.cankaya.edu.tr/
Course Code and TitleCENG 442 - Programming Language Concepts
Credits3 0 3 (ECTS: 5)
Course DescriptionLanguage categories, Language design, Programming languages evolution, Syntax, Semantics, Lexical and syntax analyzers, Names, Bindings, Type checking, Scoping, Data types, Expressions, Statements, Statement-level control structures, Subprograms, Abstract data types, Functional programming languages, Logic programming languages.
PrerequisitesCENG 124 && CENG 241
Course Web Pagehttp://ceng442.cankaya.edu.tr/
Course Code and TitleCENG 466 - Artificial Intelligence
Credits3 0 3 (ECTS: 5)
Course DescriptionAI is concerned with making computers perform tasks that are currently performed better by humans. The primary aim of this course is to provide some of the theoretical foundations of AI. As a whole it emphasizes both theoretical background and hands-on experience.
PrerequisitesCENG 218
Course Web Pagehttp://ceng466.cankaya.edu.tr/
Course Code and TitleCENG 491 - Formal Languages and Automata
Credits3 0 3 (ECTS: 6)
Course DescriptionIntroduction to strings, languages, and grammars. Concept of abstract machines and language acceptance. Deterministic and nondeterministic finite state machines. Regular expressions. Machines with pushdown tape. Context-free grammars and parse trees. Turing machines and recursive functions. Unrestricted grammars.
PrerequisitesCENG 124
Course Web Pagehttp://ceng491.cankaya.edu.tr/
Course Code and TitleCENG 497 - Computer Graphics
Credits2 2 3 (ECTS: 5)
Course DescriptionOverview of Advanced application of computer graphics techniques. Shading, deformation, ray tracing, radiosity, texture mapping, fractal representation. Concepts of motion are introduced for the generation of digital animation. Concepts of graphical workstation design, especially with respect to user interfaces and window managers are introduced.
PrerequisitesCENG 218 && MATH 205
Course Web Pagehttp://ceng497.cankaya.edu.tr/
Elective Courses
Course Code and TitleCENG 344 - Introduction to Java Programming
Credits2 2 3 (ECTS: 5)
Course Descriptionhis course introduces the basics of object oriented principles using Java programming language. Topics include: Java Language Basics, creating and manipulating objects, classes, encapsulation, inheritance, interfaces, polymorphism, information hiding, abstract methods and classes. In this course, students also gain experiences on GUI applications, graphics and event-driven programming.
Prerequisites-
Course Web Pagehttp://ceng344.cankaya.edu.tr/
Course Code and TitleCENG 346 - Compiler Design
Credits2 2 3 (ECTS: 6)
Course DescriptionThe principles, algorithms, and data structures involved in the design and construction of compilers. Finite-state machines, lexical analysis, context-free grammars, push-down parsers, LR and LALR parsers, other parsing techniques, symbol tables, error recovery, an introduction to intermediate code generation.
Prerequisites-
Course Web Pagehttp://ceng346.cankaya.edu.tr/
Course Code and TitleCENG 348 - Essentials of Geospatial Information Technologies
Credits2 2 3 (ECTS: 5)
Course DescriptionDefinition of the Geospatial Information Technologies (GIT), Basic terminology in GIT, Map Projection Systems, Global Positioning Systems (GPS) and its components, Remote Sensing (RS) Technology and its components, Geographic Information Systems (GIS) and its components, Geospatial Data Types, Geospatial Data Structures, Creation of a Geospatial Database, GIS Software and Hardware, Visualization of Geospatial Data, Geospatial Data Analysis.
Prerequisites-
Course Web Pagehttp://ceng348.cankaya.edu.tr/
Course Code and TitleCENG 353 - Information Systems Analysis and Design
Credits3 0 3 (ECTS: 5)
Course DescriptionThe course addresses the concepts, methodologies, techniques, and tools essential for systems analysts and designers to successfully develop information systems. After completing this course, students should be able to analyse the structures of the IT system, model information processes, and design/redesign of IT systems using object-oriented tools.
Prerequisites-
Course Web Pagehttp://ceng353.cankaya.edu.tr/
Course Code and TitleCENG 358 - Practical UML
Credits2 2 3 (ECTS: 5)
Course DescriptionReview of Object oriented concepts. The rational Unified process. Fundamentals of UML. Use case diagrams. Class diagrams and associations, Object diagrams. Behavioral diagrams, Sequence diagrams, collaboration diagrams, activity diagrams, state diagrams. Implementation Diagrams, component diagrams, deployment diagrams.
Prerequisites-
Course Web Pagehttp://ceng358.cankaya.edu.tr/
Course Code and TitleCENG 361 - Innovative Game Design
Credits3 0 3 (ECTS: 5)
Course DescriptionThis course aims to cover innovative fundamentals of game design including but not limited to players, game play, experiences, mechanics, the process of balancing a game, and modeling the user experiences. Furthermore, it explores the theories and principles of game design, and details methods for the design and evaluation process of games. Ultimately, the goal is to introduce the innovative aspects of game design and development.
Prerequisites-
Course Web Pagehttp://ceng361.cankaya.edu.tr/
Course Code and TitleCENG 394 - Human Computer Interaction
Credits3 0 3 (ECTS: 5)
Course DescriptionBasic principles of HCI. Human capabilities and limitations. Interaction Styles. Usability principles. User and task analysis. Interface Design principles. Usability heuristics. Interface evaluation methods. Advanced User Interface technologies.
Prerequisites-
Course Web Pagehttp://ceng394.cankaya.edu.tr/
Course Code and TitleCENG 434 - Mobile and Wireless Computing
Credits3 0 3 (ECTS: 5)
Course DescriptionUbiquitous access to information, anywhere, anyplace, and anytime, will characterize whole new kinds of information systems in the 21st Century. These are being enabled by rapidly emerging wireless communications systems, based on radio and infrared transmission mechanisms, and utilizing such technologies as cellular telephony, personal communications systems, wireless PBXs, and wireless local area networks. These systems have the potential to dramatically change society as workers become "untethered" from their information sources and communications mechanisms. While there is a rich body of knowledge associated with radio system engineering, the needed expertise must build upon this to encompass network management, integration of wireless and wireline networks, system support for mobility, computing system architectures for wireless nodes/base stations/servers, user interfaces appropriate for small handheld portable devices, and new applications that can exploit mobility and location information.
Prerequisites-
Course Web Pagehttp://ceng434.cankaya.edu.tr/
Course Code and TitleCENG 435 - Introduction to Data Security and Cryptography
Credits2 2 3 (ECTS: 5)
Course DescriptionThis is an introductory course on the methods, algorithms, techniques, and tools of data security and cryptography. After studying basic concepts of classical and modern cryptography, the students will be able to demonstrate this understanding by the solution of enciphered messages, by using the methods discussed in the course.
Prerequisites-
Course Web Pagehttp://ceng435.cankaya.edu.tr/
Course Code and TitleCENG 439 - Internetworking
Credits2 2 3 (ECTS: 5)
Course DescriptionIntroduction to computer networks, and internetworking. Architecture, components, and operations of routers and switches in small and large network. Routing and Packet forwarding: The router components and configuration using the Cisco IOS. Introduction to IPv6
PrerequisitesCENG 290
Course Web Pagehttp://ceng439.cankaya.edu.tr/
Course Code and TitleCENG 440 - Advanced Internetworking
Credits2 2 3 (ECTS: 5)
Course DescriptionThe course covers routing algorithms and their configuration in deep. This includes both static and dynamic routing algorithms. The topics covered in static routing are: Building the routing table, Path determination, Switching functions of a router. In dynamic routing the topics are: Metrics and administrative distances, Distance Vector Routing Protocols: RIPv1 and RIPv2, EIGRP operation and configuration, Link-State Routing Protocols: OSPFv2 operation and configuration. The course also covers variable length subnet masking and CIDR, configuring and troubleshooting networki devices and resolving common issues with data link protocols.
PrerequisitesCENG 439
Course Web Pagehttp://ceng440.cankaya.edu.tr/
Course Code and TitleCENG 444 - Advanced Java Programming
Credits2 2 3 (ECTS: 5)
Course DescriptionThis course aims to cover advanced topics in java. File input and output features, exception handling, multi-threaded programming, GUI features of Java, networking with java and it introduces open source libraries for information retrieval application development, such as Tika, Lucene and JSoup.
Prerequisites-
Course Web Pagehttp://ceng444.cankaya.edu.tr/
Course Code and TitleCENG 460 - Introduction to Multimedia Computing
Credits3 0 3 (ECTS: 5)
Course DescriptionSince multimedia data are often of bulky size, they have to be effectively compressed to be stored on storage media and transmitted over bandwidth-limited networks. A large number of multimedia coding algorithms have been invented to fulfill this challenge of data compression, and many multimedia coding standards and specifications have created by international standardization bodies and/or industrial consortiums. While multimedia coding defines representations of diverse types of digital information such as audio, speech, image and video, the course mainly concentrates on managing and processing these digital data. Therefore, it becomes more and more important to have an in-depthunderstanding on how multimedia coding works, not only for developers of multimedia coding systems, but also for users of these systems.
Prerequisites-
Course Web Pagehttp://ceng460.cankaya.edu.tr/
Course Code and TitleCENG 462 - Digital Image Processing
Credits3 0 3 (ECTS: 5)
Course DescriptionOverview of Image model sampling and quantization, basic relationships between pixels and image geometry, two-dimensional Fourier transforms, image enhancement, spatial and frequency domain methods, image restoration, image segmentation.
Prerequisites-
Course Web Pagehttp://ceng462.cankaya.edu.tr/
Course Code and TitleCENG 464 - Introduction To Data Mining
Credits3 0 3 (ECTS: 5)
Course DescriptionKnowledge discovery and data mining basics. Principles of data mining. Data Pre-processing. Decision tree induction for Classification. Other classification techniques. Basics for cluster detection. K-means cluster detection algorithm. Other clustering techniques. Association rules. Outlier detection.
Prerequisites-
Course Web Pagehttp://ceng464.cankaya.edu.tr/
Course Code and TitleCENG 465 - Neural Networks
Credits3 0 3 (ECTS: 5)
Course DescriptionThis course is an introduction to Artificial Neural Networks. The various types of neural networks are explained and demonstrated, applications of neural networks like ANNs in several fields are described, and a detailed historical background is provided. The connection between the artificial and the real network is also investigated and explained. Finally, the mathematical models involved are presented and demonstrated.
Prerequisites-
Course Web Pagehttp://ceng465.cankaya.edu.tr/
Course Code and TitleCENG 468 - Knowledge Engineering
Credits3 0 3 (ECTS: 5)
Course DescriptionKnowledge engineering is a field within artificial intelligence that develops knowledge-based systems. Such systems are computer programs that contain knowledge, rules and reasoning mechanisms to provide solutions to real-world problems. The main goal in this course is to provide skills necessary to design and implement expert systems which use domain-specific knowledge in order to solve non-trivial problems in specialized domains.
Prerequisites-
Course Web Pagehttp://ceng468.cankaya.edu.tr/
Course Code and TitleCENG 471 - Parallel Computing
Credits2 2 3 (ECTS: 5)
Course DescriptionParallel Computing course introduces distributed and parallel computing and programming. The course is given in the form of lecture and lab sessions. In the lecture sessions it highlights the difference between distributed and parallel computing, taxonomy of distributed and parallel computing systems and parallel programming models such as shared memory and message passing. In the lab session Message Passing Interface (MPI) is covered and used in experiencing development of parallel programs on a cluster of computers.
PrerequisitesCENG 114, CENG328
Course Web Pagehttp://ceng471.cankaya.edu.tr/
Course Code and TitleCENG 473 - Data Analysis
Credits2 2 3 (ECTS: 5)
Course DescriptionThis course is an introduction to data analysis to help data scientists understand where many of the ideas behind their algorithms originated. Topics are chosen from, sampling, estimation, hypothesis testing, linear regression, analysis of variance, categorical data analysis, and nonparametric statistics. The goal of this course is to introduce students to the key concepts of data science.
PrerequisitesCENG 235
Course Web Pagehttp://ceng473.cankaya.edu.tr/
Course Code and TitleCENG 474 - Introduction to Data Science
Credits3 0 3 (ECTS: 5)
Course DescriptionIntroduction to data science by using tools and writing programs for acquiring, cleaning, analyzing, exploring, and visualizing data; making data-driven inferences and decisions; and effectively communicating results. Learning data manipulation, data analysis with statistics and machine learning, data communication with information visualization, working with data using recent techniques.
Prerequisites-
Course Web Pagehttp://ceng474.cankaya.edu.tr/
Course Code and TitleCENG 475 - Data Visualization
Credits3 0 3 (ECTS: 5)
Course DescriptionData visualization plays an essential role in the representation of both small and large-scale data. One of the key skills of a data scientist is the ability to tell a compelling story, visualizing data and findings in an approachable and stimulating way. Learning how to leverage a software tool to visualize data will also enable you to extract information, better understand the data, and make more effective decisions. In this course basic, advanced, and specialized visualization tools will be introduced including geospatial data visualization tools and techniques.
Prerequisites-
Course Web Pagehttp://ceng475.cankaya.edu.tr/
Course Code and TitleCENG 476 - Big Data
Credits3 0 3 (ECTS: 5)
Course DescriptionData in our digital world is getting bigger every day. Processing big data using classical techniques and database solutions are impossible. Therefore, distributed big data storage and processing techniques are very essential for almost all areas in our lives including science, technology, business and more. In this course big data storage and processing techniques and relevant recent tools will be reviewed. Machine learning on big data topics will also be covered. Students will apply what they learned in the course in a term project.
Prerequisites-
Course Web Pagehttp://ceng476.cankaya.edu.tr/
Course Code and TitleCENG 480 - Machine Learning
Credits3 0 3 (ECTS: 5)
Course DescriptionOverview of the learning process in humans and machines, machine learning concepts, algorithms and techniques. Topics includes features and patterns, distance metrics, classification, clustering, supervised and unsupervised learning, re-enforcement learning, decision trees.
PrerequisitesCENG 466
Course Web Pagehttp://ceng480.cankaya.edu.tr/
Course Code and TitleCENG 483 - Internet of Things
Credits3 0 3 (ECTS: 5)
Course DescriptionThis course is designed to provide students with knowledge and skills to build Internet of Things (IoT) systems. A systems engineering approach is adopted throughout the course reviewing the key technologies employed at different levels of the IoT stack and how they are integrated to form complete IoT systems. A number of devices, platforms and software tools will be introduced during the course from different vendors.
Prerequisites-
Course Web Pagehttp://ceng483.cankaya.edu.tr/
Course Code and TitleCENG 489 - Software Quality Assurance
Credits3 0 3 (ECTS: 5)
Course DescriptionThe goal of this course is to provide students with basic working knowledge about software quality assurance. It helps students to understand the concept of quality, quality planning, risk analysis and resolution. The course also encompasses software quality standards, and software test techniques, strategies and metrics.
Prerequisites-
Course Web Pagehttp://ceng489.cankaya.edu.tr/
Course Code and TitleCENG 499 - Special Topics in Computer Engineering
Credits3 0 3 (ECTS: 6)
Course Description-
Prerequisites
Course Web Pagehttp://ceng499.cankaya.edu.tr/