	Ⅰ컴퓨터공학부Ⅰ
	Division of Computer Science and Engineering

- 컴퓨터공학부 -

	별첨3 Conservatory(U2Can♫music) 프로그램 ․

학과 발전 계획 체계도

학부소개		INTRODUCTION
컴퓨터공학부는 빅데이터와 인공지능으로 대표되는 4차 산업혁명 시대를 선도할 글로컬 IT 인재 양성을 목표로 한다. 본 학부에서는 소프트웨어 및 컴퓨터공학 전공을 포함한 2개의 세부 전공을 운영함으로써, 소프트웨어 개발과 관련한 심도 있는 교육을 진행하고 있다. 소프트웨어 전공은 인공지능 및 데이터 처리, 모바일 프로그래밍 등 비교적 상위 레벨의 소프트웨어 개발 기술에 대한 교육 과정을 제공하며, 컴퓨터공학 전공은 인공지능을 적용한 사물인터넷(AIoT)과 임베디드 시스템, 그리고 네트워크 관련 시스템 단계의 개발과 사용자 응용 단계에서의 운영 등에 대한 심화 과정을 제공한다. 이외에도, 응용 능력과 실전 기술 함양을 위한 캡스톤 디자인 및 산업체와 연계한 프로젝트 중심의 교과목 운영을 통해 이론과 실무를 겸비한 ICT 전문가를 양성한다.

교육목표		EDUCATIONAL GOAL
○ MISSION
➠ 기독교적 인성과 소통 능력을 갖춘 글로컬 리더 양성
○ VISION
➠ 다양한 응용 영역의 문제를 창의적으로 해결할 수 있는 자기주도형 인재 양성
○ PASSION
➠ 핵심 컴퓨터 기술에 대한 이해와 개발 능력을 갖춘 전문 소프트웨어 개발 인재 양성

학과인재상
○ 이론과 실무를 겸비한 소프트웨어 전문가 ○ 창의적 문제 해결 능력을 갖춘 자기주도형 인재 ○ 다양한 응용 영역의 문제 해결 능력을 갖춘 융합형 인재 ○ 국제 경쟁력을 갖춘 IT 글로컬 리더

운영지침		GUIDE TO MANAGEMENT
○ 팀 프로젝트를 통한 창의적 문제 해결 및 의사소통 능력을 기르는데 도움이 될 수 있는 스마트 강의실 및 관련 시설을 지속적으로 확대하고자 함 ○ 최신 기술을 현업에 도입하는 산업체들을 지속적으로 발굴하고 프로젝트 수업과 연계함으로써, 학생들의 응용 능력과 실전 기술을 함양하는 동시에 취업과도 연계하고자 함

졸업후 진로		EMPLOYMENT
○ 소프트웨어 전공: 인공지능 개발, 웹 개발, 모바일 앱 개발, 데이터베이스 개발 및 관리, 빅데이터 분석 및 처리, 게임 개발, 프레임워크 및 플랫폼 개발 등 ○ 컴퓨터공학 전공: 전자제품 및 AIoT 관련 SW 개발, 네트워크 엔지니어 및 SW 개발, 시스템 엔지니어, 정보보호, 멀티미디어 및 가상현실 SW 개발, 게임 엔진 개발 등 ○ 공통: 기타 SW 개발, 기업체 및 정부기관 전산업무 및 정보처리 부서, IT 교육기관 등을 포함한 다양한 산업체 및 연구소 취업, 창업지원 프로그램을 통한 벤처 창업 등

관련 자격증		CERTIFICATE
• 국내 : 정보처리기사, 전자계산기조직응용기사, 정보통신기사, 전자계산기기사, 게임그래픽전문가, 멀티미디어콘텐츠제작전문가, 게임프로그래밍전문가, 전자상거래관리사, 인터넷정보관리사, 데이터아키텍쳐전문가, 네트워크관리사, 임베디스SW개발전문가, 컴퓨터프로그래머, 리눅스마스터, 정보시스템감리사, 정보통신기술사 등 • 국제 : Microsoft (MSCE, MCSA, MCP), CISCO (CCNA, CCNP), Oracle (OCP, OCA, OCPJP, OCAJP), Macromedia (MDD, MFD), Adobe (ASC, ACE e), CISA, LPIC, AWS 아키텍쳐 등

졸업학점

CREDITS FOR GRADUATION

교양과정(교양필수/선택)	전공과정			일반선택	졸업학점
39	단일전공	85 (세부전공21학점 포함)		16
					140
	복수전공	주전공	다전공	16
		49	36

외국인 전형 학생의 졸업학점은 위 신입학 학생의 졸업학점과 동일함.

편입학

졸업학점

CREDITS FOR GRADUATION

교양과정(교양필수/선택)	전공과정			일반선택	졸업학점
6	단일전공	61(세부전공 21학점 포함)		5
					75
6	복수전공	주전공	다전공	-	91
		49	36

