Návrh softwarových systémů - mobilita. Jiří Šebek (B6B36NSS)

Podobné dokumenty
Distribuované systémy a výpočty (14) 7/1/2008

Výpočet globálního stavu

Paralelní programování

UITS / ISY. Ústav inteligentních systémů Fakulta informačních technologií VUT v Brně. ISY: Výzkumná skupina inteligentních systémů 1 / 14

Návrh softwarových systémů - architektura softwarových systémů

OPS Paralelní systémy, seznam pojmů, klasifikace

CLOUD COMPUTING PRO MALÉ A STŘEDNÍ FIRMY

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

Optimalizaci aplikací. Ing. Martin Pavlica

Přechod na virtuální infrastrukturu

Programování II. Modularita 2017/18

InTouch Příklady architektur

Ekonomické aspekty přechodu na. ochrana vašich investic

1 Úvod 1.1 Vlastnosti programového vybavení (SW)

Distribuovan e algoritmy

Aplikovaná informatika

Co by kdyby? Simulační prostředí pro BIG data v energetice. Filip Procházka, Masarykova Univerzita, Mycroft Mind, a.s. filip.prochazka@gmail.

MASSIV. Middleware pro tvorbu online her

Příprava na zk. z KIV/DS

Robotika průmyslové roboty. Vypracoval: Bc. Ludvík Kochaníček Kód prezentace: OPVK-TBdV-AUTOROB-KE-3-STZ-KOH-002

Komunikace. Úrovová architektura protokol. Úrovová architektura protokol (2) Pednášky z distribuovaných systém

Tvorba informačních systémů

Tomáš HEBELKA, MSc. Skepse vůči cloudu. 21. června 2011 VI. Konference ČIMIB, Hotel Continental, Brno

4. Úvod do paralelismu, metody paralelizace

MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ


Doc. Ing. Daniel Kaminský, CSc. ELCOM, a.s.

Servisně orientovaná architektura Základ budování NGII

Paralelní programování

Masarykova střední škola zemědělská a Vyšší odborná škola, Opava, příspěvková organizace

TÉMATICKÝ OKRUH Softwarové inženýrství

Správce IT pro malé a střední organizace

Programovací jazyky. imperativní (procedurální) neimperativní (neprocedurální) assembler (jazyk symbolických instrukcí)

Jednotlivé hovory lze ukládat nekomprimované ve formátu wav. Dále pak lze ukládat hovory ve formátu mp3 s libovolným bitrate a také jako text.

Paralelní výpočty ve finančnictví

Dominik Vymětal. Informační technologie pro praxi 2009, Ostrava

Přehled paralelních architektur. Dělení paralelních architektur Flynnova taxonomie Komunikační modely paralelních architektur

UAI/612 - Cloudová Řešení. Návrh aplikací pro cloud

RadioBase 3 Databázový subsystém pro správu dat vysílačů plošného pokrytí

UAI/612 - Cloudová Řešení. Technologie

Tovek Server. Tovek Server nabízí následující základní a servisní funkce: Bezpečnost Statistiky Locale

Distribuovaný systém je takový systém propojení množiny nezávislých počítačů, který poskytuje uživateli dojem jednotného systému.

Aplikace je program určený pro uživatele. Aplikaci je možné rozdělit na části:

Konzistentnost. Přednášky z distribuovaných systémů

Datová věda (Data Science) akademický navazující magisterský program

Složitost Filip Hlásek

Dědění, polymorfismus

Dalibor Kačmář

Často kladené otázky. Vše, co jste chtěli vědět o UPC Business Fiber UPC BUSINESS FIBER

Aplikovaná informatika. Podklady předmětu Aplikovaná informatika pro akademický rok 2006/2007 Radim Farana. Obsah. Obsah předmětu

Systémy pro sběr a přenos dat

Rozhraní pro práci s XML dokumenty. Roman Malo

