2021년도 2학기 정보시스템기술 (IMEN281-01) 강의계획서

1. 수업정보

학수번호 IMEN281 분반 01 학점 3.00
이수구분 전공필수 강좌유형 선수과목
포스테키안 핵심역량
강의시간 월, 수 / 11:00 ~ 12:15 / 제4공학관 세미나실 [302/304호] | 금 / 11:00 ~ 12:15 / 제4공학관 멀티미디어 강의실 [305호] 성적취득 구분 G

2. 강의교수 정보

송민석 이름 송민석 학과(전공) 산업경영공학과
이메일 주소 mssong@postech.ac.kr Homepage https://minseoksong.github.io
연구실 HTTP://AIM.POSTECH.AC.KR 전화 054-279-2376
Office Hours 월요일 13:00-14:00

3. 강의목표

[STC교과목~2017]실제의 여러 가지 산업경영공학적인 문제들을 컴퓨터를 이용해서 해결해 본다. Python/JAVA 를 이용하여 객체지향언어개념과 자료구조 및 알고리즘에 관한기초지식을 배우고 어떻게 전산화하는지 학습하고 최단경로문제, BinPacking 문제 등에 적용하여 본다.
[주요학습내용]
- Object Oriented Programming
- Data Structures
- Algorithms
- Applications

4. 강의선수/수강필수사항

2011~2017학번부터 산업경영공학과 필수 STC 과목임
CSED 101 프로그래밍과 문제해결(Programming and Problem Solving)

5. 성적평가

Participation/Attitude 10%
Lab Assignment 20%
Homework 30 %
Mid Term Exam 20 %
Final Exam 20 %

6. 강의교재

도서명 저자명 출판사 출판년도 ISBN

7. 참고문헌 및 자료

Cormen, T.H., Leiserson, C.E., Rivest, R.L., and Stein, C. (2009) Introduction to algorithms, MIT Press
Cormen, TH (2013) Algorithms unlocked, MIT Press
Dive Into Python3, https://diveintopython3.problemsolving.io/

8. 강의진도계획

1. Class Organization, Demo, Introduction, Python Introduction, Syntax
2. Python Syntax, Numpy
3. Python Class, Constructor, Recursive Function
4. Python File I/O, Fuction/Operator Overloading
5. Python Template Function, Exception Handling
6. Python Inheritance, Collection Type
7. Python Algorithm, Lambda Function
8. Knapsack, Bin Packing Problem
9. Performance Analysis: Step Counts, Operation Counts
Performance Analysis(Merge Sort), Asymptotic Notations
10. Complexity Theory: P, NP, NPC
Python Lambda Function
Data Structure, Linear List
11. Linked Representation, Stack
12. Queue, Dictionary & Hashing
13. Trees, Binary Trees. Priority Queues
14. Binary Search Tree, Balanced Binary Search Tree
15. Graph, Shortest Path Algorithm
16. Final Exam

9. 수업운영

2020-2학기 부터 기존에 사용하는 C++언어를 Python 언어로 변경

-학계와 산업계에서 알고리즘 개발 및 데이터 분석에 Python 사용 증가
-학과 내 교과목 및 연구 수행에 Python 언어 사용 증가
-Python을 활용한 객체지향언어의 주요 개념 강의 가능: Class, inheritance, function overloading 등의 개념을 Python을 통해서 강의 가능
-커리큘럼의 효율성 증대: 기존에는 다양한 전공 과목에서 Python에 대한 기본 내용을 소개하는 것을 효율화

10. 학습법 소개 및 기타사항

 참고: Python 소개
 1990년 귀도 반 로섬(Guido van Rossum)이 만든 인터프리터 언어
 데이터 분석에 가장 많이 쓰는 대표적인 언어로, 구글에서 만들어진 소프트웨어의 50%이상이 파이썬으로 만들어 졌음
 플랫폼 독립적인 멀티패러다임 프로그래밍 언어로 절차적 언어 지원, 객체지향, 함수형 프로그래밍 언어를 지원
 문법이 쉽고 순서가 영어 구문과 유사하여 빠르게 배울 수 있음
 풍부한 라이브러리로 개발 생산성이 매우 높고, 특히 AI 프로그래밍을 위한 많은 라이브러리 제공
 웹 프로그래밍, 수치 연산 프로그래밍, 데이터베이스 프로그래밍 등 다양한 분야 개발 가능

11. 장애학생에 대한 학습지원 사항

- 수강 관련: 문자 통역(청각), 교과목 보조(발달), 노트필기(전 유형) 등

- 시험 관련: 시험시간 연장(필요시 전 유형), 시험지 확대 복사(시각) 등

- 기타 추가 요청사항 발생 시 장애학생지원센터(279-2434)로 요청