HOME > 교육과정소개 > 교과목소개
교과목소개
• 교과목 개요(2020학번)
-
▸C프로그래밍(1), C프로그래밍(2)
C언어를 사용한 프로그래밍은 모든 전공과목의 기초가 되므로, 초급과 중급으로 나누어 2학기에 걸쳐 개설한다. C프로그래밍(2)를 수강하기 위해서는 반드시 C프로그래밍(1)을 이수하여야 한다.
-
▸과학기반상상력개발
과학과 기술의 역사적, 실천적 측면을 알아보고, 구체적인 사례들을 통해 과학적 상상력의 무한한 가치를 확인하여 봄으로써 상상력이 과학기술의 발달에 있어 중요한 원동력임을 알게 한다. 또 상상력을 높일 수 있는 다양한 문제를 제시하여 해결하게 함으로써 상상력의 개발과 향상에 도움이 되게 한다.
-
▸과학과4차산업혁명의융합
4차 산업혁명의 기술적 개요, 기술적 변화, 과학과의 융합사례 등을 통찰하고 이해시키며, 과학과 4차산업을 융합하는 새로운 기술을 개발하는 문제들을 다루어 봄으로써 융합의 중요성을 알게 한다.
-
▸이산수학
컴퓨터과학 및 공학에 필요한 기초이론과 수학을 그 내용으로 하며, 집합, 수열, 논리, 순열, 조합, 관계와 방향 그래프, 함수, 그래프 이론, 순서관계와 구조, 트리, 반그룹과 그룹, 언어와 유한 상태 기계, 그룹과 코딩 등을 학습한다.
-
▸컴퓨터구조
연산, 제어, 기억, 입출력 장치의 구조 및 동작원리에 대해서 학습하고, 디지털 논리 설계 방법을 이용하여 기본 컴퓨터의 설계와 소프트웨어 설계 방법을 배운다.
-
▸데이터통신
컴퓨터나 휴대폰과 같은 통신 단말기 간에 데이터를 디지털 방식으로 전송/수신하는 방법에 대하여 배운다.
-
▸자료구조
컴퓨터에서 자료를 구성하는 방법인 스택, 큐, 리스트, 트리 구조 및 그래프 구조 등 다양한 구조의 데이터 표현 방식을 익히고, 프로그램을 통하여 이 구조들을 다루는 능력을 기른다.
-
▸Java프로그래밍
C 언어 프로그래밍 초급 과정을 거친 후, 객체 지향 프로그래밍 개념과 활용 능력을 키우기 위해 Java 언어를 사용한 프로그래밍 기법을 익힌다.
-
▸Linux실습
오픈 운영체제인 리눅스의 기본적인 사용법을 익히며, 쉘의 동작을 이해하고 간단한 쉘 스크립트를 작성하고 활용한다. 또한 기본적인 서버 프로그램을 다운로드/설치/운용하는 과정을 실습한다.
-
▸파이썬
간결하고 생산성 높은 프로그래밍 언어인 파이썬에 대해 학습하고 파이썬을 이용하여 프로그래밍에 대한 개념을 습득한다. 파이썬에서 데이터를 다루기 위해 변수에 대해 학습한 후 수와 텍스트와 비트를 다룬다. 리스트와 튜플과 딕셔너리를 배운다. 흐름 제어, 함수, 모듈과 패키지, 클래스의 개념과 실제를 배운다.
-
▸운영체제
컴퓨터 하드웨어에서 사용자가 소프트웨어를 사용하도록 하는 기본 소프트웨어인 운영체제에 대하여 학습한다. 운영체제의 각 요소인 프로세서 관리, 메모리관리, 가상기억장치, 파일관리, 보조기억 관리 등의 기본개념을 파악한다.
-
▸컴퓨터 네트워크
다수의 컴퓨터나 통신 단말기를 연결하여 데이터를 주고받는 컴퓨터 네트워크에 대하여 배우며, 통신 프로토콜 구조, 프로토콜, 인터넷 프로토콜 그룹(TCP/IP 등) 대하여 학습한다.
-
▸확률과통계
확률의 성질, 확률의 계산, 분포, 통계학의 정의, 추정, 검정, 검사, 분산분석, 상관과 회귀 등을 공학적 관점에서 습득한다.
-
▸인공지능제품기획
인공지능에 대한 전반적인 기술과 발전 방향 및 전망에 대해 알아보고, 독창적이고 창의적인 인공지능제품을 기획하여 봄으로써 다가올 인공지능 시대에 대비할 수 있는 개인역량을 길러준다.
-
▸데이터베이스
데이터베이스의 기본 개념에서부터 모델링 등을 포함하는 데이터베이스 설계 방법과 함께, 실제 데이터베이스 서버를 구축하고 SQL을 사용한 데이터베이스 프로그래밍 방법을 배우고 실습한다.
-
▸소프트웨어공학
안정적이고 신뢰할 수 있는 소프트웨어를 경제적으로 제작하기 위한 공학적인 방법을 다루는 과목으로 소프트웨어 생명 주기의 단계별 프로세스와 활동 및 세부적인 과업들을 이해하고 개발 방법론과 도구 그리고 개발 관리기법을 학습한다.
-
▸앱응용개발
스마트폰의 운영체제인 안드로이드(또는 iOS) 환경에 대한 이해와 함께 프로그래밍 방법을 학습한다. 안드로이드의 프로그램 개발환경 Eclipse에서 안드로이드 시스템 도구를 사용한 프로그래밍 방법을 학습하며, 스마트 폰에 탑재될 보안 앱을 설계하고 구현한다.
-
▸빅데이터시스템
빅데이터 관련 시스템을 구축하고 빅데이터 분석을 공부한다. 웹이나 SNS로부터 생성된 빅데이터 분석을 위해서 오픈소스 소프트웨어인 R 프로그래밍을 학습하고, R을 이용하여 기본적인 데이터 분석뿐만 아니라 실시간 데이터에서 많이 이용되는 회귀분석, 시계열분석을 실습한다.
-
▸IoT네트워크
IoT에서 사용하는 각종 네트워크 기술에 대해 학습한다. PAN, BAN 등 초소규모 네트워크뿐만 아니라 4G/5G, Wi-Fi, Bluetooth, 적외선 통신 등 사물인터넷에서 사용되는 유무선 통신과 네트워킹 기술에 대해 학습한다.
-
▸임베디드시스템
컴퓨터의 기본 하드웨어(CPU, 메모리, 주변장치, 입출력장치)와 이를 구동하는 시스템 소프트웨어를 갖춘 소형 컴퓨터 시스템을 구성하는 기술에 대하여 학습한다.
-
▸정보보호
윈도우즈, 리눅스, 유닉스 등의 여러 운영체제에서의 보안 문제점을 다루고, 바이러스/백신, 해킹도구를 이용한 해킹 방법의 이해와 대응방안 등의 클라이언트 관점에서의 보안 문제를 다루고, 인증과 접근 통제, 보안 관리운영, 침입탐지, 무결성 점검도구, 스캔 탐지 도구 등의 서버 보안을 위한 방법들을 학습한다.
-
▸알고리즘
프로그램 구성의 기본단위인 알고리즘을 이해하고 알고리즘의 분석 및 설계방법을 학습한다. 시간 및 공간 복잡성, greedy알고리즘, 분할 해결법, 동적 프로그래밍, 탐색 알고리즘, 병렬 알고리즘 등에 관해 학습하고 실제 프로그램에 응용한다.
-
▸웹응용개발
스마트 폰을 위주로 하는 모바일 응용이 급격히 증가하고 있으나, 여전히 인터넷 응용에서 가장 큰 비중을 차지하는 것이 WEB이다. 가장 대중적인 JavaScript, JSP 등의 웹 전용 프로그래밍 언어를 사용하여 웹 서버 및 DB 서버에서 동작하는 홈 페이지를 구축하고 운영하는 능력을 배양한다.
-
▸라즈베리파이실습
라즈베리파이는 기초 컴퓨터 과학 교육을 증진하기 위해 만든 싱글 보드 컴퓨터이다. 라즈베리파이를 활용하여 소프트웨어 영역에서뿐 아니라 하드웨어 영역까지 확장하는 ‘메이커(Maker) 문화’에 대해 학습하고 컴퓨터라는 도구로 자신이 원하는 바를 직접 만들 수 있는 창작자가 될 수 있게 한다. 운영체제 포팅, 필요 패키지 설치, 기초 센서 실습, GPIO와 엑추에이터에 관련된 실습을 한다.
-
▸빅데이터분석
오픈데이터, 빅데이터 등과 같이 정보사회에서 생산되는 다양한 자료의 분석 방법을 공부 하는 과목으로서, 데이터 취득 방법과 취득 후 분석하는 방법을 공부한다. 내용으로는 확률, 확률분포, 추정, 가설검정, 분선분석, 회귀분석과 특히 빅데이터 분석에서 많이 사용되는 시계열분석 등이 포함된다.
-
▸소프트웨어융합
다양한 전문분야에 대한 SW융합 프로젝트를 수행함으로써 특정 도메인에 대한 빠른 지식 습득 능력 및 소프트웨어융합엔지니어로서의 역량을 배양한다. 프로젝트 팀 구성을 통해 SW융합 주제와 관련된 소규모 프로젝트를 수행한다.
-
▸인공지능
인공지능은 사람의 지능과 인지 기능을 흉내 낼 수 있는 정보처리 모델을 연구하는 컴퓨터과학의 한 분야이다. 인공지능의 근본적인 문제로서 경험적 탐색, 추론, 학습, 지식표현 방법에 관한 이론과 계산학적 문제들을 다룬다. 게임이론, 지능형 에이전트, 신경망, 전문가시스템, 컴퓨터비전, 자연언어처리, 데이터마이닝, 정보검색, 바이오정보학 등의 분야에 대해 살펴본다.
-
▸IoT오픈플랫폼실습
IoT오픈플랫폼에 대해 학습한다. IoT오픈플랫폼(1)에 이어 oneM2M 아키텍처와 기능, oneM2M 프로토콜 및 시험인증, OCEAN 오픈 소스, &Cube설치와 모비우스, IoT서비스 개발, oneM2M플랫폼기반 서비스응용 개발 등에 대해 학습하고 실습한다.
-
▸캡스톤디자인
재학 중 학습한 전공 지식과 응용 능력을 발휘하여 논문 혹은 작품을 제작하기 위한 지도와 평가를 받는다. 4 년간 학습한 전공지식을 기반으로 하여 개인별/그룹별 주제 선정에서부터 개발 과정을 산업계 전문가와 공동 진행하며 현장 밀착형 프로젝트를 수행한다.
-
▸네트워크전문가실무
네트워크의 전문가를 양성하기 위한 과정으로 네트워크의 이론을 갖추고 실무능력을 키우기 위한 학습을 한다. CISCO 국제 자격증과 관련한 영어 콘텐츠와 라우터/스위치 실습을 함께 실시한다.
-
▸머신러닝/딥러닝
학습시스템은 경험으로부터 지식을 습득하여 스스로 성능을 향상시키는 시스템이며, 기계학습은 학습시스템에서 획득한 데이터로부터 모델을 생성하고 미래를 예측하는 알고리즘을 연구하는 분야이다. 기계학습은 인터넷 정보검색, 텍스트마이닝, 컴퓨터비젼, 로보틱스, 게임 등에 활용된다.
-
▸사물인터넷응용
Open-source 하드웨어 플랫폼에서 IoT 응용 제품을 제작, 설계하는 방법을 배우고 익힌다. IoT 환경에서 사용할 수 있는 응용프로그램 종류를 학습하고 이들 응용 프로그램 개발에 필요한 배경 지식을 익힌다.
-
▸IoT자격검정
4차산업혁명의 기반기술이라 할 수 있는 사물인터넷과 관련하여 현재 국내에서 시행하고 있는 자격 검정은 IoT자격검정을 준비하여 자격증 취득을 할 수 있도록 한다.
-
▸빅데이터전문가
본 교과목에서는 빅데이터를 수집하고, 분석하고, 해석하는 방법을 학습한다. 본 교과목을 통해서 학생들은 빅데이터를 이해하고, 빅데이터를 활용한 기술에 대해 학습을 진행하게 되며, 데이터 분석에 특화된 프로그래밍 언어 중 하나를 선택하여 실제 데이터의 수집부터 분석과 해석하는 과정을 학습한다. 이를 위해 게시판이나 토론을 적극 활용하여 교육목표를 달성한다.
