CME – A Web Application Framework Learning Technique Based on Concerns, Micro-Learning and Examples

  • Daniel CorreaEmail author
  • Fernando Arango Isaza
  • Raúl Mazo
  • Gloria Lucia Giraldo
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10845)


Nowadays the use of Web Application Frameworks has been the default choice to develop software applications inside the web domain. These frameworks provide many benefits such as: faster development, enhanced security, and clearer structure of code. However, web application frameworks have a high learning curve and each time someone wants to learn a framework, a recurrent question arises: How to reduce that learning curve and be able to use a new web application framework in a short time? Several learning techniques have been used in the context of frameworks; for instance, example-based learning, tutorials, cookbooks, and tools. Nevertheless, those approaches have their own limitations and the question about what is the best way to learn soon those frameworks remains open. In this paper, we introduce a new web application framework learning technique called CME (Concerns, Micro-learning and Examples). This technique defines a customized learning path that a novice developer should follow to learn to use a web application framework. The learning path was built as a mix of concerns, micro-learning and example-based learning concepts. To validate this technique, we carry out a quasi-experiment about a web application framework learning and the development of small web applications with: (i) the use of CME and (ii) the use of a cookbook. The quasi-experiment results showed preliminary evidence that when using CME, novice developers become more operational to develop small web applications in a reduced period of time compared with the use of a cookbook.


