A szoftver ereje. Charaf Hassan

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

IKT megoldások az ipar szolgálatában

IoT szolgáltatások fejlesztése - SensorHUB

Informatikai képzés a BME-n, ahogy mi csináljuk. Dr. Charaf Hassan, hassan@aut.bme.hu

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

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

Intelligens közlekedés: a járműipar és járműirányítás IKT igényei, a VehicleICT projekt. Lengyel László lengyel@aut.bme.hu

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

(Teszt)automatizálás. Bevezető

Közösség, projektek, IDE

Összetett szoftverrendszerek fejlesztése Innovatív szoftver prototípusok a Codespring Mentorprogram keretein belül

A jövő Internetje. HTE Közgyűlés május 20. Dr. Szabó Róbert, e. docens.

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

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

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

Agilis projektmenedzsment

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

A mesterséges intelligencia kihívásai. Dr. Charaf Hassan, egyetemi tanár, BME-AUT

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

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

A Jövő Internet kihívásai A jövő információs és kommunikációs technológiai MTA TRB és IB közös tudományos ülés november 17.

IT trendek és lehetőségek. Puskás Norbert

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

A DevOps-kultúra eszközei

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

Az infoszféra tudást közvetítő szerepe a mai társadalomban

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

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

iphone és Android két jó barát...

Fejlesztési projektek menedzselése IBM Rational CLM termékekkel. Ker-Soft Kft. Kaszás Orsolya - üzleti tanácsadó

Üzleti lehetőségek a nyílt forráskódú fejlesztésben

COMPANY PROFILE SZOFI ALGORITHMIC RESEARCH KFT

SZTE Nyílt Forrású Szoftverfejlesztő és Minősítő Kompetencia Központ

Mobil Informatikai Rendszerek

Jövő Internet - kutatások az elmélettől az alkalmazásig. Eredménykommunikációs kiadvány

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

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

CMDB architektúra megjelenítése SAMU-val Rugalmas megoldás. ITSMF Bekk Nándor Magyar Telekom / IT szolgáltatás menedzsment központ

Adatbányászat és Perszonalizáció architektúra

CITY OF SZEGED Smart city activities Sándor NAGY Vice Mayor

extreme Programming programozástechnika

Takács Gábor mérnök informatikus, okl. mérnöktanár

Experiential Living Lab for the Internet Of Things. ELLIOT Experiential Living Labs for the Internet Of Things

TESZTELÉS A SZOFTVER ÉLETCIKLUSÁN ÁT SZOFTVERFEJLESZTÉSI MODELLEK

Informatikai Tesztek Katalógus

Gyakorlatok. VITMMA09 Okos város MSc mellékspecializáció

Smart megoldások. Ela

Fejlesztés, működtetés, felügyelet Hatékony infrastruktúra IBM szoftverekkel

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

Jövő Internet Az innováció motorja a XXI. században

Smart City feltételei

Alkalmazás és megjelenítés virtualizáció

ANDROID ALKALMAZÁS FEJLESZTÉS

IoT rendszerfelügyelet

Internet-hozzáférések teljesítményvizsgálata webböngészőben

Microsoft SQL Server telepítése

Viselkedéskutatás és Analitika az Appok Világában

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

A mobil nyelvtanár megvalósításának folyamata

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

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

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

Web-fejlesztés NGM_IN002_1

A mobilitás biztonsági kihívásai

MOBILTRENDEK A SZÁLLÁSFOGLALÁSBAN

IP megoldások a tűzjelzéstechnikában

A Jövő Internet Nemzeti Kutatási Program és eredményei

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

MOBIL PLATFORMHÁBORÚ. Török Gábor

A Digitális transzformáció elkerülhetetlen élő példák a felhőn és ködön belül. Tóth Levente Mérnök tanácsadó Cisco Magyarország

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

8. osztály. Felhasznált tankönyv: Pedellus Tankönyvkiadó, Debrecen, 2009; 2009

