Abstract
Rapidly increasing numbers of applications and users make the development of mobile applications to one of the most promising fields in software engineering. Due to short time-to-market, differing platforms and fast emerging technologies, mobile application development faces typical challenges where model-driven development can help. We present a modeling language and an infrastructure for the model-driven development (MDD) of Android apps supporting the specification of different app variants according to user roles. For example, providing users may continuously configure and modify custom content with one app variant whereas end users are supposed to use provided content in their variant. Our approach allows a flexible app development on different abstraction levels: compact modeling of standard app elements, detailed modeling of individual elements, and separate provider models for specific custom needs. We demonstrate our MDD-approach at two apps: a phone book manager and a conference guide being configured by conference organizers for participants.
This work was partially funded by LOEWE HA project no. 355/12-45 (State Offensive for the Development of Scientific and Economic Excellence).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
App Inventor, http://appinventor.mit.edu
Applause, https://github.com/applause/applause
ModAgile, http://www.modagile-mobile.de
PIMAR: Model-driven development of mobile apps, http://www.uni-marburg.de/fb12/swt/forschung/software/pimar/
Web Services Business Process Execution Language (WS-BPEL) Version 2.0 (2007), http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html
Business Process Model and Notation (BPMN) Version 2.0. (January 2011), http://www.omg.org/spec/BPMN/2.0
Allen, S., Graupera, V., Lundrigan, L.: Pro Smartphone Cross-Platform Development: iPhone, Blackberry, Windows Mobile and Android Development and Distribution. Apresspod Series. Apress (2010), http://books.google.de/books?id=JKpKrwtoWNAC
Behrens, H.: MDSD for the iPhone: Developing a domain-specific language and IDE tooling to produce real world applications for mobile devices. In: Cook, W.R., Clarke, S., Rinard, M.C. (eds.) SPLASH/OOPSLA Companion, pp. 123–128. ACM (2010)
Bettini, L.: Implementing Domain-Specific Languages with Xtext and Xtend. Packt Publishing Ltd. (2013)
Bishop, R.: Learning with LabVIEW. Pearson Education (2011)
Ceri, S., Fraternali, P., Bongio, A.: Web Modeling Language (WebML): A modeling language for designing Web sites. Computer Networks 33(1-6), 137–157 (2000)
Goadrich, M.H., Rogers, M.P.: Smart smartphone development: iOS versus Android. In: Proceedings of the 42nd ACM Technical Symposium on Computer Science Education, SIGCSE 2011, pp. 607–612. ACM, New York (2011)
Gronback, R.: Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit. Eclipse Series. Pearson Education (2009), http://books.google.de/books?id=8CrCXVZXLjcC
Heitkötter, H., Majchrzak, T.A., Kuchen, H.: Cross-Platform Model-Driven Development of Mobile Applications with md2. In: Proceedings of the 28th Annual ACM Symposium on Applied Computing, SAC 2013, Coimbra, Portugal, March 18-22, pp. 526–533. ACM (2013)
Hemel, Z., Visser, E.: Declaratively programming the mobile web with Mobl. In: Lopes, C.V., Fisher, K. (eds.) OOPSLA, pp. 695–712. ACM (2011)
Hemel, Z., Visser, E.: Mobl: the new language of the mobile web. In: Lopes, C.V., Fisher, K. (eds.) OOPSLA Companion, pp. 23–24. ACM (2011)
Karsai, G., Krahn, H., Pinkernell, C., Rumpe, B., Schneider, M., Völkel, S.: Design Guidelines for Domain Specific Languages. In: Rossi, M., Sprinkle, J., Gray, J., Tolvanen, J.P. (eds.) Proceedings of the 9th OOPSLA Workshop on Domain-Specific Modeling (DSM 2009), pp. 7–13 (2009)
Kraemer, F.A.: Engineering Android Applications Based on UML Activities. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 183–197. Springer, Heidelberg (2011)
Oehlman, D., Blanc, S.: Pro Android Web Apps: Develop for Android using HTML5, CSS3 & JavaScript. Apresspod Series. Apress (2011), http://books.google.de/books?id=pZlF7lQY5SQC
Piper, I.: Learn Xcode Tools for Mac OS X and iPhone Development. IT Pro. Apress (2010)
Rubel, D., Wren, J., Clayberg, E.: The Eclipse Graphical Editing Framework (GEF). Eclipse (Addison-Wesley). Addison-Wesley (2011), http://books.google.de/books?id=GiKTAR9M-L4C
Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework, 2nd edn. Addison-Wesley, Boston (2009)
Vlissides, J.: Pattern hatching: design patterns applied. The software patterns series. Addison-Wesley (1998), http://books.google.de/books?id=4qRQAAAAMAAJ
Williams, G.: Learn HTML5 and JavaScript for Android. ITPro collection. Apress (2012), http://books.google.de/books?id=PRlytmflmhoC
Zapata, B.: Android Studio Application Development. Packt Publishing (2013)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Vaupel, S., Taentzer, G., Harries, J.P., Stroh, R., Gerlach, R., Guckert, M. (2014). Model-Driven Development of Mobile Applications Allowing Role-Driven Variants. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds) Model-Driven Engineering Languages and Systems. MODELS 2014. Lecture Notes in Computer Science, vol 8767. Springer, Cham. https://doi.org/10.1007/978-3-319-11653-2_1
Download citation
DOI: https://doi.org/10.1007/978-3-319-11653-2_1
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-11652-5
Online ISBN: 978-3-319-11653-2
eBook Packages: Computer ScienceComputer Science (R0)