Design systému. Komponentová versus procesní architektura

A-CDM na letišti Praha Ruzyně

Softwarové komponenty a Internet

UKB. Smart Campus MU. Masarykova univerzita. RNDr. Petr Glos Mgr. Adam Kučera. Správa Univerzitního kampusu Bohunice Oddělení facility managementu

JOULE

Replikace je proces kopírování a udržování databázových objektů, které tvoří distribuovaný databázový systém. Změny aplikované na jednu část jsou

Databázové systémy. Doc.Ing.Miloš Koch,CSc.

Sítě SFN Systém pro analýzu a vizualizaci pokrytí a rušení vysílacích sítí

Vrstvy programového vybavení Klasifikace Systémové prostředky, ostatní SW Pořizování Využití

Ceník VMS Axxon NEXT

Rozšíření infrastruktury projektu Pikater Specifikace softwarového projektu

PRODUKTY. Tovek Tools

Paralelní programování

Vize ERRAC do roku 2050 Rail 2050 Vision Ing. Jaroslav Vašátko

Čas a kauzalita v DS

Migrace virtuálního prostředí VI3 na vsphere. Lukáš Radil, konzultant

Strukturovaná kabeláž seznámení

MindForge Inovační a technologický hub JAN JANČA

Implementace a rozvoj sítí 5G v České republice. Jednání k problematice rozvoje 5G Průmysl Praha

Vzdálený přístup k počítačům

CLOUD ZLÍNSKÝ KRAJ. Obchodní akademie, Vyšší odborná škola a Jazyková škola s právem státní jazykové zkoušky Uherské Hradiště

Distribuované systémy a počítačové sítě

SINEMA Server V13 Pro plně transparentní sítě Siemens, s.r.o Všechna práva vyhrazena. siemens.cz/sinema

Citidea monitorovací a řídicí centrála pro smart řešení

Hospodářská informatika

1 Nejkratší cesta grafem

Unifikovaný modelovací jazyk UML

1 Hierarchické distribuované systémy řízení

Komputerizace problémových domén

Zpráva o zhotoveném plnění

Systém Přenos verze 3.0

Ondřej Bothe, Richard Dobiš

Schvalovací proces žádostí o úvěr

11. Přehled prog. jazyků

ABBYY Automatizované zpracování dokumentů

IntraVUE Co je nového

Programové vybavení počítačů operační systémy

Virtualizace desktopů

Jako příklady typicky ch hrozeb pro IT lze uvést: Útok

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Propojujeme nejen český internet. Martin Semrád. #InstallFest Praha,

PROVÁZÁNÍ ECM/DMS DO INFORMAČNÍCH SYSTÉMŮ STÁTNÍ A VEŘEJNÉ SPRÁVY

Lovci, kupci. a sběrači. s tabletem. 24. května Alois Filip

Návrh softwarových systémů - architektura softwarových systémů

Load Balancer. RNDr. Václav Petříček. Lukáš Hlůže Václav Nidrle Přemysl Volf Stanislav Živný

SOU Valašské Klobouky. VY_32_INOVACE_02_18 IKT DNS domény. Radomír Soural. III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Projekt JetConf REST API pro vzdálenou správu

SIP Session Initiation Protocol

Transkript:

Návrh softwarových systémů - mobilita Jiří Šebek Návrh softwarových systémů (B6B36NSS)

Co to je mobilita a jak se projevuje v návrhu softwaru? 2

Mobilita Jedna z vlastností systému/ podsystému/ algoritmu Založena na migrování výpočtu z jednoho uzlu sítě na další Jak? podle typu Důležitá u distribuovaných výpočtů (dost zásadní) Využití «agentů» 3

Agenti Program, který se chová jako jiný uživatel Snaží se splnit «svůj» cíl Nepotřebuje dohled, reagují na prostředí Někdy označované jako «bots» Využití pro umělou inteligenci 4