Új módszerek és eszközök infokommunikációs hálózatok forgalmának vizsgálatához

Internet of Things az új mobil forradalom

DIGITALIZÁCIÓ KINEK MI? AVAGY A KIKERÜLHETETLEN ÖSVÉNY A SIKERES VERSENYKÉPESSÉG ÉRDEKÉBEN.

Alternatív zártláncú tartalomtovábbítás értékesítőhelyek számára

Az IBM WebSphere Multichannel Bank Transformation Toolkit V7.1 felgyorsítja a többcsatornás alkalmazásfejlesztést

Android Pie újdonságai

Mobil szélessáv / IoT / M2M Valós megoldások valós igényekre. Aranyosné dr. Börcs Janka május 12.

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

A GN2 PROJEKT ÉS KUTATÁSI EGYÜTTMŰKÖDÉS

Áttekintés a Jövő Internet agrárgazdasági alkalmazási lehetőségeiről Az NTP FI Agrár- és Élelmiszeripari tagozat

Charaf Hassan Supporting mobile platforms with model-driven methodologies című akadémiai doktori értekezésének bírálata

Mobil készülékek programozása

Okosparkolás a ZTE rendszerével Könnyebben, kényelmesebben, gyorsabban

Tesztelési szintek Tesztautomatizálás

MVC. Model View Controller

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

Ember és robot együttműködése a gyártásban Ipar 4.0

ARM Cortex magú mikrovezérlők. mbed

Fekete Csaba Csongor Üzleti intelligencia vezető Citibank ZRt.

A szoftverfejlesztés eszközei

Gate Control okostelefon-alkalmazás

Orvostechnikai eszköz tesztelése DSS Unit test. Taliga Miklós BME-IIT

EU Future Internet PPP Program

Google App Engine az Oktatásban 1.0. ügyvezető MattaKis Consulting

Junior Java Képzés. Tematika

Hasznos és kártevő rovarok monitorozása innovatív szenzorokkal (LIFE13 ENV/HU/001092)

A hűségidő újraértelmezése. Loyalty és perszonál programok mobilalapon.

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

Átírás:

A szoftver ereje Charaf Hassan hassan@aut.bme.hu

Franciaország 1900-ban Forrás: http://www.szineshir.hu/2015/10/17-meglepo-kep-ilyennek-kepzeltek-jovot.html

Tartalom Tényadatok Trendek Eszközök Kommunikáció Szoftver Alkalmazások, alkalmazások, alkalmazások

Tartalom Tényadatok Trendek Eszközök Kommunikáció Szoftver Alkalmazások, alkalmazások, alkalmazások

Kiinduló alapok Jelenlegi világnépesség: 7,38 milliárd Ma eladott mobiltelefonok: 4 millió Internetfelhasználók száma: 3,3 milliárd Ma küldött e-mailek: 144 milliárd Most Mai Google-keresések száma: 3,1 milliárd

Mobil eszközök

Az egymilliárdos terv 1995: PC 2005: Mobiltelefon 2015: Viselhető eszköz

A mobilkommunikáció generációi 5G 2022 +? +? 2G 1992 Hang SMS 3G 2002 + Adat + Hely 4G 2012 + Videó + 3D grafika

Mobil-adatforgalom Forrás: CISCO 6,8 EB = 6,8 10 18 B = 8 milliárd CD = 1,5 milliárd DVD A 2000. év teljes forgalmának a 450-szorosa!

Tartalom Tényadatok Trendek Eszközök Kommunikáció Szoftver Alkalmazások, alkalmazások, alkalmazások

Trendek A mobileszközök képessége nő A felhőszolgáltatások erősödése A dolgok internete Internet of Things (IoT), Internet of Everything (IoE) Ipar 4.0 Sok adat Big Data Biztonság A viselhető eszközök gyors elterjedése Okos város, otthon, környezet, autó stb.

Alap Beavatkozás Érzékelés Feldolgozás

