Computational Thinking

Slides:



Advertisements
Similar presentations
컴퓨터공학과. 이세돌 vs 인공지능 알파고 컴퓨터공학과 인생은 실험과 도전의 연속 인생은 실험과 도전의 연속.
Advertisements

프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
다양한 종류의 문서를 언제든지 보고 바로 편집하세요. 여러 앱을 이용할 필요 없이 MS Office, HWP, PDF, TXT 의 문서를 한 곳에서 확인하고 어디서든 쉽게 편집해 보세요 ! *PDF 문서는 ‘ 보기 모드 ’ 만 지원합니다.
Popcon 이규태 김준수 강예진. 목차  Popcon 이란  개발동기 및 목적  필요성  차별성  설계  개발일정  기대효과 및 향후 계획.
초등용 빛으로 노래해요.
Smartphone & Mobile Internet
컴퓨터와 인터넷.
Deep Learning.
블룸의 교육목표분류학 (Bloom’s Taxonomy)
네트워크 기술을 통한 현재와 미래 소개.
이산수학 (2012년 2학기) : 강의 소개 담당교수: 류승택 (60주년 기념관: 18407)
최윤정 Java 프로그래밍 클래스 상속 최윤정
Entity Relationship Diagram
신호처리 실험 (Signal Processing Lab)
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
Learning Classifier using DNA Bagging
TRIZ 와 방법론 직관력 경험 TPM ,TQM 통찰력 지식 6Sigma TRIZ 빠뜨리는것 +α Check 방법론 방법론
Multi Intelligence Theory
Chapter 02 순환 (Recursion).
컴퓨터과학 전공탐색 배상원.
제 1 장 과학적 조사란 무엇인가? 사회과학조사방법론의 이해.
CAS (Computer Algebra System) 소개
1. 현대 생활과 응용 윤리의 필요성 2. 윤리 문제의 탐구와 실천 3. 윤리 문제에 대한 다양한 접근
학습목표 학습목차 다른 홈페이지의 HTML 파일 코드를 보는 방법에 대해 알아봅니다.
SW교육의 필요성을 이해하시나요? 코딩, 소프트웨어 시대 - 조용한 혁명
Computational Thinking
스크래치 언어 이해 스크래치 이용법 습득 고양이가 말을 하며 움직이는 예제 작성
제1장 통계학이란 무엇인가 제2장 자료와 수집 제3장 자료 분석 방법
프로그래밍 개요
Chap 6.Assembler 유건우.
15차시_스마트 애플리케이션 기획 스마트 애플리케이션 모형 제작 및 발표.
STOPWATCH 박새별.
마인드 맵.
HTTP 프로토콜의 요청과 응답 동작을 이해한다. 서블릿 및 JSP 를 알아보고 역할을 이해한다.
Multi Intelligence Theory
LabVIEW WiznTec 주임 박명대 1.
데이터마이닝, 빅데이터, 데이터과학: 정의 데이터마이닝(data mining)
9강. 클래스 실전 학사 관리 프로그램 만들기 프로그래밍이란 결국 데이터를 효율적으로 관리하기 위한 공구
“사람과 컴퓨터” 이 점 숙 컴퓨터와 소프트웨어 “사람과 컴퓨터” 이 점 숙
웹사이트 분석과 설계 (화면 설계) 학번: 성명: 박준석.
수학10-나 1학년 2학기 Ⅰ. 도형의 방정식 2. 직선의 방정식 (9/24) 점과 직선 사이의 거리 수업계획 수업활동.
⊙ 이차방정식의 활용 이차방정식의 활용 문제 풀이 순서 (1)문제 해결을 위해 구하고자 하는 것을 미지수 로 정한다.
CAS (Computer Algebra System) 소개
13차시_스마트 애플리케이션 기획 스마트 미디어의 사용환경과 사용자의 특성.
하이브리드 문화 현상 11조 윤주성, 이호, 허성녕.
알고리즘 알고리즘이란 무엇인가?.
「 All children have strengths 」
바넘효과 [Barnum effect] 사람들이 보편적으로 가지고 있는 성격이나 심리적 특징을 자신만의 특성으로 여기는 심리적 경향. 19세기 말 곡예단에서 사람들의 성격과 특징 등을 알아 내는 일을 하던 바넘(P.T. Barnum)에서 유래하였다. 1940년대 말 심리학자인.
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
Support Vector Machine
컴퓨터 구성요소와 사용 컴퓨터 문서 작업 인터넷 활용
쉽게 배우는 알고리즘 2장. 점화식과 점근적 복잡도 분석
Coding for Kids.
다문화교육론 호 원 대 학 교.
11장 배열 1. 배열이란? 1.1 배열의 개요 1.2 배열의 선언과 사용.
발표자 : 이지연 Programming Systems Lab.
자기유도와 인덕턴스 (Inductance)
.Net FrameWork for Web2.0 한석수
왜 ‘프로그래밍’을 ‘비이공계 학생’이 알아야 하는가?
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
학부 컴퓨터공학부 교육과정 (학부) 2학년 4학년 3학년 1학년 1학기 2학기 IPP 자격과정 전공트랙
1. 강의 소개 컴퓨팅적 사고와 문제해결.
SNU 컴퓨터의 기초 월 14:00-16:00 43동101호 ropas. snu. ac
서로 다른 세대 간에 소통과 공존은 가능할까? (2차시)
오늘의 강의 제목을 입력하세요 소 속 : 인문대학 국어국문학과 이 름 : 홍길동 교수 1.
7 생성자 함수.
6 객체.
꽃잎의 수로 피보나치 수열하기 장전초등학교 6학년 신찬유.
이 은 Tyler 교육과정 개발 모형 이 은
1 제조 기술의 세계 3 제품의 개발과 표준화 제품의 개발 표준화 금성출판사.
Presentation transcript:

