Skip to main content

Specifying Software Services for Fog Computing Architectures Using Recursive Model Transformations


Due to massive amounts of data transfer between smart devices, the adoption of mobile Internet and Internet of Things (IoT) within Cloud Computing applications has resulted in numerous issues including data decentralizing challenges. As a resolution, a new service-oriented approach called Fog Computing has appeared to resolve at least some of these. However, the design of Fog Computing architectures also lacks a systematized approach for using models aiming to abstract the fog environments’ services specification. In this context, this chapter proposes the use of a set of software engineering approaches for Fog-based architecture design , centered in UML artifacts and executing the four-step-rule-set (4SRS ) method. Here, the Fog Computing microservices are modeled in SoaML’s Service Participant , Capabilities , Service Interface , and Service Architecture diagrams. The approach is demonstrated within a research project that aims to develop a set of services for Cloud, Fog, and IoT paradigms in a distributed industrial environment.


  • Logical architectures
  • Fog Computing
  • IoT
  • Service-oriented architecture
  • SOA
  • Requirements elicitation
  • Architecture design
  • Recursive refinement
  • UML
  • SoaML
  • Microservices
  • IoT

This is a preview of subscription content, access via your institution.

Buying options

USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-3-319-94890-4_8
  • Chapter length: 29 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
USD   89.00
Price excludes VAT (USA)
  • ISBN: 978-3-319-94890-4
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Softcover Book
USD   119.99
Price excludes VAT (USA)
Hardcover Book
USD   169.99
Price excludes VAT (USA)
Fig. 8.1
Fig. 8.2
Fig. 8.3
Fig. 8.4
Fig. 8.5
Fig. 8.6
Fig. 8.7
Fig. 8.8
Fig. 8.9
Fig. 8.10
Fig. 8.11
Fig. 8.12
Fig. 8.13
Fig. 8.14
Fig. 8.15
Fig. 8.16
Fig. 8.17
Fig. 8.18
Fig. 8.19


  1. Vaquero LM, Rodero-Merino L, Gradiant Vigo L (2014) Finding your way in the fog: towards a comprehensive definition of fog computing. ACM SIGCOMM Comput Commun Rev 44:27–32

    CrossRef  Google Scholar 

  2. Machado RJ, Fernandes, JM, Monteiro P, Rodrigues H (2005) Transformation of UML models for service-oriented software architectures

    Google Scholar 

  3. Santos N, Ferreira N, Machado RJ (2017) Transition from information systems to service-oriented logical architectures: formalizing steps and rules with QVT. In: Ramachandran M, Mahmood Z (eds) Requirements engineering for service and cloud computing. Springer, Cham, pp 247–270

    CrossRef  Google Scholar 

  4. Salgado CE, Teixeira J, Santos N, Machado RJ, Maciel RSP (2015) A SoaML approach for derivation of a process-oriented logical architecture from use cases. Explor Serv Sci 201:80–94

    Google Scholar 

  5. OMG (2012) Service oriented architecture Modeling Language (SoaML) Specification

    Google Scholar 

  6. Lewis J, Fowler M (2014) Microservices: a definition of this new architectural term.

  7. de Brito MS, Hoque S, Magedanz T, Steinke R, Willner A, Nehls D, Keils O, Schreiner F (2017) A service orchestration architecture for Fog-enabled infrastructures. In: 2017 second international IEEE conference on fog and mobile edge computing (FMEC), pp 127–132

    Google Scholar 

  8. Ai Y, Peng M, Zhang K (2017) Edge computing technologies for internet of things: a primer. Digit Commun Netw

    Google Scholar 

  9. OpenFog Consortium Architecture Working Group (2017) OpenFog reference architecture for fog computing

    Google Scholar 

  10. Bonomi F, Milito R, Zhu J, Addepalli S (2012) Fog computing and its role in the internet of things. In: Proceedings of the first edition of the MCC workshop on Mobile Cloud computing—MCC ’12. p 13. ACM Press, New York, NY, USA

    Google Scholar 

  11. Banafa A (2014) What is fog computing?

  12. Satyanarayanan M, Bahl P, Caceres R, Davies N (2009) The case for VM-based cloudlets in mobile computing. IEEE Pervasive Comput 8:14–23

    CrossRef  Google Scholar 

  13. Patel M, Hu Y, Hédé IBM P, Joubert J, Thornton C, Naughton B, Roldan Ramos J, Chan C, Young V, Jin Tan S, Lynch D, Docomo N, Abeta S, Chen L, Shimizu Vodafone K, Neal A, Cosimini P, Pollard A, Klas G (2014) Mobile-edge computing—Introductory Technical White Paper.

  14. Byers CC (2017) Architectural imperatives for fog computing: use cases, requirements, and architectural techniques for fog-enabled IoT networks. IEEE Commun Mag 55:14–20

    CrossRef  Google Scholar 

  15. Datta SK, Bonnet C, Haerri J (2015) Fog computing architecture to enable consumer centric Internet of Things services. In: 2015 international symposium on consumer electronics (ISCE), IEEE, pp 1–2

    Google Scholar 

  16. Pahl C, Lee B (2015) Containers and clusters for edge cloud architectures—a technology review. In: 2015 3rd international conference on future internet of things and cloud, IEEE, pp 379–386

    Google Scholar 

  17. Oasis (2013) Topology and orchestration specification for cloud applications (TOSCA)

    Google Scholar 

  18. Bergmayr A, Troya J, Neubauer P, Wimmer M (2014) UML-based cloud application modeling with libraries, profiles, and templates. In: CloudMDE@ MoDELS, pp 56–65

    Google Scholar 

  19. 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, Berlin, Heidelberg, pp 180–187

    CrossRef  Google Scholar 

  20. Brandtzæg E, Mosser S, Mohagheghi P (2012) Towards CloudML, a model-based approach to provision resources in the Clouds. In: 8th European conference on modelling foundations and applications (ECMFA), pp 18–27

    Google Scholar 

  21. Pereira A, Machado RJ, Fernandes JE, Teixeira J, Santos N, Lima A (2014) Using the NIST reference model for refining logical architectures. In: International conference on computational science and its applications, Springer, Berlin, Heidelberg, pp 185–199

    Google Scholar 

  22. Teixeira J, Salgado C, Machado RJ (2016) Modeling an IaaS broker based on two cloud computing reference models. In: IEEE international conference on cloud engineering workshop (IC2EW), IEEE, pp 166–171

    Google Scholar 

  23. Evans E (2004) Domain-driven design : tackling complexity in the heart of software. Addison-Wesley, Boston

    Google Scholar 

  24. OMG (2003) MDA guide version 1.0.1

    Google Scholar 

  25. Kruchten P (1995) The 4+1 view model of architecture. IEEE Softw 12:42–50

    CrossRef  Google Scholar 

  26. Mell P, Grance T (2009) The NIST definition of cloud computing

    Google Scholar 

  27. Machado RJ, Fernandes J, Monteiro P, Rodrigues H (2006) Refinement of software architectures by recursive model transformations.

    CrossRef  Google Scholar 

  28. Ferreira N, Santos N, Machado RJ (2014) Modularization of logical software architectures for implementation with multiple teams. In: 2014 14th international conference on computational science and its applications, IEEE, pp. 1–11

    Google Scholar 

  29. Ferreira N, Santos N, Machado RJ, Fernandes JE, Gasevic D (2014) A V-model approach for business process requirements elicitation in cloud design. Adv Web Serv, 551–578

    Google Scholar 

Download references


This work was developed within the project UH4SP: Unified Hub for Smart Plants (Project ID 017871), under Portuguese National Grants Program for R&D projects (P2020—SI IDT), COMPETE: POCI-01-0145-FEDER-007043 and FCT—Fundação para a Ciência e Tecnologia within the Project Scope: UID/CEC/00319/2013.

Author information

Authors and Affiliations


Corresponding author

Correspondence to Nuno Santos .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this chapter

Verify currency and authenticity via CrossMark

Cite this chapter

Santos, N. et al. (2018). Specifying Software Services for Fog Computing Architectures Using Recursive Model Transformations. In: Mahmood, Z. (eds) Fog Computing. Springer, Cham.

Download citation

  • DOI:

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-94889-8

  • Online ISBN: 978-3-319-94890-4

  • eBook Packages: Computer ScienceComputer Science (R0)