3학년
1. 공학영어프레젠테이션
엔지니어의 국제적인 의사소통능력에 대한 사회 요구가 높아지고 있다. 이 과목에서는 영어 문서 작성과 발표에 대한 교육을 실시한다.
2. SW산학프로젝트
교수, 산업체 멘토, 학생 다수로 프로젝트팀 구성, 산업체와 연계된 산학협동 프로젝트 주제 발굴, 캡스톤설계와 연계하여 프로젝트 지속 수행한다.
3. ICT학점이수인턴1, 2
인턴실습강좌로 정보공시, 고등교육통계 및 장학성적 제외.
4. 데이터마이닝
데이터마이닝은 데이터에서 유용한 패턴을 찾거나 예측하기 위한 이론과 기법을 의미한다. 이 과목에서는 데이터에 대한 이해, 탐색적 자료 분석, 연관규칙의 탐사, 분류 기법, 클러스터링, 추천 시스템, 텍스트 마이닝, 그래프 마이닝 등과 같은 기법을 학습한다.
5. 데이터통신
통신프로토콜 계층구조에서 하위 계층, 즉 물리계층과 데이터링크계층을 강의한다.
통신모델, 데이터 및 신호 정의, 디지털 및 아날로그 전송, 스위칭, 멀티플렉싱, 오류 감지 및 정정, 데이터링크 제어, 다중접속 제어, 무선 랜
6. 설계패턴
여러 가지 설계패턴을 Java를 이용하여 프로그래밍 함으로써 설계패턴의 개념을 배운다. Strategy Pattern, Factory Pattern, MVC Pattern 등 여러 가지 설계패턴을 프로그래밍을 통해 배운다.
7. 시스템프로그래밍
운영체제의 커널 인터페이스 사용법을 익히고, 이를 기반으로 여러 응용 분야의 시스템 수준 병행 프로그래밍 기법을 학습하여 시스템 엔지니어를 양성한다.
운영체제 소개, 병행 프로세스/스레드 개념, 시스템 호출과 인터럽트 처리 소개, 프로세스 기반 병행 프로그래밍, 멀티스레드 프로그래밍, 파일/레코드 처리 및 상호 배제, 프로세스 간 통신, 메모리 관리 API, 시간 관리 API, 네트워크 소켓 프로그래밍 기초
8. 디지털신호처리
선형 시스템과 신호를 연속/불연속 그리고 주기적/비주기적으로 각각 분류하여 처리하는 방법을 배운다.
신호의 정현파 표현, 샘플링, 푸리에 급수, 컨벌루션, 시불변 선형 시스템, 주파수 응답, z-변환
9. 컴퓨터구조
컴퓨터시스템의 주요 구성 요소와 상호 작용을 이해하고 시스템 설계와 성능 분석에 필요한 기본 지식을 학습한다.
명령어집합, 중앙처리장치, 파이프라이닝, 메모리 계층구조, 입출력장치, 멀티프로세서
10. 컴퓨터그래픽스
선 그리기, 텍스처 처리, 2D 및 3D 모델링, 렌더링 등의 컴퓨터그래픽의 기본 개념을 배우고, OpenGL를 이용한 3D 게임 프로그래밍을 배운다. 또한, 이들 개념 및 테크닉을 Windows 및 Android 하에서 실습하고 간단한 그래픽 응용을 구현한다.
컴퓨터그래픽스 기초, 컴퓨터그래픽스 기초 이론 - 선그리기, 다각형그리기, 앤티앨리어싱, OpenGL 프로그래밍, 기학적 변형, 3D 뷰잉, 텍스처 매핑, 조명, 프랙탈, 파티클, 그래픽 응용
11. 제어공학
선형 시스템을 대상으로 안정도 판정, 정상상태 및 과도상태 응답 해석, 제어기 설계 등에 대해 강의하고 매트랩을 이용한 실습을 병행한다.
피드백 제어, 전달 함수, 상태변수 해석, 시스템 안정도, 시간영역 해석, 근궤적법, 제어기 설계 등
12. 기계학습
기계학습은 인공 지능의 한 분야로, 컴퓨터가 데이터로부터 학습할 수 있도록 하는 알고리즘과 기술을 개발하는 분야를 말한다. 본 강좌에서는 인공신경망, 결정트리, 선형벡터 공간, 최적화 기법 등을 학습한다.
13. 데이터베이스
관계형 데이터베이스 이론, 질의, SQL을 이용한 데이터베이스 프로그래밍, 트랜잭션 등에 대해서 배운다.
데이터베이스 시스템, 관계형 데이터베이스 모델, 관계대수, 관계해석, SQL, 데이터베이스 프로그래밍, 기본적인 동시성 제어 개념, 트랜잭션 프로그래밍
14. 소프트웨어공학
이 과목에서는 소프트웨어의 개발, 운용, 유지보수 등의 소프트웨어 생명 주기 전반을 정량적으로 다루기 위한 방법을 강의한다. 구체적으로, 소프트웨어 사용자들의 요구를 수집 및 분석하고, 이를 소프트웨어 시스템의 설계에 반영하는 다양한 요구사항 분석기법 및 설계기법들과 이와 관련된 소프트웨어 도구들에 대해서 가르친다.
사용자 요구 분석 및 설계, 소프트웨어 설계 기법, 객체 지향적 분석과 설계, 소프트웨어 유지 보수 및 품질 보증, 테스팅
15. 운영체제
범용 및 내장형 운영체제의 내부 구조와 기술적 특징을 학습하고, 병행 프로세스의 동기화를 비롯한 운영체제 밀결합 고급 응용의 작성 능력과 적용 분야에 맞게 운영체제를 개선할 수 있는 능력을 키운다.
운영체제 종류 및 특성, 프로세스/스레드 개념, I/O 시스템 구조, 시스템 호출과 인터럽트 처리, 프로세스 관리, 프로세스 스케줄링, 프로세스 동기화, 데드락, 가상 메모리 관리, 파일 시스템 구조, 디스크 시스템 관리, 분산 시스템 및 클라우드 컴퓨팅 소개
16. 전기기기
이 과목 에서는 스텝모터, DC모터 및 BLDC모터의 동작 원리를 이해하고 구동 하드웨어 제작 및 제어 프로그램 작성을 실습한다.
17. 컴파일러구성론
컴파일러를 작성하는 기본 방법을 강의한다. 형식어론(Formal Language Theories), Lexical Analysis, Parsing에 대한 이론을 배우고, 각각의 구현을 통해 컴파일러를 작성하는 능력을 키운다.
18. 컴퓨터네트워크
TCP/IP 프로토콜에서 상위 계층, 즉 네트워크계층, 트랜스포트 계층, 응용계층을 강의한다.
네트워크 모델, 응용계층의 다양한 네트워크 응용서비스, 트랜스포트 계층의 TCP 및 UDP, 네트워크계층의 IP 및 라우팅 알고리즘, 네트워크 보안
19. 자연어처리
인공지능 기술이 발달하면서 자동번역, 챗봇, 문서에서의 정보 추출 등 자연어 처리 기술의 활용 분야가 증가하고 있다. 이 과목에서는 형태소 분석, 정보 추출, 질의응답, 기계 번역 등 자연어 처리 기술들을 살펴본다.