Computational Thinking & Coding 이점숙 / alleya@hanmail.net 소프트웨어와 컴퓨팅 사고 Software and Computational Thinking ⓒ생능출판&김대수

컴퓨팅 사고의 배경 앨빈 토플러가 주장한 ‘정보화의 물결’이 현실화된 시대 인터넷과 스마트폰을 통해 엄청난 속도로 정보 전달 사물인터넷과 빅데이터의 시대가 머지않아 전개될 것 인공지능에 대한 관심과 연구가 급격히 확대되는 추세 일상적인 사고와는 다른 컴퓨팅 사고에 대한 관심이 급증 다양하고 복잡한 문제해결을 위해 컴퓨팅 사고 능력 필요 4차 산업혁명의 추진을 위한 컴퓨팅 사고의 필요성 커짐

컴퓨팅 사고의 출발 1980년 MIT의 파퍼트(Papert) 교수가 처음 사용 파퍼트는 컴퓨터과학자, 수학자, 발달학습 이론의 권위자 2006년 카네기멜런 대학의 지넷 윙(Jeannette M. Wing) 교수 ACM 저널에 ‘컴퓨팅 사고’ 게재 후 큰 관심 불러일으킴 최근 들어 다양한 분야에서 큰 관심과 각광을 받기 시작

컴퓨팅 사고에 대한 윙 교수의 주장 ‘컴퓨팅 사고’는 문제해결을 위해 컴퓨터과학자들이 사고하는 방법과 그와 관련된 기본적인 문제해결 기술로부터 출발하였음 키워드 : 컴퓨팅 사고, 컴퓨터, 문제해결 등 윙 교수의 주장 “컴퓨팅 사고는 컴퓨터과학자에게만 적용되는 것이 아니며, 누구에게나 일반적으로 적용되는 사고방식과 기술의 집합으로 배우고 익혀서 사용할 가치가 충분하다”

인간의 사고 체계 인간의 사고력, 문자를 통해 후대에 전수, 문명과 기술발전 17세기 파스칼은 “인간은 생각하는 갈대이다.” -> 생각하는 힘 강조 인간의 사고 중 감각적 사고는 인간의 기본적인 사고 경험과 학습적 사고는 지적(知的) 사고 컴퓨팅 사고와 창의적 사고가 겹치면서 상단에 존재

사고의 힘(Thinking Power)과 중요성 독일의 철학자 데카르트(Descartes)는 사고의 중요성 강조 “나는 생각한다, 그러므로 존재한다,” IBM의 사훈 ‘Think’, 세계 굴지의 컴퓨터 회사로 성장 MS의 빌 게이츠 회장의 조용히 생각하는 ‘Think Week’ 기간 애플의 스티브 잡스는 생전에 ‘Think Different’를 자주 강조

