The Journal of Supercomputing

, Volume 75, Issue 12, pp 8012–8058 | Cite as

Improving cloud architectures using UML profiles and M2T transformation techniques

  • Adrián Bernal
  • M. Emilia Cambronero
  • Alberto NúñezEmail author
  • Pablo C. Cañizares
  • Valentín Valero


In this paper, we present an approach with the goal to improve the underlying architecture of cloud systems. For this, we propose UML2Cloud, a framework targeted at modeling and checking cloud systems. The main core of UML2Cloud uses UML profiles to capture the main elements of a cloud system including, among other elements, its underlying architecture and the interaction with clients. Additionally, UML2Cloud uses Model-to-Text transformation techniques to automatically generate configuration documents representing complex cloud scenarios. In this work, we use these documents as input for a cloud simulation tool, called Simcan2Cloud, to simulate the behavior of different systems. Thus, the analysis of the performance results obtained from the simulations allows us to draw some conclusions about how to improve the efficiency of the studied clouds by adjusting the hardware resource configuration.


Modeling UML profile Cloud MDA Performance analysis 



This work was partially supported by the Spanish Ministry of Science and Innovation (cofinanced by European Union FEDER funds) projects DArDOS, reference TIN2015-65845-C3, subprojects 1-R and 2-R, FAME, reference RTI2018-093608-B, subprojects C31 and C32, TIN2015-66972-C5 subproject 2-R, the Comunidad de Madrid project FORTE-CM under Grant S2018/TCS-4314, and the Junta de Comunidades de Castilla-La Mancha (Spain) project SBPLY/17/180501/000276 (cofunded with FEDER funds, EU).


  1. 1.
    Amazon Elastic Compute Cloud (2019) Accessed 30 Jan 2019
  2. 2.
    Baumgart I, Heep B, Krause S (2007) Oversim: a flexible overlay network simulation framework. In: 2007 IEEE global internet symposium, pp 79–84Google Scholar
  3. 3.
    Bergmayr A, Troya J, Neubauer P, Wimmer M, Kappel G (2014a) UML-based cloud application modeling with libraries, profiles, and templates. In: CloudMDE@ MoDELS, pp 56–65Google Scholar
  4. 4.
    Bergmayr A, Wimmer M, Kappel G, Grossniklaus M (2014b) Cloud modeling languages by example. In: 2014 IEEE 7th International Conference on Service-Oriented Computing and Applications, IEEE, pp 137–146.
  5. 5.
    Bernal A, Cambronero ME, Valero V, Núñz A, Cañizares PC (2019) A framework for modeling cloud infrastructures and user interactions. IEEE Access 7:43269–43285. CrossRefGoogle Scholar
  6. 6.
    Binz T, Breitenbücher U, Kopp O, Leymann F (2014) TOSCA: portable automated deployment and management of cloud applications. In: Bouguettaya A, Sheng QZ, Daniel F (eds) Advanced web services. Springer, New York, pp 527–549. CrossRefGoogle Scholar
  7. 7.
    Breitenbücher U, Binz T, Kopp O, Leymann F, Schumm D (2012) Vino4tosca: a visual notation for application topologies based on TOSCA. In: Meersman R, Panetto H, Dillon T, Rinderle-Ma S, Dadam P, Zhou X, Pearson S, Ferscha A, Bergamaschi S, Cruz IF (eds) On the move to meaningful internet systems: OTM 2012. Springer, Berlin, pp 416–424. CrossRefGoogle Scholar
  8. 8.
    Buyya R, Ranjan R, Calheiros RN (2009) Modeling and simulation of scalable cloud computing environments and the CloudSim toolkit: challenges and opportunities. In: 7th High Performance Computing and Simulation Conference (HPCS’09), IEEE Computer Society, pp 1–11Google Scholar
  9. 9.
    Byrne J, Svorobej S, Giannoutakis K, Tzovaras D, Byrne P, Östberg P, Gourinovitch A, Lynn T (2017) A review of cloud computing simulation platforms and related environments. In: 7th International Conference on Cloud Computing and Services Science (CLOSER’17), pp 651–663.
  10. 10.
    Caglar F, An K, Shekhar S, Gokhale A (2013) Model-driven performance estimation, deployment, and resource management for cloud-hosted services. In: Proceedings of the 2013 ACM workshop on domain-specific modeling, ACM, pp 21–26Google Scholar
  11. 11.
    Calheiros RN, Ranjan R, Beloglazov A, Rose CAFD, Buyya R (2011) Cloudsim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Softw Pract Exp 41(1):23–50CrossRefGoogle Scholar
  12. 12.
    Casanova H, Legrand A, Quinson M (2008) SimGrid: a generic framework for large-scale distributed experiments. In: 10th International Conference on Computer Modeling and Simulation, UKSIM’ 08, pp 126–131Google Scholar
  13. 13.
    Castañé G, Núñez A, Llopis P, Carretero J (2013) \(\text{ E-mc }^2\): a formal framework for energy modelling in cloud computing. Simul Model Pract Theory 39:56–75CrossRefGoogle Scholar
  14. 14.
    Cañizares PC, Núñez A, Merayo MG (2018) Mutomvo: mutation testing framework for simulated cloud and hpc environments. J Syst Softw 143:187–207. CrossRefGoogle Scholar
  15. 15.
    Das AK, Hong J, Goswami S, Platania R, Lee K, Chang W, Park SJ, Liu L (2017) Augmenting amdahl’s second law: a theoretical model to build cost-effective balanced HPC infrastructure for data-driven science. In: 2017 IEEE 10th International Conference on Cloud Computing (CLOUD’17), pp 147–154Google Scholar
  16. 16.
    Dietrich I, Dressler F, Schmitt V, German R (2007) SYNTONY: network protocol simulation based on standard-conform UML 2 models. In: Proceedings of the 2nd International Conference on Performance Evaluation Methodologies and Tools, ICST (Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering), p 21Google Scholar
  17. 17.
    DMTF (2013) Open Virtualization Format (OVF), v2.0.0. Accessed 30 Jan 2019
  18. 18.
    Eurostat Statistics Explained (2018) Cloud computing—statistics on the use by enterprises. Accessed 30 Jan 2019
  19. 19.
    Fakhfakh F, Kacem HH, Kacem AH (2017) Simulation tools for cloud computing: a survey and comparative study. In: IEEE/ACIS 16th International Conference on Computer and Information Science (ICIS’17), pp 221–226Google Scholar
  20. 20.
    Filelis-Papadopoulos CK, Gravvanis GA, Kyziropoulos PE (2018) A framework for simulating large scale cloud infrastructures. Future Gener Comput Syst 79:703–714. CrossRefGoogle Scholar
  21. 21.
    Guillén J, Miranda J, Murillo JM, Canal C (2013) A UML profile for modeling multicloud applications. In: European Conference on Service-Oriented and Cloud Computing, Springer, pp 180–187CrossRefGoogle Scholar
  22. 22.
    Kleppe AG, Warmer J, Bast W (2003) MDA explained: the model driven architecture: practice and promise. Addison-Wesley Longman Publishing Co., Inc, BostonGoogle Scholar
  23. 23.
    Kliazovich D, Bouvry P, Khan SU (2012) GreenCloud: a packet-level simulator of energy-aware cloud computing data centers. J Supercomput 62(3):1263–1283CrossRefGoogle Scholar
  24. 24.
    Küster JM, Abd-El-Razik M (2007) Validation of model transformations—first experiences using a white box approach. In: Kühne T (ed) Models in software engineering. Springer, Berlin, pp 193–204CrossRefGoogle Scholar
  25. 25.
    Leymann F, Fehling C, Mietzner R, Nowak A, Dustdar S (2011) Moving applications to the cloud: an approach based on application model enrichment. Int J Coop Inf Syst 20(03):307–356CrossRefGoogle Scholar
  26. 26.
    Mellor SJ, Clark T, Futagami T (2003) Model-Driven development: guest editor’s introduction. IEEE Softw 20(5):14–18CrossRefGoogle Scholar
  27. 27.
    Meng FJ, Zhang X, Chen P, Xu JM (2017) Driftinsight: detecting anomalous behaviors in large-scale cloud platform. In: 2017 IEEE 10th International Conference on Cloud Computing (CLOUD’17), pp 230–237Google Scholar
  28. 28.
    Mens T, Van Gorp P (2006) A taxonomy of model transformation. Electron Notes Theoret Comput Sci 152:125–142CrossRefGoogle Scholar
  29. 29.
    Microsoft Azure (2019) Accessed 30 Jan 2019
  30. 30.
    Mishra SK, Puthal D, Sahoo B, Jena SK, Obaidat MS (2018) An adaptive task allocation technique for green cloud computing. J Supercomput 74(1):370–385. CrossRefGoogle Scholar
  31. 31.
    Mohan N, Varma K, Choi E (2016) Study and comparison of virtual machine scheduling algorithms in open source clouds. In: Advanced multimedia and ubiquitous engineering: futureTech & MUE. Springer, Berlin, pp 349–355Google Scholar
  32. 32.
    Nashaat H, Ashry N, Rizk R (2019) Smart elastic scheduling algorithm for virtual machine migration in cloud computing. J Supercomput. CrossRefGoogle Scholar
  33. 33.
    Núñez A, Hierons RM (2015) A methodology for validating cloud models using metamorphic testing. Ann Telecommun 70(3–4):127–135CrossRefGoogle Scholar
  34. 34.
    Núñez A, Fernández J, García JD, García F, Carretero J (2010) New techniques for simulating high performance MPI applications on large storage networks. J Supercomput 51(1):40–57CrossRefGoogle Scholar
  35. 35.
    Núñez A, Fernández J, Filgueira R, García F, Carretero J (2012) SIMCAN: a flexible, scalable and expandable simulation platform for modelling and simulating distributed architectures and applications. Simul Model Pract Theory 20(1):12–32CrossRefGoogle Scholar
  36. 36.
    Obeo (2007) Acceleo generator. Accessed 30 Jan 2019
  37. 37.
    OMG (2008) MOF model to text transformation language (MOFM2T) v1.0. Accessed 30th Jan 2019
  38. 38.
    OMG (2011) Business process model & notation (BPMN). Accessed 30 Jan 2019
  39. 39.
    OMG (2014a) MDA Guide revision 2.0. Accessed 30 Jan 2019
  40. 40.
    OMG (2014b) Object constraint language (OCL) v2.4. Accessed 30 Jan 2019, Accessed 13 Nov 2016
  41. 41.
    OMG (2014c) UML Profile Specifications. Accessed 30 Jan 2019
  42. 42.
    OMG (2015) UML Specification version 2.5. Accessed 30 Jan 2019
  43. 43.
    OMG (2016) MOF Query/View/Transformation v1.3. Accessed 30 Jan 2019
  44. 44.
    RightScale (2017) Accessed 24 Nov 2018
  45. 45.
    SCALR (2017) Accessed 24 Nov 2018
  46. 46.
    Schmidt DC (2006) Guest editor’s introduction: model-driven engineering. Computer 39(2):25–31. CrossRefGoogle Scholar
  47. 47.
    Soldani J, Binz T, Breitenbücher U, Leymann F, Brogi A (2016) Toscamart: a method for adapting and reusing cloud applications. J Syst Softw 113:395–406. CrossRefGoogle Scholar
  48. 48.
    Steinbach T, Kenfack HD, Korf F, Schmidt TC (2011) An extension of the OMNeT++ INET framework for simulating real-time ethernet with high accuracy. In: Proceedings of the 4th International ICST Conference on Simulation Tools and Techniques (SIMUTools ’11), pp 375–382Google Scholar
  49. 49.
    Tan Y, Wu F, Wu Q, Liao X (2019) Resource stealing: a resource multiplexing method for mix workloads in cloud system. J Supercomput 75(1):33–49CrossRefGoogle Scholar
  50. 50.
    Teixeira S, Agrizzi BA, Filho JGP, Rossetto S, de Lima Baldam R (2017) Modeling and automatic code generation for wireless sensor network applications using model-driven or business process approaches: A systematic mapping study. J Syst Softw 132:50–71. CrossRefGoogle Scholar
  51. 51.
    Tiso A, Reggio G, Leotta M (2014) Unit testing of model to text transformations. In: Proceedings of the Workshop on Analysis of Model Transformations co-located with ACM/IEEE 17th International Conference on Model Driven Engineering Languages & Systems (MoDELS 2014), Valencia, Spain, September 29, 2014, pp 14–23.
  52. 52.
    Varga A, Hornig R (2008) An overview of the OMNeT++ simulation environment. In: Proceedings of the 1st International Conference on Simulation Tools and Techniques for Communications, Networks and Systems & Workshops (Simutools ’08), pp 1–10Google Scholar
  53. 53.
    Veselý V, Marek M, Hykel T, Rysavý O (2015) Skip this paper-rinasim: Your recursive internetwork architecture simulator. CoRRGoogle Scholar
  54. 54.
    Yigitbasi N, Iosup A, Epema D, Ostermann S (2009) C-Meter: a framework for performance analysis of computing clouds. In: 9th IEEE/ACM international symposium on cluster computing and the grid, pp 472–477Google Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2019

Authors and Affiliations

  1. 1.Albacete Research Institute of InformaticsAlbaceteSpain
  2. 2.Software Systems and Computation DepartmentComplutense University of MadridMadridSpain

Personalised recommendations