Academics
Undergraduate
Course List
Course List & Descriptions by Majors
The list of courses and corresponding credit hours that appear below is not exhaustive and is subject to change. Sufficient notice will be given to students of any such modifications.

To read the course overview, move your mouse pointer over the course name with the icon ( ).
Click dropdowns for other schools
School of Computer Science and Electrical Engineering
Course Name Spring Fall Credits

C-Programming

As the first major course in the Computer Science curriculum, this course aims to equip beginner-level students with C programming skills and the basic knowledge of computer systems to prepare them for pursuing the Computer Science major studies. In these courses, students are expected to have the ability to articulate simple computation with the C programming language, and also understand how computer systems work in association with the C programming language aspects.

More information about this course can be found at the following Google document.

  O 3

Coding Studio

This course is paired with the C Programming course. This class aims to give intensive programming exercises to the students taking the C Programming course in the same semester. It is expected that every student is taking the C Programming course at the same semester.

At the same time, it is strongly forbidden for those who already took C Programming in an earlier semester to take this course (their grading will be given separately from those who take C Programming in parallel).

In each class, the instructor will gives review programming examples, and then gives 10 to 12 programming exercises. In the remaining time, each student must work on the given exercise problems. The instructor and teaching assistants will be around to offer personal supports.

  O 1

Introduction to Engineering Design

Designing is the most essential part of engineering and an initial step to learn creation. Engineering itself cannot stand alone without designing.

This is the basic course for mainly freshmen and lower grade students to take the first step to engineering. This is a prerequisite course for other design courses in CSEE.

This course covers the definition of engineering, common design methodologies and processes by carrying out concept study and assignments, in which students will identify problems and write reports on their design and implementation. Teamwork, documentation, and presentation exercises, which are an integral part of the design process, will also take place throughout the course.

Students will have an opportunity to ponder over the ethics and social influence of engineering.

  O 3

Data Structure

Find the detailed course plan at the following Google Doc.

O   3

Introduction to JAVA Programming

This course will cover the basic grammar of Java and the concept of object oriented programming (OOP).
• Students should have a computer and programming environment for Java programming but any operating system (OS) is OK.
• Current schedule is tentative and may be changed while a semester is going on based on students' learning experience.
• two 75-min lectures and one 1-hour lab per week.

O   3

Open Source Software Lab

This course aims to learn open source software trends and various technical issues that provide a variety of underlying technologies for software development; and to develop the abilities to utilize them in implementing a new software. To achieve these, we use Linux, the most widely used open source operating system, build and configure a server that provides various online services. Through hands-on experiences, we will acquire an understanding of the Linux ecosystem, and practice development and collaboration using public libraries and frameworks.

O   3

Circuit Theory 1

This class will cover the basic concept of electrical/electronic circuit including resistor, voltage source, and current source. After that, many of useful circuit analysis technique inlcuding Nodal/Loop analysis/Super position/Thevenin's/Nortons therorems will be covered. Additional basic elements including capacitor and inductor will be also covered and the first/second order system will be studied. At the end of the class, the students will also learn the basic chracteristics of sinusoidal function. Through this course, all students are expected to know the principles and fundamental cencepts of circuit analysis.

O   3

Logic Design

This is the fundamental course that is required to understand modern digital hardware design. This course is a core foundation course for hardware design and it is the prerequisite for computer architecture and organization, digital system design, embedded processor application, microprocessor design, and integrated circuit design courses in upper levels. It covers Boolean algebra, combinational circuits analysis and design, sequential circuit analysis and design. In addition, modern digital logic implementation platform such as CAD tools and programmable logic devices will be introduced to students. Students are required to demonstrate the ability to design and analyze simple logic circuits at the end of semester.

O   3

Signals and Systems

This course introduces the theory and the mathematical techniques used in analyzing and understanding continuous-time and discrete-time signals and systems. This course provides essential background knowledge for studying telecommunications, digital signal processing, and automatic control. Topics include mathematical representation of signals, properties of systems, Fourier analysis for periodic signals and energy signals, Laplace transform, sampling theory, and z-transform.

  O 3

Web Development Programming

1. Lectures mainly consists of mark up languages such as XML, and HTML5, and their related techniques, for example, DTD, CSS, XPath, XSLT, JQuery, and JavaScript, etc.
2. Some high-level languages, JavaScript and PhP, will also be covered for server side programming.
3. Lectures also provide students with concepts and examples related to server-side and client-side web languages.
4. The basic level of relational database with MySQL will be covered.
5. Many open source software will be used.

  O 3

Computer Architecture and Organization

The subject of this course is computer architecture and organization. Computer architecture deals with the structure and behavior of the each components of the computer, while computer organization deals with how each component are connected. This course will give you an in-depth understanding of the inner-workings of modern digital computer systems and tradeoffs present at the hardware-software interface. The class is specially focused on the CPU (Central Processing Unit) design principle, and memory organization, and I/O will be covered at the end of the semester.

  O 3

Computer Vision

In this class, students will understand the basic concept of computer vision techniques and will face several algorithms in the field of pre-processing, segmentation, detection/tracking, image transformation, camera model and image compression. Students will use openCV to implement several tasks related with computer vision techniques.

  O 3

Discrete Mathematics

This course is specifically designed to equip Computer Science students with a thorough understanding of Discrete Mathematics, a critical area of mathematical study integral to the Computer Science curriculum. The course syllabus will encompass key areas such as Mathematical Reasoning, Combinatorial Analysis, Discrete Structures, Algorithmic Thinking, along with Applications and Modeling.

The primary objective of the course is to facilitate students' comprehension of how these fundamental concepts are employed to address real-world computing challenges. The course aims to provide students with a strong foundation in the application of Discrete Mathematics, thereby preparing them for future academic and professional pursuits in the field of Computer Science.

  O 3