컴퓨팅 사고의 특성과 중요성 컴퓨팅 사고 개념은 원래부터 컴퓨터과학의 중요한 기반을 형성 컴퓨터과학자들이 문제를 해결하는 가장 효율적인 방법, 즉 주어진 문제를 해결할 수 있는 가장 빠르고 정확한 방법을 찾는데 관심을 가져 옴 예) 검색 및 정렬 알고리즘 “시간이나 메모리를 가장 적게 사용하는 최선의 방법” 윙 교수가 ‘컴퓨팅 사고’ 발표 이후 유효성이 널리 알려짐 ‘컴퓨팅 사고’를 통한 문제해결 방법이 다른 분야들에도 폭넓게 적용될 수 있다 -> 컴퓨팅 사고의 중요성 증대

컴퓨팅 사고에서 문제해결을 위한 고려사항 문제를 해결했을 경우에 정확한 답을 얻을 수 있는가? 문제를 해결할 수 있는 가장 효율적인 방법인가? 가장 빠르고 논리적인 해결 방법인가? 최소한의 시간과 메모리 등을 사용하여 해결 가능한가? 그 방법이 다른 문제들을 해결하는데도 쓰일 수 있는가?

컴퓨팅 사고를 통해 향상시킬 수 있는 능력 복잡한 것을 자신감 있게 다루는 능력 어려운 문제들을 지속적으로 다루는 능력 애매한 것을 인내심을 가지고 다루는 능력 열린(open-minded) 문제를 다루는 능력 문제해결을 위해 다른 사람들과 협력하는 능력

컴퓨팅 사고와 코딩 교육에 대한 관심 정부를 비롯한 많은 관계자들이 코딩 교육에 관심 코딩 교육은 미래 세대에게 제공해야 할 기본적인 교육 소프트웨어 교육의 목적은 전문 프로그래머의 육성은 아님 컴퓨팅 사고를 갖춘 많은 인재들을 양성하는데 초점 목표는 정해졌으나 구체적 실천방안은 아직까지 미흡한 편

컴퓨팅 사고의 7단계 모델

컴퓨팅 사고의 7단계 모델 [1] 문제 분석(Analysis) 단계 - 주어진 문제나 시스템에 대한 논리적 분석을 통하여 핵심 사항들을 구체적으로 점검하고 분석 [2] 데이터 수집과 표현(Data Collection & Representation) 단계 - 문제해결과 관련된 정보들을 컴퓨터를 통하여 수집하며, - 데이터를 적절한 그래프, 차트, 영상 등의 형태로 표현 [3] 분해(Decomposition) 단계 - 복잡한 문제를 보다 쉽게 다룰 수 있도록 여러 개의 작은 부분들로 쪼개어 분해

컴퓨팅 사고의 7단계 모델 [4] 패턴인식(Pattern Recognition) 단계 - 문제로부터 유사성과 패턴들을 발견 - 문제 내에서의 패턴, 경향, 규칙성 등을 관찰하여 인식 [5] 추상화(Abstraction) 단계 - 문제에서 필요 없는 부분들을 걸러냄 - 꼭 필요한 것만을 분리해내어 집중하는 과정 - 복잡한 문제나 아이디어를 단순화 - 핵심적인 개념에 초점을 맞추어 일반적인 원리를 찾아냄

컴퓨팅 사고의 7단계 모델 [6] 알고리즘(Algorithm) 단계 - 문제를 해결하는 일련의 논리적인 지시서 작성 - 문제에 대한 단계적인 해결책, 설명, 지시 사항들을 설계 [7] 평가(Evaluation) 단계 - 알고리즘의 정확성, 해답의 적절성, 효율성 등을 최종 점검 - 평가 완료 후에는 알고리즘을 기반으로 코딩으로 이어짐 - 최종적으로 컴퓨터를 작동시켜 원하는 결과 도출

컴퓨팅 사고의 7단계 모델

영상 보기 “4차 산업혁명은 어떤 인재를 원하는가” 1. http://www.marutv.com/video/good-insight-46-11112016/ 2. koreaba.com "4차 산업혁명 인재“ 검색 3. KBS 홈페이지 이용하여 2016년 11월 11일 프로그램 명견만리

코딩(coding)?

사람

컴퓨터의 겉

컴퓨터의 속

컴퓨터의 동작 CPU를 중심으로 한 자료 신호와 명령 신호의 흐름

코드(code) – 기억장치 속에 코드 컴퓨터가 수행할 일의 절차들, 즉 프로그램을 기록하기 위해 사용하는 기호

코딩(coding)? 코드들을 이용해서 프로그램을 작성하는 것 즉 프로그래밍(programming)하는 것

코딩을 위한 도구 컴퓨터 언어 스크래치 Scratch 우리가 사용할 코딩 도구 C, C++, C# Java, MFC Visual Basic Scratch 등 우리가 사용할 코딩 도구