Framework learning Micro-learning Web Application Frameworks Example-based learning 


  1. 1.
    Garrido, A., Firmenich, S., Grigera, J., Rossi, G.: Data-driven usability refactoring: tools and challenges. In: International Workshop on Software Mining, pp. 52–55. IEEE (2017)Google Scholar
  2. 2.
    Tak, G.K., Ojha, G.: Advanced query-based multi-tier approach towards detection and prevention of web attacks. In: IJCA Proceedings on International Conference on Recent Advances and Future Trends in Information Technology (iRAFIT), pp. 21–25 (2012)Google Scholar
  3. 3.
    Montilva, J.A., Barrios, J.: A component-based method for developing web applications. In: 5th International Conference on Enterprise Information Systems, Angers, France (2003)Google Scholar
  4. 4.
    Edwin, N.M.: Software frameworks, architectural and design patterns. J. Softw. Eng. Appl. 7(8), 670 (2014)CrossRefGoogle Scholar
  5. 5.
    Vuksanovic, I.P., Sudarevic, B.: Use of web application frameworks in the development of small applications. In: MIPRO International Convention, pp. 458–462. IEEE (2011)Google Scholar
  6. 6.
    Hou, D.: Investigating the effects of framework design knowledge in example-based framework learning. In: International Conference on Software Maintenance (ICSM), pp. 37–46. IEEE (2008)Google Scholar
  7. 7.
    Aguiar, A., David, G.: Patterns for effectively documenting frameworks. In: Noble, J., Johnson, R., Avgeriou, P., Harrison, N.B., Zdun, U. (eds.) Transactions on Pattern Languages of Programming II. LNCS, vol. 6510, pp. 79–124. Springer, Heidelberg (2011). CrossRefGoogle Scholar
  8. 8.
    Krasner, G.E., Pope, S.T.: A cookbook for using the model-view-controller user interface paradigm in Smalltalk-80. J. Object-Oriented Program. 1(3), 26–49 (1998)Google Scholar
  9. 9.
    Flores, N., Aguiar, A.: DRIVER–A platform for collaborative framework understanding. In: IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 783–788 (2015)Google Scholar
  10. 10.
    Correa, D., Arango, F., Zapata, C.M.: Driving the learning of a web application framework by using separation of concerns. In: International Conference on Internet and Web Applications and Services (ICIW), pp. 76–82 (2014)Google Scholar
  11. 11.
    Correa, D., Zapata, C.M., Arango, F.: Learning of web application frameworks components. In: IADIS International Conference Applied Computing (AC), pp. 155–162 (2013)Google Scholar
  12. 12.
    Caeiro-Rodríguez, M., Llamas-Nistal, M., Anido-Rifón, L.: A separation of concerns approach to educational modeling languages. In: Frontiers in Education Conference, pp. 9–14, IEEE (2006)Google Scholar
  13. 13.
    Shull, F., Lanubile, F., Basili, V.R.: Investigating reading techniques for object-oriented framework learning. IEEE Trans. Software Eng. 26(11), 1101–1118 (2000)CrossRefGoogle Scholar
  14. 14.
    Sun, G., Cui, T., Guo, W., Beydoun, G., Xu, D., Shen, J.: Micro learning adaptation in MOOC: a software as a service and a personalized learner model. In: Li, F.W.B., Klamma, R., Laanpere, M., Zhang, J., Manjón, B.F., Lau, R.W.H. (eds.) ICWL 2015. LNCS, vol. 9412, pp. 174–184. Springer, Cham (2015). CrossRefGoogle Scholar
  15. 15.
    Job, M.A., Ogalo, H.S.: Micro learning as innovative process of knowledge strategy. Int. J. Scientific Technol. Res. 1(11), 92–96 (2012)Google Scholar
  16. 16.
    Dounas, L., Mazo, R., Salinesi, C., El Beqqali, O.: Continuous monitoring of adaptive e-learning systems requirements. In: The XII ACS/IEEE International Conference on Computer Systems and Applications (AICCSA), Marrakech-Morocco (2015)Google Scholar
  17. 17.
    Monsalve, E.S., Vallejo, P., Mazo, R., Correa, D.: Transparency as a learning strategy to teach Software Engineering. In: The Proceeding of the 12 Colombian Conference on Computing (CCC), Cali, Colombia (2017)Google Scholar
  18. 18.
    Wang, P.: Comparison of Four Popular Java Web Framework Implementations: Struts1. X, WebWork2. 2X, Tapestry4, JSF1. 2. Master’s Thesis, University of Tampere (2008)Google Scholar
  19. 19.
    Correa, D.: Learning of Web Application Frameworks based on Concerns, Micro-Learning and Examples. Master’s Thesis, Universidad Nacional de Colombia (2015)Google Scholar
  20. 20.
    CME repository – GitHub, Last accessed 12 Jan 2018
  21. 21.
    Caeiro-Rodrıguez, M., Marcelino, M.J., Llamas-Nistal, M., Anido-Rifón, L., Mendes, A.J.: Supporting the modeling of flexible educational units. J. Univ. Comput. Sci. 13(7), 980–990 (2007)Google Scholar
  22. 22.
    Cobaleda, L.V., Mazo, R., Becerra, J.L.R., Duitama, J.F.: Reference software architecture for improving modifiability of personalised web applications-a controlled experiment. Int. J. Web Eng. Technol. 11(4), 351–370 (2016)CrossRefGoogle Scholar
  23. 23.
    Hug, T.: Didactics of Microlearning: Concepts, Discourses and Examples. Waxmann Verlag GmbH, Germany (2007)Google Scholar
  24. 24.
    Carver, J., Jaccheri, L., Morasca, S., Shull, F.: A checklist for integrating student empirical studies with research and teaching goals. Empirical Softw. Eng. 15(1), 35–59 (2010)CrossRefGoogle Scholar
  25. 25.
    Easterbrook, S., Singer, J., Storey, M.A., Damian, D.: Selecting empirical methods for software engineering research. In: Shull, F., Singer, J., Sjøberg, D.I.K. (eds.) Guide to Advanced Empirical Software Engineering, pp. 285–311. Springer, London (2008). CrossRefGoogle Scholar
  26. 26.
    CodeIgniter Web Framework. Last accessed 12 Jan 2018
  27. 27.
    CodeIgniter Spanish Official Documentation. Last accessed 12 Jan 2018

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  • Daniel Correa
    • 1
    Email author
  • Fernando Arango Isaza
    • 1
  • Raúl Mazo
    • 2
    • 3
  • Gloria Lucia Giraldo
    • 1
  1. 1.Universidad Nacional de ColombiaMedellínColombia
  2. 2.Université Panthéon Sorbonne - CRIParisFrance
  3. 3.GiDITICUniversidad EafitMedellínColombia

Personalised recommendations