IoT keretrendszer: elemzés, döntés, beavatkozás

Hasonló dokumentumok
IoT szolgáltatások fejlesztése - SensorHUB

A szoftver ereje. Charaf Hassan

IKT megoldások az ipar szolgálatában

Big Data adattárházas szemmel. Arató Bence ügyvezető, BI Consulting

Verifikáció és validáció Általános bevezető

Hibrid Cloud az új Oracle Enterprise Manager Cloud Control 13c-vel

5G technológiák és felhasználási esetek

ETL keretrendszer tervezése és implementálása. Gollnhofer Gábor Meta4Consulting Europe Kft.

Angolul: Extreme Programming, röviden: XP Agilis módszertan. Más módszertanok bevált technikáinak extrém módú (nagyon jó) használata

Pentaho 4: Mindennapi BI egyszerűen. Fekszi Csaba Ügyvezető október 6.

A Jövő Internet Nemzeti Kutatási Program bemutatása

BME-Ipar. Win-Win. Intelligens környezetek és e-technológiák. Dr. Charaf Hassan Fókuszban a Műegyetem és az ipar kapcsolata

Szolgáltatás Orientált Architektúra a MAVIR-nál

(Teszt)automatizálás. Bevezető

IBM felhő menedzsment

Petőfi Irodalmi Múzeum. megújuló rendszere technológiaváltás

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

Okos Városok T-City Szolnok. HTE INFOKOM 2014 Smart Metering & Environment

Közösség, projektek, IDE

Infor PM10 Üzleti intelligencia megoldás

Code-a-thon. intenzív brainstorming és prototípus gyártás. Birtha Ákos CTO, Attrecto Zrt.

Agilis projektmenedzsment

A cloud szolgáltatási modell a közigazgatásban

Sikerünk kulcsa: az információ De honnan lesz adatunk? Palaczk Péter

Oracle Enterprise Manager: Az első teljesértékű felhő üzemeltetési megoldás

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Intelligens eszközök fejlesztése az ipari automatizálásban Evosoft Hungary kft., Evosoft Hungary Kft.

BIG DATA ÉS GÉPI TANULÁS KÖRNYEZET AZ MTA CLOUD-ON KACSUK PÉTER, NAGY ENIKŐ, PINTYE ISTVÁN, HAJNAL ÁKOS, LOVAS RÓBERT

Internet of Things és Ipar 4.0 az agrárszektorban. Tarcsi Ádám, ELTE Informatikai Kar

Félreértések elkerülése érdekében kérdezze meg rendszergazdáját, üzemeltetőjét!

Minőségmenedzsment és Informatika Test-Driven Development

Autóipari beágyazott rendszerek Dr. Balogh, András

Fogalomtár Etikus hackelés tárgyban Azonosító: S2_Fogalomtar_v1 Silent Signal Kft. Web:

InCa NMS jelen és jövő HFC Technics szakmai napok

Párhuzamos és Grid rendszerek

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Felhasználók hitelesítése adatbiztonság szállításkor. Felhasználóknak szeparálása

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Feltörekvő technológiák: seam, drools, richfaces és társai a JBossban

READy Suite: mobil és fix kiolvasó hálózat fogyasztásmérőkhöz

Élettartam teszteknél alkalmazott programstruktúra egy váltóvezérlő példáján keresztül

Név: Neptun kód: Pontszám:

Data Integrátorok a gyakorlatban Oracle DI vs. Pentaho DI Fekszi Csaba Ügyvezető Vinnai Péter Adattárház fejlesztő február 20.

ARM Cortex magú mikrovezérlők. mbed

Click to edit Master title style

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

IoT rendszerfelügyelet

Informatikai projektellenőr szerepe/feladatai Informatika / Az informatika térhódítása Függőség az információtól / informatikától Információs

Szoftvertechnológia 12. előadás. Szoftverfejlesztési módszerek és modellek. Giachetta Roberto. Eötvös Loránd Tudományegyetem Informatikai Kar

Több mint BI (Adatból üzleti információ)

30 MB INFORMATIKAI PROJEKTELLENŐR

Globális trendek lokális stratégiák. Kovács András

Felhőszámítástechnika (Cloud Computing) helye és szerepe az on-line világ folyamataiban. Dr. Élő Gábor Széchenyi István Egyetem ITOK 2013

SAP EAM MRS és LAM megoldásainak gyakorlati bevezetési tapasztalatai

CloudCode bemutatkozás Web Mobil IoT

