Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 ·...

47
Computational Computing 컴퓨팅 사고

Transcript of Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 ·...

Page 1: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

Computational Computing

컴퓨팅 사고

Page 2: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific
Page 3: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific
Page 4: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific
Page 5: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific
Page 6: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific
Page 7: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computer Science

• Computer science is the scientific and practical approach to computation and its applications.

• It is the systematic study of the feasibility, structure, expression, and mechanization of the methodical procedures (or algorithms) that underlie the acquisition, representation, processing, storage, communication of, and access to information.

7

Page 8: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computer Science

• An alternate, more succinct definition of computer science is the study of automating algorithmic processes that scale.

• A computer scientist specializes in the theory of computation and the design of computational systems.

8

Page 9: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computing

• Computing is any goal-oriented activity requiring, benefiting from, or creating algorithmic processes e.g. through computers.

9

Page 10: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computing

• Computing includes

• designing, developing and building hardware and software systems;

• processing, structuring, and managing various kinds of information;

10

Page 11: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computing

• Computing includes

• doing scientific research on and with computers;

• making computer systems behave intelligently;

• and creating and using communications and entertainment media.

11

Page 12: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Calculation vs Computation

• 셈(calculation)

• 숫자와 관련된 처리작업

• 간단히 처리할 수 있는 단순 작업

• 계산(computation)

• 숫자 여부에 상관없이 규칙에 따라 행해지는 것

• 보다 복잡한 작업에 수반되는 처리 과정

• 셈들의 조합으로도 볼 수 있음12

Page 13: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computation & Problem Solving

• 문제(problems)

• 초기 상태와 목표 상태 사이에 장애가 있는 거리

• 문제해결(problem solving)

• 주어진 문제의 장애를 극복하고 적절한 통로를 찾아 초기 상태에서 목표 상태로 이동해 이들 사이의 거리를 없애는 과정

13

Page 14: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computation & Problem Solving

• 공통점 - 초기 상태에서 목표 상태로의 상태 변환 과정

• 계산 - 변환과정에 집중

• 문제해결 - 거리를 없애는데 집중

• 문제는 계산을 통하여 해결

• 계산은 문제해결을 위하여 계획, 실행

14

Page 15: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computation & Problem Solving

• 문제 사례(problem instance)

• 집에서 학교까지의 지름길 찾기, 병원에서 공원까지의 지름길 찾기

• 28의 약수 찾기, 16의 약수 찾기

• 문제• 지름길 찾기 문제

• 약수 찾기

15

Page 16: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Problem Solving & Algorithms

• 문제를 해결한다는 것은 해당 문제 유형에 속한 문제 사례에 모두 적용할 수 있는 계산 규칙을 찾는 것

• 알고리즘(algorithm)

• 어떤 과제나 처리 작업 혹은 문제 해결 작업을 성취하기 위한 절차

• 관련 계산에 대한 논리적 전개 규칙을 규정

• 특정 순서로 적용될 연산의 나열로 표현

16

Page 17: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computational Thinking

• What is Computational thinking?

• a fundamental analytical skill that everyone, not just computer scientists, can use to help solve problems, design systems and understand human behavior that draws on concepts fundamental to computing - Jeanette M. Wing

17

Page 18: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computational Thinking

• What is Computational thinking?

• The thought processes involved in formulating problems and their solutions so that the solutions are represented in a form that can be effectively carried out by an information-processing agent - Jeanette M. Wing

18

Page 19: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computational Thinking

• What is Computational thinking?

• the ability to interpret the world as algorithmically controlled conversions of inputs to outputs” (Denning, 2009, p. 30)

• integrating the power of human thinking with the capabilities of computers(Phillips, 2007, p. 8)

19

Page 20: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computational Thinking

• What is Computational thinking?

• problem solving method that uses computer science techniques - Wikipedia

• computational thinking as critical thinking ideas combined with the power of computing - ITSE

20

Page 21: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking 21

Computational Thinking

Page 22: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computational Thinking

22

Page 23: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computational Thinking

• 정보과학(컴퓨터과학)을 전공하거나 연구하는 사람들이 습관적으로 적용하는 사고의 틀

• 상황 속에 내재된 상태 변화 과정을 ‘계산’의 기본 요소와 결부시켜 접근하는 사고 활동

23

Page 24: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computational Thinking

• 정보과학(컴퓨터과학)을 전공하거나 연구하는 사람들이 습관적으로 적용하는 사고의 틀

• 상황 속에 내재된 상태 변화 과정들을 ‘계산’의 기본 요소와 결부시켜 접근하는 사고 활동

• 모든 현상을 모두 상태의 변환 과정, 즉 ‘정보처리 과정’ 혹은 ‘계산’이라는 관점으로 바라본다.

• 문제해결 방법 즉, ‘현재 상태’에서 ‘목표 상태’에 이르는 과정을 ‘계산’으로 간주

24

Page 25: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computational Thinking

• Why Computational thinking?

• computational thinking as being defined as the “set of computer science skills essential to virtually every person in a technological society” - Cooper, Perez & Rainey (2010)

25

Page 26: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computational Thinking

• Why Computational thinking?

• Wing outlines the benefits of computational thinking, which she calls “the new literacy of the 21st century” (Wing, 2010, p. 3).

• The benefits include the ability to determine the components of a problem that are compatible with available computational tools and techniques, and the ability to recognize opportunities to use computation in new ways.

26

Page 27: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

21st Century Fluency Project

• Problem Solving

• Creativity

• Analytical Thinking

• Collaboration

• Communication

• Ethics, Action, Accountability

27

Page 28: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

21st Century Fluency Project

• Problem Solving

• Creativity

• Analytical Thinking

• Collaboration

• Communication

• Ethics, Action, Accountability

28

