Given the significant development of the Internet of Things (IoT) in recent years as well as the growing need for data around the world, cloud computing alone is not able to manage this volume of data. Accordingly, fog computing has just now become a popular paradigm for further data analysis in close proximity to devices generating and processing data instantly, in order to solve various problems of existing cloud-only based systems. With regard to the complexity and the wide variety of types of computational resources such as cloud servers and fog nodes, workflow scheduling is thus one of the most important challenges in fog computing environments. To address such a problem, this paper presents software architecture for scheduling multiple workflows in cloud-fog environments simultaneously. Within this scheduling, workflow clustering and priority of workflows are also taken into account. As well, architecture layers, components, as well as their major interactions are represented using 4 + 1 architectural view models. The architecture components are ultimately proposed to meet quality attributes such as availability, reliability, recoverability, interoperability, and performance. The proposed architecture evaluation is based on the Architecture Tradeoff Analysis Method (ATAM) is a scenario-based technique. Compared with previous works, various scenarios and more quality attributes are discussed within this evaluation in addition to clustering and prioritizing workflows.
This is a preview of subscription content, access via your institution.
Buy single article
Instant access to the full article PDF.
Tax calculation will be finalised during checkout.
Subscribe to journal
Immediate online access to all issues from 2019. Subscription will auto renew annually.
Tax calculation will be finalised during checkout.
Rodriguez MA, Buyya R (2018) Scheduling dynamic workloads in multi-tenant scientific workflow as a service platforms. Future Generation Computer Systems 79:739–750
Rimal BP, Maier M (2016) Workflow scheduling in multi-tenant cloud computing environments. IEEE Trans Parallel Distrib Syst 28(1):290–304
Zhao Y et al (2015) Enabling scalable scientific workflow management in the Cloud. Future Generation Computer Systems 46:3–16
Fakhfakh, F., H.H. Kacem, and A.H. Kacem. Workflow scheduling in cloud computing: a survey. in 2014 IEEE 18th International Enterprise Distributed Object Computing Conference Workshops and Demonstrations. 2014. IEEE.
Ahmed, A., Arkian, H., Battulga, D., Fahs, A. J., Farhadi, M., Giouroukis, D., ... & Wu, L. (2019). Fog computing applications: Taxonomy and requirements. arXiv preprint
Atlam H, Walters R, Wills G (2018) Fog computing and the internet of things: a review. Big data and cognitive computing. 2(2):10
Ding, R., et al. A Cost-Effective Time-Constrained Multi-workflow Scheduling Strategy in Fog Computing. in Service-Oriented Computing – ICSOC 2018 Workshops. 2019. Cham: Springer International Publishing.
Kayabay, K., et al. [WiP] A Workflow and Cloud Based Service-Oriented Architecture for Distributed Manufacturing in Industry 4.0 Context. in 2018 IEEE 11th Conference on Service-Oriented Computing and Applications (SOCA). 2018. IEEE.
Atkinson M et al (2017) Scientific workflows: Past, present and future. Elsevier, NewYork
Rodriguez MA, Buyya R (2017) Scientific workflow management system for clouds. Software Architecture for Big Data and the Cloud. Elsevier, NewYork, pp 367–387
Pierce ME et al (2015) Apache Airavata: design and directions of a science gateway framework. Concurrency and Computation: Practice and Experience 27(16):4282–4291
Merchant N et al (2016) The iPlant collaborative: cyberinfrastructure for enabling data to discovery for the life sciences. PLoS Biol 14(1):e1002342
Zhao, Y., et al. Swift: Fast, reliable, loosely coupled parallel computation. in 2007 IEEE Congress on Services (Services 2007). 2007. IEEE.
Goecks J, Nekrutenko A, Taylor J (2010) Galaxy: a comprehensive approach for supporting accessible, reproducible, and transparent computational research in the life sciences. Genome Biol 11(8):R86
Kumar R, Charu S (2015) Comparison between cloud computing, grid computing, cluster computing and virtualization. International Journal of Modern Computer Science and Applications 3(1):42–47
Hashemi SM, Bardsiri AK (2012) Cloud computing vs grid computing. ARPN journal of systems and software. 2(5):188–194
Nepal S et al (2015) TruXy: Trusted storage cloud for scientific workflows. IEEE transactions on cloud computing 5(3):428–442
Wen Z et al (2020) Dynamically Partitioning Workflow over Federated Clouds for Optimising the Monetary Cost and Handling Run-Time Failures. IEEE Transactions on Cloud Computing 8(4):1093–1107
Liu, X., et al., SwinDeW-C: a peer-to-peer based cloud workflow system, in Handbook of Cloud Computing. 2010, Springer. p. 309–332.
Deelman E et al (2016) Pegasus in the Cloud: Science Automation through Workflow Technologies. IEEE Internet Comput 20(1):70–76
Roy, B., et al. Towards a reference architecture for cloud-based plant genotyping and phenotyping analysis frameworks. in 2017 IEEE International Conference on Software Architecture (ICSA). 2017. IEEE.
Goecks J et al (2010) Galaxy: a comprehensive approach for supporting accessible, reproducible, and transparent computational research in the life sciences. Genome Biol 11(8):R86
Ralha CG et al (2019) Multiagent system for dynamic resource provisioning in cloud computing platforms. Future Generation Computer Systems 94:80–96
Deelman E et al (2015) Pegasus, a workflow management system for science automation. Future Generation Computer Systems 46:17–35
Fahringer, T., et al. ASKALON: a Grid application development and computing environment. in The 6th IEEE/ACM International Workshop on Grid Computing, 2005. 2005.
Ostermann, S., R. Prodan, and T. Fahringer. Extending grids with cloud resource management for scientific computing. in 2009 10th IEEE/ACM International Conference on Grid Computing. 2009. IEEE.
Lin, C., et al. Service-oriented architecture for VIEW: a visual scientific workflow management system. in 2008 IEEE International Conference on Services Computing. 2008. IEEE.
Abouelhoda M, Issa SA, Ghanem M (2012) Tavaxy: Integrating Taverna and Galaxy workflows with cloud computing support. BMC Bioinformatics 13(1):77
Paterson T, Law A (2009) An XML transfer schema for exchange of genomic and genetic mapping data: implementation as a web service in a Taverna workflow. BMC Bioinformatics 10(1):252
de Oliveira, D., et al. Scicumulus: A lightweight cloud middleware to explore many task computing paradigm in scientific workflows. in 2010 IEEE 3rd International Conference on Cloud Computing. 2010. IEEE.
Altintas, I., O. Barney, and E. Jaeger-Frank. Provenance collection support in the kepler scientific workflow system. in International Provenance and Annotation Workshop. 2006. Springer.
Jedrusik, S.Z.M., et al. Workflow Management System with Automatic Correction. in Multimedia Communications, Services and Security: 10th International Conference, MCSS 2020, Kraków, Poland, October 8–9, 2020, Proceedings. 2020. Springer Nature.
Liu D et al (2018) A cloud service adaptive framework based on reliable resource allocation. Future Generation Computer Systems 89:455–463
Kruchten PB (1995) The 4+ 1 view model of architecture. IEEE Softw 12(6):42–50
Cloutier R et al (2010) The concept of reference architectures. Systems Engineering 13(1):14–27
Arkian HR, Diyanat A, Pourkhalili A (2017) MIST: Fog-based data analytics scheme with cost-efficient resource provisioning for IoT crowdsensing applications. Journal of Network and Computer Applications 82:152–165
Barbacci MR (2003) Software quality attributes and architecture tradeoffs. Carnegie Mellon University, Pittsburgh, Software Engineering Institute
Berander P et al (2005) Software quality attributes and trade-offs. Blekinge Institute of Technology 97(98):19
Meng, S., et al. The “4+ 1 “view model on safe home system architecture. in 2010 IEEE International Conference on Software Engineering and Service Sciences. 2010. IEEE.
Babar MA et al (2006) An empirical study of groupware support for distributed software architecture evaluation process. J Syst Softw 79(7):912–925
Raza A et al (2019) Software Architecture Evaluation Methods: A Comparative Study. International Journal of Computing and Communication Networks 1(2):1–9
Bass, L., P. Clements, and R. Kazman, Software architecture in practice. 2003: Addison-Wesley Professional.
Mattsson, M., H. Grahn, and F. Mårtensson. Software architecture evaluation methods for performance, maintainability, testability, and portability. in Second International Conference on the Quality of Software Architectures. 2006. Citeseer.
Kazman, R., M. Klein, and P. Clements, ATAM: Method for architecture evaluation. 2000, Carnegie-Mellon Univ Pittsburgh PA Software Engineering Inst.
Hu H et al (2018) Multi-objective scheduling for scientific workflow in multicloud environment. Journal of Network and Computer Applications 114:108–122
Kumari, P. and P. Kaur, A survey of fault tolerance in cloud computing. Journal of King Saud University-Computer and Information Sciences, 2018. ISSN 1319 -1578. https://doi.org/10.1016/j.jksuci.2018.09.021
About this article
Cite this article
Davami, F., Adabi, S., Rezaee, A. et al. Fog-based architecture for scheduling multiple workflows with high availability requirement. Computing (2021). https://doi.org/10.1007/s00607-021-00905-1
- Software architecture
- Scientific workflow
- Multiple workflows
- Cloud-fog computing
Mathematics subject classification
- Primary 68N04
- Secondary 68M11