Papp Attila. BI - mindenkinek

Hogyan lehet megakadályozni az üzleti modellezés és az IT implementáció szétválását? Oracle BPM Suite

Kísérleti üzemek az élelmiszeriparban alkalmazható fejlett gépgyártás-technológiai megoldások kifejlesztéséhez, kipróbálásához és oktatásához

A DevOps-kultúra eszközei

WEB alapú kataszter információs rendszer Koszovóban KCLIS

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer

ORVOSTECHNIKAI ESZKÖZÖK GYÁRTMÁNYFEJLESZTÉSE AKTÍV ORVOSI ESZKÖZÖK FEJLESZTÉSE - PEMS V&V

IKT trendek és tapasztalatok a BME szemszögéből

Szoftver technológia. Projektmenedzsment eszközök. Cserép Máté ELTE Informatikai Kar 2019.

Internet of Things az új mobil forradalom

Intelligens biztonsági megoldások. Távfelügyelet

Webes alkalmazások fejlesztése Bevezetés. Célkitűzés, tematika, követelmények. A.NET Core keretrendszer

Web-fejlesztés NGM_IN002_1

Jármű ICT fejlesztési irányok és kihívások

Hatékony iteratív fejlesztési módszertan a gyakorlatban a RUP fejlesztési módszertanra építve

Szoftverminőségbiztosítás

Teszt terv Új funkció implementációja meglévı alkalmazásba

Android Pie újdonságai

Szoftver újrafelhasználás

A jövő útjai - Intelligens közlekedési rendszerek az üzemeltetésben

ITIL alapú IT környezet kialakítás és IT szolgáltatás menedzsment megvalósítás az FHB-ban

01. gyakorlat - Projektalapítás

Kiterjesztett valóság az iparban

Informatikai alkalmazásfejlesztő Információrendszer-elemző és - tervező

SDL Trados szervermegoldások. Szekeres Csaba SDL Trados partner M-Prospect Kft.

Bankkártya elfogadás a kereskedelmi POS terminálokon

Városi tömegközlekedés és utastájékoztatás szoftver támogatása


JSF alkalmazások teljesítményhangolása JMeter és dynatrace segítségével

Rubin SMART COUNTER. Műszaki adatlap 1.1. Státusz: Jóváhagyva Készítette: Forrai Attila Jóváhagyta: Parádi Csaba. Rubin Informatikai Zrt.

Tartalom. Konfiguráció menedzsment bevezetési tapasztalatok. Bevezetés. Tipikus konfigurációs adatbázis kialakítási projekt. Adatbázis szerkezet

SAS szoftverek felhasználási lehetőségei a felsőoktatásban

ALKALMAZÁS KERETRENDSZER

Programrendszerek tanúsítása szoftverminőség mérése

Microsoft SQL Server telepítése

IV.4. FELHŐ ALAPÚ BIZTONSÁGOS ADATTÁROLÁSI MÓDSZER ÉS TESZTKÖRNYEZET KIDOLGOZÁSA

Prolan Zrt. fejlesztéseiben. Petri Dániel

A hibrid DB cloud biztonsági eszköztára. Kóródi Ferenc Budapest,

Szemléletmód váltás a banki BI projekteken

Informatikai technológiák szakirány Rendszertervezés ágazat

IoT alapú mezőgazdasági adatgyűjtő prototípus fejlesztési tapasztalatok

Azonnali fizetési rendszer megvalósítása

Orvostechnikai eszközök gyártmányfejlesztése Aktív orvosi eszközök fejlesztése PEMS V&V. Nagy Katinka

Tájékoztató a Jövő Internet Nemzeti Kutatási Program előrehaladásáról: JINKA2.1 Dr. Sallai Gyula

Nagy bonyolultságú rendszerek fejlesztőeszközei

Átírás:

IoT keretrendszer: elemzés, döntés, beavatkozás Ekler Péter, BME-VIK AUT Budapest, 2016. december 6.

Tartalom BigData/IoT trendek és követelmények A SensorHUB keretrendszer Architektúra és komponensek A szoftver két értéke, karbantartható szoftverfejlesztés SensorHUB alapú megoldások 2

BigData/IoT trendek, követelmények 3