전과생 졸업학점

CREDITS FOR GRADUATION

교양과정(교양필수/선택)	전공과정		일반선택	졸업학점
39	2학년	73 (세부전공 21학점 포함)	28
				140
	3학년	61(세부전공 21학점 포함)	40	140
	4학년	61(세부전공 21학점 포함)	40	140

단, 모든 학년의 2학기 전과는 후기 학년의 기준을 따름.

교과 이수 로드맵

전공능력 및 SPC		PROFESSIONAL ABILITY
[전공능력] A. 소프트웨어 기초 이해 B. 소프트웨어 실무 수행 C. 임베디드 시스템 개발 D. 컴퓨터 시스템 응용 E. 모바일 및 웹서비스 개발 F. 지능형 데이터 처리			[SPC] A-1. 수학적 사고 A-2. 소프트웨어 원리 이해 B-1. 소프트웨어 프로젝트 수행 B-2. 소프트웨어 현업 수행 B-3. 소프트웨어 창업 C-1. 임베디드시스템 프로그래밍 C-2. 임베디드시스템 구조 이해 및 활용 C-3. 시스템 소프트웨어 활용 D-1. 컴퓨터 시스템 이해 및 프로그래밍 D-2. 컴퓨터 네트워크 개발 D-3. 멀티미디어 시스템 개발 E-1. UX 설계 및 개발 E-2. 모바일 및 웹 프로그래밍 E-3. 소프트웨어 구조 설계 F-1. 데이터 구조 이해 및 프로그래밍 F-2. 대규모 데이터 처리 F-3. 인공지능 응용

전공교육과정

컴퓨터공학부 공통과목
이수구분	과목명	학점	비고(영역)
전공선택	소프트웨어 원리	3
전공선택	AI를 위한 미적분학	3
전공선택	AI를 위한 이산수학	3
전공선택	UX프로그래밍	3
전공선택	AIoT프로그래밍	3
전공선택	창의적공학설계	3
전공선택	컴퓨터프로그래밍	3	C언어
전공선택	컴퓨터프로그래밍응용	2	C언어
전공선택	객체지향프로그래밍 I	3	Java
전공선택	객체지향프로그래밍응용	2	Java
전공선택	선형대수	3
전공선택	확률통계	3
전공선택	자료구조	3
전공선택	컴퓨터알고리즘	3
전공선택	ICT멘토링프로젝트	1
전공선택	산학협력캡스톤디자인 I	3
전공필수	산학협력캡스톤디자인 II	3
전공선택	산학협력캡스톤디자인 III	3
전공선택	최신SW응용기술 I ~ IV	3
전공선택	기업가정신과창업	3
전공선택	ICT인턴십 I	2	주 4시간 이상
전공선택	ICT인턴십 II	3	주 6시간 이상
전공선택	ICT인턴십 III	6	주 12시간 이상
전공선택	ICT인턴십 IV	12	주 24시간 이상
전공선택	종합시험	P/N

※ 졸업을 위해서는 산학협력캡스톤디자인Ⅱ 과목을 반드시 이수해야 함

컴퓨터공학 전공과목
이수구분	과목명	학점	비고(영역)
전공선택	디지털논리회로	3
전공선택	컴퓨터구조	3
전공선택	데이터통신	3
전공선택	시스템프로그래밍	3
전공선택	운영체제	3
전공선택	컴퓨터네트워크	3
전공선택	멀티미디어	3
전공선택	AI를 위한 클라우드컴퓨팅	3
전공선택	리눅스시스템	3
전공선택	네트워크프로그래밍	3
전공선택	디지털영상처리	3
전공선택	AI 임베디드시스템	3
전공선택	네트워크엔지니어링	3
전공선택	컴퓨터그래픽스	3
전공선택	AIoT프로그래밍 II	3
전공선택	실시간운영체제	3
전공선택	정보보호및보안	3
전공선택	모바일네트워크	3

소프트웨어 전공과목
이수구분	과목명	학점	비고(영역)
전공선택	오픈소스SW이해와활용	2
전공선택	오픈소스SW개발	3
전공선택	웹프로그래밍	3
전공선택	객체지향프로그래밍 II	3
전공선택	AI응용 윈도우프로그래밍	3
전공선택	프로그래밍언어론	3
전공선택	모바일프로그래밍	3
전공선택	데이터베이스	3
전공선택	컴파일러	3
전공선택	인공지능	3
전공선택	소프트웨어공학	3
전공선택	데이터베이스프로그래밍	3
전공선택	기계학습	3
전공선택	소프트웨어디자인패턴	3
전공선택	AI를 위한 빅데이터처리	3
전공선택	AI를 위한 인간과컴퓨터상호작용	3
전공선택	AI를 위한 빅데이터분석및표현	3

학년별 교육과정

학년	학기	이수 구분	전공 능력	SPC	교과목	학점	시간		이수 권장	비고
							이론	실습	복수전공
