교육

학과 과정

학과과정(교과과정) 정보
이수구분 과목코드 과목명 학점
전공 필수 CSE221 데이터구조 3
전공 필수 CSE241 고급 프로그래밍 3
전공 필수 CSE251 시스템 프로그래밍 3
전공 필수 CSE261 컴퓨터구조 3
전공 필수 CSE271 프로그래밍언어 3
전공 필수 CSE311 운영체제 3
전공 필수 CSE331 알고리즘 3
전공 필수 CSE351 컴퓨터네트워크 3
전공 필수 CSE401 졸업연구 3
전공 선택 CSE302 맞춤형 컴퓨터 만들기 3
전공 선택 CSE303 인공지능을 위한 기초수학 3
전공 선택 CSE304 데이터마이닝 개론 3
전공 선택 CSE321 데이터베이스시스템 3
전공 선택 CSE332 계산이론 3
전공 선택 CSE333 인간-컴퓨터 상호작용 개론 3
전공 선택 CSE362 인공지능 3
전공 선택 CSE364 소프트웨어공학 3
전공 선택 CSE402 자연어처리 3
전공 선택 CSE403 딥 러닝 3
전공 선택 CSE411 컴파일러개론 3
전공 선택 CSE412 병렬컴퓨팅 3
전공 선택 CSE463 기계학습 3
전공 선택 CSE465 모바일 컴퓨팅 3
전공 선택 CSE466 클라우드 컴퓨팅 3
전공 선택 CSE467 컴퓨터 보안 3
전공 선택 CSE468 정보시각화 기술 3
전공 선택 CSE469 로보틱스 개론 3
전공 선택 CSE471 컴퓨터그래픽스 3
전공 선택 CSE472 컴퓨터 비전 3
전공 선택 CSE480 컴퓨터공학특론 Ⅰ 3
전공 선택 CSE481 컴퓨터공학특론 Ⅱ 3
전공 선택 CSE482 컴퓨터공학특론 Ⅲ 3
전공 선택 CSE483 컴퓨터공학특론 Ⅳ 3
전공 선택 CSE484 컴퓨터공학특론 Ⅴ 3
전공 선택 UNI204 소프트웨어 해킹과 방어 1
기초 필수 ITP107 기초 인공지능 프로그래밍 Ⅰ 3
기초 필수 ITP112 이산수학 3
기초 필수 UNI111 전공의 이해 (컴퓨터공학 소개) 1
  • 1데이터구조
    CSE221

    This course introduces abstract data type concept such as array, queue, stack, tree, and graph to obtain the ability to program these abstract data types in computer programming languages.

  • 2고급 프로그래밍
    CSE241

    This course is a second programming course for Computer Science Engineering track with a focus on advanced programming. The goal of the course is to develop skills such as algorithm design and testing as well as the implementation of programs. This course requires students to implement a large number of small to medium-sized applications, and to learn how to use relevant development tools.

  • 3시스템 프로그래밍
    CSE251

    Through this course, students are provided a programmer’s view on how computer systems execute programs, store information, and communicate. This will enable students to become more effective programmers allowing students to consider issues such as performance, portability and robustness when programming. This course will also serve as a foundation for upper level courses such as operating systems, computer networks, and computer organization. Various topics such as machine-level code and its generation by optimizing compilers, performance evaluation and optimization, and memory organization and management will be covered.

  • 4컴퓨터구조
    CSE261

    This course provides students with a basic understanding of computer organization and architecture. It is concerned mostly with the hardware aspects of computer systems: structural organization and hardware design of digital computer systems; underlying design principles and their impact on computer performance; and software impact on computer.

  • 5프로그래밍언어
    CSE271

    By studying the design of programming languages and discussing their similarities and differences, this course provide introduces the concept of modern programming languages and improves the ability to learn diverse programming languages.

  • 6맞춤형 컴퓨터 만들기
    CSE302

    In this course, students will learn how they can redesign pieces of a computer system (e.g., processor architecture, operating systems, or compiler) to customize a computer system for design goals, such as improved security or higher performance. As the example of goals, students will design and implement an extension to a computer to prevent a well-known attach mechanism, and to accelerate a machine-learning applications.

  • 7인공지능을 위한 기초수학
    CSE303

    This course aims to help students gain hands-on experience on basic mathematical tools in AI. We will revisit topics and linear algebra, vector calculus, probability, and statistics contextualized in AI and study some advanced topics such as mathematical optimization.

  • 8데이터마이닝 개론
    CSE304

    This course introduces fundamental data mining techniques for extracting patterns and insights from large datasets. Core topics include classification, clustering, association rule mining, anomaly detection, data preprocessing, and model evaluation. The course emphasizes both theory and practical applications, using real-world datasets and modern tools to understand and apply data mining methods.

  • 9운영체제
    CSE311

    This course introduces the objective and various forms of operating systems. Also resource management mechanisms such as process management, memory management, storage management and synchronization tools are covered in this course.

  • 10데이터베이스시스템
    CSE321

    This course introduces the concept of databases and provides basic experience in database programming. This includes the design of relational model, relational algebra, and SQL. The second half of the class will focus on the under-the-hood of DBMS systems and database design principles are also in the scope of this course.

  • 11알고리즘
    CSE331

    This course introduces the basic concepts of design and analysis of computer algorithms: the basic principles and techniques of computational complexity (worst-case and average behavior, space usage, and lower bounds on the complexity of a problem), and algorithms for fundamental problems. It also introduces NP-completeness.

  • 12계산이론
    CSE332

    This course is an introductory course on the theory of computation. The topics covered in this course includes: mathematical modelling of computing mechanisms (automatons), formal languages, computability, and basic complexity theory.

  • 13인간-컴퓨터 상호작용 개론
    CSE333

    In this course, we discuss the fundamentals of human-computer interaction, user interface design, and usability analysis. Students will learn principles and guidelines for usability, quantitative and qualitative analysis methods. They will also apply the principles through critiques of existing user interfaces and development of new ones with term projects and assignments. This course covers cognitive models, task analysis, psychology, experimental design, and prototyping methods.

  • 14컴퓨터네트워크
    CSE351

    This course provides the fundamental concepts of computer networking and exercises for network programming. The topics covered in this course are data link, networking, transport, and application layers.

  • 15인공지능
    CSE362

    Can machines think? Many pioneers in computer science have investigated this question. Artificial Intelligence (AI) is a branch of computer science dedicated to the creation of machines with intelligence. This course aims to introduce students to the field of AI and make them familiar with fundamental techniques for building intelligent systems.

  • 16소프트웨어공학
    CSE364

    In this course on software engineering, we ask the following question. How can we develop high-quality software in a productive manner? Given the high complexity of software and its development, there is no one-size-fits-all solution. Rather, software engineers make use of various approaches such as improving development processes and automating part of development tasks. In this course, we will take a look at various prominent approaches developed to help software engineers, focusing more on modern approaches of software engineering, which emphasize automation of software development. At this point, automation is most advanced in software testing and static analysis, and automatic debugging and bug fixing are on the horizon. In this course, students will have a chance to use various tools and understand how and why these tools work internally.

  • 17졸업연구
    CSE401

    This course is aim to perform a term project through collaboration.
    Students are required to conceive a novel idea, which will be envisioned by designing and fabricating a product by using the best knowledge learned at undergraduate level. Lastly, students will present their work in public for evaluation.

  • 18딥 러닝
    CSE402

    The course introduces fundamental ideas in deep learning, as well as to advanced deep learning software and prototyping. Our goals are
    1. to provide you the basic foundations and practical techniques for deep learning,
    2. to train you in high-level and low-level deep learning software development for several important concepts,
    3. to show you complex real-world applications of deep learning in various areas.

  • 19인공지능을 위한 기초수학
    CSE403

    The course introduces fundamental ideas in deep learning, as well as to advanced deep learning software and prototyping. Our goals are
    1. to provide you the basic foundations and practical techniques for deep learning,
    2. to train you in high-level and low-level deep learning software development for several important concepts,
    3. to show you complex real-world applications of deep learning in various areas.

  • 20컴파일러개론
    CSE411

    This course introduces the design and implementation of compiler and runtime systems for programming languages. The topics covered include parsing techniques, lexcial and syntactic analysis, context analysis, and runtime systems.

  • 21병렬컴퓨팅
    CSE412

    As we enter the multicore era, parallel and distributed computing techniques now permeate most computing activities. This course is designed to let students follow rapid changes in computing hardware platforms and devices, and understand the concepts of parallel computing architecture, parallel programming models, parallel computing applications, and performance analysis.

  • 22기계학습
    CSE463

    Machine learning is the science and engineering of building system that can learn from data. In recent years, machine learning has given us self-driving cars, effective web search, and accurate recommendation systems. This course will provide the theoretical underpinnings of machine learning, but also best practices in the machine learning industries. The courses include a broad introduction to machine learning, learning theory, and data mining.

  • 23모바일 컴퓨팅
    CSE465

    This course studies how mobile computing is different from conventional computing in the aspect of its concept, architecture and applications. Major enabling techniques of mobile computing such as sensing, mobile communication, machine learning, and system optimization for energy efficiency are explained with opportunities of implementing such technologies in Android platforms.

  • 24클라우드 컴퓨팅
    CSE466

    This course is to understand basic concepts and techniques of virtualization, cloud computing systems, and cloud platforms including x86 virtualization and virtual machine, virtual machine management, cloud resource management, and big data analytics platforms (MapReduce).

  • 25컴퓨터 보안
    CSE467

    This course introduces the principle and practice of securing modern computer systems. From the seminal works and state-of-the-art security mechanisms, students will learn to formulate the security problems and to devise their solutions.

  • 26정보시각화 기술
    CSE468

    In this course, we will focus on “designing user new interfaces” and “information visualization techniques” and systems. A fundamental skill in software engineering is to rapidly implement and evaluate efficient prototypes of an end-user application for deployment. This course will introduce foundational skills for high-fidelity graphical and visual user interface prototyping and development with state-of-the-art software interface design toolkits.

  • 27로보틱스 개론
    CSE469

    Robotics is an important topic in Artificial Intelligence (AI), focusing on the physical aspect of intelligence. A machine that can interact successfully with our physical world is an important demonstration of AI. The objective of this course is to learn some basic algorithms and techniques for robotic research and robot programming. This course will cover the following topics: motion control (PID control), state estimation and tracking (Kalman filters), localization (particle filters, SLAM), computer vision (color segmentation, deep learning, object detection), motion/path planning (PRM, RRT), action and sensor modeling (task planning), reinforcement learning (MDPs, Q-learning, inverse reinforcement learning), and human-robot interaction (socially intelligent robots), behavior architectures (subsumption architecture), applications (autonomous vehicles), and social implications (Isaac Asimov’s “Three laws of Robotics”). Students will learn to program a robot in Robot Operating System (ROS).

  • 28컴퓨터그래픽스
    CSE471

    Computer graphics is one of the flourishing fields within computer science that deals with generating 2D/3D images with the aid of computers. This course will introduce the fundamental concepts in the computer graphics for displaying 3D objects and the algorithms to improve the reality of computer graphics. It will provide the experience of computer graphics programming.

  • 29컴퓨터 비전
    CSE472

    This course aims to understand machine/deep learning algorithms which are dedicated to computer vision tasks. During the 8-week course, students will learn to implement, train and debug their machine/deep learning models. The final assignment will involve training a multi-million parameter convolutional neural network and applying it onto the real-world computer vision problem. The lecture will focus on teaching the learning algorithms (e.g. stochastic gradient descent), practical engineering methods for obtaining an improved machine/deep learning model.

  • 30컴퓨터공학특론Ⅰ
    CSE480

    This course introduces new research topics in the field of Computer Science & Engineering Ⅰ~Ⅴ.

  • 31컴퓨터공학특론Ⅱ
    CSE481

    This course introduces new research topics in the field of Computer Science & Engineering Ⅰ~Ⅴ.

  • 32컴퓨터공학특론Ⅲ
    CSE482

    This course introduces new research topics in the field of Computer Science & Engineering Ⅰ~Ⅴ.

  • 33컴퓨터공학특론IV
    CSE483

    This course introduces new research topics in the field of Computer Science & Engineering Ⅰ~Ⅴ.

  • 34컴퓨터공학특론Ⅴ
    CSE484

    This course introduces new research topics in the field of Computer Science & Engineering Ⅰ~Ⅴ.

  • 35소프트웨어 해킹과 방어
    UNI204

    This course introduces the principle and practice of software hacking and defense. Through state-of-the-art software hacking and defense mechanisms and various practices, students will learn to formulate the software security problems and to devise their solutions. Students are expected to participate in hacking competition at the end of the class.