Rendszer követelmények Könnyű hozzáférés az adatokhoz A felhasználók (itt: üzleti döntéshozók) számára hozzáférhető, érthető, intuitív Konzisztens adat Sok helyről származó információk Meg kell tisztítani, közös nevezőre hozni Eltérő rendszerek eltérő terminológiát használnak ( lakcím, cím, székhely ) Ellenőrizni kell az adatot betöltés előtt Ne kerüljön hibás adat a rendszerbe Megbízható információforrás Elegendő és megfelelő adat a kérdések megválaszolásához 4

Rendszer követelmények Igények, folyamatok, adatok változásának kezelése Folyamatosan változó környezet, a rendszernek alkalmazkodnia kell Új kérdések megválaszolásához ne kelljen fejlesztés Új adat bevezetéséhez ne kelljen fejlesztés Megfelelő teljesítmény A lekérdezések nem tarthatnak órákig Úgy kell feldolgozni, előkészíteni, szervezni az adatot, hogy lehetővé tegye a gyors lekérdezéseket Biztonság Adatokhoz történő hozzáférés szabályozása 5

BigData magas szintű architektúra Adat betöltő Adat tárház Feldolgozó & megjelenítő 6

SensorHUB áttekintés 7

Mit nevezünk SensorHUB-nak IoT alkalmazás keretrendszer Fejlesztési platform IoT alkalmazások és szolgáltatások számára Adatvezérelt alkalmazásfejlesztés támogatása IoT és Industry 4.0 feladatok hatékony kezelése Útmutató és eszközkészlet BigData alkalmazások fejlesztése számára 8

SensorHUB előnyök Az IoT készülékek különböző formában generálják és várják az adatokat Integráció különböző nagyvállalati szoftverekhez Analízis és riport készítés az adatok alapján gyorsan A Big Data 4 V-je: Volume Adat skálázhatóság Variety Változó struktúrájú adatok Velocity Adat továbbítás (stream) és analízis Veracity Adatok bizonytalansága 9

SensorHUB platform képességek Riport készítés és ütemezés gyorsan Adminisztrációs felület, rendszer áttekintése Push értesítések (Android, ios, Web) Kiterjesztett Geo szolgáltatások (hely alapú események, geofence támogtás, stb.) Rugalmas adat feltöltés és lekérdezés Szolgáltatás regisztráció és felderítés 10

SensorHUB platform képességek Működő és megbízható IoT architektúra Több domain támogatása Smart city Szállítás Mezőgazdaság Egészségügy stb.. Helyi vagy felhő alapú telepítés Kompatibilitás a nagy felhő szolgáltatókkal Microservice architektúra Hatékony erőforrás felhasználás Skálázhatóság Kiterjeszthetőség Legújabb nyílt forráskódú technológiák és Hadoop alapú eszközök 11

SensorHUB architektúra és komponensek 12

Alkalmazások és szolgáltatások Adatgyűjtés, helyi szolgáltatások, megjelenítés, kommunikáció Szakterületi szoftverkomponensek Egészségügy Okos város Jármű és közlekedés Gyártósorok Ipari internet monitorozás, üzleti intelligencia, vezérlés, értesítések adatgyűjtés, tárolás, adatfeldolgozás, elemzés, keresés, megosztás, megjelenítés, adatbiztonság PUSH Személyre szabott visszajelzés Intelligencia Elemzés, Döntés 13

SensorHUB technológiai stack Nyílt forráskódú Hadoop megoldások Cloudera Hortonworks Stb. A teljes Hadoop ökoszisztéma tárolás és analitika céljából Mikroszolgáltatás alapú architektúra a gyors fejlesztéshez és kiterjesztéshez Programozási és platform technológiák: Jav Node.js Stb. Szakterületi alkalmazások a SensorHUB tetején 14

Architektúra Lazán csatolt komponensek Könnyű módosítás és kiterjesztés Batch és stream alapú feldolgozás IoT-hez igazodva Platformfüggetlen kommunikációs protokollok Integráció ipari szabványokhoz és Business Intelligence (BI) rendszerekhez 15

Szenzor integráció NarrowBand IoT (NB- IoT) SDK, Huawei trial Többféle interfész támogatása MQTT HTTP SFTP OSGi Stb. Szenzor halmazok támogatása Pl. Libelium 16

Biztonság Minden kommunikációs csatorna biztonságos (HTTPS, TLS) Érzékeny adatok anonimizálása Fejlett alkalmazás authorizáció és adat modell Hozzáfűzés alapú állomásoztató terület az adatvesztés elkerülésére 17

Admin felület Alkalmazások kezelése Kulcsok Felhasználó és hozzáférés kezelés Monitoring Service hozzáférési jogok Riporting 18