1	1	교필			채플	P				지정시간
		교필			인성과사회	2	2			핵심교양
		교필			노작교육(1학기/2학기 택1)	1		1		지정시간
		교필			글로컬영어 Ⅰ	3	3			지정시간
		교필			MVP+교육(1학기/2학기 택1)	P				캠프수업
		교필			흡연음주예방교육(1학기/2학기 택1)	P				캠프수업
		교필			글쓰기 또는 독서와 토론 택1	2	2			택 1
		교필			컴퓨팅사고력	3				재학중이수
		교필			인생설계와진로Ⅰ	1	1			지정시간
		전선	A	A-1	AI를 위한 미적분학	3	3
		전선	A	A-2	소프트웨어원리	3	3
	1학기 소계					18	14	1
	2	교필			채플	P				지정시간
		교필			종교와인생	2	2			핵심교양
		교필			노작교육(1학기/2학기 택1)	1		1		지정시간
		교필			글로컬영어Ⅱ	3	3			지정시간
		교필			MVP+교육(1학기/2학기 택1)	P				캠프수업
		교필			흡연음주예방교육(1학기/2학기 택1)	P				캠프수업
		교필			글쓰기 또는 독서와 토론 택1	2	2			택 1
		교필			컴퓨팅사고력	3	3			재학중이수
		전선	A	A-1	AI를 위한 이산수학	3	3
		전선	E	E-1	UX프로그래밍	3	2	1
		전선	C	C-1	AIoT프로그래밍	3	2	1
	2학기 소계					20	17	3

학년별 교육과정

학년	학기	이수 구분		전공 능력	SPC	교과목	학점	시간		이수 권장	비고
								이론	실습	복수전공
2	1	교필				채플	P
		교필				생활과윤리	2	2
		교필				영역별교양선택 Ⅲ	3	3
		CS	전선	A	A-1	선형대수학	3	3
			전선	A	A-2	창의적공학설계	3	3
			전선	B	B-1	최신SW응용기술Ⅰ	3	3
			전선	C	C-1	컴퓨터프로그래밍	3	2	1		C언어
			전선	D	D-1	컴퓨터프로그래밍응용	2	1	1		C언어
			전선	F	F-1	객체지향프로그래밍Ⅰ	3	2	1		Java
			전선	E	E-2	객체지향프로그래밍응용	2	1	1		Java
		CE	전선	C	C-2	디지털논리회로	3	3
		SW	전선	A	A-2	오픈소스SW이해와활용	2	2
	1학기 소계						29	25	4
	2	교필				채플	P
		교필				역사와문화	2	2
		교필				인생설계와진로 Ⅱ	1	1
		교필				영역별교양선택 Ⅳ	3	3
		CS	전선	A	A-1	확률통계	3	3
			전선	B	B-1	최신SW응용기술Ⅱ	3	3
			전선	F	F-1	자료구조	3	3
		CE	전선	C	C-2	컴퓨터구조	3	3
			전선	D	D-1	데이터통신	3	3
		SW	전선	F	F-1	객체지향프로그래밍Ⅱ	3	2	1
			전선	E	E-2	웹프로그래밍	3	2	1
			전선	E	E-1	AI응용 윈도우프로그래밍	3	2	1
	2학기 소계						30	27	3

* CS: 학부공통, CE: 컴퓨터공학 전공, SW: 소프트웨어 전공

학년별 교육과정

학년	학기	이수 구분		전공 능력	SPC	교과목	학점	시간		이수 권장	비고
								이론	실습	복수전공
3	1	교양	교필			채플	P
			교필			인성교양영역Ⅰ	2	2
		CS	전선	B	B-1	최신SW응용기술Ⅲ	3	3
			전선	F	F-1	컴퓨터알고리즘	3	3
		CE	전선	C	C-1	시스템프로그래밍	3	3
			전선	C	C-3	운영체제	3	3
			전선	D	D-2	컴퓨터네트워크	3	3
			전선	D	D-3	멀티미디어	3	3
			전선	D	D-2	AI를 위한 클라우드컴퓨팅	3	3
		SW	전선	E	E-3	프로그래밍언어론	3	3
			전선	E	E-2	모바일프로그래밍	3	2	1
			전선	F	F-2	데이터베이스	3	3
	1학기 소계						32	31	1
	2	교양	교필			채플	P
			교필			인성교양영역Ⅱ	2	2
			교필			비전드림교육	P
		CS	전선	B	B-1	산학협력캡스톤디자인Ⅰ	3	2	1
			전선	B	B-1	최신SW응용기술Ⅳ	3	3
			전선	B	B-1	ICT멘토링프로젝트	1		1
			전선	C	C-3	컴파일러	3	3
		CE	전선	C	C-3	리눅스시스템	3	3
			전선	D	D-1	네크워크프로그래밍	3	2	1
			전선	D	D-3	디지털영상처리	3	3
		SW	전선	A	A-2	오픈소스SW개발	3	2	1
			전선	F	F-3	인공지능	3	3
			전선	E	E-3	소프트웨어공학	3	3
			전선	F	F-2	데이터베이스프로그래밍	3	3
	2학기 소계						33	29	4

