SAIFU: Supporting Program Understanding by Automatic Indexing of Functionalities in Source Code

Programs in the event-driven style that are typical of mobile and/or Web applications are becoming complex and hard to maintain. For the purpose of reducing the burden put on software developers while reading source code to understand its details, we propose a tool for supporting program understandi...

Full description

Bibliographic Details
Main Authors: Masashi Nishimoto, Keiji Nishiyama, Hideyuki Kawabata, Tetsuo Hironaka
Format: Article
Language:English
Published: Atlantis Press 2019-09-01
Series:International Journal of Networked and Distributed Computing (IJNDC)
Subjects:
Online Access:https://www.atlantis-press.com/article/125918015/view
id doaj-4053708b133c48f287c02170af39c91b
record_format Article
spelling doaj-4053708b133c48f287c02170af39c91b2020-11-25T02:25:38ZengAtlantis PressInternational Journal of Networked and Distributed Computing (IJNDC)2211-79462019-09-017410.2991/ijndc.k.190917.002SAIFU: Supporting Program Understanding by Automatic Indexing of Functionalities in Source CodeMasashi NishimotoKeiji NishiyamaHideyuki KawabataTetsuo HironakaPrograms in the event-driven style that are typical of mobile and/or Web applications are becoming complex and hard to maintain. For the purpose of reducing the burden put on software developers while reading source code to understand its details, we propose a tool for supporting program understanding, named SAIFU (a tool for Supporting program understanding by Automatic Indexing of Functionalities). SAIFU automatically extracts implemented functionalities from source code and puts annotations to them. SAIFU helps the user grasp the behavior and the structure of a whole program by showing a list of the annotations of functionalities. SAIFU highlights a set of statements of the source code that are related to any functionality on the annotation list so that the user can investigate the implementation details of a particular functionality. Experimental results obtained by applying SAIFU to 16 applications in Google Samples confirm that the tool is effective for finding out important statements from existing Android application programs.https://www.atlantis-press.com/article/125918015/viewProgram understandingdataflow graphtag cloudevent-driven programming
collection DOAJ
language English
format Article
sources DOAJ
author Masashi Nishimoto
Keiji Nishiyama
Hideyuki Kawabata
Tetsuo Hironaka
spellingShingle Masashi Nishimoto
Keiji Nishiyama
Hideyuki Kawabata
Tetsuo Hironaka
SAIFU: Supporting Program Understanding by Automatic Indexing of Functionalities in Source Code
International Journal of Networked and Distributed Computing (IJNDC)
Program understanding
dataflow graph
tag cloud
event-driven programming
author_facet Masashi Nishimoto
Keiji Nishiyama
Hideyuki Kawabata
Tetsuo Hironaka
author_sort Masashi Nishimoto
title SAIFU: Supporting Program Understanding by Automatic Indexing of Functionalities in Source Code
title_short SAIFU: Supporting Program Understanding by Automatic Indexing of Functionalities in Source Code
title_full SAIFU: Supporting Program Understanding by Automatic Indexing of Functionalities in Source Code
title_fullStr SAIFU: Supporting Program Understanding by Automatic Indexing of Functionalities in Source Code
title_full_unstemmed SAIFU: Supporting Program Understanding by Automatic Indexing of Functionalities in Source Code
title_sort saifu: supporting program understanding by automatic indexing of functionalities in source code
publisher Atlantis Press
series International Journal of Networked and Distributed Computing (IJNDC)
issn 2211-7946
publishDate 2019-09-01
description Programs in the event-driven style that are typical of mobile and/or Web applications are becoming complex and hard to maintain. For the purpose of reducing the burden put on software developers while reading source code to understand its details, we propose a tool for supporting program understanding, named SAIFU (a tool for Supporting program understanding by Automatic Indexing of Functionalities). SAIFU automatically extracts implemented functionalities from source code and puts annotations to them. SAIFU helps the user grasp the behavior and the structure of a whole program by showing a list of the annotations of functionalities. SAIFU highlights a set of statements of the source code that are related to any functionality on the annotation list so that the user can investigate the implementation details of a particular functionality. Experimental results obtained by applying SAIFU to 16 applications in Google Samples confirm that the tool is effective for finding out important statements from existing Android application programs.
topic Program understanding
dataflow graph
tag cloud
event-driven programming
url https://www.atlantis-press.com/article/125918015/view
work_keys_str_mv AT masashinishimoto saifusupportingprogramunderstandingbyautomaticindexingoffunctionalitiesinsourcecode
AT keijinishiyama saifusupportingprogramunderstandingbyautomaticindexingoffunctionalitiesinsourcecode
AT hideyukikawabata saifusupportingprogramunderstandingbyautomaticindexingoffunctionalitiesinsourcecode
AT tetsuohironaka saifusupportingprogramunderstandingbyautomaticindexingoffunctionalitiesinsourcecode
_version_ 1724850848159236096