Mobile application development has recently emerged as one of the most focused areas in the software industry. Exponential growth of mobile users, extensive use of mobile devices, and the variety of mobile platforms has resulted in significant increase of mobile application development industry. According to recent statistics, there are around 4 million registered mobile applications available for various platforms with approximately 40 thousand mobile applications being added per month making the mobile application industry a multi-billion-dollar industry.
With the increase in the variety of mobile operating systems and device features, a typical challenge faced by mobile application industry is the requirement to support different mobile platforms. The term mobile platform refers to both the software platform (i.e., operating system and software features, such as, contact and message) and the hardware platform (i.e., the mobile device hardware such as Bluetooth and camera). As an example, consider an application being developed may need to support Android and iOS. The same application may also need to support the mobile device hardware variations, i.e., various mobile devices support specific hardware features that are not available in other devices. Some mobile devices provide support for LTE/4G Networks, Bluetooth, GPS, External storage, or Accelerometer and other devices do not support these.
In our project, we address the challenges faced by the mobile application industry by developing a MAPLE tool to support automated generation of mobile application variants of multiple platforms. The tool is built using the combination of two domains, i.e., software product-line engineering and model-driven engineering. The tool supports variations in application due to mobile operating systems, i.e., Android and iOS. This is achieved through the application-specific feature model, mobile application modeling profile, and UML diagrams.Contact Person: Dr. Uzair Khan