* CS: 학부공통, CE: 컴퓨터공학 전공, SW: 소프트웨어 전공

학년별 교육과정

학년	학기	이수 구분		전공 능력	SPC	교과목	학점	시간		이수 권장	비고
								이론	실습	복수전공
4	1	교양	교필			채플	P
		CS	전선	B	B-2	ICT인턴십Ⅰ	2				주4시간 이상
			전선	B	B-2	ICT인턴십Ⅱ	3				주6시간 이상
			전선	B	B-2	ICT인턴십Ⅲ	6				주12시간 이상
			전선	B	B-2	ICT인턴십Ⅳ	12				주24시간 이상
			전선	B	B-1	산학협력캡스톤디자인Ⅱ	3	2	1
		CE	전선	C	C-2	AI 임베디드시스템	3	2	1
			전선	D	D-2	네트워크엔지니어링	3	3
			전선	D	D-3	컴퓨터그래픽스	3	3
			전선	D	D-2	모바일네트워크	3	3
		SW	전선	E	E-3	소프트웨어디자인패턴	3	3
			전선	F	F-2	AI를 위한 빅데이터처리	3	3
			전선	F	F-3	기계학습	3	3
			전선			종합시험	P
	1학기 소계						44	19	2
	2	교양	교필			채플	P
		CS	전선	B	B-2	ICT인턴십Ⅰ	2				주4시간 이상
			전선	B	B-2	ICT인턴십Ⅱ	3				주6시간 이상
			전선	B	B-2	ICT인턴십Ⅲ	6				주12시간 이상
			전선	B	B-2	ICT인턴십Ⅳ	12				주24시간 이상
			전선	B	B-1	산학협력캡스톤디자인Ⅲ	3	2	1
			전선	B	B-3	기업가정신과창업	2	2
		CE	전선	C	C-3	실시간운영체제	3	3
			전선	C	C-2	AIoT프로그래밍Ⅱ	3	2	1
			전선	D	D-2	정보보호및보안	3	3
		SW	전선	E	E-1	AI를 위한 인간과 컴퓨터 상호작용	3	3
			전선	F	F-2	AI를 위한 빅데이터분석및표현	3	3
	2학기 소계						81	31	4

* CS: 학부공통, CE: 컴퓨터공학 전공, SW: 소프트웨어 전공

교과목 소개

❏ 학부공통

AI를 위한 미적분학 (Calculus for AI)

미분과 적분의 기본 원리부터 시작하여, AI 모델의 학습과 최적화에 직접 활용되는 다변수 함수의 편미분, 경사하강법 등 실제 AI 적용 사례를 통합하여 AI 개발에 필요한 수학적 기초를 학습한다.

소프트웨어원리 (Software Principle)

프로그래밍을 배우기 위해 가장 먼저 알아야 하는 기초 중의 기초 내용을 다루며, 어떤 문제가 주어졌을 때 그 문제를 해결하기 위해 컴퓨터 프로그램으로 표현하는 문제해결 논리를 거쳐 배우기 쉽고 실행하기 쉬운 파이썬 언어를 사용하여 결과를 확인하는 절차를 학습한다.

AI를 위한 이산수학 (Discrete Mathematics for AI)

인공지능의 이해와 응용에 필요한 수학적 기초 개념을 학습하는 과목이다. 수학적 논리, 집합과 함수, 관계, 그래프, 트리, 부울 대수, 조합, 알고리즘 등의 내용을 다루며, 이를 인공지능의 문제 해결과 데이터 구조 설계에 어떻게 활용할 수 있는지를 함께 학습한다.

UX프로그래밍 (UX Programming)

HTML5는 뛰어난 이식성과 확장성을 통해 데스크탑 환경 뿐만 아니라 모바일 환경의 응용 개발에 있어 필수적인 요소로 자리잡고 있다. 본 과목은 HTML5 이외에, 응용 사용자 인터페이스 개발에 필요한 CSS3 및 JavaScript를 함께 학습하여, 이들 요소가 응용 개발에 어떻게 유기적으로 활용될 수 있는지 소개한다.

AIoT프로그래밍 (AIoT Programming)

인공지능과 사물인터넷 기술을 융합하여 AI 기반 임베디드 시스템과 실시간 데이터 처리, 센서 및 IoT 기기 연동 기술을 다룬다. AI 알고리즘을 IoT 환경에 적용하는 방법을 학습하며, 최신 산업 요구에 부합하는 실무 역량을 키우는 것을 목표로 한다.

창의적공학설계 (Computer Programming)

