[논문 리뷰] A Large-scale Analysis of App Inventor Projects.
이 연구는 공개 갤러리에서 88,606개의 App Inventor 프로젝트를 분석하여 프로그래밍 개념 사용 및 프로젝트 특성에 대해 조사한다. 분석 결과 App Inventor 프로젝트의 크기는 매우 다양하며, 많은 프로젝트에서 디자인 컴포넌트보다 더 많은 프로그래밍 블록을 사용하고 있음을 확인했으며, 이는 이벤트가 조건문이나 반복문보다 더 흔히 사용된다는 점에서 스래시와의 차이를 보이며, 이는 컴퓨팅 교육 커리큘럼 설계에 중요한 통찰을 제공한다.
App Inventor is a popular block-based programming environment used by a wide audience, from K-12 to higher education, including end-users to create mobile applications to support their primary job or hobbies. Although learning computational thinking with App Inventor has been investigated, a question that remains is which programming concepts are typically used and how this compares to other block-based programming environments. Therefore, we explore the characteristics of App Inventor projects through a large-scale analysis of 88,606 apps from the App Inventor Gallery. We discovered that the size of App Inventor projects varies from projects with very few blocks to some surprisingly large projects with more than 60,000 blocks. In general, much fewer design components are used than programming blocks, as typically, to work properly, several programming blocks are necessary for each design component in an App Inventor project. In addition, we also compare our results with the analysis of 233,491 Scratch projects reported by Aivaloglou and Hermans [4]. Several differences can be observed, as in App Inventor projects events are more predominant, with lesser use of conditionals and loops. These findings may guide the decision on the adoption of App Inventor for teaching computing depending on the specific learning objectives or indicate the need for tailoring the curricula.
연구 동기 및 목표
- 대규모 사용자 기반에서 App Inventor 프로젝트의 프로그래밍 개념 사용 빈도와 분포를 이해하기 위해.
- 특히 스래시와 비교하여 다른 블록 기반 환경과의 App Inventor 프로젝트 특성 비교를 위해.
- 프로젝트 크기, 컴포넌트 사용, 블록 구성 패턴을 규명하여 App Inventors의 교육적 활용을 안내하기 위해.
- 실제 App Inventor 애플리케이션에서 가장 흔히 사용되는 프로그래밍 구조를 특정하여 커리큘럼 개발을 안내하기 위해.
제안 방법
- App Inventor 갤러리에서 공개된 88,606개의 프로젝트를 수집하고 분석하기 위해.
- 프로젝트 메타데이터(프로그래밍 블록 수, 디자인 컴포넌트 수, 이벤트 수, 조건문 수, 반복문 수 등)의 정량적 추출을 위해.
- 이전에 수행된 233,491개의 스래시 프로젝트에 대한 대규모 분석 결과와 App Inventor 프로젝트 통계를 비교하기 위해.
- 실제 프로젝트에서의 상대적 사용 빈도를 평가하기 위해 프로그래밍 구조의 분류 및 빈도 분석을 위해.
실험 결과
연구 질문
- RQ1App Inventor 프로젝트의 프로그래밍 블록과 디자인 컴포넌트 수에 따른 프로젝트 크기 분포는 어떻게 되는가?
- RQ2App Inventor와 스래시 간에 이벤트, 조건문, 반복문과 같은 프로그래밍 구조의 사용 빈도는 어떻게 비교되는가?
- RQ3App Inventor 프로젝트는 이벤트 기반 논리에 얼마나 의존하는가? 반복문과 조건문과 같은 제어 구조에 비해 어떠한가?
- RQ4프로젝트 간에 프로그래밍 블록 대 디자인 컴포넌트 비율은 어떻게 변동하는가? 이는 구현 복잡도에 어떤 함의를 지닌다?
주요 결과
- App Inventor 프로젝트는 매우 작은 프로젝트부터 60,000개 이상의 프로그래밍 블록을 초과하는 매우 큰 프로젝트까지 다양하게 분포되어 있다.
- 대부분의 프로젝트에서 프로그래밍 블록 수가 디자인 컴포넌트 수를 크게 초과하여, 각 UI 요소당 복잡한 논리가 구현되어 있음을 시사한다.
- App Inventor 프로젝트에서 가장 흔히 사용되는 프로그래밍 구조는 이벤트이며, 이어 조건문과 반복문의 사용 빈도가 낮다.
- 스래시와 비교할 때 App Inventor 프로젝트는 이벤트 기반 프로그래밍에 더 강한 중점을 두고 있으며, 반복적 및 조건부 구조에 대한 의존도가 낮다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.