Engineering Full Stack IoT Systems with Distributed Processing Architecture—Software Engineering Challenges, Architectures and Tools

  • S. Thiruchadai PandeeswariEmail author
  • S. Padmavathi
  • N. Hemamalini
Part of the Intelligent Systems Reference Library book series (ISRL, volume 185)


New Age applications that stem from IoT, 5G systems, stream analytics, real time analytics, Industry4.0 have changed the way software are designed, developed, tested and maintained. These modern applications are highly scalable, highly dynamic, involve mobility and require frequent upgrades. Traditional computing paradigms and monolithic application architecture has become inefficient for engineering these applications which demand reusability, scalability and flexibility to implement upgrades. As a result, both computing paradigms and software engineering approaches have undergone major transition to suit the dynamic requirements of these applications. These applications may be engineered as highly cohesive, loosely coupled microservices that are easy to deploy and maintain. These microservices may also be deployed in such a way that processing happens in a distributed and independent manner. Concepts such as Fog computing and edge computing together with virtualization and Containerization provide support for this distributed processing architecture. This chapter aims to survey the existing contributions that have leveraged distributed computing paradigms and microservices architecture for the development of Full stack IoT applications. This chapter presents various challenges in developing IoT applications using microservices architecture and deploying them in a distributed processing environment such as Fog. This chapter intends to highlight various architectural patterns available for engineering microservices, challenges that are encountered while engineering large scale applications as microservices and number of tools and technologies that can be leveraged for the same.


  1. 1.
    Sethi, P., Sarangi, S.R.: Internet of things: architectures, protocols, and applications. J. Electr. Comput. Eng. (2017)Google Scholar
  2. 2.
    Chiang, M., Zhang, T.: Fog and IoT: an overview of research opportunities. IEEE Internet Things J. 3(6), 854–864 (2016)CrossRefGoogle Scholar
  3. 3.
    Satyanarayanan, M., Bahl, V., Caceres, R., Davies, N.: The case for vm-based cloudlets in mobile computing. IEEE Pervasive Comput. (2009)Google Scholar
  4. 4.
    Van Eyk, E., Toader, L., Talluri, S., Versluis, L., Utǎ, A., Iosup, A.: Serverless is more: from paas to present cloud computing. IEEE Internet Comput. 22(5), 8–17 (2018)CrossRefGoogle Scholar
  5. 5.
    Nastic, S., Rausch, T., Scekic, O., Dustdar, S., Gusev, M., Koteska, B., Prodan, R.: A serverless real-time data analytics platform for edge computing. IEEE Internet Comput. 21(4), 64–71 (2018)CrossRefGoogle Scholar
  6. 6.
    Donassolo, B., Fajjari, I., Legrand, A., Mertikopoulos, P.: Fog based framework for IoT service provisioning. In: IEEE consumer communications and networking conference (2018)Google Scholar
  7. 7.
    Mehdipour, F., Javadi, B., Mahanti, A., Ramirez-Prado, G.: Fog computing realization for big data analytics. In: Fog and Edge Computing: Principles and Paradigms, pp. 259–290 (2019)Google Scholar
  8. 8.
    Pandeeswari, S.T., Padmavathi, S.: Fog based architectures for IoT: survey on motivations, challenges and solution perspectives. In: Auer, M., Ram, B.K. (eds.) Cyber-Physical Systems and Digital Twins. REV2019 2019. Lecture Notes in Networks and Systems, vol. 80. Springer, Cham (2020)Google Scholar
  9. 9.
    Williams, A., et al.: Applications and Microservices with Dockers and Containers, vol. 2. The New StackGoogle Scholar
  10. 10.
    Abbott, M.L., Fisher, M.T.: The art of scalability: scalable web architecture, processes, and organizations for the modern enterprise. Pearson Education, London (2009)Google Scholar
  11. 11.
    Michelson, B.M.: Event-driven architecture overview. Patricia Seybold Group 2(12) (2006)Google Scholar
  12. 12.
    Cockburn, A.: Hexagonal Architecture: Ports and Adapters (“Object Structural”) (2008)Google Scholar
  13. 13.
    Haloi, S.: Apache Zookeeper Essentials. Packt Publishing Ltd, Birmingham (2015)Google Scholar
  14. 14.
  15. 15.
    Webb, P., Syer, D., Long, J., Nicoll, S., Winch, R., Wilkinson, A.: Spring boot reference guide, p. 24. Part IV, Spring Boot features (2013)Google Scholar
  16. 16.
    Etcd github repository,

Copyright information

© Springer Nature Switzerland AG 2020

Authors and Affiliations

  • S. Thiruchadai Pandeeswari
    • 1
    Email author
  • S. Padmavathi
    • 1
  • N. Hemamalini
    • 2
  1. 1.Thiagarajar College of EngineeringMaduraiIndia
  2. 2.Inspirisys Solutions Ltd.ChennaiIndia

Personalised recommendations