최근 들어 특히 주목받고 있는 창의적 사고기법과 체계적 문제해결능력에 중점을 두고 학습한다. 각 단계별 주요 활동을 통해 공학적 문제에 대한 창의적 사고기법을 습득하고, 또한 공학에서의 설계문제에 대한 창의적 해법을 논리적으로 도출하기 위한 방법을 익힌다.

컴퓨터프로그래밍 (Computer Programming)

컴퓨터 시스템을 효율적으로 제어하기 위한 프로그래밍 언어 중 하나인 C 언어의 기초를 배운다. 다양한 예제와 함께 C 언어의 문법, 주어진 문제를 해결하기 위한 설계 및 코딩, 디버깅 방법 등을 다룬다.

컴퓨터프로그래밍응용 (Computer Programming Application)

C 언어를 이용하여 컴퓨터 시스템을 제어하기 위한 다양한 예제들을 살펴보고, 이를 효과적으로 구현하기 위한 방법들을 소개한다.

객체지향프로그래밍Ⅰ (Object-Oriented Programming Ⅰ)

Java를 통해 객체 지향 프로그래밍의 개념과 기본 구조를 학습한다. 클래스와 객체, 이벤트, 메소드, 상속, 캡슐화, 다형성 등의 객체 지향 프로그래밍 기법들을 살펴보고, 간단한 예제를 통해 이해를 돕는다.

객체지향프로그래밍응용 (Object-Oriented Programming Application)

Java 언어를 이용하여 클래스 개념을 바탕으로 소프트웨어 모듈의 재사용성을 확장하기 위한 다양한 예제들을 살펴보고, 이를 효과적으로 구현하기 위한 방법들을 소개한다.

선형대수 (Linear Algebra)

인공지능 및 기계학습의 이해에 필요한 벡터, 선형 변환, 행렬, 선형 방정식 등의 이론을 학습한다.

확률통계 (Probability and Statistics)

확률통계의 기초 이론, 기본 개념 및 응용 분야의 이해, 자료의 요약, 확률 및 확률분포, 이항분포, 정규분포, 표본분포와 추정, 가설검정, 분산분석, 회귀분석 등의 이론을 학습한다.

자료구조 (Data Structure)

주어진 문제를 해결하는 효과적인 알고리즘을 작성하기 위해서 여러 가지 자료구조를 살펴보고, 이를 실제적으로 구현하는 방법에 대해서 학습한다. 이는 컴퓨터 프로그래밍의 기술, 데이터의 기본 개념과 컴퓨터 내에서의 자료표현, 스택, 큐, 연결리스트, 트리 등을 공부한다.

컴퓨터알고리즘 (Computer Algorithm)

자료구조의 알고리즘 복잡도를 분석하고 이를 기초로 하여 Divide-and-Conquer, Greedy Method, 동적 프로그래밍, Branch-and-Bound, NP 문제 등의 일반적인 컴퓨터 알고리즘 설계 및 분석 능력을 배운다. 선수 과목으로는 자료구조를 이수해야 한다.

컴파일러 (Compiler Construction)

여러 종류의 프로그래밍 언어의 형식 이론, 즉 Grammar 이론을 공부한다. 특히 Regular Grammar를 중심으로 Regular 언어와 Regular Expression 등을 다루며, Regular 언어를 인식할 수 있는 Finite Automata를 강의한다. 또한 이런 이론을 적용하는 컴파일러의 Lexical 분석을 공부한다. 그리고 구문 분석에 필요한 Context-Free Grammar에 대하여 강의한다. 학습한 이론을 적용하여 실험용 컴파일러를 제작해 본다. Context-Free  문법을 중심으로 파싱 기법을 공부하고 중간 언어 번역에 관련된 지식을 강의한다.

ICT멘토링프로젝트 (ICT Mentoring Project)

정부 주관의 ICT 인재양성 프로그램과 연계하여 ICT 분야의 기업 전문가 멘토에게 지도받을 수 있는 기회를 제공하여 재학생의 산업체 현장 적응력 및 취업 경쟁력을 강화한다.

산학협력캡스톤디자인Ⅰ~Ⅲ (Industry-University Cooperation Capstone Design Ⅰ~Ⅲ)

전공에서 습득한 다양한 프로그래밍 기술을 기반으로 캡스톤 디자인 프로젝트를 직접 기획하고 구현함으로써 실무 능력을 배양한다. 2~4인으로 구성된 팀 단위로 프로젝트를 수행하며, 최종 구현된 응용 프로그램은 소프트웨어 경진대회 출품하거나 및 학생들의 포트폴리오에 활용될 수 있도록 한다. 단, 졸업을 위해서는 산학협력캡스톤디자인Ⅱ 과목을 반드시 이수해야 한다.

최신SW응용기술Ⅰ~Ⅳ (Emerging Software Application TechnologiesⅠ~Ⅳ)

방학 중 시행되는 SW Step-Up 캠프에 개설된 교과목으로, 최신 수요 SW에 대한 응용 기술들을 소개하고 간단한 실습이나 팀 단위 프로젝트 수행을 통해 관련 아이디어를 구현해 봄으로써 기술적 이해를 높인다.