Typy agentů Autonomní agenti Multiagentní systémy Distribuovaní agenti Mobilní agenti 5

Typy agentů Autonomní agenti Multiagentní systémy spolupráce komponent výpočtu v distribovaném prostředí Mobilní agenti 6 AI - kooperace jinak autonomních agentů Distribuovaní agenti AI - modifikace chování pro dosažení optima distribuovaní agenti s možností migrace

Co umi? Provádět cílené vyhledávání na internetu. Zkontrolovat a upřednostněte příchozí e-maily. Otestovat nové počítačové hry. Vyplňovat e-formuláře. Provádět online hledání práce. Synchronizovat profilů sociálních sítí. Sestavit přizpůsobené zprávy. Najít dobré nabídky v e-commerce.... 7

Mobilní agenti mobilní programová komponenta autonomní rozhodování o migraci mobilní agent přeruší výpočet a odmigruje na jiný počítač omezená komunikace se zdrojem 8 specifické výpočetní paradigma agent doručí výsledek výpočtu migrací

Typy mobility Mobilní kód Mobilní objekt migrace kódu a dat Mobilní agent 9 migrace kódu migrace kódu, dat a stavu

Typy mobility (jiný pohled) Slabá mobilita - Weak Mobility Silná mobilita - Strong Mobility 10 migrace kódu a dat migrace kódu, dat a stavu výpočtu

Mobilní agenti 11 Výhody redukce datových toků lokální komunikace agenta se serverem autonomní práce vhodné pro mobilní zařízení s omezenými možnostmi přesun náročnějšího výpočtu na výkonné prvky možnost práce i při odpojení klienta Problémy bezpečnost uzavřenost - typicky u skriptových řešení

Technologie pro práci s agetama Telescript - General Magic - speciální jazyky Agent Tcl / D Agents - Dartmouth College Voyager - Object Space - JVM Odyssey - General Magic - JVM Aglets - IBM - JVM 12

Aglet example Aglet = Agent+applet Aglet je mobilní Java objekt migrující mezi servery Aglets Výpočet omezený kontextem Context Více kontextů na serveru Aglet = Aglet state (variable values) + Aglet code (Java class) 13

Aglet example 14

Autonomní agenti 15 Autonomní agent může představovat jak fyzický (zvíře, stroj) tak virtuální (software) Autonomní agent se pohybuje v určitém prostředí Na základě podnětů z prostředí (kontext) se samostatně rozhoduje

Multiagentní systémy (MAS) Každý agent má nekompletní informaci nebo schopnosti pro řešení problému a disponuje jen limitovaným úhlem pohledu Neexistuje globální řízení systému Data jsou decentralizovaná Výpočty jsou prováděny asynchronně 16

Distribuovaní agenti Spolupráce komponent výpočtu v distribovaném prostředí Požadavky na distribuované agenty: 17 Bezpečnost (Safety) = Nothing bad happened yet. Přechody mezi jednotlivými stavy systému způsobené algoritmem nesmí způsobit nežádoucí stav (zhroucení systému). Živost (Liveness) = Something good eventually happens. Posloupností stavových přechodů je postupně dosahováno žádoucího stavu. Férovost = Musí se dostat na každého, resp. každý uzel v konkrétní prioritní třídě (pokud je definována) musí být obsloužen férově.

Distribuovaní agenti 18 Důležitou vlastností je zachování jeho funkčnosti při výpadku jednoho nebo několika uzlů zdroje, resp. úkoly jsou přerozděleny mezi ostatní uzly systému. Výpadek může zhoršit chování systému. Aby se zachovala funkčnost, musí být distribuována i data v několika kopiích Struktura systému (topologie, počet uzlů nebo latence) nemusí (a často není) známa předem (tedy před jeho vytvořením). Tato struktura se také může měnit v čase běhu programu (například počet uzlů se během času často mění)

Děkuji za pozornost Jiří Šebek 19