컴퓨터과학/공학의 교과과정 동향

Download Report

Transcript 컴퓨터과학/공학의 교과과정 동향

한국정보과학회
제28회 임시총회 및 춘계학술발표회
2001년 4월 27일 경희대학교 (수원)
컴퓨터과학/공학의 교과과정 동향
 국외 교과과정 발전방향
 한국형 교과과정 모델
서울대학교 컴퓨터공학부 신현식
국외 교과과정 발전방향
IEEE-ACM Computing Curricula
1991/2001 를 중심으로
Computing Curricula 1991
http://www1.acm.org:82/education/curr91/
 교과과정 설계 원칙
– 교과영역(9개) subject areas
• 알고리즘과 자료구조
• 컴퓨터시스템 아키텍쳐
• 인공지능과 로보틱스
• 데이터베이스와 정보검색
• 사용자-컴퓨터 통신
• 수치 및 기호 계산
• 운영체제
• 프로그래밍 언어
• 소프트웨어 방법론 및 공학
2001-004-27
3
 교과과정 설계 원칙 (계속)
– 방법론(3 가지)
• 이론
– 정의와 공리
– 정리와 증명
– 결과의 해석
• 추상화
– 데이터의 수집 및 가정의 구성
– 모델링과 예측
– 실험의 설계 및 결과의 분석
• 설계
– 요구조건과 명세
– 설계와 구현
– 테스팅과 분석
2001-004-27
4
 원칙으로부터 교과과정의 구성
– 접근방법
• 넓고 깊게
– 너비(breadth): 지식단위의 집합체로 실현
– 지식단위(knowledge units): 각 영역의 세부 주제를 이컬
음
– 지식단위를 조합하여 교과목의 구현
• 깊이
– 고급화된 주제, 보조자료 등으로 실현
• 프로그래밍과 실험을 중요시
2001-004-27
5
Subject areas
AL:
Algorithms &
Data struct.
AR:
Architecture
.
.
.
SE:
SW Method. &
Engineering
Knowledge units
Courses
Basic data structures
Abstract data types
Course A
Digital logic
.
.
.
..
.
Digital systems
..
.
Fundamental concept
SW development proc.
SW req’t & spec.
SW design & impl.
Course S
.
.
.
Verification & validat’n
2001-004-27
6
샘플 교과과정 1
 컴퓨터과학
분야
자연과학
수학
인문 사회과학
전공(컴퓨터과학)필수
전공선택
일반선택
취득학점
계
2001-004-27
14
20
30
30
18
12
124
7
학과목 계층도
컴퓨터과학
이산수학
혹은 미적분학
(각 3 학점)
컴퓨터 개론 1
컴퓨터 개론 2
컴퓨터시스템 개론
알고리즘 분석/설계
소프트웨어 시스템
컴퓨터 구조와
어셈블리어 프로그래밍
3, 4 학년
프로그래밍 언어
소프트웨어 공학
운영체제
2001-004-27
1, 2 학년
컴퓨터 아키텍쳐
8
샘플 교과과정 2
 컴퓨터공학
분야
취득학점
자연과학
15
수학
22
인문 사회과학
24
전공(컴퓨터과학)필수
38
전공선택
18
다른 공학 선택과목
9
일반선택
9
계
2001-004-27
135
9
학과목 계층도
컴퓨터공학
이산수학
혹은 미적분학
(각 3 학점)
(* 4 학점)
컴퓨터 개론 1
컴퓨터 개론 2
컴퓨터공학 개론
알고리즘 분석/설계
소프트웨어 시스템
*
소프트웨어 공학
2001-004-27
1, 2 학년
하드웨어 시스템설계*
3, 4 학년
프로그래밍 언어
운영체제
컴퓨터 아키텍쳐
설계 실험 1
설계 실험 2
10
 컴퓨터과학 vs. 컴퓨터공학 (제시한 샘플의 경우)
공통 교과목
컴퓨터과학
컴퓨터공학
컴퓨터시스템 개론
컴퓨터공학 개론
컴퓨터구조와 어셈
블리어 프로그래밍
하드웨어 시스템
설계
컴퓨터 개론
알고리즘 분석/설계
소프트웨어 시스템
소프트웨어 공학
프로그래밍 언어
운영체제
컴퓨터 아키텍쳐
설계 실험
2001-004-27
11
Computing Curricula 2001(draft)
http://www.acm.org/sigcse/cc2001/
 특징
– “컴퓨팅” 의미의 확장
• 컴퓨터 공학 computer engineering
• 소프트웨어 공학 software engineering
• 정보시스템 information systems
– 새로운 고려사항
• 컴퓨팅은 이제 광범위한 학문의 기초
• 컴퓨팅 교육은 비전공자도 염두에 두어야 함
• 학제간 협동을 고려
2001-004-27
12
 기술적 변화 수용
–
–
–
–
–
–
–
–
–
–
–
WWW 과 그 응용
망 구성기술, 특히 TCP/IP 기반
그래픽, 멀티미디어
내장형 시스템
관계형 데이터베이스
상호운용성
객체지향 프로그래밍
고급 API의 사용
사용자-컴퓨터 인터페이스
소프트웨어 안전성
보안, 암호화 기법
2001-004-27
13
교과과정 모델 개관
 핵심 영역 (14 개 분야)
