Skip to main content

Fog Computing for Smart Services

Computer Science and Mathematics, Second Cycle
1 ali 2 year
Course director:

Vlado Stankovski

Hours per week – 2. semester:

Completed course Software Development Processes (63254).

Content (Syllabus outline)

Fog computing is an umbrella concept that encompasses five different technologies and their adaptation: the Internet of Things, Artificial Intelligence, Cloud Computing, Blockchain, and Digital Twins. The adaptation, integration and self-adaptation of these technologies allows for the development of many new powerful smart services and applications. To ensure reliable and trustworthy fog computing applications, it is necessary to focus on improving the entire software development process in terms of adaptability, flexibility, software models, application design, implementation quality, operational costs, and similar.
1. Basic concepts of fog computing
a. Definition of the concept of fog computing
b. Understanding five key technologies: Internet of Things, Artificial Intelligence, the Cloud-to-Edge Computing Continuum, Blockchain and Digital Twins
c. Importance, methods and techniques for technology integration
2. Software self-adaptation
a. Automating tasks
b. Architecture based adaptation
c. Runtime models
d. Goal-driven adaptation
e. Guarantees under uncertainties
f. Control-based adaptation
3. DevOps impact
a. The impact of DevOps practices on application development in the context of fog computing
b. Using container technologies to facilitate the development and distribution process
c. The potential of using artificial intelligence methods in fog computing applications
4. Development of smart applications in practice
a. Understanding the complexity of developing smart applications in the context of fog computing
b. Showing the whole development process of a basic smart application
c. Emphasis on adapting existing models of various smart services and applications according to specific requirements
5. The concept of trust and the development of a trustworthy application
a. Importance of trust in fog computing
b. Strategies for assuring trust in applications
c. Addressing ethical issues and regulatory requirements
d. Analysis of security aspects and data protection
6. Use cases and potentials:
a. Exploring potential applications in IoT, AI, cloud computing and blockchain
b. Overview of use cases in the Slovenian smart specialization program
c. Analysis of requirements for integrating fog computing technologies into existing service models
d. Business Model Canvas
Each topic will be explored and presented in more detail so that students gain a comprehensive insight into the concept, practices and applications of fog computing and its future possibilities.

  1. Naresh Kumar Sehgal, Pramod Chandra P. Bhatt, Cloud Computing: Concepts and Practices, DOI:, Springer International Publishing AG, ISBN: 978-3-319-77839-6, XXIX, 269
  2. Tatiana Gayvoronskaya, Christoph Meinel, Blockchain: Hype or Innovation, DOI:, Springer Nature Switzerland AG, ISBN: 978-3-030-61558-1, VIII, 126
  3. Christoph Herwig, Ralf Pörtner, Johannes Möller, Digital Twins: Applications to the Design and Optimization of Bioprocesses, DOI:, Springer Nature Switzerland AG, ISBN: 978-3-030-71655-4, VII, 254
  4. Joakim Verona, DevOps: Harness the power of DevOps to boost your skill set and make your IT organization perform better, Packt Publishing Ltd, ISBN: 978-1788392570, 240
Objectives and competences

The student will gain software engineering competencies at the cross-section of the above mentioned technology types. Passing this course will result in an improved understanding of the use cases, the functional and non-functional requirements, the current approaches to addressing various dependability, Quality of Service, and trust-related concerns, the major technologies that are commonly used in order to address the whole spectrum of requirements, including orchestration, and the overall integration proces of self-adaptive applications.

Intended learning outcomes

Knowledge of the overall software engineering process for the development of complex, decentralised, Artificial Intelligence-based fog computing applications.

Learning and teaching methods

Lectures; laboratory work, where the students follow the process of developing a multi-tier smart application; seminar work (project), where the students develop an integrated smart application by following the DevOps practice; consultations; study of literature.


Continuing work (homeworks, quizzes, and other)
Final (written and oral exam)
Grading: 6-10 pass, 5 fail (according to the rules of University of Ljubljana)