ICT인턴십Ⅰ~Ⅳ (ICT Internship Ⅰ~Ⅳ)

지도교수 및 학부의 동의와 지도하에 전공과 관련된 실무분야에서 정해진 기간 동안 현장실습 기회를 갖는다. 현장실습을 위한 계획서, 현장실습 기관의 승인서 및 평가를 위한 업무일지를 제출하여야 하며, 현장실습 종료 후 지도교수와 실습기관의 평가를 통해 학점을 받게 된다.

기업가정신과창업 (Entrepreneurship and Business Start-up)

기업을 이끌고 있는 창업자나 운영자를 초빙하여 기업의 운영이나 창업 과정에서 발생하는 문제점, 이들을 해결하기 위한 노하우 등을 공유하고, 학생들의 창업 아이디어에 대한 조언을 구한다.

종합시험 (Comprehensive Examination)

컴퓨터공학부 전공 전반에 대한 이론 및 핵심 내용을 종합적으로 평가한다. 전공 교과목에서 습득한 지식을 바탕으로 문제 해결 능력과 전공 이해도를 검증하며, 졸업요건 충족을 위한 종합시험을 실시한다.

❏ 컴퓨터공학 전공

디지털논리회로 (Digital Logic Circuit)

컴퓨터 하드웨어의 기본 구성요소인 디지털 소자와 이들이 결합된 디지털 회로에 대하여 학습한다. 컴퓨터에서 사용되는 수의 체계와 각종 코드에 대하여 학습하고 기본적인 조합논리회로(Combinational Logic Circuit)와 순차논리회로(Sequential Logic Circuit)를 설계한다. 또한 ROM, RAM, PLD(Programmable Logic Devices) 등에 대하여 학습한다.

컴퓨터구조 (Computer Architecture)

컴퓨터의 기본적인 하드웨어의 구조와 동작원리 및 특성, 설계방법에 대한 지식을 습득한다. 이를 위하여 컴퓨터시스템의 하드웨어설계와 시스템구성에 대한 여러 가지 주제들을 간단한 것으로부터 점차 복잡한 것으로 발전시키면서 학습한다. 주요 교과내용으로는 명령어 및 제어형식, CPU구조, 마이크로프로그래밍 기법, 연산프로세서의 설계, 산술알고리즘, 입출력장치, 인터페이스, 메모리구조 등이다.

데이터통신 (Data Communications)

정보통신의 기본 이론을 바탕으로 정보통신의 개념, 정보전송 기술, 각종 정보통신망 중, 유선통신망, 무선통신망, 위성통신망, 광통신망(ATM, SDH/SONET), 광대역통신망 등을 포괄적으로 학습하여 정보통신 기술의 기초를 이루기 위한 학습을 한다.

시스템프로그래밍 (System Programming)

학생들이 시스템 프로그래밍을 공부하여, 응용 프로그램을 작성할 수 있도록 하며, 디바이스 드라이버 및 운영체제, 응용 프로그램들 간의 관계를 명확하게 이해할 수 있도록 한다. 또한 여러 시스템 호출들에 관하여 공부한다.

운영체제 (Operating Systems)

운영체제의 기능과 구성에 대하여 강의하며 다음 내용들을 포함한다. 주기억장치 관리, 프로세스 관리, Interrupt 기법, 주변장치 관리, 파일 관리 등을 공부한다.

컴퓨터네트워크 (Computer Networks)

데이터통신의 기초를 바탕으로 좀 더 심오한 컴퓨터네트워크의 이론을 배우며, 특히, OSI에 바탕을 둔 각 계층별 프로토콜을 학습하며, TCP/IP를 기본으로 ARP/RARP, DNS, DHCP, 각종 라우팅 프로토콜, MPLS, GMPLS 등 하위 계층부터 상위계층까지 각 계층별 해당 프로토콜을 학습한다.

멀티미디어 (Multimedia)

멀티미디어 기술의 동향 및 처리기기, 비디오와 오디오의 특성 및 압축 동기화를 위한 시간 명세 방식, 멀티미디어의 정보처리를 위한 운영체제, 미들웨어의 지원, 멀티미디어의 파일 및 저장 시스템,  멀티미디어 서비스를 위한 구조와 저장 방식에 이르기까지의 전반적인 내용을 총괄적으로 다룬다.

리눅스시스템 (Linux System)

리눅스(Linux)는 자유 소프트웨어와 오픈소스를 특징으로 무료로 배포되는 운영체제이다. 본 과목에서는 가장 널리 사용되는 리눅스 배포판을 선정하여 리눅스 운영체제 개요, 설치, 기본 명령 및 활용, 네트워크 및 서버 설정을 중심으로 실습을 병행하여 학습한다.

네트워크프로그래밍 (Network Programming)