the����������� ������������������  ability����������� ������������������  to����������� ������������������  visualize,����������� ������������������  articulate,����������� ������������������  and����������� ������������������  solve����������� ������������������  both����������� ������������������  complex����������� ������������������  and����������� ������������������  uncomplicated����������� ������������������  problems����������� ������������������  and����������� ������������������  concepts����������� ������������������  and����������� ������������������  make����������� ������������������  decisions����������� ������������������  that����������� ������������������  are����������� ������������������  sensible����������� ������������������  and����������� ������������������  based����������� ������������������  on����������� ������������������  available����������� ������������������  information.����������� ������������������  Such����������� ������������������  skills����������� ������������������  include����������� ������������������  demonstration����������� ������������������  of����������� ������������������  the����������� ������������������  ability����������� ������������������  to����������� ������������������  apply����������� ������������������  logical����������� ������������������  thinking����������� ������������������  to����������� ������������������  gathering����������� ������������������  and����������� ������������������  analyzing����������� ������������������  information,����������� ������������������  designing����������� ������������������  and����������� ������������������  testing����������� ������������������  solutions����������� ������������������  to����������� ������������������  problems,����������� ������������������  and����������� ������������������  formulating����������� ������������������  plans.

Page 29: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

소프트웨어교육/코딩교육

Computational Thinking

• 모든 사람들이 의식적이던 무의식적이던 일상 속에서 계산적 사고를 한다.

• 다만 적용할 수 있는 계산적 사고의 체계성과 정교성의 차이가 존재

29

Page 30: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

소프트웨어교육/코딩교육

Computational Thinking

• 정보과학의 원리와 주요 개념, 방법론을 깊이 이해하고 다루게 되면

• 컴퓨팅 사고의 폭과 깊이가 더해지고,

• 체계성과 정교성이 높아진다.

30

Page 31: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

소프트웨어교육/코딩교육

Computational Thinking

• 예• 아이가 학교에 갈 때 필요한 물건을 가방에 넣는다.

• 아이가 학교에서 돌아오는 길에 장갑을 잃어버렸다.

• 아이가 스키장에 처음 갈 때 스키를 새로 사줄 것인지 렌트해 줄지 결정해야 한다.

• 대형마트에서 물건 값을 계산을 할 때 어느 계산대에서 기다릴지 결정해야 한다.

31

Page 32: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

소프트웨어교육/코딩교육

Computational Thinking

• 예• 정전이 되어도 전화는 계속 작동하는 이유가 궁금하다.

• 동전이 귀찮다. 가능한 동전이나 지폐의 수가 적게 거스름돈을 받도록 지불해야 한다.

32

Page 33: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

소프트웨어교육/코딩교육

소프트웨어 교육과 Computational Thinking

• 영국의 컴퓨팅 과목의 교육목표는 ‘컴퓨팅적 표현방식으로 문제를 분석하고 이러한 문제를 해결 하기 위해 컴퓨터 프로그램을 기술하는 실제적 경험을 반복해 본다’라고 설정하고 있다.

• 미국의 CSTA에서 발표한 컴퓨터 과학 교육과정에서는 단계별로 CT 역량을 길러주는 목표에 초점을 맞추고 있다. AP 코스에서 발표한 교과 내용에서도 Computational Thinking Practices를 소개하고 있다.

33

Page 34: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

Computational����������� ������������������  ����������� ������������������  Thinking

21th����������� ������������������  Century����������� ������������������  ����������� ������������������  Core����������� ������������������  Skills

Software����������� ������������������  ����������� ������������������  Education

Fundamental����������� ������������������  Concepts

Algorithms

Problem����������� ������������������  SolvingAlgorithms Coding

Physical����������� ������������������  Computing

Unplugged����������� ������������������  Activities

Automation

Programming����������� ������������������  Concepts

MakingDesign

CreativityCritical����������� ������������������  Thinking

Pattern����������� ������������������  Recognization

Pattern����������� ������������������  Generalization����������� ������������������  &����������� ������������������  Abstraction

Decomposition

Collaboration Communication

Play

Page 35: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

Software Education

21th Century Core Skills

Computational Thinking

Page 36: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

Software Education

21th Century Core Skills

Computational Thinking

Page 37: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

Software Education

21th Century Core Skills

Computational Thinking

Page 38: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

Software Education

21th Century Core Skills

Computational Thinking

Page 39: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

Software Education

21th Century Core Skills

Computational Thinking

Page 40: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

Software Education

21th Century Core Skills

Computational Thinking

Page 41: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

Software Education

21th Century Core Skills

Computational Thinking

Unplugged Activities Coding Physical Computing

Page 42: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

Software Education

21th Century Core Skills

Computational Thinking

Page 43: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

Computational Thinking 개발 도구

• Computer Science Unplugged

43

Page 44: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

• Cool Coding Apps and Websites for Kids

• Education Apps: Apps for Coding on Tablets

44

Computational Thinking 개발 도구

Page 45: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

• Physical Computing

• building interactive physical systems by the use of software and hardware that can sense and respond to the analog world.

45

Computational Thinking 개발 도구

Page 46: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

• Physical Computing

• Arduino

• Raspberry Pi

• BeagleBone

• Makey

• Pico Board

• HummingBird Robotics Kit

46

Computational Thinking 개발 도구

Page 47: Computational Computing220.149.117.26/teaching/thinking/CT-what.pdf · 2015-07-25 · cmyang@cje.ac.kr Computational Thinking Computer Science •Computer science is the scientific

[email protected]

Computational Thinking

• Developing Computational Thinking

• Computing Science in Primary Education Phil Bagge

• Introduction to computational thinking, BBC

• Computational Thinking for Educators, Google

• http://www.slideshare.net/StrategicITbyPFH/computational-thing-a-4-step-process

47