전공 교과목개요
1학년-1학기
▣창의적 공학 설계 입문(725843) - (전공선택/인증필수)
본 과목은 공학적인 문제를 해결하기 위한 방법으로서 공학설계적 접근을 소개하고, 그 과정에서 창의적인 아이디어를 도출해 낼 수 있도록 하는 방법에 대해 살펴본다. 일상생활 속에서 문제를 찾아 정의하고, 창의적인 해결책을 제시하고, 구체적인 설계와 그 과정에서의 어려움들을 극복해 내고, 제안된 해결책을 검증하는 과정까지 공학적 문제해결 방법을 배운다. 팀을 구성하여 공동 설계과제를 수행해봄으로써 협업과 의사소통의 중요성을 인지하고, 팀 프로젝트와 발표의 경험을 갖도록 한다.
1학년-2학기
▣회로이론(704305)-(전공선택)
본 과목은 전자전기통신 및 컴퓨터 공학을 공부하는데 가장 기초가 되는 전공과목이며, 본 강의에서는 전자전기통신 및 컴퓨터 시스템을 구성하는 전자 전기 회로의 이해와 분석을 위한 회로이론의 기본적인 개념과 이론을 강의한다. 본 과목의 교육목표는 회로이론에 대한 기본 이론 및 원리 이해와 습득이며, 나아가 회로이론 기술을 적용하고 개발할 수 있는 능력배양하는 것이다.
2학년-1학기
▣자료구조및프로그래밍(704818)-(전공필수)
본 과목은 컴퓨터를 이용한 문제 해결 방법의 기초. 효율적 컴퓨터 알고리즘을 작성하기 위하여, 스택, 큐, 트리, 그래프 등 중요 자료 구조를 소개하고, 탐색 방법 및 해싱기법도 학습한다. 또한 이러한 자료구조를 이용한 실제 문제해결을 C 언어를 이용한 프로그래밍 과제를 매주 수행함으로 능력을 배양한다.
▣지능형전자시스템(7048308) - (전공선택)
본 과목은 컴퓨터정보통신공학에 필요한 전자회로에 대한 전반적인 개요를 소개한다. 본 과목에서 소개되는 주요 내용들은 다음과 같다. 전자회로의 기본 원리, 여러 가지 전자 회로소자(diode, BJT, FET)의 기본 특성과 기본 원리, 증폭기의 기본 원리 및 여러 가지 증폭기의 특성 및 동작원리 등을 학습한다.
▣디지털공학(704509) - (전공선택)
This course is an introduction to digital logic at its most fundamental level. This course covers number systems, binary mathematics, digital codes, logic gates, Boolean algebra, Karnaugh maps, and combination logic. In a digital world, logical conditions are expressed in terms of Boolean variables and then formulated in a truth table. Realization of that truth table, using conventional logic gates, is the crux of the course. The objective of this course is to apply Boolean algebra and binary arithmetic to express and simplify logic expressions; to analyze digital circuits such as combinational logic circuits, and clocking and timing circuits; and to solve problems involving binary, octal, decimal, and hexadecimal numbering systems. The class is instructed in English.
2학년-2학기
▣신호및시스템(704406) - (전공필수)
컴퓨터 정보통신 시대의 도래와 함께 정보를 표현한 신호와 신호를 처리하는 시스템에 관한 이해의 중요도가 더욱 증대되고 있다. 이 과목에서는 신호와 시스템을 수학적으로 분석하고 합성할 수 있는 능력을 배양하는 데 있다. 특히 이산시간 신호와 시스템에 중점을 두고 선형 시불 변 시스템, Convolution, Sampling, Laplace Transform, Modulation, 연속시간 및 이산시간 영역에서 Fourier 변환과 성질들에 대하여 체계적으로 강의한다. 이 과목은 통신 및 디지털 신호처리를 위한 필수 선수과목이다.
▣인터넷공학(1)(704831) - (전공선택)
강의에서는 인터넷기술에 관련된 전반적인 내용과 TCP/IP 기반 인터넷이 탄생하기까지의 다양한 서비스 및 프로토콜들의 실제 구성 방법들을 설명한다. 특히,무선인터넷에 대한 내용을 심도있게 다룬다. 본 강의의 교육목표는 다음과 같다. 첫째, 인터넷 기술의 기본 개념 이해력 배양 둘째, TCP/IP 기술 및 무선인터넷 기술의 이해와 관련 프로토콜에 관한 지식 습득
▣자바프로그래밍및실습(704827)- (전공선택)
객체 지향 언어인 자바(Java)언어에 대한 기본 문법과 객체지향 프로그램 프로그래밍에 관한 개념을 습득함. 각 단원마다 실습 과제를 수행함으로서 프로그램 능력을 한단계 높인다. 2학년 1학기의 자료구조론에서 배운 C 프로그래밍 방법에 대한 지식이 필수로 프로그램 설계 과제들이 계속적으로 부과. 결과를 제출하여야 한다. 또한 설계 과제 수행내용이 평가의 1/3의 비중을 차지한다. 설계과제는 설계 교안에 따라 진행된다.
▣컴퓨터구조(704410) - (전공선택)
정보화 사회에서 필수적인 도구로 사용되는 컴퓨터시스템을 구성하는 컴퓨터 하드웨어의 기본 구조와 동작원리 및 관련 핵심기술의 이해 및 컴퓨터 설계 개념 습득
▣머신러닝및실습(1) (704413) - (전공필수)
인공지능 기술에서 가장 중요하게 사용되는 머신러닝 기술에 대한 기초를 다지고, 파이썬 언어를 이용한 실습을 통해 머신러닝, 딥러닝 기술에 대한 기본 이해와 응용 능력을 배양한다. 딥러닝 기술의 발전으로 인해, 매년 새로운 기술이 나오는만큼 최신의 모든 머신러닝 기술을 다루기 보다는 머신러닝 근본 기술에 대한 이해와 실습을 통해 확장 중인 기술들을 포괄적으로이해하고 활용할 수 있는 시간을 갖는다.이를 위해 본 강좌에서는 머신러닝 기본 이해, 알고리즘 소개 및 실습, 딥러닝의 기초가 되는 퍼셉트론 알고리즘 활용에 초점을 두고 수업을 진행한다.본 수업의 원활한 운영을 위해 참여 학생들은 파이썬 언어에 대한 기본 사용법 및 활용 능력, 데이터베이스, 통계, 선형 대수학 및 머신러닝 기술에 대한 기초 이해가 필요한다.
3학년-1학기
▣알고리즘 및 실습(704826) - (전공필수)
본 과목에서는 알고리즘을 분석하고 설계하는 근본 원리를 학습한다. 알고리즘 수업의 핵심은 수학적으로 제시된 문제를 접근하는 빈틈없는 논증과정을 체득하여 이를 실제 문제에 적용하는 것이다. 먼저 고전적은 알고리즘을 고찰하고 자료구조를 분석한다. 그리고 Divide and conquer, dynamic programming, greedy algorithm을 학습하면서 알고리즘을 설계하는 원리를 공부한다. 습득한 알고리즘 분석과 설계 능력을 활용하여 실제 문제를 해결하는 실습을 수행한다. 본 과목을 수강하기 위한 선수과목은 자료구조이다.
▣통신이론(704514) - (전공선택)
목적 : 통신시스템의 동작 원리를 알고, 이 시스템을 통한 신호의 전달, 효율성, 오차 등을 분석한다. 개요: 통신이론이란 주어진 통신로에서 가능한 한 많은 신호를 동시에 전송시키기 위한 여러 방식과, 잡음의 영향을 최소한으로 억제시키기 위한 방법을 다루는 과목이다. 본 과목은 2학기용으로 준비되어 있으며, 1차 학기에는 기본적인 파형의 분석을 통한 아나로그 및 디지털 통신 시스템의 구성 및 동작을 주로 학습하고, 2학기에는 확률과 잡음에 대한 기초 학습을 바탕으로, 아나로그 및 디지털 시스템에 대한 분석을 하도록 되어 있다. 1학기에는, 신호의 분석이 을 중점적으로 학습하고, 이 과정이 실제의 시스템에서 어떻게 나타나는가를 알아 본다.
▣확률및불규칙변수(704502) - (전공선택)
컴퓨터정보통신 시스템의 성능분석에 필요한 기본적인 확률적 개념과 도구들을 이해하고 실제적인 응용능력을 배양하는 데 있다. 전반부는 확률이론의 기초를 후반부는 랜덤변수와 랜덤과정을 강의한다.
▣디자인패턴프로그래밍및실습(704828) - (전공선택)
본 과목은 객체지향 프로그래밍 개념을 이해하고 Java(또는 C++)언어를 이용한 프로그램 개발방법을 배우고 실습을 통하여 구체적 기법을 배운다. Class 상속 등 객체지향 기본 개념과 UML 설계언어의 기초를 학습한다. 실습도 병행한다.
▣운영체제 (704512) - (전공선택)
컴퓨터 운영체제 관련 기초 지식을 다룬다.
▣인터넷공학(2)(704832) - (전공선택)
본 강의에서는 컴퓨터 네트워킹의 전반적인 내용을 인터넷을 중심으로 하향식으로 제시한다. 우리와 친숙한 웹, FTP, P2P 등을 소켓의 관점에서 이해한다. 유한상태기계에 기반한 TCP 설>계를 통해서 신뢰성있는 데이터전송 원리를 이해하고 임의의 프로토콜 설계능력을 갖춘다. 거>리벡터와 링크상태 라우팅을 통해서 분산 제어시스템 개념을 이해한다. 유무선 MAC 프로토콜인 802.3과 802.11을 다루며, 이동성관리, 스트리밍 기술을 공부한다. 인테넷에서 QoS를 제공하기 위한 두가지 구조 IntServ와 DiffServ 의 기본 개념을 다룬다. 설계과제는 설계과제 교안에 따라 진행된다.
▣머신러닝 및 실습(2) (704612) - (전공필수)
인공지능 기술에서 가장 중요하게 사용되는 머신러닝 기술에 대한 기초를 다지고, 파이썬 언어를 이용한 실습을 통해 머신러닝, 딥러닝 기술에 대한 기본 이해와 응용 능력을 배양한다. 딥러닝 기술의 발전으로 인해, 매년 새로운 기술이 나오는만큼 최신의 모든 머신러닝 기술을 다루기 보다는 머신러닝 근본 기술에 대한 이해와 실습을 통해 확장 중인 기술들을 포괄적으로이해하고 활용할 수 있는 시간을 갖는다.이를 위해 본 강좌에서는 머신러닝 기본 이해, 알고리즘 소개 및 실습, 딥러닝의 기초가 되는 퍼셉트론 알고리즘 활용에 초점을 두고 수업을 진행한다.본 수업의 원활한 운영을 위해 참여 학생들은 파이썬 언어에 대한 기본 사용법 및 활용 능력, 데이터베이스, 통계, 선형 대수학 및 머신러닝 기술에 대한 기초 이해가 필요한다.
3학년-2학기
▣데이터베이스 및 실습(704822) - (전공선택)
본 과목은 구조화 된 데이터 처리를 위해 데이타베이스의 기초 개념부터 데이타 모델링, 구조, 저장 방법, 트랜잭션 처리 및 관계 데이터베이스 관련 내용 등을 학습한다. 실습과 과제를 통해 SQL 기반의 데이타베이스 응용 프로그램을 설계 및 구현해 본다. 반드시 팀 프로젝트를 수행하게 한다.
▣통신프로그래밍(704836) - (전공선택)
본 과목은 컴퓨터정보통신의 기본이 되는 통신시스템의 기본개념과 동작원리를 실험을 통하여 확인하고 이해하는데 그 목적이 있다. 첫째, 아날로그 통신시스템에 대한 실험을 하고, 둘째, 디지털 통신시스템에 대한 실험을 수행한다.
▣데이터사이언스(704816) - (전공선택)
본 과목에서는 빅데이터 기술의 기본 원리를 학습하고 이를 실제 데이터에 적용하는 실습을 수행한다. 정보통신 기술과 컴퓨터 성능의 급속한 발달로 일상생활에서 사용되는 데이터의 양이 기하급수적으로 늘어나고 있다. 따라서 대용량의 데이터를 효과적으로 수집하고, 분석한 뒤, 시각화하는 빅데이터 기술에 대한 수요가 증가하고 있다. 본 과목에서는 이러한 빅데이터 기술의 기본 원리를 학습한다. 그리고 학습한 지식을 실생활의 데이터에 적용하는 프로젝트를 수행한다. 학습한 지식과 실전 경험은 향후 개인의 의사결정, 기업의 전략 수립, 국가의 정책 결정 등 다양한 분야에 적용할 수 있다. 본 과목의 선수과목은 확률 및 불규칙변수와 알고리즘 및 실습이다.
▣오픈소스소프트웨어(704833) - (전공선택)
본 교과목에서는 오픈 소스의 기본 개념을 우선 학습하고 대표적인 오픈 소스 소프트웨어 중 하나인 리눅스의 동작 원리를 학습한다. 또한, 리눅스 환경에서 응용 프로그램 개발을 위한 기본 리눅스 프로그래밍을 배울 것이고 학기말에는 리눅스 운영체제의 핵심인 리눅스 커널을 심층 소스 코드 분석으로 가르칠 예정이다. 실습은 최신 산업 경향에 따라 아마존 클라우드 컴퓨팅의 가상 머신에서 진행한다.
▣네트워크실험(704511) - (전공선택)
본 강의에서는 CCNA 과정을 이론 및 실습>을 통하여 소개 합니다. CCNA는 컴퓨터네트워킹 전문가 양성을 목적으로 시행된 시스코의 기술 >공인 프로그램인 CCC(Cisco Career Certification)의 하나로 네트워크 설치 및 운영 능력을 공 인하는 자격증 입니다. 국제자격증 CCNA 자격증 과정은 SOHO(small office/home office) 시장>에 필요한 초급 단계의 네트워킹 지식을 갖고 있음을 인증하는 것을 의미합니다. CCNA 인증을 가진 전문가는 노드 수 100개 이하의 소규모 네트워크에 IP, IGRP, Serial, AppleTalk, Frame Realy, IP RIP, VLAN, RIP, Ethernet, Access List등을 비롯한 LAN, WAN, 다이얼 액세스 서비>스를 설치, 구성, 운영할 수 있읍니다. 특히, 시스코 자격증에 관심이 있는 4학년도 수강을 강 력하게 건유합니다. 본 과목의 교육목표는 다음과 같다. 첫째, 네트워크의 전반적인 내용 습득, 네트워크 장비구축 및 구성능력, 분석실험과 네트워크 운영능력 배양 둘째, 국내 및 국제 인증 자격증 취득 능력 배양 셋째, 팀 프로젝트 및 설계능력 배양
4학년-1학기
▣가상현실프로그래밍(704713) - (전공선택)
언리얼 엔진 5로 게임이나 애플리케이션을 개발하는 데 관심이 있는 사람을 위한 과목이다. 게임 개발의 초보자이거나 언리얼 엔진 5의 블루프린트 비주얼 스크립팅 시스템을 경험하지 못했다고 할지라도, 텍스트 코드를 작성 없이 복잡한 게임 메커니즘을 빠르고 쉽게 구축하는 방법을 배울 수 있다.
▣종합설계(1) (704711) - (전공선택)
본 과목은 기초설계, 요소설계 과정을 이수한 학생들이 그동안 배운 전공을 기반으로 하여 수행하는 종합설계 교과목이다. 본 과목은 종합설계(종합설계(1)과 종합설계(2)) 과목 중에 종합설계(1)에 해당하는 전공필수 과목이며, 종합설계(1)과 종합설계(2)는 연계 과목으로 1년에 걸쳐서 수행 완성하게 된다. 학생들은 본 과목의 다음과 같은 유의 사항을 반듯이 숙지하여야 한다. 첫째, 본 과목은 원칙적으로 1명의 교수님의 지도하에 수행된다. 즉 1년 동안 지도를 못하게 될 경우 학과장님의 지시를 받아 지도교수를 옮길 수 있다. 둘째, 본 과목의 최종 결과물은 컴퓨터정보통신공학과에서 매년 개체하는 학술제(종합설계 발표회)를 통해 발표하는 것을 원칙으로 한다. 셋째, 본 과목의 결과물이 졸업논문 및 졸업 작품을 대체한다. 즉, 종합설계 수행 후 결과물이 없을 경우 졸업논문(졸업 작품)이 없게 되므로 졸업을 할 수 없게 된다. 본 교과목의 목표는 다음과 같다. (1)컴퓨터정보통신공학을 위한 지식응용, 분석실험, 설계능력, 공학문제 해결능력 등을 배양함. (2)팀웍, 의사전달 능력 등을 배양함. (3)컴퓨터정보통신공학 실무에 필요한 도구사용 능력 등을 배양.
▣컴퓨터보안 (704811) - (전공선택)
본 강좌에서는 컴퓨터 및 네트워크 보안에 필요한 각종 개념을 배우고 이것을 일상 생활에 적용하는 것을 목적으로 한다.
▣소프트웨어공학(704805) - (전공선택)
본 강좌에서는 소프트웨어를 개발하기 위한 제반 방법 및 도구, 기법을 공부한다. 소프트웨어 개발은 단순한 프로그래밍 과정만이 아니라 사용자의 요구를 분석하는 과정, 설계하는 과정, 구현, 테스트, 유지 보수하는 과정을 포함한다. 또한 이러한 일련의 과정들을 어떻게 관리할 것인지를 공부한다.
▣모바일 시스템 융합 및 실습 (704817) - (전공선택)
본 교과목에서는 모바일 컴퓨팅 시스템의 개 념, 모바일 컴퓨팅을 위한 필요기술 및 모바일 서비스 기술 등 모바일 시스템과 관련된 다양한 >주제를 다루며 아울러 모바일시스템 운영체제 플랫폼하에서의 프로그래밍 실습을 수행한다. 특히 , 실습에서는 많은 모바일 OS의 기본인 리눅스에 대한 기초학습과 이를 통하여 Android, Raspberry pi를 이용한 프로그래밍 실습, 그리고 모바일 시스템 및 Raspberry pi와 Wi-Fi, Zigbee, 무선 Sensor, 라우터, 스위치, 서버 등과의 연동을 통한 네트워크 구현 실습을 수행한다.
4학년-2학기
▣안드로이드 프로그래밍 및 실습(704825) - (전공선택)
본 과목은 안드로이 폰 시스템과 연관된 전반적인 개요, 즉 안드로이드 OS, 구조 그리고 개발 환경 등에 관한 개요를 다룬다. 또한 본 과목에서는 최신 기술의 하나인 안드로이드 폰을 기준으로 안드로이드 시스템과의 연관성 및 동작방식을 보다 심도 있게 이해한다. 학습 방법에는 안드로이드 프로그래밍의 XML (UI) 설계 및 JAVA code와의 연계성에 대한 지식 습득과 그에 관련된 원리 습득을 위한 실습과 프로젝트 수행이 포함된다.
▣종합설계(2) (704814) - (전공필수)
본 과목은 기초설계, 요소설계 과정을 이수한 학생들이 그동안 배운 전공을 기반으로 하여 수행하는 종합설계 교과목이다. 본 과목은 종합설계(종합설계(1)과 종합설계(2)) 과목 중에 종합설계(2)에 해당하는 전공필수 과목이며, 종합설계(1)과 종합설계(2)는 연계 과목으로 1년에 걸쳐서 수행 완성하게 된다. 학생들은 본 과목의 다음과 같은 유의 사항을 반듯이 숙지하여야 한다. 첫째, 본 과목은 원칙적으로 1명의 교수님의 지도하에 수행된다. 즉 1년 동안 지도를 못하게 될 경우 학과장의 지시를 받아 지도교수를 옮길 수 있다. 둘째, 본 과목의 최종 결과물은 컴퓨터정보통신공학과에서 매년 개체하는 학술제(종합설계 발표회)를 통해 발표하는 것을 원칙으로 한다. 셋째, 본 과목의 결과물이 졸업논문 및 졸업 작품을 대체한다. 즉, 종합설계 수행 후 결과물이 없을 경우 졸업논문(졸업 작품)이 없게 되므로 졸업을 할 수 없게 된다. 본 교과목의 목표는 다음과 같다. (1)컴퓨터정보통신공학을 위한 지식응용, 분석실험, 설계능력, 공학문제 해결능력 등을 배양함. (2)팀웍, 의사전달 능력 등을 배양함. (3)컴퓨터정보통신공학 실무에 필요한 도구사용 능력 등을 배양.
▣블록체인개론(704837) - (전공선택)
본 과목은 네트워크 선수 과목들에서 학습한 TCP, UDP를 기반으로 하는 Transport 계층의 프로토콜에 대한 내용을 재정립한 후, 데이터 통신을 하기 위한 네트워크 레벨의 프로그래밍을 학습하고 이를 실습하는 교과목으로 이를 통하여 이론적으로 학습한 통신 프로토콜에 대한 동작 원리를 명확히 할 수 있다. 주된 수업 내용으로 TCP/IP를 이용한 Socket Programming 기법, TCP/UDP Client와 Server 구축 기술, I/O multiplexing, concurrent processes, multi-threads 기법 등에 대하여 학습하고, 나아가 네트워크 어플리케이션 개발 기술 또한 학습한다.
▣인공지능 (704840) - (전공선택)
This course explores the ideas, techniques and algorithms at the foundation of modern artificial intelligence. Through hands-on projects, students gain exposure to the theory behind graph search algorithms, optimization (local search, CSP), (Logical or Uncertain) Knowledge Representation and Reasoning, reinforcement learning, and Natural Language Processing as they incorporate them into their own Python programs. By course’s end, students will be able to get experience in libraries for Artificial Intelligence (AI) as well as knowledge of AI principles that enable them to design intelligent systems of their own.