Utilizing and enhancing software modeling environments to teach mobile application design
Badreldin Altayeb, Kostadin Damevski · Journal of computing sciences in colleges · 2013
The relative uniqueness of mobile applications in commonly using a diverse set of sensor data necessitates the use of modeling in order to design and reason about these applications' behavior prior to their implementation. This is especially the case in mobile programming classes, where important design decisions, such as those related to sensing and timing, are obscured from students by the large API set. By teaching model-first mobile application design, we argue that students will benefit from learning to develop higher-quality apps, while interesting application scenarios (using concurrency, timing, etc.) will be made more approachable. In this paper, we describe our enhancements to popular modeling environments in order to make them appropriate for straightforward modeling of mobile applications and ease their use in the classroom. To demonstrate our approach, we augment the Ptolemy II heterogeneous modeling environment to model Android mobile applications. Our experience with this approach in a mobile programming course at Virginia State University indicates its promise in improving students' learning.