Tartalom Tényadatok Trendek Eszközök Kommunikáció Szoftver Alkalmazások, alkalmazások, alkalmazások

PC

Notebook+dokkoló

Egy eszköz!

Viselhető eszközök

Komponensek

Tartalom Tényadatok Trendek Eszközök Kommunikáció Szoftver Alkalmazások, alkalmazások, alkalmazások

Via della Conciliazione 2005. április 4. 2013. március 12. Forrás: http://www.spiegel.de/panorama/bild-889031-473266.html Forrás: http://www.spiegel.de/panorama/bild-889031-473242.html

Hongkong, 2014 Forrás: japantimes.co.jp/news/2014/09/30/asia-pacific/hong-kong-democracy-protesters-set-deadline-fordemands/

7+ milliárd eszköz 2014 Forrás: japantimes.co.jp/news/2014/09/30/asia-pacific/hong-kong-democracy-protesters-set-deadline-fordemands/

7+ milliárd eszköz 2014 50+ milliárd eszköz 2022 Forrás: japantimes.co.jp/news/2014/09/30/asia-pacific/hong-kong-democracy-protesters-set-deadline-fordemands/

7+ milliárd eszköz 2014 Átbocsátó képesség 50+ milliárd eszköz 2022 Forrás: japantimes.co.jp/news/2014/09/30/asia-pacific/hong-kong-democracy-protesters-set-deadline-fordemands/

Hongkong, 2014 7+ milliárd eszköz 2014 Átbocsátó képesség Más is van 50+ milliárd eszköz 2022 Forrás: japantimes.co.jp/news/2014/09/30/asia-pacific/hong-kong-democracy-protesters-set-deadline-fordemands/

A tapintható internet 25ms RTT 1ms Forrás: http://ostsee-spezial.de/?p=148

Mobilkommunikáció 2G 1992 Hang SMS 3G 2002 + Adat + Hely 4G 2012 + Videó + 3D grafika 5G 2022 + Tapintható internet + M2M + Tb/s + Megbízható és biztonságos > 10 Gbit/s per user < 1 ms RTT > 10k sensors per cell < 10 8 outage < 10 12 security 10x10 heterogeneity

Alkalmazások Játékipar

Alkalmazások Játékipar Egészségügy, távoli felügyelet Forrás: http://www.dvice.com/archives/2011/05/kinect_controll_1.php http://images.gizmag.com/hero/8456_51207105642.jpg

Alkalmazások Játékipar Egészségügy, távoli felügyelet Energiaszektor

Alkalmazások Játékipar Egészségügy, távoli felügyelet Energiaszektor Gyártósorok http://jerryrushing.net/wpcontent/uploads/2012/04/robotic_assembly_line1.jpg http://www.witchdoctor.co.nz/wpcontent/uploads/2013/01/robot-fabrication-station.jpg

Alkalmazások Játékipar Egészségügy, távoli felügyelet Energiaszektor Gyártósorok Közlekedés

Tartalom Tényadatok Trendek Eszközök Kommunikáció Szoftver Alkalmazások, alkalmazások, alkalmazások

A szoftver horizontális szerepe

A szoftverek ma már mindennapi életünk meghatározó részei A szoftver a különféle szakterületek versenyképességének meghatározója Az IKT átszövő erejének köszönhetően, az ipar által megfogalmazott igények figyelembe vételével, a kutatási eredmények gyors átfutási idővel, különböző szakterületeken kerülnek hasznosításra 36

Az alkalmazások és szolgáltatások iránti megnövekedett igény Az alkalmazások és szolgáltatások iránt megnövekedtek a mennyiségi és minőségi, ipari és társadalmi elvárások Fenntartható fejlesztési folyamatok jelentik a versenyképességet 37

Alkalmazási szakterületek 38

Mi kell a jó szoftverhez?

