Tedenski povzetek

  • Splošno

    Spoštovani! Dear Student:

    Predavanja bodo potekala v živo: vsak torek med 9-12. uro v učilnici P02. Lectures will take place in P02 on Tuesdays between 9-12.

    Vaje bodo potekale v živo: vsako sredo med 10-12. uro v učilnici PR08 - Lab work will take place in PR08 on Wednesdays between 10-12.

    Permanentni link za pogovore https://meet.jit.si/FogComputing 

    Permanent link for online discussions:  https://meet.jit.si/FogComputing 

    Povezava na MS Teams posnetke / MS Teams video recordings:  https://teams.microsoft.com/l/team/19%3atLnyhjqpRv1BSbLcXGwIB588pwxXOdZc6QjAiDC4KfQ1%40thread.tacv2/conversations?groupId=4049df32-54e6-4afc-b3a5-42fc6f5e9a32&tenantId=a6cc90df-f580-49dc-903f-87af5a75338e

    Welcome to our Fog Computing for Smart Applications course!

    Lep pozdrav, / Best regards, 

    Vlado Stankovski

    Izpitni režim: / Exam: 

    I. Štiri obvezne domače naloge, ki bodo ocenjene. / Four obligatory homeworks that will be graded. 

    II. Projektna naloga: (a) razvoj sistema/aplikacije; (b) pisni izdelek in prezentacija v zadnjem tednu semestra. / Project work: (a) system/application development; (b) written handout and presentation in the last week of the semestre. 

    III. Teoretična naloga: (c) v skrajnem primeru. / III. Theoretical work: (c) if absolutely necessary.

    Ocena izpita = (I. (povprečna ocena) in (II. (povprečna ocena) ali III. (ocena))) /2, zaokrožena navzgor. 

    Grade = (I. (average grade) and (II. (average grade) or III. (grade))) /2, rounded up. 

  • 14-19 februar

    1. teden: Uvod v računalništvo v megli. Računalništvo v megli in z njimi povezani koncepti. Virtualizacija, federacije in druge oblike združevanja ponudnikov računalništva v oblaku. Računalniški kontinuum: internet stvari, računalništvo na robu, v megli in v oblaku. Motivacija za računalništvo v megli: tokovi masovnih podatkov - Problem štirih “V”-jev masovnih podatkov. Organizacijski in nadzorni slogi. Možnosti decentralizacije. Primeri razplastenih arhitektur. Dinamično spreminjanje obratovalnih pogojev aplikacij računalništva v megli. Energetska učinkovitost, zasebnost, varnost in druge visokonivojske zahteve. DevOps proces za razvoj aplikacij računalništva v megli. Vloga semantike pri procesu integracije. Laboratorijske vaje: Delo se bo začelo s preizkusom algoritmov in modelov globokega učenja (npr. s TensorFlow). Študentje bodo pozvani k izvedbi predloga projekta do konca tretjega tedna.

    Week 1: Introduction to fog computing. Fog computing and related concepts. Virtualisation and multi-cloud environments. The computing continuum: the Internet of Things, edge, fog and cloud computing. Motivation for fog computing: Big Data pipelines – the four Vs of the Big Data problem. Organisation and control styles. Prospects of decentralisation. Related layered architectures and examples. Variability in fog computing. Energy efficiency and other high-level concerns. Overall DevOps process for delivering fog computing applications. The role of semantics in the integration process. Laboratory work: The work will begin by trying out ML models (e.g. with TensorFlow). The students will be reminded about the requirement to submit a project proposal by the end of the third week.

  • 21-26 februar

    2. teden: Motivacija: pametne aplikacije in okolja. Strategija pametne specializacije v Sloveniji - področja in primeri uporabe. Analize zahtev. Večstopenjski načrti aplikacij. Samoprilagajanje sistema in aplikacij. Nameščanje in izvajanje. Laboratorijske vaje: Nadaljevanje iz prvega tedna.

    Week 2: Motivation: smart applications and environments. The strategy of smart specialisation in Slovenia – application areas and application examples. Requirements analyses. Multi-tier application designs. System and application adaptation approaches. Implementation and deployment styles. Laboratory work: Continued from the first week. 

    Viri:

    Članki so dostopni tudi na: https://zenodo.org/ 

    1. SWITCH Workbench: https://www.sciencedirect.com/science/article/abs/pii/S0167739X1831094X

    2. ENTICE VM and container images repository: https://onlinelibrary.wiley.com/doi/abs/10.1002/cpe.4264

    3. Smart and safe construction applications: https://www.sciencedirect.com/science/article/abs/pii/S0926580521000133

    4. Trust management in fog computing: https://www.sciencedirect.com/science/article/abs/pii/S0167739X19301281

    5. Smart contracts for Service Level Agreements: https://link.springer.com/article/10.1007/s10723-020-09534-y

    6. Requirements specification for the ENTICE environment: https://ec.europa.eu/research/participants/documents/downloadPublic?documentIds=080166e5ad2fc9c0&appId=PPGMS

    7. Multi-criteria decision making for Edge-to-Cloud computing: https://hrcak.srce.hr/239113

    8. Current and future challenges in software engineering for services and applications: https://www.sciencedirect.com/science/article/pii/S1877050916320944?via%3Dihubs should also include analysis of the work of the cluster of software engineering including future outlook: https://eucloudclusters.files.wordpress.com/2017/11/se4sa-contribution-to-wp-2020-2027.pdf, projects: https://eucloudclusters.wordpress.com/software-engineering-for-services-and-applications/ 

    9. Data mining in grid computing environments: https://www.sciencedirect.com/science/article/abs/pii/S0167739X07000933

    10. Experiences in building a mOSAIC of clouds: https://link.springer.com/article/10.1186/2192-113X-2-12

    11. EBSI use cases analysis and other relevant literature, https://ec.europa.eu/cefdigital/wiki/display/CEFDIGITAL/EBSI 

    12. Formal QoS assurances, ranking, and verification of cloud deployment options: https://www.sciencedirect.com/science/article/abs/pii/S0950584919300059?via%3Dihub

    13. Monitoring self-adaptive applications in edge computing frameworks: https://www.sciencedirect.com/science/article/pii/S016412121730256X

    14. Auto-scaling rules for containerized applications: https://academic.oup.com/comjnl/article/62/2/174/4993728

    15. QoS for video streams: https://link.springer.com/article/10.1007/s10723-017-9415-1

    16. Multi-party smart contract for an AI services ecosystem: https://onlinelibrary.wiley.com/doi/10.1002/cpe.6895


  • 28 februar - 5 marec

    3. teden: Pristop združitve informacij. Primeri digitalnega dvojčka, razširjene virtualnosti, obveščanja in kibernetskih sistemov. Laboratorijske vaje bo prvotno aplikacijo za globoko učenje razširilo s funkcijo obveščanja. Predavatelj bo ocenil prve predloge projektov. Laboratorijske vaje: Razširitev aplikacije z 2. tedna s funkcijo obveščanja (npr. e-pošta, Slack).

    Week 3: Information fusion approaches. Digital twin, augmented virtuality, notification and cyber-physical systems examples.The laboratory work will extend the initial ML application with a notification functionality. The lecturer will accept and/or agree the initial project proposals. Laboratory work: Extend the application from week 2 with notification functionality (e.g. email, Slack).

  • 7-12 marec

    4. teden: Fenomen in praksa DevOps za računalništvo v megli. Korak za korakom skozi vse faze DevOps. Napredna delovna okolja (workbench) za programsko opremo, kot je SWITCH za časovno kritične aplikacije v oblaku. Pristop k orkestraciji. Laboratorijske vaje: študentje bodo sestavili in preizkusili delovno orodje Fabric8.

    Week 4: The DevOps culture and practice for fog computing. Step-by-step through all DevOps phases. Advanced workbenches for software engineering such as SWITCH for time-critical cloud applications. Approaches to orchestration. Laboratory work: the students will set-up and try out the Fabric8 workbench. 

  • 14-19 marec

    5. teden: Računalništvo zahtev za pametne storitve in aplikacije. Funkcionalne in nefunkcionalne zahteve. Kakovost storitve. Zahteve na visoki ravni. Energetska učinkovitost. Operativni stroški. Uporaba poenotenega jezika modeliranja za zajemanje zahtev. Kompromisi. Laboratorijske vaje: izdelava diagramov UML in analiza zahtev konkretne aplikacije, analiza postopka razvoja aplikacije globokega učenja.

    Week 5: Requirements engineering for smart services and applications. Functional and Non-Functional Requirements. Quality of Service. High-level requirements. Energy efficiency. Operational costs. Using UML to capture requirements. Trade-offs. Laboratory work: UML based requirements engineering for concrete problems at hand including the ML application under development.

    Reference: 

    [1] https://en.wikipedia.org/wiki/Requirements_analysis

    [2] https://en.wikipedia.org/wiki/Use_case

    [3] https://en.wikipedia.org/wiki/Unified_Modeling_Language

    [4] https://en.wikipedia.org/wiki/Scrum_(software_development)

    [5] Primer: http://www.entice-project.eu/deliverables  (glej D2.2)

    [6] Bolj poglobljeno: https://www.slideshare.net/JoaquinLeal/requirements-engineering-fundamentals-second-edition-73258516

  • 21-26 marec

    6. teden: Programski in računalniški viri ter nadzor. Programska oprema in računalniški viri v celotnem spektru računalništva roba do oblaka. Modeli virov. Pristopi spremljanja na več ravneh. Infrastruktura, vsebnik, virtualka, meritve ravni aplikacije. Primerjava sistemov za spremljanje. Pristopi modeliranja kvalitete storitev. Zagotavljanje, razvrščanje in preverjanje možnosti uvajanja v oblak. Laboratorijske vaje: Uvedena bodo orodja za spremljanje izbrane aplikacije globokega učenja, kot je npr. Prometheus z vizualizacijo Banana.

    Week 6: Software and computing resources and monitoring. Software and computing resources across the edge-to-cloud spectrum. Resource models. Multi-level monitoring approaches. Infrastructure, container, Virtual Machine (VM), Application level metrics. Monitoring systems comparison. QoS modelling approaches. Assurances, ranking and verification of cloud deployment options. Laboratory work: Monitoring tools such as Prometheus with Banana visualisation will be deployed to monitoring the chosen ML application.

    Reference

    [1] Monitoring self-adaptive applications within edge computing frameworks: A state-of-the-art review, https://www.sciencedirect.com/science/article/pii/S016412121730256X


  • 28. marec - 2. april

    7. teden: Upravljanje slik vsebnikov in virtualnih strojev. Slike vsebnikov in virtualnih strojev. Teorija in praksa priprave, fragmentacija, optimizacija, dostava in delovanje slik ter shrambe slik vsebnikov in virtualnih strojev. Primer optimizirane shrambe slik virtualnih strojev ENTICE. Laboratorijske vaje: Predstavitev orodja Docker Compose. Namestitev algoritma in modela za globoko učenje v vsebnik. Izvedbe različnih operacij z vsebniki. Ob koncu tedna bodo študentje predstavili trenutno stanje svojega projekta.

    Week 7: Container and VM images management. Anatomy of a container and VM images. Theory and practice of preparation, fragmentation, optimisation, delivery and images repositories operation. Laboratory work: Introduction to Docker compose. Containerise the ML application and the monitoring system. The ENTICE repository of VM images. Perform different operations with containers. At the end of this week, the students will present the current status of their project, and will pass a mid-semester milestone. 

  • 4-9. april

    8. teden: Načrtovanje večstopenjskih aplikacij. Pristopi k reševanju različnih nefunkcionalnih zahtev z zasnovo pametne aplikacije. Računalništvo na robu. Izvedba vodov masovnih podatkov od roba do oblaka. Uporaba ponudnikov hibridnih oblakov (infrastruktura kot storitev, platforma kot storitev, programje kot storitev, predmet kot storitev, itd.) Laboratorijske vaje: študentje bodo lahko primerjali obstoječe zasnove in se ukvarjali z različnimi izboljšavami za obravnavo aplikativnih zahtev. Nadaljevali bodo z delom na projektu.

    Week 8: Multi-tier application designs. Approaches for addressing various non-functional requirements with the design of the smart application. Computing at the Edge. Implementation of Big Data pipelines from the edge to the cloud. Using hybrid cloud providers (IaaS, PaaS, SaaS etc.). Laboratory work: the students will have the ability to compare their existing designs and consider various improvements to address the application requirements. They will proceed with their project work.

  • 11-16. april

    9. teden: Uporaba metod globokega učenja v aplikacijah računalništva v megli. Razvrstitev zahtevnejših algoritmov in modelov globokega učenja in postopki njihovega nameščanja v vsebnike. Taksonomija metod umetne inteligence ter njihove možnosti za implementacijo v vsebnikih. Večstopenjska postavitev vsebnikov (mikrostoritev) od roba omrežja vse do oblaka. Postopki optimizacije izbranih metod globokega učenja za različne namene (npr. varčevanje z energijo, pospeševanje, itd.) Laboratorijske vaje: spremljanje kakovosti storitve različnih namenskih različic aplikacij globokega učenja.

    Week 9: Implementation of AI methods for fog computing.  Taxonomy and containerisation of AI methods. Splitting AI methods to be deployed between the edge and the cloud. Optimisation of AI methods for different purposes (e.g. saving energy, speed-up etc.) Laboratory work: QoS monitoring of different-purpose variants of the ML application.

  • 18-23. april

    10. teden: Primerjalne analize sistemov tokov masovnih podatkov. Platforme in integracija interneta stvari. Večstopenjski tokovi masovnih podatkov. Zahteve za elastičnost in razširljivost. Vrste podatkov. Tok podatkov. Dostava podatkov k procesom v primerjavi z dostavo procesov k podatkovnim virom (npr. na rob omrežja). Čezmejno upravljanje podatkov, npr. z namenom ohranjanja zasebnosti. Laboratorijske vaje: preizkus napredne platforme interneta stvari (npr. SensiNact). Namestitev algoritma in modela za globoko učenje v vsebnik.

    Week 10: Big Data pipelines and data management principles in fog computing. IoT platforms and integration. Multi-tier Big Data pipelines. Elasticity and scalability requirements. Data types. Data streams. Moving data to processes versus moving processes to data. Cross-border data management. Laboratory work: Trying out an advanced IoT platform (e.g. SensiNact). Integration requirements with the containerised ML application. 

  • 4. maj - 10. maj

    12. teden: Uvod v tehnologijo veriženja blokov. Zgodovina, zasnova, tehnologija in filozofski vidiki tehnologije veriženja blokov (blockchaina). Uskladitev tehnologije veriženje blokov z računalništvom v megli. Poslovni modeli interneta stvari, umetne inteligence, računalništva v oblaku in tehnologije veriženja blokov. Pristopi za monetizacijo storitev. Primeri storitev in aplikacij, ki temeljijo na tehnologiji veriženju blokov. Laboratorijske vaje: zasnova pristopa monetizacije za izbrano aplikacijo globokega učenja.

    Week 12: Introduction to blockchain. History, design, technology and philosophical aspects of blockchain. Blockchain alignment with fog computing. IoT, AI, cloud and blockchain based business models. Ledger designs. Public and private ledgers. Examples of blockchain-based services and applications. Laboratory work: design a monetisation approach for the ML application.

    Na vajah se bomo v teh zadnjih nekaj tednih naučili uporabiti Fri žetone.
    In the lab we shall learn in the last few weeks how to use our Fri tokens. 
    Specimen

    • Business Model Canvas Datoteka Uploaded 15/05/20, 08:10