컴퓨터 네트워크의 핵심 프로토콜인 TCP/IP 및 UDP 등을 소개하고, 네트워크 소켓 API를 이용한 다양한 네트워크 응용 개발 능력을 습득한다.

디지털영상처리 (Digital Image Processing)

멀티미디어 컨텐츠를 종합하여 대화성과 기능성을 부여하는 프로그래밍 활용방안에 대해 학습한다. 단순한 스크립팅 차원을 넘어 효율적인 코드의 작성방법과 확장성에 대해서도 학습한다.

AI 임베디드시스템 (AI Embedded System)

AI 알고리즘을 임베디드 하드웨어에 적용하는 방법과 실시간 데이터 처리, 센서 및 IoT 기기와의 연동 기술을 학습한다. 최신 AI 임베디드 시스템 설계 및 개발 능력을 기르게 되며, 산업 현장에서 요구하는 실무 역량을 갖출 수 있도록 한다.

컴퓨터그래픽스 (Computer Graphics)

컴퓨터 기반의 그래픽스의 기본 원리 및 이론을 습득한다. 그래픽스를 이해하기 위해 2차원, 3차원 그래픽스의 기본 개념들과 그래픽스 파이프라인 그리고 각종 변환들을 익힌다. 그래픽으로 표현 되는 모델링, 기하변환, 뷰잉, 은면제거, 조명, 렌더링 등 그래픽 표현 기법들을 학습을 통해 그래픽이 여러 응용 분야에서 데이터 정보들로 사용됨을 이해한다.

AI를 위한 클라우드컴퓨팅 (Cloud Computing for AI)

AI 기술 지원을 위한 클라우드 컴퓨팅의 기본 원리와 구조를 학습한다. AI모델의 클라우드 기반 학습과 배포, 데이터 처리, 자동화 기술을 익히며, AI와 클라우드 융합 환경에서 실제 응용 능력을 강화한다.

AIoT프로그래밍Ⅱ (AIoT Programming Ⅱ)

인공지능과 사물인터넷 기술을 융합하여 AI 기반 임베디드 시스템과 실시간 데이터 처리, 센서 및 IoT 기기 연동 기술을 다룬다. AI 알고리즘을 IoT 환경에 적용하는 방법을 배우며, 스마트하고 지능화된 시스템 개발 능력을 갖추는 것을 목표로 한다.

실시간운영체제 (Realtime Operating System)

스마트폰, 태블릿 컴퓨터, 모바일 장치 등의 임베디드 시스템을 제어하기 위한 시스템 소프트웨어인 모바일 Linus와 GNU Toolchain을 소개하고, 실제 CPU를 장착한 실습 보드 상에서 운영체제의 기본 요소들을 직접 코딩, 생성해 본다.

정보보호및보안 (Information Protection and Security)

각종 정보의 보호 및 보안을 위해 개발된 암호화 개념 및 알고리즘을 바탕으로 설계된 정보 보안 시스템 체계를 고찰하고, 고도 정보화 사회 기반 대단위 인터넷 환경에서 각종 디지털 정보를 보호하는 메커니즘에 대해 고찰한다. 구체적으로 네트워크 보호, 침입탐지, 공개키 암호 시스템, 전자 서명, 인증 등에 대해 학습한다.

❏ 소프트웨어 전공

오픈소스SW이해와활용 (Understanding and Application of Open Source Softwares)

소프트웨어 프로젝트 개발에 필요한 오픈소스 소프트웨어의 개념과 종류에 대해 소개한다. 리눅스, 이클립스, GIT 등과 같이, 운영체제, SW개발 및 협업 등에 이용되는 대표적인 오픈소스 소프트웨어에 대해 소개하고, 이들의 설치 및 운영 과정 등을 실습해 본다.

오픈소스SW개발 (Development of Open Source Softwares)

팀 단위의 소규모 프로젝트 수행을 통해 오픈소스 SW를 구현하고 GIT에 공개해 봄으로써 현업에 필요한 소프트웨어 개발 역량을 향상한다.

객체지향프로그래밍Ⅱ (Object-Oriented Programming Ⅱ)

Java 언어에서 제공하는 네트워크, 스레드, 엔터프라이즈 관련 API 들을 공부하고, 이를 기반으로 클라이언트-서버 구조의 인터넷 및 분산 환경에서 동작하는 응용 프로그램을 작성해 본다. 선수 과목으로 객체지향프로그래밍Ⅰ을 이수해야 한다.

웹프로그래밍 (Web Programming)

데이터베이스를 기반으로 웹 페이지를 동적으로 생성하기 위한 서버측 프로그래밍 기술인 JSP(Java Server Page)에 대해 소개한다. 실무 능력을 향상하기 위해 팀 프로젝트 형태로 운영되며, 선수 과목으로 UX프로그래밍을 이수해야 한다.

AI응용 윈도우프로그래밍 (Windows Programming with AI)