Tézis 1 Tapasztalatok alapján valódi eredményeket a különböző képességeket felvonultató CSAPATOK tudnak elérni, igaz ez az innovációra és a szoftverfejlesztésre is! 41

Tézis 2 Tudatosan kialakított egységes stáb (kutatók, mérnökök, jogászok, közgazdászok, marketingesek) és Egységes elvek mentén működő folyamatok, melyek révén az ötletek megvalósíthatók és termékesíthetők, majd piacra vihetők. 43

Tapasztalatokra építve Az iparral való együtt dolgozásra alapozottan látjuk, hogy > Az iparnak igénye van működő megoldásokra, hatékony módszereket szeretné használni a fejlesztési, megvalósítási folyamatokat. > Ezeket megfelelő minőségben, megfelelően tálalva és a kornak megfelelő szolgáltatásokkal feladatunk elkészíteni és rendelkezésre bocsátani. 44

TODO listánk 1. Teljesítőképes stáb, mely lefedi az innovációs folyamat (fejlesztési folyamat) egészét 2. Egységes elvek mentén működő, tudatosan kialakított folyamatok 3. Vezetői elköteleződés, folyamatos AKTÍV támogatás, rendszeres ráerősítés 45

A szoftver két értéke

Mi a szoftvermérnök feladata?

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)

Ergonómia A képek forrása: http://www.autohificlub.cz/forum/13-ostatni/1827601-hi-fi-do-garaze http://techcrunch.com/2015/05/12/analyst-says-iphone-6s-will-have-a-luxe-rose-gold-option/ http://www.samsung.com/global/microsite/galaxynoteedge/noteedge_design.html

UX A képek forrása: http://www.readwave.com/chairs_s19235 http://www.designoffice.hu/termek/herman_miller-celle http://www.inside-lighting.ru/kresla/kreslo-placentero.html

Ergonómia és felhasználói élmény Az élmény, amit a termék kivált a felhasználóban, amikor valós körülmények között használja. Jesse James Garrett: The Elements of the User Experience

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.

Code rot (kód romlás) 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

Kód romlás A romlott design és a rossz architektúra tipikus tünetei > Merevség - Folyamatosan nehezebb a kód módosítás - A változtatás költsége magas > Törékenység - Apró változtatás egy modulon egy másik modulban okozhat hibás viselkedést - Például: egy bug javítás elront egy látszólag független részt > Mozdulatlanság - Egy rendszer mozdulatlan, ha a részeit nem lehet könnyedén modulokba kiszervezni és máshol újra hasznosítani - Például: a login modul újra felhasználható legyen - Mozdulatlanság elkerülési stratégiák: rétegek kialakítása (adatbázis és UI különválasztása) > Nyúlékonyság A kód struktúra nyúlékonysága - Új feature implementálását könnyebb megoldani hackeléssel, mint új kód írásával/új osztály bevezetésével A környezet nyúlékonysága - Fordítás, teszt futtatás és becheckolás körülményes és sok ideig tart

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.

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 Refactoring Scrum meetings (Sprint planning, Daily scrum, Sprint review and retrospective) Test-driven development (TDD) Agile testing Timeboxing Use case User story Story-driven design Velocity tracking

Modern fejlesztő eszközök Continous Integration > Jenkins Kódminőség ellenőrzés > Lint, Sonar, stb. Elosztott verziókezelő! > Pl.: GIT További folyamatosan fejlődő eszközök

Test Driven Development 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): Test Code Design 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

Cserkész szabály Nem elég jól megírni a kódot, hanem tisztán is kell tartani Hagyd a tábort tisztábban, mint ahogy kaptad! > Folyamatos kód karbantartás! Szoftverfejlesztéskor érdemes követni, hogy a kód mindig karbantartható maradjon.