Üzleti intelligencia képességek ETL (Extract Transform Load) Monitoring Riportok kezelése Vezérlőpult készítés Analitika Feladat ütemezés SDK 19

Telepítés Cloud független telepítés Microsoft Azure Amazon Web Services Google Cloud Platform On-premises hosting Docker alapú telepítő csomagok Modul és komponens testreszabhatóság Szabványos interfészek támogatása a külső rendszerekkel való gyors együttműködéshez 20

Karbantartható fejlesztés 21

A szoftver két értéke Másodlagos érték: a szoftver viselkedése - a szoftver azt csinálja hibamentesen, amit a felhasználó elvár Elsődleges érték: Tolerálja és egyszerűen alkalmazkodik a folyamatos változásokhoz, tehát könnyű módosítani (software is soft) 22

23

Kihívások Volt már valaha dolgunk rossz kóddal? Olvasni a kódot több idő, mint írni Volt már olyan eset, hogy nem volt idő egy feladat szakszerű megoldására, a kód tisztítására, a rövid határidő miatt? Ahogy nő a kód mennyisége, úgy csökken a fejlesztők produktivitása. 24

Kód romlás (Code rot) Az alkalmazások tipikusan letisztult, tiszta architektúrával indulnak Mi történik egy bizonyos idő után? A kód elkezd rothadni (romlani): kicsi hack itt-ott, egyre több if elágazás, mígnem az egész kódban ezek dominálnak -> átláthatatlan viselkedés Nehéz karbantartani, nehéz új funkciókat hozzáadni -> a fejlesztők egy idő után áttervezésért könyörögnek 25

Kód romlás tünetei A forráskód bizonyos szempontból a terv (design) A romlott design és a rossz architektúra tipikus tünetei: Merevség Törékenység Mozdulatlanság Nyúlékonyság 26

Kód romlás Mi az okozója? Változó követelmények -> Ha olyan a kódunk/architektúránk, hogy nehéz a változásokat kezelni, az a mi hibánk -> A kód/architektúra rugalmas kell legyen a változások követésére és meg kell akadályozza a kód romlást Milyen változások miatt kezd romlani a kód? Olyan változások, amelyek új, nem tervezett dolgokat hoznak az osztály függőségek szintjén. A legtöbb tünet direkt, vagy indirekt módon a modulok közti nem megfelelő függőségre vezethető vissza. Az objektum orientált tervezési elvek segítenek a modulok közti függőségek kezelésében. 27

Kódolási elvek, megfontolások https://cleancoders.com/ 28

Mi a Clean Code? Miért van rá szükség? Mi a szoftver igazi értéke? Karbantarthatóság Folyamatos továbbfejleszthetőség és szállítás Új szoftver rendszerek fő jellemzői: Folyamatosan változó követelmények Agilis fejlesztés Csapatmunka Kódminőség Szoftver életciklus 29

Alap Clean Code elvek Elnevezés Small scope: long, descriptive name Big scope: short name Kis osztályok Egy függvény csak egy dologért felelős Rövid metódusok Maximum ~4 sor! Kevés argumentum Maximum 3 Nincs boolean argumentum Nincs kimeneti argumentum Kommentezés (kell egyáltalán?) Kikommentezett kódrészek? Függőség kezelési elvek (SOLID) 30

Agilis gyakorlatok Extreme Programming Acceptance test-driven development (ATDD) Agile Modeling Backlogs (Product and Sprint) Behavior-driven development (BDD) Continuous integration (CI) Domain-driven design (DDD) Iterative and incremental development (IID) Pair programming Planning poker 31

Mit értünk TDD alatt? Hagyományos fejlesztési ciklus (hosszú ciklus, több hónapos): Design Code Test Test-driven development ciklus (ismétlődő rövid ciklusok, pár perc): A TDD egy programozási technika, ami a következő gondolaton alapul: csak egy bukó teszt kizöldítésére írjunk production kódot A TDD három szabálya: 1. Írjunk egy elbukó tesztet 2. Írj csak annyi production kódot, ami kizöldíti a tesztet 3. Tisztítsd (refactor) a tesztet és a production kódot Red-green-refactor Test Code Design 32

Tipikus adatmozgatási folyamat 33

Adatmozgatási folyamatok tesztelése A tesztelés célja az ETL folyamatok helyes működésének ellenőrzése ETL teszt fázisok: Integrációs teszt Rendszer test Regressziós teszt Működés biztosítása Teszt stratégia: a teszt céljának egyeztetése, tesztelendő modulok, módszerek, erőforrások és környezet azonosítása. 34