이수학점

학과과정 졸업요건(이수학점) 정보
구분 이수학점 비고 소계
필수 17 Calculus I(3), General Physics I(3), General Chemistry I(3), General Biology(3), Introduction to AI Programming I(3), General Chemistry Lab I(1), General Physics Lab I(1) At least 33 credits
선택 (학과 지정) 16 Take 16 credits among the basic course list
– Required : 4 courses
– Recommended : 2 courses
– Elective : 3 courses

이수교과

※ 전공 : 16학점 / 복수전공 : 16학점 / 부전공 : 16학점필수 ● / 선택 ○ / 권장 ◑

학과 졸업요건(이수교과) 정보
과목코드 과목명 전공 복수전공 부전공
MTH112 미적분학Ⅱ
PHY103 일반물리학Ⅱ
CHM102 일반화학Ⅱ
PHY108 일반물리실험Ⅱ
CHM106 일반화학실험Ⅱ
MTH201 미분방정식
MTH203 응용선형대수
학과 졸업요건(이수교과) 정보
과목코드 과목명 전공 복수전공 부전공
MTH211 통계학
MGT102 기업가정신
IE101 데이터사이언스개론
ITP117 기초인공지능프로그래밍Ⅱ
ITP111 확률과랜덤프로세스개론
ITP112 이산수학
UNI111 전공의이해

[UG] CSE Course Roadmap