Mi a szoftvere valódi ereje? A szoftver látványosan meg tudja változtatni egy rendszer képességeit! Napjainkban a rendszerek 99.9%-a tartalmaz valamilyen szoftveres komponenst! Az adatok mennyisége robbanásszerűen nő! A hatékony algoritmusok szerepe továbbra is kiemelkedő! Óriási felelősség a szoftverfejlesztőkön! > Egy apró bugnak végzeges következménye lehet! > Tesztelés szerepe egyre jelentősebb!

Szolgáltatás-centrikus üzleti modell

Eltérő mobil platformok

Mobil alkalmazások http://www.pureoxygenmobile.com/how-many-apps-in-each-app-store/

Mobilalkalmazás fejlesztők

Multiplatform alkalmazásfejlesztés 66

Multiplatform IoT 67

SensorHUB Framework http://sensorhub.autsoft.hu/ https://www.aut.bme.hu/sensorhub

SensorHUB SensorHUB framework > Testreszabható BigData keretrendszer > IoT technológiák > Multi-domain környezet: smart city, vehicle, health, agriculture

A SensorHUB komponensei Szenzorok, adatgyűjtés, lokális adatok feldolgozása, kliensoldali megjelenítés, adatmegosztás Felhőalapú háttérrendszer BigData-analízis és -menedzsment Domainspecifikus komponensek Alkalmazások, szolgáltatások, BI-integráció

Adatvizualizáció Integráció üzleti intelligencia rendszerekhez (BI) Reportok támogatása Adatbányászat

Dinamikus reportok

Domain Specific Applications and Services @ Data Monitoring BI Reports and Dashboards Data collection, local services, visualization Domain Specific Software Components Health Smart City Vehicles Production Lines Industry 4.0 RAW Data Data Query Interface Analytic. DB 1 Domain Specific Automated Data Analysis Push Notification Service Hadoop Analytic DB 2 Monitoring Interface Personalized feedback, global and social data, PUSH notification/alerts Big Data Management Analytic DB n Business Intelligence and Reporting https://www.aut.bme.hu/sensorhub

Tartalom Tényadatok Trendek Eszközök Kommunikáció Szoftver Alkalmazások, alkalmazások, alkalmazások

VehicleICT Az autó mint IoT-eszköz

VehicleICT architektúra Adatgyűjtés, helyi szolgáltatások, megjelenítés OBD2 CAN Bus RAW Data Automated Data Analysis Analytic. DB 1 Analytic DB 2 Push Notification Service Monitoring Interface Monitoring Data Hadoop Analytic DB n Business Intelligence and Reporting BI Reports and Dashboards Vehicle Data Query Interface Személyre szabott visszajelzés, közösségi integráció, PUSH értesítések Alkalmazások és szolgáltatások

Fogyasztás, károsanyag-kibocsátás

Élő térkép, helyfüggő értesítések

Együttműködés meglévő navigációs szoftverekkel (lebegő ablak)

Android Wear jövő a jelenben

SocialDriving okosóra-megoldás

SOLSUN Okosváros a közvilágítás felhasználásával

SOLSUN

SOLSUN SmartCity domain Sustainable Outdoor Lighting and Sensory Urban Network sustainable smart city infrastructure reduce energy consumption and air polution 5 international partners EU project period 2015-2017 integrated technology platform http://www.solsun.co.uk/index.php/solsun

Szenzorok kezelése web, Big Data

Mobilkliens Szenzorok áttekintése Valós idejű adat Előzmények, statisztikák Útvonaltervezés szenzorértékek alapján > Pl.: biciklisek számára kevésbé szennyezett útvonal ajánlása

Összefoglalás A szoftver egyre jobban dominál a rendszerekben A szoftverfejlesztés 5. generációba lépett A kommunikáció 5. generációja új lehetőséget biztosít a szoftvereseknek Ügyelni kell a szoftver kód tisztaságára A sikeres szoftver tevékenységekhez kellenek jól képzett csapatok A szoftver kutatások a szoftver megbízhatóságára és a fejlesztés produktivitására fókuszálnak.

Köszönöm a figyelmet! hassan@aut.bme.hu