miniJava: Automatic Miniaturization of Java Applications

The use of smartphones is dramatically increasing. As a consequence, many organizations have the need of migrating their Java desktop applications towards the mobile technology. In this paper we present a miniaturization approach (process and supporting tool) named miniJava for the automatic miniaturization of Java desktop applications towards Android. The Java business logic is unvaried, while the calls to the Java objects of the interface are mapped into call to objects of the target technology. Semi-automatic layout fragmentation enables us to partition a desktop Java interface in various mobile screens. The approach also migrates the application files and enables the network connection. We conduct a user study where we assess the user perception in terms of user experience and affective reaction of the miniaturized application generated by a real Java desktop application which also has real Android variant. The end-user sample consisted of 18 participants. Results of this preliminary evaluation are encouraging: they do not reveal particular problems when using the miniaturized version automatically generated of the real desktop app with respect to its original Android variant, except for the novelty, which is better perceived for the native Android one.

[1]  Natalia Juristo Juzgado,et al.  Basics of Software Engineering Experimentation , 2010, Springer US.

[2]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2000, The Kluwer International Series in Software Engineering.

[3]  Giuseppe Scanniello,et al.  Mobile App Development and Management: Results from a Qualitative Investigation , 2017, 2017 IEEE/ACM 4th International Conference on Mobile Software Engineering and Systems (MOBILESoft).

[4]  Thierry Pun,et al.  DEAP: A Database for Emotion Analysis ;Using Physiological Signals , 2012, IEEE Transactions on Affective Computing.

[5]  Ting Luo,et al.  Detecting community structure based on edge betweenness , 2011, 2011 Eighth International Conference on Fuzzy Systems and Knowledge Discovery (FSKD).

[6]  Natalia Juristo Juzgado,et al.  Crossover Designs in Software Engineering Experiments: Benefits and Perils , 2016, IEEE Transactions on Software Engineering.

[7]  Liliana Favre,et al.  Migrating C/C++ Software to Mobile Platforms in the ADM Context , 2017, Int. J. Interact. Multim. Artif. Intell..

[8]  Martin Schrepp,et al.  Construction and Evaluation of a User Experience Questionnaire , 2008, USAB.

[9]  Yann-Gaël Guéhéneuc,et al.  MoMIT: Porting a JavaScript Interpreter on a Quarter Coin , 2019, ArXiv.

[10]  M. Bradley,et al.  Measuring emotion: the Self-Assessment Manikin and the Semantic Differential. , 1994, Journal of behavior therapy and experimental psychiatry.

[11]  Wei Wu,et al.  MoMS: Multi-objective miniaturization of software , 2011, 2011 27th IEEE International Conference on Software Maintenance (ICSM).

[12]  Liliana Favre,et al.  Migrating JAVA to Mobile Platforms through HAXE: An MDD Approach , 2016 .

[13]  Giuliano Antoniol,et al.  A language-independent software renovation framework , 2005, J. Syst. Softw..

[14]  Giuseppe Scanniello,et al.  Does the Migration of Cross-Platform Apps Towards the Android Platform Matter? An Approach and a User Study , 2019, PROFES.

[15]  Mario Piattini,et al.  ANDRIU. A Technique for Migrating Graphical User Interfaces to Android (S) , 2013, SEKE.

[16]  Martin Schrepp,et al.  Construction of a Benchmark for the User Experience Questionnaire (UEQ) , 2017, Int. J. Interact. Multim. Artif. Intell..