Abstract
The advent of mobile devices in all social classes leads us to new possibilities of interaction, including in the educational context, where mobile learning (m-learning) applications have become powerful teaching and learning tools. Such applications, even having many benefits and facilities, also present problems and challenges, especially regarding their development, reuse, and architectural standardization. On the other hand, the adoption of the systematic reuse concept has been consolidated, making approaches such as software product lines (SPL) interesting alternatives for these gaps. This paradigm favors the abstraction of the similarities and variabilities of a domain and its products, promoting the reuse of core assets and, consequently, reducing the development time and cost (from the break-even point) of the generated solutions. Thus, to systematically explore the variabilities of m-learning applications domain, an SPL, called M-SPLearning, was proposed. First, we analyze the existing adoption models in the literature, allowing us to identify the most appropriate approach to the context of our SPL. Then, the main features of m-learning applications were defined with the support of a previously defined requirements catalog. As a result, the domain engineering and application engineering phases were conducted for M-SPLearning. In the context of domain engineering, the Stereotype-based Management of Variability (SMarty) approach was fundamental in the representation of similarities and variabilities with regard to architecture, components, and production plan, synthesizing the features of this domain through UML diagrams. Regarding application engineering, we present the dynamics of M-SPLearning’s operation, generating m-learning applications according to the selected variabilities through a web application, in other words, a user interface (UI) for the generation of products. Finally, M-SPLearning had its products experimentally evaluated in the context of a real software development company, providing statistical evidence that SPL can improve time-to-market and quality (measured by the number of bugs) in the domain of m-learning applications. Therefore, in this chapter, M-SPLearning is presented from the analysis and design phases to the generation of its products. In particular, we highlight the use of SMarty and its importance in M-SPLearning application engineering. In this sense, we discussed the importance of managing variability and how approaches such as SMarty can contribute to SPL design and demystify the adoption of this reuse strategy.
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
Almeida, E. S.: Software Reuse and Product Line Engineering: Handbook of Software Engineering, pp. 825–847. Springer, Berlin (2019)
Aluko, R.: Applying unesco guidelines on mobile learning in the south african context: Creating an enabling environment through policy. Int. Rev. Res. Open Distributed Learn. 18(7), 1–21 (2017)
Apel, S., Batory, D.S., Kästner, C., Saake, G.: Feature-Oriented Software Product Lines – Concepts and Implementation. Springer, Berlin (2013)
Ardis, M., Daley, N., Hoffman, D., Siy, H., Weiss, D. (2000). Software product lines: a case study. Softw. Pract. Exper. 30(7), 825-847
Bera, M.H.G., OliveiraJr, E., Colanzi, T.E.: Evidence-based SMarty support for variability identification and representation in component models. In: Proceedings of the 17th International Conference on Enterprise Information Systems - Volume 2, ICEIS 2015, pp. 295–302. SCITEPRESS – Science and Technology Publications, Lda (2015)
Capilla, R., Bosch, J., Kang, K.C.: Systems and Software Variability Management: Concepts, Tools and Experiences. Springer Publishing Company, Incorporated, Berlin (2013)
Castrillo, M.D., Martín-Monje, E., Bárcena, E.: Mobile-based chatting for meaning negotiation in foreign language learning. In: Proceedings of the 10th International Conference on Mobile Learning (ML), pp. 49–59. Madrid, ES (2014)
Chau, M., Reith, R.: Smartphone market share (2020). https://www.idc.com/promo/smartphone-market-share/os. Accessed 29 May 2022
Eriksson, M., Börstler, J., Borg, K. Managing requirements specifications for product lines an approach and industry case study. J. Syst. Softw. 82(3), 435–447 (2009)
Falessi, D., Juristo, N., Wohlin, C., Turhan, B., Münch, J., Jedlitschka, A., Oivo, M.: Empirical software engineering experts on the use of students and professionals in experiments. Empir. Softw. Eng. 23(1), 452–489 (2018)
FalvoJr, V., Duarte Filho, N.F., OliveiraJr, E., Barbosa, E.F.: Towards the establishment of a software product line for mobile learning applications. In: International Conference on Software Engineering and Knowledge Engineering, pp. 678–683. Vancouver, CA (2014)
FalvoJr, V., Duarte Filho, N.F., OliveiraJr, E., Barbosa, E.F.: A contribution to the adoption of software product lines in the development of mobile learning applications. In: IEEE Frontiers in Education Conference. Madrid, ES, pp. 1–8 (2014)
FalvoJr, V., Marcolino, A.S., Duarte Filho, N.F., OliveiraJr, E., Barbosa, E.F.: Development and evaluation of a software product line for M-learning applications. J. Univers. Comput. Sci. 28(10), 1058–1086 (2022)
Fielding, R.T.: Architectural styles and the design of network-based software architectures. Ph.D. Thesis, University of California, Irvine, CA (2000)
Filho, N.F.D., Barbosa, E.F.: A requirements catalog for mobile learning environments. In: Annual ACM Symposium on Applied Computing, pp. 1266–1271. New York, NY (2013)
Furtado, V., OliveiraJr, E., Kalinowski, M.: Guidelines for promoting software product line experiments. In: 15th Brazilian Symposium on Software Components, Architectures, and Reuse (SBCARS), pp. 31–40. Joinville (2021)
Gacek, C., Knauber, P., Schmid, K., Clements, P.: Successful software product line development in a small organization. Fraunhofer IESE, IESE-Report No. 013.01/E (2001). https://www.researchgate.net/publication/237262870. Accessed 18 Jun 2022
Galster, M., Weyns, D., Tofan, D., Michalik, B., Avgeriou, P.: Variability in software systems: a systematic literature review. IEEE Trans. Softw. Eng. 40(3), 282–306 (2014)
Gamez, N., Fuentes, L., Troya, J.M.: Creating selfadapting mobile systems with dynamic software product lines. IEEE Softw. 32(2), 105–112 (2015)
Geraldi, R.T., OliveiraJr, E.: Towards initial evidence of SMartycheck for defect detection on product-line use case and class diagrams. J Softw. 12(5), 379–392 (2017)
Höst, M., Regnell, B., Wohlin, C.: Using students as subjects – a comparative study of students and professionals in lead-time impact assessment. Empir. Softw. Eng. 5(3), 201–214 (2000)
Hubaux, A., Boucher, Q., Hartmann, H., Michel, R., Heymans, P.: Evaluating a textual feature modelling language: Four industrial case studies. In Malloy, B., Staab, S., van den Brand, M. (eds.) Software Language Engineering, pp. 337–356. Springer, Berlin (2011)
ISO/IEC: ISO/IEC 25010:2011 – Systems and software engineering – Systems and software Quality Requirements and Evaluation (SQuaRE) – System and software quality models. International Organization for Standardization, pp. 1–34 (2011). https://www.iso.org/standard/35733.html. Accessed 18 Jun 2022
ITU: Report on the implementation of the strategic plan and the activities of the union for 2018-2019. https://bit.ly/2UF6Q1o (2019). https://itu.foleon.com/itu/annual-report-2018/home/. Accessed 29 May 2022
ITU: Measuring digital development. https://bit.ly/3aHBbC1 (2019). https://itu.foleon.com/itu/measuring-digital-development/home/. Accessed 29 May 2022
Jaring, M., Bosch, J.: Representing variability in software product lines: A case study. In International Conference on Software Product Lines, pp. 15-36. Springer, Berlin (2002)
Jedlitschka, A., Pfahl, D.: Reporting guidelines for controlled experiments in software engineering. In: International Symposium on Empirical Software Engineering, pp. 1–10 (2005)
Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (FODA) feasibility study. Technical Report, Software Engineering Institute, Carnegie Mellon University (1990). https://resources.sei.cmu.edu/library/asset-view.cfm?assetid=11231. Accessed 18 Jun 2022
Krueger, C.W.: Easing the transition to software mass customization. In: International Workshop on Software Product-Family Engineering, pp. 282–293. London (2002)
Kukulska-Hulme, A.: Mobile and personal learning for newcomers to a city. Electron. J. Foreign Language Teach. 17(1), 93–103 (2020)
Kukulska-Hulme, A., Traxler, J.: Mobile learning: A handbook for educators and trainers (2005). http://oro.open.ac.uk/6109/. Accessed 29 May 2022
Mann, H.B., Whitney, D.R.: On a test of whether one of two random variables is stochastically larger than the other. Ann. Math. Statist. 18(1), 50–60 (1947)
Marcolino, A., OliveiraJr, E., Gimenes, I., Maldonado, J.C.: Towards the effectiveness of a variability management approach at use case level. In: Proceedings of the 25th International Conference on Software Engineering and Knowledge Engineering (SEKE), pp. 214–219. Boston, MA (2013)
Marcolino, A., OliveiraJr, E., Gimenes, I., Barbosa, E.: Empirically based evolution of a variability management approach at uml class level. 38th Annual International Computers, Software & Applications Conference, vol. 1, pp. 354–363 (2014)
Marcolino, A., OliveiraJr, E., Gimenes, I.: Towards the effectiveness of the SMarty approach for variability management at sequence diagram level. In: Proceedings of the 16th International Conference on Enterprise Information Systems - Volume 2, ICEIS 2014, pp. 249–256. SCITEPRESS – Science and Technology Publications, Lda (2014)
Marcolino, A., OliveiraJr, E., Gimenes, I., Barbosa, E.F.: Empirically based evolution of a variability management approach at uml class level. In: 2014 IEEE 38th Annual Computer Software and Applications Conference, pp. 354–363. IEEE, Piscataway (2014)
Marcolino, A., OliveiraJr, E., Gimenes, I., Barbosa, E.: Variability resolution and product configuration with SMarty: An experimental study on uml class diagrams. J. Comput. Sci. 13, 307–319 (2017)
Marinho, F., Costa, A., Lima, F., Neto, J., Filho, J., Rocha, L., Dantas, V., Andrade, R., Teixeira, E., Werner, C.: An architecture proposal for nested software product lines in the domain of mobile and context-aware applications. In: Proceedings of the 4th Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS), pp. 51–60. Salvador, BA (2010)
Moreira, F., Rocha, Á.: A special issue on disruption of higher education in the 21st century due to ICTs. Telematics Inf. 35(4), 930–932 (2018)
Nah, K.C., White, P., Sussex, R.: The potential of using a mobile phone to access the internet for learning efl listening skills within a Korean context. ReCALL 20(03), 331–347 (2008)
OliveiraJr, E., Gimenes, I., Maldonado, J.C.: Systematic management of variability in UML-based software product lines. J. Univer. Comput. Sci. 16(17), 2374–2393 (2010)
O’Malley, C., Vavoula, G., Glew, J.P., Taylor, J., Sharples, M., Lefrere, P.: Guidelines for learning/teaching/tutoring in a mobile environment. Technical Report, MOBIlearn/UoN/UoB/OU (2012). https://hal.archives-ouvertes.fr/hal-00696244/document. Accessed 18 Jun 2022
Pohl, K., Böckle, G., Linden, F.J.v.d.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, New York (2005)
Shapiro, S.S., Wilk, M.B.: An analysis of variance test for normality (complete samples). Biometrika 52, 591–611 (1965)
Sharples, M.: Making sense of context for mobile learning. In: Mobile Learning, pp. 140–153. Routledge, Milton Park (2015)
Silva, L.F., OliveiraJr, E.: Empirical evaluation of VMTools-RA: A reference architecture for software variability tools. In: Anais Estendidos da X Conferência Brasileira de Software: Teoria e Prática, pp. 17–23. SBC (2019)
UNESCO: Report of the unesco mobile learning week 2019. Technical Report, United Nations Educational, Scientific and Cultural Organization (2019). https://en.unesco.org/mlw/2019. Accessed 18 Jun 2022
Van der Linden, F.J., Schmid, K., Rommes, E.: Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering. Springer, New York (2007)
West, M.: Mobile learning for teachers: Global themes (2012). http://unesdoc.unesco.org/images/0021/002164/216452E.pdf. Accessed 29 May 2022
Wexler, S., Brown, J., Metcalf, D., Rogers, D., Wagner, E.: Mobile learning: What it is, why it matters, and how to incorporate it into your learning strategy. The Learning Guild Research (2008). https://www.elearningguild.com/showfile.cfm?id=2467. Accessed 18 Jun 2022
Wohlin, C., Runeson, P., Höst, M., Ohlsson, M., Regnell, B., Wesslén, A.: Experimentation in Software Engineering. Springer Science & Business Media, Berlin (2012)
Acknowledgements
The authors would like to thank CAPES/Brazil (PROCAD Grant number 071/2013) and FAPESP/Brazil (Grant number 2012/04053-9) for supporting this work.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 Springer Nature Switzerland AG
About this chapter
Cite this chapter
FalvoJr, V., Marcolino, A.S., DuarteFilho, N.F., OliveiraJr, E., Barbosa, E.F. (2023). M-SPLearning: A Software Product Line for Mobile Learning Applications. In: OliveiraJr, E. (eds) UML-Based Software Product Line Engineering with SMarty. Springer, Cham. https://doi.org/10.1007/978-3-031-18556-4_13
Download citation
DOI: https://doi.org/10.1007/978-3-031-18556-4_13
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-18555-7
Online ISBN: 978-3-031-18556-4
eBook Packages: Computer ScienceComputer Science (R0)