–
–
–
–
–
–
–
–
–
–
–
–
–
–
이산구조 discrete structures
프로그래밍 기초 programming fundamentals
알고리즘과 복잡도 algorithms and complexity
프로그래밍 언어 programming languages
사용자-컴퓨터 인터랙션 human-computer interaction
그래픽과 시각 컴퓨팅 graphics and visual computing
지능적 시스템 intelligent systems
정보 관리 information management
컴퓨터 아키텍쳐와 구조 architecture and organization
운영체제 operating systems
망 중심 컴퓨팅 net-centric computing
소프트웨어 공학 software engineering
사회적 잇슈와 직업적 잇슈 social and professional issues
계산과학과 수치기법 computational science & numerical methods
2001-004-27
14
 과목 수준과 구현 전략
Introductory Imperative
first
courses
Transition
Objects
first
2001-004-27
Breadth
first
Algorithms Hardware
first
first
Specific material needed to match introductory and intermediate course
strategies (possibly an additional and minor adjustments to topic coverage)
Intermediate Topic-based
courses
approach
Advanced
courses
Functional
first
Compressed
approach
Systems-based
approach
Web-based
approach
Additional courses used to complete the undergraduate program
15
 기초과목 introductory courses
이산구조(discrete structures)는 공통
Strategies
Courses
Imperative-first
Introduction to
programming
Data structures and
abstraction
Objects-first
Intro. to objectoriented programming
Object-oriented
design and method.
Functional-first
Intro. to functional
programming
Objects and
algorithms
Breadth-first
TBD
Algorithms-first
Intro. to algorithms
and applications
Programming
methodology
Hardware-first
Introduction to the
computer
Object-oriented
programming
2001-004-27
16
 중간레벨 과목 intermediate courses
종결과제(capstone project)는 공통
Traditional
topic-based
Algorithmic
analysis
Computer arch
OS
Net-centric
computing
AI
DB
Software
development
Prof. practice
2001-004-27
Compressed
Algorithmic
analysis
Computer
architecture
Professional
practice
OS and
networking
AI and
information
Intensive systemsbased
Intro to computer org
Intro to info. org.
Algorithmic analysis
Computer arch.
OS
Net-centric comp
Info. management
SW practice
Social & prof. issues
Prog lang translation
Machine learning
SW engineering
Web-based
Intro. to WWW
Algorithmic
analysis
Net-centric
computing
HCI
Comp graphics
SW practice
Base systems
AI and info.
Arch. for
network & comm.
17
 고급 레벨 과목 advanced courses
–
–
–
–
–
–
–
–
–
–
–
–
–
Automata theory
Adv. algorithmic analysis
Coding and info theory
Security and cryptography
Parallel algorithms
Programming language
translation
Prog. lang. design
Prog. lang. semantics
Programming paradigms
Adv. computer arch.
Parallel architectures
Adv. OS
Real-time systems
2001-004-27
–
–
–
–
–
–
–
–
–
–
–
–
Distributed systems
Mobile computing
Cluster computing
Intelligent systems
Machine learning
Agents
Robotics
Alternative models for AI
Database design
Distributed DB
Data compression
Human-centered design
& evaluation
– CSCW
– GUI
18
–
–
–
–
–
–
–
–
–
–
–
–
–
–
Adv. computer graphics
Image processing
Computer vision
Prof. practice
Software engineering
Adv. software design
Event-driven prog.
Component-based
computing
Formal specification
Scientific computing
Numerical analysis
Operationals Research
Modeling and simulation
Capstone project
2001-004-27
19
한국형 교과과정 모델
개요
교육 방향
 기본 교양 함양
– 인문사회과학분야에 대한 기초 소양
– 자연과학분야에 대한 기초 소양
 컴퓨터 기반학문에 대한 이해와 연습
– 수학/공학 기초
– 컴퓨터 과학/공학 전공에 대한 기본
 컴퓨터 핵심기술에 대한 이해와 연습
– 컴퓨팅 분석/설계 능력 함양
– 현재의 컴퓨터 기술 수준의 이해 및 활용
2001-004-27
21
컴퓨터 학과목 체계 - 개요
소프트웨어
공학
그래픽스
인공지능
시스템 설계
데이터
베이스
분산시스템
구성
운영체제
VLSI
계산이론
컴파일러
컴퓨터
네트워크
하드웨어
설계 구현
컴퓨터 구조 및
설계 (I, II)
컴퓨터 및 프로
그래밍 기초 (I, II)
인문
2001-004-27
소프트웨어 구조 컴퓨터 시스템 및
및 설계 (I, II)
프로그래밍 (I, II)
수학 (I, II, III)
사회과학
자연과학
전공
심화 (예)
전공핵심
자료구조 및
알고리즘
전공기초
기초수학
교양필수
22
 해설
– 교양필수과목
• 대학에서 요구하는 교양과목
– 전공기초과목
• 1-2학년과정에서 이수하여야 할 기초적인 전공기초
소양 과목
– 전공핵심과목
• 2-3학년과정에서 이수하여야 할 전공 핵심과목
– 전공심화과목
• 3-4학년과정에서 학생들이 지망하는 전공분야에 따
른 선택가능 과목
2001-004-27
23