VID2META: Complementing Android Programming Screencasts with Code Elements and GUIs
The complexity of software projects and the rapid technological evolution make it such that developers often need additional help and knowledge to tackle their daily tasks. For this purpose, they often refer to online resources, which are easy to access and contain a wealth of information in various...
Main Author: | |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2022-09-01
|
Series: | Mathematics |
Subjects: | |
Online Access: | https://www.mdpi.com/2227-7390/10/17/3175 |
_version_ | 1797494322757632000 |
---|---|
author | Mohammad D. Alahmadi |
author_facet | Mohammad D. Alahmadi |
author_sort | Mohammad D. Alahmadi |
collection | DOAJ |
description | The complexity of software projects and the rapid technological evolution make it such that developers often need additional help and knowledge to tackle their daily tasks. For this purpose, they often refer to online resources, which are easy to access and contain a wealth of information in various formats. Programming screencasts hosted on platforms such as YouTube are one such online resource that has seen a growth in popularity and adoption over the past decade. These screencasts usually have some metadata such as a title, a short description, and a set of tags that should describe what the main concepts captured in the video are. Unfortunately, metadata are often generic and do not contain detailed information about the code showcased in the tutorial, such as the API calls or graphical user interface (GUI) elements employed, which could lead to developers missing useful tutorials. Having a quick overview of the main code elements and GUIs used in a video tutorial can be very helpful for developers looking for code examples involving specific API calls, or looking to design applications with a specific GUI in mind. The aim is to make this information easily available to developers, and propose VID2META, a technique that automatically extracts Java import statements, class names, method information, GUI elements, and GUI screens from videos and makes them available to developers as metadata. VID2META is currently designed to work with Android screencasts. It analyzes video frames using a combination of computer vision, deep learning, optical character recognition, and heuristic-based approaches to identify the needed information in a frame, extract it, and present it to the developer. VID2META has been evaluated in an empirical study on 70 Android programming videos collected from YouTube. The results revealed that VID2META can accurately detect and extract Java and GUI elements from Android programming videos with an average accuracy of 90%. |
first_indexed | 2024-03-10T01:32:37Z |
format | Article |
id | doaj.art-690027f058434beb8d889d2fcc7ac40a |
institution | Directory Open Access Journal |
issn | 2227-7390 |
language | English |
last_indexed | 2024-03-10T01:32:37Z |
publishDate | 2022-09-01 |
publisher | MDPI AG |
record_format | Article |
series | Mathematics |
spelling | doaj.art-690027f058434beb8d889d2fcc7ac40a2023-11-23T13:39:46ZengMDPI AGMathematics2227-73902022-09-011017317510.3390/math10173175VID2META: Complementing Android Programming Screencasts with Code Elements and GUIsMohammad D. Alahmadi0Department of Software Engineering, College of Computer Science and Engineering, University of Jeddah, Jeddah 23890, Saudi ArabiaThe complexity of software projects and the rapid technological evolution make it such that developers often need additional help and knowledge to tackle their daily tasks. For this purpose, they often refer to online resources, which are easy to access and contain a wealth of information in various formats. Programming screencasts hosted on platforms such as YouTube are one such online resource that has seen a growth in popularity and adoption over the past decade. These screencasts usually have some metadata such as a title, a short description, and a set of tags that should describe what the main concepts captured in the video are. Unfortunately, metadata are often generic and do not contain detailed information about the code showcased in the tutorial, such as the API calls or graphical user interface (GUI) elements employed, which could lead to developers missing useful tutorials. Having a quick overview of the main code elements and GUIs used in a video tutorial can be very helpful for developers looking for code examples involving specific API calls, or looking to design applications with a specific GUI in mind. The aim is to make this information easily available to developers, and propose VID2META, a technique that automatically extracts Java import statements, class names, method information, GUI elements, and GUI screens from videos and makes them available to developers as metadata. VID2META is currently designed to work with Android screencasts. It analyzes video frames using a combination of computer vision, deep learning, optical character recognition, and heuristic-based approaches to identify the needed information in a frame, extract it, and present it to the developer. VID2META has been evaluated in an empirical study on 70 Android programming videos collected from YouTube. The results revealed that VID2META can accurately detect and extract Java and GUI elements from Android programming videos with an average accuracy of 90%.https://www.mdpi.com/2227-7390/10/17/3175video metadataprogramming screencastsmobile developmentsoftware documentationdeep learningvideo mining |
spellingShingle | Mohammad D. Alahmadi VID2META: Complementing Android Programming Screencasts with Code Elements and GUIs Mathematics video metadata programming screencasts mobile development software documentation deep learning video mining |
title | VID2META: Complementing Android Programming Screencasts with Code Elements and GUIs |
title_full | VID2META: Complementing Android Programming Screencasts with Code Elements and GUIs |
title_fullStr | VID2META: Complementing Android Programming Screencasts with Code Elements and GUIs |
title_full_unstemmed | VID2META: Complementing Android Programming Screencasts with Code Elements and GUIs |
title_short | VID2META: Complementing Android Programming Screencasts with Code Elements and GUIs |
title_sort | vid2meta complementing android programming screencasts with code elements and guis |
topic | video metadata programming screencasts mobile development software documentation deep learning video mining |
url | https://www.mdpi.com/2227-7390/10/17/3175 |
work_keys_str_mv | AT mohammaddalahmadi vid2metacomplementingandroidprogrammingscreencastswithcodeelementsandguis |