Lecturer's references

GEC, Sandi, KOCHOVSKI, Petar, LAVBIČ, Dejan, STANKOVSKI, Vlado. Multi-party smart contract for an AI services ecosystem : an application to smart construction. Concurrency and computation: practice and experience. [Print ed.]. Aug. 2023, vol. 35, iss. 18, [article no.] e6895, str. 1-19, ilustr. ISSN 1532-0626., DOI: 10.1002/cpe.6895. [COBISS-SI-ID 100471555]
SHKEMBI, Klevis, KOCHOVSKI, Petar, PAPAIOANNOU, Thanasis G., BARELLE, Caroline, STANKOVSKI, Vlado. Semantic Web and blockchain technologies: convergence, challenges and research trends. Journal of web semantics. Dec. 2023, vol. 79, article no. 100809, str. 1-17, ilustr. ISSN 1570-8268., DOI: 10.1016/j.websem.2023.100809. [COBISS-SI-ID 172331523]
KOCHOVSKI, Petar, STANKOVSKI, Vlado. Building applications for smart and safe construction with the DECENTER Fog Computing and Brokerage Platform. Automation in construction. [Print ed.]. Apr. 2021, vol. 124, str. 1-9, ilustr. ISSN 0926-5805.,, DOI: 10.1016/j.autcon.2021.103562. [COBISS-SI-ID 48826627]
KOCHOVSKI, Petar, STANKOVSKI, Vlado, GEC, Sandi, FATICANTI, Francescomaria, SAVI, Marco, SIRACUSA, Domenico, KUM, Seungwoo. Smart contracts for service-level agreements in edge-to-cloud computing. Journal of grid computing. Dec. 2020, vol. 18, no. 4, str. 673-690, ilustr. ISSN 1570-7873., DOI: 10.1007/s10723-020-09534-y. [COBISS-SI-ID 32701443]
TAHERIZADEH, Salman, STANKOVSKI, Vlado. Dynamic multi-level auto-scaling rules for containerized applications. The computer journal. [Online ed.]. febr. 2019, letn. 62, št. 2, str. 174-197, ilustr. ISSN 1460-2067., B: Computer and Communications Networks and Systems, DOI: 10.1093/comjnl/bxy043. [COBISS-SI-ID 8415073]
ŠTEFANIČ, Polona, CIGALE, Matej, JONES, Andrew C., KNIGHT, Louise, TAYLOR, Ian, ISTRATE, Cristiana, SUCIU, George, ULISSES, Alexandre, STANKOVSKI, Vlado, TAHERIZADEH, Salman, SALADO, Guadalupe Flores, KOULOUZIS, Spiros, MARTIN, Paul, ZHAO, Zhiming. SWITCH workbench - a novel approach for the development and deployment of time-critical microservice-based cloud-native applications. Future generation computer systems. [Print ed.]. 2019, letn. 99, št. okt., str. 197-212, ilustr. ISSN 0167-739X., DOI: 10.1016/j.future.2019.04.008. [COBISS-SI-ID 8790113]
KOCHOVSKI, Petar, GEC, Sandi, STANKOVSKI, Vlado, BAJEC, Marko, DROBINTSEV, Pavel D. Trust management in a blockchain based fog computing platform with trustless Smart Oracles. Future generation computer systems. [Print ed.]. Dec. 2019, vol. 101, str. 747-759, ilustr. ISSN 0167-739X., DOI: 10.1016/j.future.2019.07.030. [COBISS-SI-ID 1538278083]
KOCHOVSKI, Petar, DROBINTSEV, Pavel D., STANKOVSKI, Vlado. Formal quality of service assurances, ranking and verification of cloud deployment options with a probabilistic model checking method. Information and software technology. [Print ed.]. maj 2019, letn. 109, str. 14-25, ilustr. ISSN 0950-5849., DOI: 10.1016/j.infsof.2019.01.003. [COBISS-SI-ID 8665441]