Digital System Design

    3

Introduction to Artificial Intelligence Project

O   3

Algorithm Analysis

Algorithm is a strategy for solving a problem with the assistance of a computer. To say that a problem is algorithmically solvable means, informally, that a computer program can be written that will produce the correct answer for any input if we let it run long enough and allow it as much as storage space as it needs. In this course, we will study various algorithms by analyzing them and discuss various algorithm design techniques. C(or C++) will be used to develop and implement programming assignment.

O   3

Object-Oriented Design Pattern

Students learn and study the essential concepts about the object-oriented paradigm and design patterns for making reusable and maintainable software system. Students are trained to improve Java proficiency up to intermediate level based on design pattern techniques and applications of object oriended programming.

O   3

Operating System

* https://github.com/hongshin/OperatingSystem
* https://sites.google.com/handong.edu/operating-systems

O   3

Database System

This is an introductory course on Database Management Systems (DBMSs) that is powerful tool for storing and organizing large amounts of data efficiently, reliably, and safely. We will study the concepts and underlying mechanisms of DBMSs; discuss and design data models; and learn how to write and execute "queries" in structured query language, which is a standard language for manipulating data in databases. We will also briefly discuss the recent trends in data storage technologies and experience modern data analytic techniques (a.k.a. data science).

O   3

Electronic Circuits 1

O   3

Electronic Circuits 2

  O 3

Programming Language Theory

In this course, we learn fundamental principles of programming languages by implementing language features using a combination of interpreters and little compilers. (All the programming is done in Racket (formerly Scheme) which is a multi-paradigm programming language.) If you wonder how programming languages you use everyday are designed, please take this course. By taking this course, you will get confidence that you can learn any programming languages quickly. In addition, you could design your own programming languages for your specific projects and tasks and be ready to learn compiler theory.

There might be more than 4 homework OR 4 quizzes plus midterm and final exams. Homework requires Scheme programming you might not experience before but you will experience new interesting programming paradigm as well by Racket (In first and second weeks we will learn Racket so please don't miss those lectures!!!

* If you are not good at coding/programming, please take this course later (when you have enough programming experience and confidence).
* In this class, students also can learn open-source software development skills.
[Use if IDE and OSS platform] Students can use the Racket IDE tool to implement simple functional programs.
[Use of APIs] Students can read API documents and use them in implementing programming tasks.
[OSS developer] Students can create a pull request to any programming language interpreter.

  O 3

Computer Networks

In this course, we will study about the layered architecture and protocols of computer networks. By top-down approach, from application layer to link layer, we will learn about protocols widely used in current Internet. In particular, we will focus on understanding of TCP/IP protocol and implementing the server/client program through socket programming. In addition, we will try to design a protocol. We will cover topics as follows: layered architecture of current Internet, application layer (HTTP, E-mail, DNS), transport layer (TCP, UDP, socket programming), network layer (IP, ICMP, Routing), and link layer (ARP).

  O 3

Probability and Random Processes

This course comprehensively studies basic probability theory, and the concepts and applications of random variables and random processes are studied. Based on this, the concepts of estimation, hypothesis testing, and Shannon entropy used in various fields of engineering, such as machine learning, communication, and control, are introduced. The contents learned in this course can be used as basic knowledge in various majors such as engineering, mathematics, science, and economics.

  O 3

Software Engineering

This course introduces students to the challenges and issues in software developments and various software engineering methodologies that have been proposed as scientific solutions to the problems. This course will cover key topics in software engineering including software process, requirements, and maintenance. In addition, this course has a high emphasis on understanding and practicing basic tools for engineering software.

O   3

Introduction to Deep Learning

O   3

Intelligent Robot Control

This course will introduce students to the principles and techniques of intelligent robot control. Topics will include robotics fundamentals, decision making, and control architectures. Students will learn how to design and implement intelligent control algorithms for robots operating in a variety of environments using Robot Operating System (ROS).

In this course students are also expected to use open-source softwares and build their OSS capabilities. Please refer to the notice section to understand the OSS capabilities.

  O 3

Computer Graphics

Topics include graphics rendering pipeline, geometric primitives, lighting & materials that are basic to understand computer graphics. This lecture will use Unity for the first half of the semester and openGL for the next half.

O   3

Machine Learning

This course covers core concepts of AI and machine learning. It covers fundamentals and widely used techniques in machine learning applications. The students learn the theory of major methodologies and practice to solve simple problems by writing machine learning SW or applying open source SW. It also covers a brief review of mathematics required to understand machine learning theory, calculus, linear algebra, and statistics.

This course covers emerging techniques including deep learning and recurrent neural networks.

  O 3

Electromagnetic

This course is an introduction to engineering electromagnetics for undergraduate electrical engineers. Electromagnetics is one of the most fundamental subjects in an electrical engineering curriculum. Knowledge of the laws governing electric and magnetic fields is essential to the understanding of the principles of operation of electric and magnetic instruments and machines. During this course, relevant vector algebra/calculus, the governing laws and methods of solutions of electrostatic and static magnetic field problems, steady electric current fields and resistance calculations will be covered.

  O 3

Semiconductor Physics

This course is an introduction to semiconductor devices for undergraduate electrical engineers. Two basic purposes are (1) to provide students with a sound understanding of existing devices, so that their studies of electronic circuits and systems will be meaningful; and (2) to develop the basic tools with which they can later learn about newly developed devices and applications.

O   3

Principles of Communication

O   3

Digital Communication

O   3
Handong Global University
558 Handong-ro Buk-gu, Pohang Gyeongbuk 37554 Republic of Korea
Copyright (c) Handong Global University. All Rights Reserved.
Apply Get Info Connect