KR101961328B1 - 지능형 코딩 능력 평가 장치 - Google Patents
지능형 코딩 능력 평가 장치 Download PDFInfo
- Publication number
- KR101961328B1 KR101961328B1 KR1020180098251A KR20180098251A KR101961328B1 KR 101961328 B1 KR101961328 B1 KR 101961328B1 KR 1020180098251 A KR1020180098251 A KR 1020180098251A KR 20180098251 A KR20180098251 A KR 20180098251A KR 101961328 B1 KR101961328 B1 KR 101961328B1
- Authority
- KR
- South Korea
- Prior art keywords
- user
- unit
- coding
- information
- evaluation
- Prior art date
Links
- 238000011156 evaluation Methods 0.000 title claims abstract description 55
- 238000012360 testing method Methods 0.000 claims description 60
- 238000000034 method Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 7
- 238000012549 training Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 5
- 230000000295 complement effect Effects 0.000 claims description 4
- 239000000284 extract Substances 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 238000010295 mobile communication Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000000605 extraction Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 230000001568 sexual effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B19/00—Teaching not covered by other main groups of this subclass
- G09B19/0053—Computers, e.g. programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/20—Education
- G06Q50/205—Education administration or guidance
- G06Q50/2057—Career enhancement or continuing education service
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B7/00—Electrically-operated teaching apparatus or devices working with questions and answers
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Educational Administration (AREA)
- Theoretical Computer Science (AREA)
- Educational Technology (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- General Health & Medical Sciences (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- General Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Computer Hardware Design (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
본 발명의 실시 예에 따른 코딩 능력 평가 장치는 스토리텔링 기반의 코딩 문제를 출제자 계정을 통해 입력받고, 사용자 계정으로 상기 스토리텔링 기반의 코딩 문제를 제공하고, 상기 사용자 계정에 의해 입력된 답변을 기 입력된 정답과 비교하여 자동 채점하는 제어부;를 포함할 수 있으며, 상기 스토리텔링 기반의 코딩 문제는 이야기 형식으로 제공되는 과제목표를 해결하기 위한 소스코드를 완성하도록 요구되는 문제인 것을 특징으로 할 수 있다.
Description
본 발명은 지능형 코딩 능력 평가 장치에 관한 것이다.
최근 4차 산업혁명에 대한 대중의 관심이 증가하고 있다. 4차 산업혁명은 물리세계, 디지털 세계, 그리고 생물 세계가 융합되어 경제와 사회의 모든 영역에 영향을 미치게 하는 새로운 산업시대를 말한다. 1차 산업혁명의 기계화, 2차 산업혁명의 대량생산화, 3차 산업혁명의 정보화에 이은 4차 산업혁명은 물리사물인터넷(IoT), 로봇공학, 가상현실(VR) 및 인공지능(AI)과 같은 혁신적인 기술이 우리가 살고 일하는 방식을 변화시키는 현재 및 미래를 의미한다.
이러한 4차 산업혁명에 대한 관심이 고조됨과 동시에, 이를 대비하기 위한 교육에 대한 관심 또한 날로 높아지고 있는 추세이다. 정부차원에서 초등학생부터 코딩 교육을 의무화하겠다는 내용이 발표된 이후 어린이들 뿐 아니라 코딩 강사 역량을 키워내기 위한 각종 코딩 교육 프로그램이 필요한 상황이나, 그러나 여전히 코딩은 접근하기 어려운 분야로 인식되고 있으며 암기위주의 학습으로 진행될 것이라는 전망이 지배적인 실정이다.
콘텐츠 스토리에 기반하여 문제를 생성하고 이를 해결하는 방식으로 코딩을 수행하도록 하여 흥미 위주의 코딩 교육을 제공하기 위한 목적이 있다.
본 발명의 실시 예에 따른 코딩 능력 평가 장치는 스토리텔링 기반의 코딩 문제를 출제자 계정을 통해 입력받고, 사용자 계정으로 상기 스토리텔링 기반의 코딩 문제를 제공하고, 상기 사용자 계정에 의해 입력된 답변을 기 입력된 정답과 비교하여 자동 채점하는 제어부;를 포함하되, 상기 스토리텔링 기반의 코딩 문제는 이야기 형식으로 제공되는 과제목표를 해결하기 위한 소스코드를 완성하도록 요구되는 문제인 것을 특징으로 할 수 있다.
본 발명은 일상 생활에서 쉽게 접할 수 있는 콘텐츠와 관련된 스토리 위주로 과제 목표를 설정하고 이를 해결하기 위한 코딩을 수행할 수 있도록 함으로써, 흥미 위주의 코딩 교육을 학습자에게 제공할 수 있다.
또한 본 발명은 테스트 결과에 기반하여 사용자의 취약점을 분석하고 이를 보완하기 위한 솔루션을 제공하므로 보다 효과적으로 코딩 교육을 수행할 수 있도록 하는 효과가 있다.
도 1은 본 발명의 실시 예에 따른 코딩 능력 평가 장치의 구성을 도시한 블록도이다.
도 2는 본 발명의 실시 예에 따른 문제 생성 지원부의 구성을 도시한 블록도이다.
도 3은 본 발명의 실시 예에 따른 상기 평가 처리부의 구성을 도시한 블록도이다.
도 4는 본 발명의 실시 예에 따른 학습 지원부의 구성을 도시한 블록도이다.
도 5는 본 발명의 실시 예에 따른 코딩 능력 평가 장치에서 코딩 능력 평가 동작을 수행하는 동작의 순서를 도시한 순서도이다.
도 6은 본 발명의 실시 예에 따른 스토리 기반의 문제 제공 동작의 예시를 나타낸 도면이다.
도 7 내지 도 13은 본 발명의 실시 예에 따른 코딩 능력 평가 동작의 예시를 도시한 도면이다.
도 2는 본 발명의 실시 예에 따른 문제 생성 지원부의 구성을 도시한 블록도이다.
도 3은 본 발명의 실시 예에 따른 상기 평가 처리부의 구성을 도시한 블록도이다.
도 4는 본 발명의 실시 예에 따른 학습 지원부의 구성을 도시한 블록도이다.
도 5는 본 발명의 실시 예에 따른 코딩 능력 평가 장치에서 코딩 능력 평가 동작을 수행하는 동작의 순서를 도시한 순서도이다.
도 6은 본 발명의 실시 예에 따른 스토리 기반의 문제 제공 동작의 예시를 나타낸 도면이다.
도 7 내지 도 13은 본 발명의 실시 예에 따른 코딩 능력 평가 동작의 예시를 도시한 도면이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
어떤 구성요소가 다른 구성요소에 '연결되어' 있다거나 '접속되어'있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 '직접 연결되어'있다거나 '직접 접속되어'있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, '포함하다' 또는 '가지다' 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명에서 스토리텔링 기반의 코딩 문제란 이야기 형식으로 제공되는 과제목표를 해결하기 위한 소스코드를 완성하도록 요구되는 문제를 의미할 수 있다.
도 1은 본 발명의 실시 예에 따른 코딩 능력 평가 장치의 구성을 도시한 블록도이다.
먼저 도 1에서 도시되는 바와 같이, 상기 코딩 능력 평가 장치는 통신부 110, 저장부 120, 제어부 130를 포함하여 구성될 수 있다. 그리고 상기 제어부 130는 문제 생성지원부 131, 문제 제공부 132, 평가 처리부 133, 학습 지원부 134를 포함하여 구성될 수 있다.
상기 코딩 능력 평가 장치는 서버로 구현될 수 있다. 이에 따라 상기 통신부 110는 사용자 기기(미도시)측과 통신할 수 있다.
상기 통신부 110는 사용자 디바이스와 서버 간의 데이터 송수신을 위해 네트워크를 이용할 수 있으며 상기 네트워크의 종류는 특별히 제한되지 않는다. 상기 네트워크는 예를 들어, 인터넷 프로토콜(IP)을 통하여 대용량 데이터의 송수신 서비스를 제공하는 아이피(IP: Internet Protocol)망 또는 서로 다른 IP 망을 통합한 올 아이피(All IP) 망 일 수 있다. 또한, 상기 네트워크는 유선망, Wibro(Wireless Broadband)망, WCDMA를 포함하는 이동통신망, HSDPA(High Speed Downlink Packet Access)망 및 LTE(Long Term Evolution) 망을 포함하는 이동통신망, LTE advanced(LTE-A), 5G(Five Generation)를 포함하는 이동통신망, 위성 통신망 및 와이파이(Wi-Fi)망 중 하나 이거나 또는 이들 중 적어도 하나 이상을 결합하여 이루어질 수 있다.
본 발명의 실시 예에 따른 상기 통신부 110는 사용자 기기로부터 입력되는 테스트 요청 신호 및 테스트 답변 내용 등에 관한 정보를 수신할 수 있다. 또한 상기 통신부 110는 사용자 기기(예, 출제자 기기)로부터 코딩 문제 정보 등에 대한 데이터를 수신할 수 있다. 이 밖에도 상기 통신부 110는 다양한 실시 예에 따라 코딩 문제와 관련된 스토리를 추출하기 위해 요구되는 콘텐츠 정보를 수신할 수 있다.
상기 저장부 120는 예를 들면, 내장 메모리 또는 외장 메모리를 포함할 수 있다. 내장메모리는, 예를 들면, 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(non-volatile Memory)(예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, 플래시 메모리(예: NAND flash 또는 NOR flash 등), 하드 드라이브, 또는 솔리드 스테이트 드라이브(solid state drive(SSD)) 중 적어도 하나를 포함할 수 있다.
외장 메모리는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱(memory stick) 등을 더 포함할 수 있다. 외장 메모리는 다양한 인터페이스를 통하여 전자 장치와 기능적으로 및/또는 물리적으로 연결될 수 있다.
본 발명의 실시 예에 따른 상기 저장부 120는 출제자 계정에 의해 입력된 테스트용 코딩 문제 및 정답 정보를 저장할 수 있다. 또한 상기 저장부 120는 코딩 문제의 해결 목표와 연관된 스토리에 대한 정보를 저장할 수 있다. 또한 다양한 실시 예에 따라 상기 저장부 120는 상기 코딩 문제의 해결 목표와 연관된 상기 스토리를 추출하는 것과 연관된 콘텐츠 정보를 저장할 수 있다. 이 때 상기 콘텐츠 정보는 영화, 드라마, 웹툰 등의 콘텐츠 종류를 포함할 수 있다. 나아가 상기 저장부 120는 기 저장된 콘텐츠로부터 일부 이미지 또는 일부 동영상 구간만을 추출하고 이를 기반으로 코딩 문제를 제시할 수 있도록 하는 프로그램 등을 저장할 수 있다.
상기 제어부 130는 프로세서(Processor), 컨트롤러(controller), 마이크로 컨트롤러(microcontroller), 마이크로 프로세서(microprocessor), 마이크로 컴퓨터(microcomputer) 등으로도 호칭될 수 있다. 한편, 제어부는 하드웨어(hardware) 또는 펌웨어(firmware), 소프트웨어, 또는 이들의 결합에 의해 구현될 수 있다.
펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 일 실시예는 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차, 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리에 저장되어 제어부에 의해 구동될 수 있다. 메모리는 상기 사용자 단말 및 서버 내부 또는 외부에 위치할 수 있으며, 이미 공지된 다양한 수단에 의해 상기 제어부와 데이터를 주고 받을 수 있다.
본 발명의 실시 예에 따른 상기 제어부 130는 문제 생성 지원부 131, 문제 제공부 132, 평가 처리부 133, 학습 지원부 134를 포함하여 구성될 수 있다.
상기 문제 생성지원부 131는 출제자 계정에 의해 테스트용 문제로 출제될 문제가 입력되면 이에 대하여 오류가 없는 문제인지 여부를 판단하고, 오류가 존재하지 않는 것으로 판단됨에 따라 해당 문제를 출제 문제로써 등록하는 역할을 수행할 수 있다.
이하 상기 문제 생성지원부 131에 대한 자세한 설명은 하기 도 2를 참조하여 서술하기로 한다.
상기 문제 제공부 132는 상기 문제 생성지원부 131에 의해 출제 문제로써 등록된 문제를 사용자에게 제공하여 테스트를 수행할 수 있도록 지원할 수 있다. 예컨대, 상기 문제 제공부 132는 사용자의 테스트 요청 신호를 확인할 수 있다. 그리고 상기 문제 제공부 132는 사용자의 테스트 요청 신호에 대응하여 테스트용 코딩 문제를 과목별 또는 문제 유형별로 사용자에게 제공할 수 있다. 또는 상기 문제 제공부 132는 중간고사, 기말고사 등의 테스트 항목별로 문제 정보를 제공할 수 있다.
다양한 실시 예에 따라 상기 문제 제공부 132는 특정 사용자의 취약과목, 취약한 문제 유형 등의 취약점 정보에 기반하여, 해당 취약점을 훈련시킬 수 있는 종류의 문제를 사용자에게 제공할 수 있다.
본 발명의 실시 예에 따른 상기 평가 처리부 133는 테스트가 수행 시 사용자가 입력한 답변 내용을 수집할 수 있다. 그리고 상기 평가 처리부 133는 사용자로부터 수신된 답변 내용을 정답 정보와 비교하여 채점을 수행할 수 있다.
상기 평가 처리부 133에 대한 구체적인 설명은 하기 도 3에서 기술하기로 한다.
본 발명의 실시 예에 따른 상기 학습 지원부 134는 테스트 결과에 따른 사용자의 취약과목, 취약유형 등을 포함한 취약점 정보에 기반하여 관련 내용을 보완할 수 있도록 하는 학습 정보를 제공할 수 있다. 또한 상기 학습 지원부 134는 사용자 스스로 코딩 목표를 설정하고 코딩을 수행할 수 있도록 지원할 수 있다. 보다 상세한 설명은 도 4에서 기술하기로 한다.
본 발명의 실시 예에 따른 상기 코딩 능력 평가 장치는 상기 구성들 외에도 표시부(미도시), 입력부(미도시)를 더 포함할 수 있다.
도 2는 본 발명의 실시 예에 따른 문제 생성 지원부의 구성을 도시한 블록도이다.
도 2에서 도시되는 바와 같이, 상기 문제 생성 지원부 131는 문제 등록부 131a, 문제 추출부 131b, 문제 평가부 131c를 포함하여 구성될 수 있다.
먼저, 상기 문제 등록부 131a는 출제자 계정으로부터 문제 등록 요청을 수신할 수 있다. 출제자 계정으로부터 문제 등록 요청 신호가 수신되면 상기 문제 등록부 131a는 그에 대응하여 문제를 입력할 수 있도록 문제 입력창을 제공할 수 있고, 출제자는 표시된 문제 입력창에 테스트용 문제를 기입할 수 있다. 이 때 상기 출제자 계정이 입력할 수 있는 문제의 종류는 객관식 및 서술식 등의 유형이 모두 가능할 수 있으며, 입력된 문제는 유형별로 분류되어 등록될 수 있다.
또한 상기 문제 등록부 131a는 과목별, 테스트 항목별 문제 등록하도록 지원할 수 있다. 예컨대, 출제자는 '2018년 1학기 JAVA 1차 테스트', '2018년 1학기 C++ 2차 테스트'과 같이 과목 및 테스트 항목에 대한 명칭을 기입하고 이에 따라 해당 문제를 등록할 수 있다. 상기 문제 등록부 131a는 출제자 계정으로부터 입력되는 스토리텔링 기반 코딩 문제 정보 및 상기 문제의 정답 정보를 입력받고 입력된 정보에 대하여 유형, 과목별 분류를 수행하여 출제 문제로 등록할 수 있다. 또한 상기 문제 등록부 131a는 문제가 입력될 시, 코딩 문제에 대응하는 스토리를 추가로 입력하도록 요청할 수 있다. 이 때 상기 스토리는 코딩 문제의 해결 목표와 관련된 내용으로 설정될 수 있다. 예컨대 상기 스토리는 웹툰, 드라마, 영화 등의 콘텐츠로부터 추출되는 스토리일 수 있다. 보다 구체적으로 예를 들자면, 영화 '킹스맨'의 일부 동영상 장면과, '이 장면에서와 같이 주인공의 대사가 입력되면 승리하는 장면이 표시되도록 하는 소스코드를 작성하세요'와 같은 목표 내용이 스토리로써 제공될 수 있고, 이에 대응하는 코딩 문제는 킹스맨 장면에서 제공된 특정 대사(예, 'Manners maketh man') 를 입력할 경우 주인공이 악당을 물리치고 승리하는 코드를 입력하도록 하는 것일 수 있다. 이 때 사용자에게 제공되는 문제에는 영화 킹스맨의 대사와, 악당을 물리치고 승리하는 장면에 관한 정보가 제공될 수 있고, 테스트를 받는 사용자는 제공된 정보를 적절히 이용하여 킹스맨 대사를 인풋값으로 하여 주인공이 승리하는 장면이 아웃풋으로 제공되는 코딩을 수행하여 제출할 수 있다. 즉, 사용자는 완성되지 않은 소스코드의 빈칸을 완성시키는 형태로 테스트를 수행할 수 있다. 그러나 이에 한정되지 않고, 사용자는 처음부터 끝까지 자신의 생각에 기반하여 소스코드를 작성하여 제출하는 방식으로 테스트를 수행할 수도 있다.
본 발명의 실시 예에 따른 상기 문제 추출부 131b는 기 저장된 콘텐츠로부터 스토리를 추출하여 과제 목표를 설정하는 동작을 수행할 수 있다. 그리고 상기 기 저장된 콘텐츠는 영화, 웹툰, 드라마 중 적어도 하나를 포함할 수 있다. 상기 문제 추출부 131b는 또한 사용자가 자율 학습을 통해 생성한 소스코드 목록들 중 평가 점수가 기 설정된 수치 이상인 소스코드에 대하여 선택하고 이를 문제로 재가공하도록 할 수 있다. 예컨대, 상기 문제 추출부 131b는 완성된 형태의 소스코드 중 일부 코드를 빈칸 처리하여 문제로 가공할 수 있다.
상기 문제 평가부 131c는 상기 문제 등록부 131a 및 문제 추출부 131b에서 입력 또는 가공된 내용을 출제용 문제로써 등록할 시 최종 점검을 수행하고 오류 여부를 판단할 수 있다. 또는 상기 문제 평가부 131c는 출제용 문제로써 기 등록된 문제에 대하여도 컴파일 등의 동작을 수행하여 해당 문제가 오류가 없는 문제인지 여부를 판단할 수 있다. 이 때 상기 컴파일 동작은 해답으로 제공되는 내용(빈칸이 남아있지 않은 완성된 상태의 소스코드)를 기반으로 수행될 수 있다. 이에 따라 상기 문제 평가부 131c는 제공되는 코딩 문제의 완성도를 높일 수 있다.
일 실시 예에서, 문제 추출부 131b는 기 저장된 콘텐츠를 획득하고, 또한 기 설정된 코딩 교육 패키지를 획득할 수 있다. 예를 들어, 코딩 교육 패키지는 서로 연관성이 있는 일련의 기능들을 코딩으로 구현할 수 있도록 하는 과제들을 포함하는 패키지일 수 있다. 예를 들어, 코딩 교육 패키지는 가정의 IoT 제어를 위한 코딩과제들(예를 들어, 전등, 온열기구, 냉장고, 세탁기, 전원코드 등을 제어하는 과제들)을 포함하는 것일 수 있고, 차량의 전장 시스템을 제어하기 위한 코딩과제들을 포함하는 것일 수 있으나, 이에 제한되지 않는다.
문제 추출부 131b는 획득된 콘텐츠의 컨텍스트, 즉 콘텐츠에 포함된 메타데이터, 내용, 키워드 등에 기초하여 각 코딩과제를 적용할 수 있는 부분(씬:scene)을 판단할 수 있다. 예를 들어, 콘텐츠의 주인공이 집으로 입장하는 상황에는 자동으로 전등을 켜는 코딩과제를 매칭할 수 있다. 또한, 주인공이 잠을 청하는 상황에서는 자동으로 전등을 끄고 보일러를 켜는 코딩과제를 매칭할 수 있으며, 그 방법 및 종류는 제한되지 않는다.
문제 추출부 131b로부터 획득되고, 매칭된 콘텐츠 및 코딩과제는 스토리텔링 방식으로 제공되어, 사용자의 학습을 도울 수 있다. 이 경우, 스토리텔링에 기초하여 사용자의 학습 흥미를 유발할 수 있다. 또한, 해당 스토리를 따라 모든 코딩과제를 완료하면, 특정 주제의 코딩은 모두 경험해볼 수 있어 즉시 개발에 투입될 수 있는 인재를 양성할 수 있다.
도 3은 본 발명의 실시 예에 따른 상기 평가 처리부의 구성을 도시한 블록도이다.
도 3에서 도시되는 바와 같이, 상기 평가 처리부 133는 순위 설정부 133a, 채점 평가부 133b, 취약점 평가부 133c, 컴파일 평가부 133d를 포함하여 구성될 수 있다.
상기 순위 설정부 133a는 사용자가 자율 학습을 위해 생성하고 게시한 과제목표 및 이를 해결하기 위한 소스코드에 대하여 타 사용자의 평가 정보를 수집하고, 상기 평가 정보를 기반으로 기 설정된 기간별 평가 순위를 산출할 수 있다.
상기 채점 평가부 133b는 사용자가 입력한 테스트에 대한 답변 내용을 기 존재하는 정답 정보와 비교하여 자동 채점하는 동작을 수행할 수 있다.
상기 정답 정보는 출제자가 문제 출제를 위해 문제 정보를 입력할 당시, 해당 문제와 함께 입력되는 정보일 수 있으며, 이에 따라 해당 정답 정보는 문제 항목에 대응하여 저장부 120상에 저장되어 있을 수 있다. 이에 따라 상기 채점 평가부 133b는 사용자가 수행한 테스트의 유형이 객관식이거나, 빈칸 채우기와 같은 단답식 또는 서술식의 문제일 경우 기 저장되어 있는 정답 정보와의 비교를 통한 채점을 수행할 수 있다. 다양한 실시 예에 따라, 객관식, 단답 또는 서술식의 문제 유형의 경우라 하더라도 정답 정보가 포함되어 완성된 소스코드를 컴파일하여 실제 해당 소스코드를 구동하여 오류 여부를 판단하고 이를 통해 채점이 수행될 수 있다.
그리고 상기 취약점 평가부 133c는 상기 채점 평가부에서 수행한 채점 결과에 기반하여 사용자의 취약 과목 및 취약 문제 유형을 포함하는 취약점을 산출할 수 있다. 이 때 상기 취약점 평가부 133c는 사용자의 테스트 점수를 수집할 수 있다. 그리고 상기 취약점 평가부 133c는 사용자의 과목별, 단원별, 시험 유형별(객관식, 주관식 등) 또는 스토리 유형별 취약점을 판단할 수 있다.
상기 컴파일 평가부 133d는 사용자가 입력한 테스트에 대한 답변 내용을 기반으로 소스코드를 완성시켜 컴파일을 수행한 후 컴파일된 결과를 통해 과제 해결 여부를 판단할 수 있다. 상기 컴파일 평가부 133d는 컴파일을 통해 소스코드에 대응하는 동작을 구현하고 구현되는 동작을 기반으로 초기 설정된 과제 목표의 달성 여부를 판단할 수 있다. 상기 컴파일 평가부 133d는 컴파일 당시 발견되는 오류의 존재 여부를 판단할 수 있으며, 오류가 발견되지 않았다 하더라도, 초기 설정된 과제목표를 달성하지 못한 것으로 판단되는 경우에는 평가 시 기 설정된 수치 이하의 점수를 부여할 수 있다.
도 4는 본 발명의 실시 예에 따른 학습 지원부의 구성을 도시한 블록도이다.
도 4에서 도시되는 바와 같이, 상기 학습 지원부 134는 팀 설정부 134a, 튜터 매칭부 134b, 해설 제공부 134c, 강의 제공부 134d, 자율 학습 지원부 134e를 포함하여 구성될 수 있다.
먼저, 상기 팀 설정부 134a는 테스트 결과가 기 설정된 횟수 이상 누적된 경우 팀 프로젝트를 위한 팀 설정 요청이 수신되면, 그에 대응하여 취약점항목 및 성적 중 적어도 하나가 상이한 구성원을 선택하여 팀을 구성하는 동작을 수행할 수 있다.
상기 튜터 매칭부 134b는 사용자로부터 튜터 매칭 요청이 수신되면 해당 사용자의 취약점을 항목을 조회하고, 상기 사용자의 취약점 항목에 대하여 성적 결과가 기 설정된 기준치 이상의 점수를 보유한 타 사용자를 튜터로 매칭하여 학습 정보를 공유하도록 지원할 수 있다. 보다 구체적으로는, 상기 튜터 매칭부 134b는 튜터로 활동한 계정에게 소정의 보상(예, 포인트)을 지급할 수 있다. 그리고 튜터에게 부여된 보상은 다시 해당 튜터가 다른 강의를 제공받거나 자신이 취약한 과목에 대하여 교육받기 위해 다른 튜터를 요청할 시 사용될 수 있다. 즉, 상기 튜터 매칭부 134b는 개별 사용자들로 하여금 튜터를 통한 양질의 교육을 받기 위해 요구되는 포인트를 각 사용자가 다른 이들에게 튜터 역할을 수행함으로써 받을 수 있도록 할 수 있다. 이에 따라 상기 튜터 매칭부 134b는 각 사용자들로 하여금 자신이 강점을 보이는 과목 또는 유형의 문제에 대한 코딩 능력을 타인에게 적극적으로 튜터링 하도록 하기 위한 동기를 제공할 수 있다.
또한 상기 튜터 매칭부 134b는 특정 사용자에게 튜터링이 가능한지 여부를 판단하여 알려줄 수 있다. 이에 따라 사용자는 자신의 특정 과목, 또는 특정 코딩 분야에 대한 자신의 능력이 튜터링이 가능한 수준으로 향상되었는지 여부를 확인할 수 있다. 상기 튜터 매칭부 134b는 특정 사용자의 테스트 성적 뿐 아 아니라 자율학습을 통해 생성한 코딩 결과물을 기반으로 튜터링이 가능한 수준의 사용자인지 여부를 판단할 수 있다. 그리고 상기 튜터 매칭부 134b는 전 분야에서 튜터링이 가능한 사용자 뿐 아니라, 특정 분야에서는 성적이 저조하더라도 적어도 하나의 과목(예, C++)에서 기 설정된 수준 이상의 능력이 인정된 경우, 또는 특정 분야(예, 게임, 스마트콘트랙트 등)의 코딩 결과물이 기 설정된 개수 이상 존재하고, 타 사용자들의 평가점수가 기 설정된 수치 이상인 경우에 특정 과목별 또는 특정 분야별 튜터링 자격을 부여할 수 있다.
상기 튜터 매칭부 134b는 다양한 실시 예에 따라, 교육을 받는 사용자와 튜터를 1:1로 매칭하는 동작 뿐 아니라, 다:1 매칭 및 1:다 매칭 동작을 수행할 수 있다. 예를 들어 상기 튜터 매칭부 134b는 튜터를 매칭받고자 하는 사용자로부터 튜터 매칭 요청을 수신하면 원하는 매칭 유형이 1:1 매칭인지, 또는 다:1 이나 1:다 매칭인지 여부를 추가로 확인하는 동작을 더 수행할 수 있다. 이후 사용자가 다:1 매칭을 원하는 경우, 자신이 튜터링 받고자 하는 분야와 동일 분야의 튜터링을 신청한 내역을 판단하여 동일 분야 튜터링을 신청한 사용자들끼리 그룹을 설정하고 해당 그룹에 매칭할 튜터를 검색할 수 있다.
또한 상기 튜터 매칭부 134b는 다양한 실시 예에 따라 튜터와 튜터를 1:1로 매칭할 수 있다. 예컨대, 상기 튜터 매칭부 134b는 특정 사용자로부터 취약점 항목과 튜터링 가능한 항목을 각각 확인하고, 이를 기반으로 상기 사용자가 튜터링 가능한 항목에 대하여 튜터링을 신청한 타 사용자 중 상기 사용자의 취약점 항목에 대하여 튜터링 가능한 사용자를 검색하고 매칭할 수 있다. 이에 따라 상기 튜터 매칭부 134b는 특정 사용자가 자신의 취약점 항목에 대하여 교육받음과 동시에 자신이 자신있는 항목을 교육할 수도 있다. 이와 같이 상기 튜터 매칭부 134b는 상보적인 관계에 있는 2명의 사용자를 매칭할 수 있다.
다양한 실시 예에 따라 상기 튜터 매칭부 134b가 상보적인 관계에 있는 사용자끼리 튜터 매칭을 수행할 시 2명에 한정되는 것은 아니며, 3명 이상의 집단에 대하여도 상보적 튜터링을 위한 튜터 매칭을 진행시킬 수 있다.
본 발명의 실시 예에 따른 해설 제공부 134c는 테스트 및 채점 이후 사용자가 입력한 답변이 정답이 아닌 것으로 판단될 경우, 해당 문제 입력 당시 함께 입력된 정답 정보를 제공할 수 있다.
본 발명의 실시 예에 따른 강의 제공부 134d는 테스트 및 채점 이후 사용자가 입력한 답변이 정답이 아닌 것으로 판단될 경우, 해당 문제가 속한 과목 및 챕터에 대응하는 무료 강의 링크를 제공할 수 있다.
본 발명의 실시 예에 따른 자율 학습 지원부 134e는 사용자가 직접 스토리 및 스토리와 연관된 과제목표를 설정하고, 상기 과제목표를 해결하기 위한 코딩 내용을 업로드하면 이를 컴파일하여 결과물을 게시하고 타 사용자로부터 평가받을 수 있도록 평가 영역을 제공할 수 있다. 예를 들면 상기 자율학습 지원부 134e는 자율학습을 위해 사용자가 직접 스토리 설정의 기반이 되는 콘텐츠를 선택할 수 있다. 이 때 콘텐츠는 저장부 120에 기 저장되어 있는 스토리 추출용 콘텐츠 또는 통신부 110를 통해 웹으로부터 수신되는 콘텐츠 정보일 수 있다. 스토리 설정의 기반이 되는 콘텐츠의 항목은 예컨대, 영화, 드라마, 웹툰 등으로 구성될 수 있다. 이 때 상기 자율학습 지원부 134e는 영화 콘텐츠 전체 재생 구간 중 유명한 장면이나 임의로 선택된 소정 시간 동안 재생되는 동영상 클립의 목록을 사용자에게 제공할 수 있다. 그리고 상기 자율학습 지원부 134e는 사용자로 하여금 제공된 콘텐츠 정보를 토대로 직접 스토리를 구상하여 과제 목표를 설정하도록 요청할 수도 있고, 사용자에 의해 선택된 콘텐츠 항목에 대응하는 스토리를 추출할 수도 있다. 이 때 상기 자율 학습 지원부 134e는 사용자에 의해 선택된 콘텐츠 항목에 대응하는 기 준비된 스토리 후보들 중 하나를 임의로 선택할 수 있다. 예를 들어, '킹스맨' 영화 콘텐츠에 대응하는 스토리 종류가 3개가 기 준비되어 있을 수 있고, 사용자는 킹스맨 영화를 선택하게 되면 준비된 상기 3개의 스토리 종류 중 하나가 임의로 선택될 수 있다.
다양한 실시 예에 따라 상기 자율 학습 지원부 134e는 사용자가 직접 설정한 스토리(예, 특정 숫자를 입력하면 자물쇠 잠금이 해제되어 박스가 오픈되도록 하는 내용 등)와 해당 스토리를 구현하기 위해 작성된 소스코드를 함께 업로드하면, 이를 소스코드 및 해당 소스코드를 컴파일하여 구현한 객체 모두를 어플리케이션 또는 웹상에 게시할 수 있다. 게시된 자료는 타 사용자들에 의해 열람되어질 수 있으며, 평가될 수 있다. 이 때 소정의 기준치 이상의 평가를 받은 완성물은 문제 생성 지원부 131의 문제 추출부 131b에 의해 추후 문제로 가공될 수 있다.
도 5는 본 발명의 실시 예에 따른 코딩 능력 평가 장치에서 코딩 능력 평가 동작을 수행하는 동작의 순서를 도시한 순서도이다.
코딩 능력 평가 장치의 제어부 130는 출제자 계정에 의해 입력되는 정보를 토대로 코딩 문제를 생성하는 문제 생성 단계 505를 수행할 수 있다. 이후 상기 제어부 130는 생성된 문제의 적합성을 판단하기 위해 해당 문제의 정답 정보 등을 토대로 컴파일 등을 수행하여 오류 여부를 찾아내는 문제 확인단계 510를 수행할 수 있다. 정답 정보에 기반하여 컴파일을 수행한 결과 오류를 비롯한 문제가 확인될 경우, 해당 문제는 테스트용으로의 등록이 거부될 수 있다.
이후 상기 제어부 130는 사용자 계정의 요청에 따라 기 등록된 문제를 사용자에게 제공할 수 있다. 이 때 상기 제어부 130는 사용자가 선택하는 스토리, 콘텐츠, 시험 항목(중간고사, 1차 테스트), 테스트 유형(객관식, 주관식), 과목 명칭 등에 해당하는 테스트 문제를 제공할 수 있다. 그리고 이에 따라 제공되는 문제에 기반하여 사용자가 답변 내용을 입력하고 제출하면, 상기 제어부 130는 제출된 답변 내용을 기반으로 채점을 수행하는 520 단계를 수행할 수 있다. 상기 520단계는 사용자가 제출한 답안 내용과 기 등록된 정답 정보를 비교하는 방식 또는 사용자가 제출한 답안에 기반하여 소스코드를 컴파일함으로써 목표과제를 해결하였는지 여부를 판단하는 방식을 통해 채점을 수행할 수 있다. 그리고 상기 520단계에서 제어부 130는 채점 결과 사용자의 취약점 정보를 산출할 수 있고 이를 기반으로 학습정보를 제공할 수 있다. 또는 상기 제어부 130는 사용자가 틀린 문제에 대응하는 정답 정보를 제공할 수 있다.
도 6은 본 발명의 실시 예에 따른 스토리 기반의 문제 제공 동작의 예시를 나타낸 도면이다.
도 6에서 도시되는 바와 같이, 본 발명의 실시 예에 따른 제어부 130는 사용자가 문제를 선택할 수 있도록 하는 화면을 610에서와 같이 제공할 수 있다. 상기 610화면에서 문제 선택 버튼이 선택되었다고 가정하면, 상기 제어부 130는 620화면에서와 같이 과목선택 버튼과 스토리 선택 버튼을 제공할 수 있다. 이외에도 문제 유형 선택 등의 다양한 선택항목이 존재할 수 있으나 설명의 편의를 위해 간략하게 2가지의 메뉴만을 도시하기로 한다. 사용자가 스토리 선택 버튼을 선택하였다고 가정하면, 제어부 130는 630에서 도시되는 바와 같이 선택 가능한 스토리 관련 콘텐츠 항목(예, 킹스맨, 트랜스포머, 복학왕)을 제시할 수 있다. 이에 따라 사용자가 특정 콘텐츠를 선택하게 되면, 이에 대응하는 동영상 클립 또는 이미지 정보와 함께 관련 과제 목표(예, 영화 명대사를 입력하면 주인공이 승리하는 장면으로 이어지도록 하는 것)가 이야기 형식(킹스맨 주인공이 'manners maketh man'을 말한 후 싸움에서 승리하는 이야기)으로 제공될 수 있다.
이하에서는 본 발명의 실시 예에 따른 세부 동작들에 대하여 설명하기로 한다.
도 7 내지 도 13은 본 발명의 실시 예에 따른 코딩 능력 평가 동작의 예시를 도시하고 있다.
먼저, 도 7은 사용자 계정에서 확인할 수 있는 개인 페이지의 예시를 도시하고 있다. 개인 페이지 화면에는 도 7에서 도시되는 바와 같이, 시험 과목, 시험 이력 등의 항목이 제공될 수 있다. 그리고 시험 과목 영역에는 사용자 계정에서 평가 가능한 테스트 항목이 시험 과목 명칭과 함께 제공될 수 있으며, 해당 테스트의 출제자 등의 정보가 함께 제공될 수 있다.
그리고 상기 시험 이력 영역에는 사용자가 기 응시한 테스트의 결과 정보가 표시될 수 있다. 이를 통해 사용자는 자신이 테스트에 응시하였는지 여부를 확인할 수 있으며, 과목별, 테스트별 정답률 정보 등을 간단히 확인할 수 있다.
도 8은 테스트가 수행되는 화면의 예시를 도시하고 있다.
도 8에서 도시되는 바와 같이 본 발명의 실시 예에 따른 코딩 능력 평가 장치는 사용자 계정에 문제를 기 등록된 코딩 문제를 제공할 수 있다. 이 때 코딩 문제는 도 8에서 도시되는 바와 같이 과제 목표만을 제시하고 사용자가 직접 자유롭게 기술하는 방식을 포함하여 객관식, 빈칸 채우기 등의 다양한 유형으로 제공될 수 있다. 그리고 사용자는 문제에 대응하는 코드입력이 완료되면 제출하기 버튼을 선택하여 답안을 제출하고 이러한 동작을 통해 채점이 수행되도록 할 수 있다.
도 9는 에러메시지가 표시되는 모습을 도시하고 있다. 답변을 제출한 후 해당 답변을 채점하는 방식은 여러 가지가 존재할 수 있는 데 그중에, 컴파일을 통해 사용자가 입력한 소스코드가 제대로 오류없이 구현되는지 여부를 확인하는 방법이 있다. 이 경우 오류가 발생되면 도 9에서 도시되는 바와 같이 오류 메시지가 표시될 수 있다. 그리고 오류가 발생되면 해당 테스트에 대한 사용자의 제출답안은 오답처리될 수 있다.
도 10은 출제자 계정을 통해 테스트용 코딩 문제가 등록되는 화면을 도시한 도면이다. 도 10에서 도시되는 바와 같이 출제자는 문제 등록 시 문제 유형, 언어 유형, 난이도 등에 관한 정보를 함께 입력할 수 있다. 그리고 상기 문제 입력 화면에는 정답 정보가 함께 입력될 수 있으며, 이를 통해 추후 자동 채점을 수행할 수 있게 된다.
도 11은 본 발명의 실시 예에 따른 테스트 화면의 예시이다. 사용자는 특정 시험 과목 명칭을 선택한 경우 해당 시험 과목에 해당하는 여러 테스트 종류를 도 11에서와 같이 확인할 수 있다. 도 11에서는 그 예시로, C++이라는 과목에 대하여 C++객체지향, C++클래스, C++연산자 오버로딩, C++클래스 상속, C++템플릿과 같은 다수의 챕터별 문제가 표시됨을 도시하고 있다. 그리고 특정 챕터를 선택하면 그에 속한 세부 문제 정보가 표시될 수 있으며, 사용자는 이를 선택하여 테스트에 임할 수 있다.
도 12는 본 발명의 실시 예에 따른 평가 동작의 예시를 도시하고 있다. 평가 동작은 제어부 130에 의해 정답 정보와 사용자가 입력한 답변 내용을 비교하는 방식으로 채점하는 동작을 포함할 수 있으며, 사용자가 자유롭게 입력한 소스코드를 컴파일하여 오류 여부 및 과제해결 여부를 판단하는 방식으로 이루어질 수 있다. 또한 본 발명의 실시 예에 따른 제어부 130는 도 12에서 도시되는 바와 같이 테스트 결과에 기반하여 사용자들의 석차 정보를 표시할 수 있다. 이외에도 다양한 평가 방식이 가능하며, 사용자가 창작한 소스코드에 대한 평가 방식으로는 타 사용자의 투표를 통한 점수 부여 및 순위 설정 방식이 수행될 수 있다.
도 13은 본 발명의 실시 예에 따른 그룹관리 동작에 대하여 도시하고 있다. 본 발명은 도 13에서 도시되는 바와 같이, 다수의 사용자를 그룹화할 수 있다. 출제자 계정에서는 단체별 성적 열람 등의 동작을 수행하기 위해 개별 사용자를 일일이 선택하는 대신 그룹별로 선택해야할 필요가 있다. 이에 따라 본 발명에서는 사용자들을 그룹화는 기능을 제공할 수 있다. 또한 사용자 계정 등록 당시, 출제자에 의해 사용자를 일괄적으로 등록하는 기능이 제공될 수 있으며, 학과, 학교 등에 따라 그룹화된 사용자들을 등록시키고자 할 경우 해당 기능이 사용될 수 있다.
상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다. 요컨대 본 발명이 의도하는 효과를 달성하기 위해 도면에 도시된 모든 기능 블록을 별도로 포함하거나 도면에 도시된 모든 순서를 도시된 순서 그대로 따라야만 하는 것은 아니며, 그렇지 않더라도 얼마든지 청구항에 기재된 본 발명의 기술적 범위에 속할 수 있음에 주의한다.
110 : 통신부
120 : 저장부
130 : 제어부
131 : 문제 생성 지원부
132 : 문제 제공부
133 : 평가 처리부
134 : 학습 지원부
131a: 문제 등록부
131b: 문제 추출부
131c: 문제 평가부
133a : 순위 설정부
133b: 채점 평가부
133c: 취약점 평가부
133d: 컴파일 평가부
134a: 팀설정부
134b: 튜터 매칭부
134c: 해설 제공부
134d: 강의 제공부
134e: 자율학습지원부
120 : 저장부
130 : 제어부
131 : 문제 생성 지원부
132 : 문제 제공부
133 : 평가 처리부
134 : 학습 지원부
131a: 문제 등록부
131b: 문제 추출부
131c: 문제 평가부
133a : 순위 설정부
133b: 채점 평가부
133c: 취약점 평가부
133d: 컴파일 평가부
134a: 팀설정부
134b: 튜터 매칭부
134c: 해설 제공부
134d: 강의 제공부
134e: 자율학습지원부
Claims (9)
- 스토리텔링 기반의 코딩 문제를 출제자 계정을 통해 입력받고, 사용자 계정으로 상기 스토리텔링 기반의 코딩 문제를 제공하고, 상기 사용자 계정에 의해 입력된 답변을 기 입력된 정답과 비교하여 자동 채점하는 제어부;를 포함하고,
상기 스토리텔링 기반의 코딩 문제는 이야기 형식으로 제공되는 과제목표를 해결하기 위한 소스코드를 완성하도록 요구되는 문제이며,
상기 제어부는
출제자 계정으로부터 스토리텔링 기반의 코딩 문제 및 상기 문제에 대응하는 답변 정보를 입력받고 출제 문제를 생성하는 문제 생성 지원부;
상기 문제 생성 지원부를 통해 생성된 출제 문제를 사용자 계정에 제공하고 테스트를 수행할 수 있도록 지원하는 문제 제공부;
사용자가 테스트를 진행하면 사용자가 입력한 답변 내용과 출제자 계정에 의해 기 입력된 정답과 비교하여 자동 채점하는 평가 처리부; 및
상기 평가 처리부에서 평가한 결과를 기반으로 사용자에게 요구되는 학습 정보를 제공하는 학습 지원부;를 포함하고
상기 문제 생성 지원부는
기 저장된 콘텐츠 및 기 설정된 코딩 교육 패키지를 획득하되, 상기 코딩 교육 패키지는 복수의 코딩 과제들을 포함하고, 상기 기 저장된 콘텐츠의 컨텍스트에 기초하여 상기 복수의 코딩 과제들을 매칭할 수 있는 씬들을 판단하고, 상기 씬들에 상기 복수의 코딩 과제들을 매칭하고, 상기 콘텐츠의 스토리를 기반으로 하여 상기 매칭된 복수의 코딩 과제들을 제공할 수 있는 스토리텔링 기반의 코딩 문제를 추출하는 문제 추출부;를 포함하고,
상기 기 저장된 콘텐츠는 영화, 웹툰, 드라마 중 적어도 하나를 포함하며,
상기 학습 지원부는
테스트 결과가 기 설정된 횟수 이상 누적된 경우 팀 프로젝트를 위한 팀 설정 요청이 수신되면, 그에 대응하여 취약점항목 및 성적 중 적어도 하나가 상이한 구성원을 선택하여 팀을 구성하는 팀 설정부;
사용자로부터 튜터 매칭 요청이 수신되면 해당 사용자의 취약점 항목을 조회하고, 상기 사용자의 취약점 항목에 대하여 성적 결과가 기 설정된 기준치 이상의 점수를 보유한 타 사용자를 튜터로 매칭하여 학습 정보를 공유하도록 지원하는 튜터 매칭부;
테스트 및 채점 이후 사용자가 입력한 답변이 정답이 아닌 것으로 판단될 경우, 정답 정보를 제공하는 해설 제공부;
테스트 및 채점 이후 사용자가 입력한 답변이 정답이 아닌 것으로 판단될 경우, 해당 문제가 속한 과목 및 챕터에 대응하는 무료 강의 링크를 제공하는 강의 제공부; 및
사용자가 직접 스토리 및 스토리와 연관된 과제목표를 설정하고, 상기 과제목표를 해결하기 위한 코딩 내용을 업로드하면 이를 컴파일하여 결과물을 게시하고 타 사용자로부터 평가받을 수 있도록 평가 영역을 제공하 는 자율 학습 지원부;를 포함하고,
상기 튜터 매칭부는
일 사용자로부터 취약점 항목과 튜터링 가능한 항목을 각각 확인하고, 상기 일 사용자가 튜터링 가능한 항목에 대한 튜터링을 신청한 타 사용자 중 상기 일 사용자의 최약점 항목에 대하여 튜터링 가능한 사용자를 검색하여 매칭하는 방식으로 성적이 상보적 관계에 있는 사용자들을 1:1로 매칭하고
상기 문제 추출부는
사용자가 자율 학습을 통해 생성한 소스코드 목록들 중 타 사용자에 의한 평가 점수가 기 설정된 수치 이상인 소스코드를 선택하여 문제로 재가공하되, 완성된 형태의 소스코드 중 일부 코드를 빈칸 처리하여 문제로 생성하는 것을 특징으로 하는 코딩 능력 평가 장치. - 삭제
- ◈청구항 3은(는) 설정등록료 납부시 포기되었습니다.◈제 1항에 있어서,
상기 문제 생성 지원부는
출제자 계정으로부터 입력되는 스토리텔링 기반 코딩 문제 정보 및 상기 문제의 정답 정보를 입력받고 입력된 정보에 대하여 유형, 과목별 분류를 수행하여 출제 문제로 등록하는 문제 등록부;
입력된 정답 정보를 대상으로 컴파일을 수행하여 오류 여부를 판단하고 적합성 여부를 평가하는 문제 평가부;를 포함하는 것을 특징으로 하는 코딩 능력 평가 장치. - 제 3항에 있어서,
상기 문제 평가부는
기 등록된 출제 문제에 대하여 사용자의 테스트 결과를 수집하여 해당 문제의 정답률 및 난이도 정보를 판단하는 것을 특징으로 하는 코딩 능력 평가 장치. - 제 1항에 있어서,
상기 평가 처리부는
사용자가 입력한 테스트에 대한 답변 내용을 기 존재하는 정답 정보와 비교하여 자동 채점하는 채점 평가부;
상기 채점 평가부에서 수행한 채점 결과에 기반하여 사용자의 취약 과목 및 취약 문제 유형을 포함하는 취약점을 산출하는 취약점 평가부;
사용자가 입력한 테스트에 대한 답변 내용을 기반으로 소스코드를 완성시켜 컴파일을 수행한 후 컴파일된 결과를 통해 과제 해결 여부를 판단하는 컴파일 평가부;를 포함하는 것을 특징으로 하는 코딩 능력 평가 장치. - 삭제
- 삭제
- 삭제
- 제 1항에 있어서,
상기 평가 처리부는
사용자가 자율 학습을 위해 생성하고 게시한 과제목표 및 이를 해결하기 위한 소스코드에 대하여 타 사용자의 평가 정보를 수집하고, 상기 평가 정보를 기반으로 기 설정된 기간별 평가 순위를 산출하는 순위 설정부;를 포함하는 것을 특징으로 하는 코딩 능력 평가 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180098251A KR101961328B1 (ko) | 2018-08-22 | 2018-08-22 | 지능형 코딩 능력 평가 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180098251A KR101961328B1 (ko) | 2018-08-22 | 2018-08-22 | 지능형 코딩 능력 평가 장치 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190015015A Division KR101984954B1 (ko) | 2019-02-08 | 2019-02-08 | 코딩 학습 지원 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101961328B1 true KR101961328B1 (ko) | 2019-03-22 |
Family
ID=65949481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180098251A KR101961328B1 (ko) | 2018-08-22 | 2018-08-22 | 지능형 코딩 능력 평가 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101961328B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190134496A (ko) * | 2018-05-24 | 2019-12-04 | 조이연 | 코딩 테이블 |
KR20210111139A (ko) * | 2020-03-02 | 2021-09-10 | (주) 퍼블릭에이아이 | 사용자 경험 기반의 코딩 학습 방법 및 장치 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120003709A (ko) * | 2010-07-05 | 2012-01-11 | 에스케이 텔레콤주식회사 | 학습 관리 서비스 시스템 및 방법 |
KR101802294B1 (ko) * | 2015-11-19 | 2017-11-28 | (주)엘리스 | 온라인 교육 서비스 제공 방법 및 장치 |
-
2018
- 2018-08-22 KR KR1020180098251A patent/KR101961328B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120003709A (ko) * | 2010-07-05 | 2012-01-11 | 에스케이 텔레콤주식회사 | 학습 관리 서비스 시스템 및 방법 |
KR101802294B1 (ko) * | 2015-11-19 | 2017-11-28 | (주)엘리스 | 온라인 교육 서비스 제공 방법 및 장치 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190134496A (ko) * | 2018-05-24 | 2019-12-04 | 조이연 | 코딩 테이블 |
KR102198397B1 (ko) | 2018-05-24 | 2021-01-05 | 조이연 | 코딩 테이블 |
KR20210111139A (ko) * | 2020-03-02 | 2021-09-10 | (주) 퍼블릭에이아이 | 사용자 경험 기반의 코딩 학습 방법 및 장치 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101984954B1 (ko) | 코딩 학습 지원 장치 | |
KR101816665B1 (ko) | 객관식 문항 학습 데이터를 분석하는 방법 | |
Moreno-Marcos et al. | Analysing the predictive power for anticipating assignment grades in a massive open online course | |
US20190385471A1 (en) | Assessment-based assignment of remediation and enhancement activities | |
CN111353921A (zh) | 一种考试管理方法及系统、电子设备 | |
WO2019046177A1 (en) | MEASURABLE PROGRESSION LEARNING SYSTEM BASED ON EVALUATION | |
KR20150012710A (ko) | 독서신장을 위한 독서지도시스템 및 그 방법 | |
KR101971660B1 (ko) | 스토리텔링 기반의 코딩 능력 평가 시스템 | |
US11393354B2 (en) | System and method for generating an assessment paper and measuring the quality thereof | |
EP3131054A1 (en) | Concept-associated online study service method, and service system therefor | |
CN109410675A (zh) | 一种基于学生画像的练习题推荐方法及家教设备 | |
KR101961328B1 (ko) | 지능형 코딩 능력 평가 장치 | |
Pesando et al. | Are private kindergartens really better? Examining preschool choices, parental resources, and children’s school readiness in Ghana | |
CN109636218B (zh) | 一种学习内容推荐方法及电子设备 | |
JP2018194647A (ja) | 学習支援装置、学習支援システム、学習支援方法及びコンピュータプログラム | |
CN110311893A (zh) | 一种基于安卓微信平台的互动学习方法及系统 | |
CN108734608A (zh) | 基于互联网的立体化教学系统 | |
CN112991848A (zh) | 一种基于虚拟现实的远程教育方法及系统 | |
CN111192170B (zh) | 题目推送方法、装置、设备和计算机可读存储介质 | |
US9547995B1 (en) | Dynamic instructional course | |
Bruzzone et al. | Simulation as enabling technologies for agile thinking: Training and education aids for decision makers | |
Drljević et al. | Observing student engagement during augmented reality learning in early primary school | |
CN109545016A (zh) | 一种基于学习客户端的学习互动方法及学习客户端 | |
Lin et al. | Using collaborative annotating and data mining on formative assessments to enhance learning efficiency | |
CN111553555A (zh) | 培训方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
GRNT | Written decision to grant |