참고하세요

컴퓨팅 사고의 핵심 요소들에 대한 이해 분해 의미: 주어진 문제를 여러 개의 작은 크기나 과정들로 나눔 ① 미술 : 그림을 그리기 전에 작은 작업들로 분해하여 단계적 완성

(1) 분해 - 미술, 문학, 앱 만들기(계속) ② 문학 - 한 편의 시를 분석할 경우 다양한 영역으로 분해하여 분석 - 시를 구조, 음율, 이미지, 어조, 의미 등의 영역으로 분석

(1) 분해 - 미술, 문학, 앱 만들기(계속) ③ 앱(App) 만들기 - 앱 만들기는 복잡한 문제로서 여러 가지 상황의 고려가 필요 - 여러 개의 작은 일들로 분해하여 명확하고 효율적으로 해결 - 여러 사람들이 분해된 일을 나누어 병렬로 수행 가능 예) 각 팀원들에게 그래픽, 오디오나 테스트 부분 등을 할당

(1) 분해 - 미술, 문학, 앱 만들기(계속) ③ 앱(App) 만들기(계속) 다음과 같이 여러 가지 작은 문제들로 분해한 후 해결 - 만들고자 하는 앱의 종류는 무엇인가? - 앱의 핵심 기능은 무엇인가? - 어떤 형태의 앱인가? - 앱을 사용할 주된 대상은 누구인가? - 앱을 만들기 위해 어떤 소프트웨어를 사용할까? - 앱을 어떤 방법으로 테스트할 것인가? - 앱을 출시하여 어떤 방법으로 수익을 올릴까? 등

(2) 패턴인식 - 경제학, 수열(계속) ① 경제학 - 주식거래에서의 오르고 내리는 패턴을 발견하여 실제 투자에 반영

(2) 패턴인식 - 경제학, 수열(계속) ② 일정한 규칙을 통한 패턴인식의 예 [예제 5.1] 패턴인식을 통하여 [5단계]에 올 조약돌의 개수를 알아보자. (풀이) 조약돌의 개수가 일정하게 커지는 패턴의 변화에 주목 조약돌의 개수는 차례로 1, 3, 6, 10 규칙을 찾으면 2, 3, 4, 5 등 차이가 1씩 더 커지는 패턴인식 따라서 [5단계]는 10+5=15개

(3) 추상화 - 화학, 생물, 도형 의미: 패턴과 경향을 규칙, 원리, 일반화, 통찰력을 통해 추상화 ① 화학 - 서로 다른 물질들의 화학적 결합과 상호작용의 규칙을 결정 - 일정한 규칙을 찾아내는 것도 추상화에 속함

(3) 추상화 - 화학, 생물, 도형(계속) ② 생물학 - 멘델(Mendel)의 강낭콩 실험으로 멘델의 법칙을 밝혀낸 원리 - 유전자의 우성과 열성의 3:1 비율과 9:3:3:1 비율 - 현상으로부터 일정한 규칙을 일반화하는 것도 추상화의 예

(3) 추상화 - 화학, 생물, 도형(계속) ③ 특징추출을 통한 추상화의 예 - 주어진 패턴에서 공통된 특징을 추출해내는 능력도 추상화 [예제 5.2] 특징추출을 통해 서로 다른 한 가지를 찾아내고, 그 이유를 밝히시오. (풀이) (2)번을 제외한 세 도형들은 면의 개수가 1개인 특징을 추출해낼 수 있다. 따라서 면의 개수가 2개인 (2)번이 정답

(4) 알고리즘 - 요리, 게임, 면적 의미: 문제해결이나 처리 과정에서의 순서를 단계적으로 서술 ① 요리 - 순서에 입각하여 단계적으로 서술하는 것이 알고리즘 - 어떤 종류의 음식을 만드는 요리법이 요리 알고리즘 - 레시피(recipe)가 요리의 질을 좌우하는 결정적 요소

(4) 알고리즘 - 요리, 게임, 면적(계속) ② 게임 - 게임에서 알고리즘의 적용은 매우 중요 - 게임에서 목표지점까지 도달하기 위한 과정을 차례로 표현 - 출발에서 목표까지의 효율적인 접근 방법과 과정

(4) 알고리즘 - 요리, 게임, 면적(계속) ③ 삼각형의 면적 구하기 [예제 5.3] 삼각형의 면적을 구하는 알고리즘 (풀이) 4단계를 차례로 거치면 바로 삼각형의 면적을 구하는 알고리즘