효율적인 프로그래밍을 위한 AI 기술을 활용하여 자동화되고 효율적인 코드의 적용방식을 본 교과를 통해 학습하여, 결과적으로 AI를 통해 기존의 윈도우 기반 응용프로그램의 생산성을 향상시키는 방법을 학습한다.

프로그래밍언어론 (Concepts of Programming Languages)

고급 프로그래밍 언어가 가지고 있는 언어의 기본구조와 그 언어의 Semantics를 구현하는 방법 등을 공부한다. Assignment 문장, 제어문장, I/O문장, 부프로그램 등을 다양한 언어를 통해 구체적으로 분석 연구한다.

모바일프로그래밍 (Mobile Programming)

다양한 모바일 플랫폼에 대한 소개와 어플리케이션 개발 환경에 대해 소개하고, 모바일 응용 개발에 필요한 안드로이드 및 하이브리드 앱 등에 대해 소개한다. 선수과목으로 UX프로그래밍, 객체지향프로그래밍Ⅰ을 이수해야 한다.

데이터베이스 (Database)

관계형 데이터베이스를 중심으로 데이터베이스의 기본개념, 데이터 모델, 데이터모델링, 정규화 등 주요 이론적 내용을 학습하며 SQL 등의 연습을 통해 데이터베이스를 관리할 수 있는 방법을 학습한다.

인공지능 (Artificial Intelligence)

인공지능은 인간 지능의 원리를 연구하고 컴퓨터에 그 지능을 표현하고 실행하는 학문이다. 본 과목에서는 지식의 표현 및 추론, 탐색에 의한 문제 해결 방법 등을 공부하고, 전문가 시스템, 기계학습, 지능형 인터넷 에이젼트 등을 포함한 인공지능 분야 기초 이론을 학습한다.

소프트웨어공학 (Software Engineering)

프로그램 개발의 효율적인 개발기법 및 작성기법으로 신뢰성이 높고, 품질 좋은 소프트웨어를 생산하기 위한 개발기법을 배운다. 소프트웨어 개발단계를 분석, 설계, 코딩으로 분류하여, 각 단계에서 필요한 기법을 습득하게 하며 테스팅 및 문서화에 대해서도 함께 다룬다.

데이터베이스프로그래밍 (Database Programming)

데이터베이스 이론을 좀 더 실세계에서 사용하고 응용할 수 있는 기법을 공부하게 된다. 즉, 데이터베이스 프로그래밍의 효율적인 기법과 응용기술을 심도 있게 확대한다. 또한  중․대형 Server에서 응용할 수 있는 MS_SQL Server나 Oracle 등 DB도구를 이용하여 데이터베이스를 설계하고 구축하여 이를 이용하여 데이터베이스 프로그래밍을 작성할 수 있도록 한다.

기계학습 (Machine Learning)

인공지능을 구성하는 핵심 기술 중 하나인 기계 학습의 개념과 원리를 설명하고, 딥러닝(Deep Learning)과 관련한 선형 회귀, 로지스틱 회귀, 다층 신경망, CNN, RNN 등에 대해 학습한다. Python 언어를 기반으로 케라스, 텐서플로우 등의 기계 학습 라이브러리를 이용하여 데이터 분류, 이미지 인식 등의 다양한 예제들을 실행하고 응용해 본다.

소프트웨어디자인패턴 (Software Design Pattern)

소프트웨어 재사용을 위한 생성, 구조, 행동, 동기화 패턴 등을 포함한 다양한 소프트웨어 설계 기법을 배운다. Java 언어를 활용하여 실제 적용 사례를 함께 제시함으로써 이해도를 높인다. 선수과목으로 Java 프로그래밍을 이수해야 한다.

AI를 위한 빅데이터 처리 (Big Data Processing for AI)

인공지능 시대에 대규모 데이터를 효율적으로 처리하고 분석하는 기술을 다룬다. 빅데이터의 개념과 특성을 학습하고, 데이터 정제, 변환, 분석 및 시각화 방법을 실습 통해 익히게 된다. AI 기반 데이터 활용 능력과 실무 역량을 강화하는 것을 목표로 한다.

AI를 위한 빅데이터 분석 및 표현 (Big Data Analysis and Presentation for AI)

AI 기술과 결합한 빅데이터 분석 기법과 시각화 방법을 학습한다. AI 알고리즘을 활용하여 대규모 데이터를 효과적으로 분석하고, 데이터 기반 의사결정을 지원할 수 있는 역량을 키운다.

AI를 위한 인간과 컴퓨터 상호작용 (Human Computer Interaction for AI)

AI 시대에 맞춰 인간가 컴퓨터 간의 상호작용 방식을 탐구한다. AI 통합으로 인한 지능형 사용자 인터페이스 설계, 음성·제스처 인식, 감정 분석 등의 최신 기술을 배우며, AI와 협력하는 시스템 개발 역량을 키우는데 중점을 둔다. 윤리적 문제와 사회적 영향도 함께 학습한다.