Integrációs teszt A teszt célja a mappeléshez szükséges előkövetelmények ellenőrzése. A tesztelésnek igazolnia kell, hogy megfelelő számú sor került át a forrás rendszerből a cél rendszerbe. Integrációs teszt során a hibakezelés, mapping változók és további üzleti igények validálhatók. Előkövetelmények: Hozzáférés a megfelelő hálózati könyvtárakhoz Implementáció megléte és sikeres Unit tesztek Adat elérhető a teszt környezetben 35

Rendszer teszt Integrálja a rendszer komponenseit és egy egységben teszteli a működést End-to-end rendszer teszt Inicializálás és inkrementális terhelési statisztikák. Egész rendszer performancia vizsgálata. Hibakezelés verifikálása Előkövetelemények: Fejlesztés lezárása Minden integrációs teszt sikeres lefuttatása Sikeres migrálás teszt környezetből a validációs környezetbe Termék konfigurációk és adatok elérhetősége. 36

Regressziós teszt A teszt az után fut le, miután egy jelentett issue javításra került. A teszt megvizsgálja, hogy a javítás helyes volt-e és hogy nem hozott-e más hibát a rendszerbe. A tesztet akkor is végre kell hajtani, ha nem egy hiba hanem egy CR (Change Request) került megvalósításra. Előkövetelmények: Fejlesztés lezárása. Integrációs tesztek sikeres lefuttatása 37

Performancia teszt Rendszer teljesítményének vizsgálata meghatározott terhelési szint mellett Biztosítja a rendszer elvárt sebességét Feltárja a performancia szempontjából szűk keretsztmetszeteket Típusai: Load, Stress, Volume stb. 38

SensorHUB példák 39

Okos város (SOLSUN) Létező infrastruktúra energiafogyasztásának mérése Intelligens útvonal tervezés (légszennyezés elkerülése) Hőtérkép alapú áttekintés Analitika az infrastruktúra javításhoz/új tervezéséhez Heatmaps for spatial data visualization Providing analytics backed data for modern city planning 40

Szállítás, flottakezelés Flottakezelés Geo nyomkövetés Historikus adatok a gépjárművektől Telematikai adatok nyomkövetése Helyfüggő értesítések Logisztikai szabályok optimalizálása gépi tanulással 41

Prediktív karbantartás Jármű adatok analizálása Karbantartás optimalizálás és ütemezés Eseti karbantartások vizsgálata Üzemidő megnövelése Automatikus report generálás és értesítés 42

Közösségi vezetés - SocialDriving Gamification alapú vezetési stílus motiváció Gépjármű adatok monitorozása OBD2 porton és CAN buszon Jutalmazás, kuponok, visszajelzés Flottakezelés, nyomkövetés Szervíz hálózatok bevonása 43

Logisztika Logisztikai feladatok predikciója és optimalizálása Hatékony üzemanyag/energia felhasználás Navigáció kiegészítése Balesetek jelzése Jármű típusok optimalizálása 44

Mezőgazdaság Járművek nyomkövetése Intelligens útvonal tervezés a földterületen Jármű kihasználtság ellenőrzése Okos ültetés és aratás Költség és bevétel optimalizálás előre jelzésekkel 45

Connected Car Demo a Mobile World Congress 2015-re 5G hálózat késleltetésének demonstrálása https://www.youtube.c om/watch?v=w4- b6m4liso 46

Összefoglalás 47

Ki telepítette már fel? https://secondscreen-pl.herokuapp.com/#/public/store Analitika szerepe és súlya IoT területen Felhasználói visszajelzések Használati jellemzők Felhasználók elérése Használati eset példa Telepítés egyszerűsítése 48

Összegzés Moduláris telepítő csomag Nyílt forráskódú technológiák, nincs extra licence költség Platformfüggetlen fejlesztési technológiák (Java, Node.js) Ismert programozási nyelvek és eszközök támogatása Mikroszolgáltatás alapú bővíthető architektúra (push értesítések, mobil és web integráció, gyors alkalmazásfejlesztés) Intelligens skálázás és terheléselosztás Könnyen bővíthető további komponensekkel és szolgáltatásokkal Hagyományos interfészek támogatása különböző BI rendszerekhez (SAP BO, Pentaho, stb.) Nyílt forráskódú analitika 49

Köszönöm a figyelmet!