MODELL ALAPÚ MEGKÖZELÍTÉS TESZT ÚJRAFELHASZNÁLÁSHOZ INTELLIGENS OTTHON ESETÉN

Hasonló dokumentumok
Metamodellezés. Simon Balázs BME IIT, 2011.

Modellalkotás UML-ben

Adatbázis rendszerek I

A szoftverfolyamat és s a tesztelés

Bánsághi Anna 1 of 67

Tartalom Kontextus modellek Viselkedési modellek Adat-modellek Objektum-modellek CASE munkapadok (workbench)

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


Programozás 1. 2.gyakorlat

Futásidőbeli verifikáció

Modellinformációk szabványos cseréje. Papp Ágnes, Debreceni Egyetem EFK

Modell alapú tesztelés: célok és lehetőségek

Android 5.0.

Summer of LabVIEW The Sunny Side of System Design

A szoftver tesztelés alapjai

Mindig tiéd az irányítás!

Optimális szabályozás: jobb ellenőrizhetőség, magasabb üzembiztonság, kiemelkedő szerviz.

Success Elementary Kompetencia Alapú Tanmenet. Pearson Education Magyarország Megjegyzések:

Models are not right or wrong; they are more or less useful.

UML (Unified Modelling Language)

A SZOFTVERTECHNOLÓGIA ALAPJAI

Bánsághi Anna Bánsághi Anna 1 of 54

Több mint csupán ivarzásmegfigyelés. Nedap ivarzásmegfigyelés. Ivarzás-megfigyelés az egészségi állapot folyamatos figyelésével

Utolsó módosítás:

Modell alapú tesztelés mobil környezetben

AZ IPSO LEGÚJABB SZÁRÍTÓGÉP VEZÉRLÉSE A TÚLSZÁRÍTÁSGÁTLÓ TECHNOLÓGIÁN (OVER-DRY PREVENTION TECHNOLOGY) ALAPSZIK

AZ AUTONÓM KÖZÚTI JÁRMŰVEK TESZTELÉSI ÉS VALIDÁLÁSI KIHÍVÁSAI

Objektumorientált tesztelés

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

VERATEMP+ ÉRINTÉSNÉLKÜLI KLINIKAI HŐMÉRŐ. Használati útmutató

Mikroszkopikus közlekedési szimulátor fejlesztése és validálása (Development and validating an urban traffic microsimulation)

A NEMZETI MOBILFIZETÉSI ZRT. STRATÉGIÁJÁNAK BEMUTATÁSA

RIA Rich Internet Application

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

Több app. Egy kódbázis

FCE 75. H Bőrtisztító stift. Használati útmutató

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

BYC08HE Fűtő termosztát programozása Használati útmutató

Csomagolási költségcsökkentés egyedi automatizálási megoldásokkal

Használati alapú és modell alapú tesztelés kombinálása szolgáltatásorientált architektúrák teszteléséhez az ipari gyakorlatban

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

Utolsó módosítás:

8. A fehérjék térszerkezetének jóslása

Dialízis gép software komponensét alkotó unitok modul tesztje követelmény és struktúra alapon

Automatikus infrastruktúra menedzsment és alkalmazástelepítés

Informatikai rendszertervezés

BIZTONSÁGTECHNIKAI ADATLAP MULTEMP PS No /2006/EC szerint Oldal: 1 / 6 Kiadás dátuma: Felülvizsgálva:

Miért is transzformáljunk modelleket? Varró Dániel

TERMÉKTERVEZÉS PANDUR BÉLA TERMÉKTERVEZÉS

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

Szoftverprototípus készítése. Szoftverprototípus készítése. Szoftverprototípus készítése

JAVA PROGRAMOZÁS 3.ELŐADÁS

Komponens alapú fejlesztés. Szoftvertechnológia elıadás

Kinek szól a könyv? Hogyan épül fel a könyv? Megjelenés előtti szoftver A hálózati kézikönyv tartalma A könyv támogatása Kérdések és megjegyzések

OAF Gregorics Tibor: Minta dokumentáció a 3. házi feladathoz 1.

Knorr-Bremse Fékrendszerek Kft.

org.hibernate.lazyinitializationexception: illegal access to loading collection at

SZAKKÉPZÉSI KERETTANTERV a(z) MOBILALKALMAZÁS FEJLESZTŐ SZAKKÉPESÍTÉS-RÁÉPÜLÉSHEZ

Szoftverminőségbiztosítás

C# osztályok. Krizsán Zoltán

HALLGATÓI KÉRDŐÍV ÉS TESZT ÉRTÉKELÉSE

Az F# nyelv erőforrásanalízise

Komponens modellek. 3. Előadás (első fele)

ZP 120LCD UPS. Minőségi Energiaforrás. on-line IPARI ALKALMAZÁSOK ELECTRO-MEDICAL BERENDEZÉSEK BIZTONSÁGI BERENDEZÉSEK

Book Template Title. Author Last Name, Author First Name

Telepítési és használati útmutató Intelligens termosztát (Saswell)

Közösség, projektek, IDE

Skills Development at the National University of Public Service

Programozás III CSOMAGOK. Az összetartozó osztályok és interfészek egy csomagba (package) kerülnek.

A DevOps-kultúra eszközei

Tűzoltósági távfelügyeleti rendszerek II.

Az UML2 és a modell-vezérelt alkalmazásfejlesztés

Integrált keretrendszer

Zárójelentés. Az autonóm mobil eszközök felhasználási területei, irányítási módszerek

Verkehrsmeldungen am UML

WEBES ALKALMAZÁSOK TERVEZÉSE, FEJLESZTÉSÉNEK MENETE. Tarcsi Ádám

Nyílt hozzáférésű informatikai rendszerek BME VIMM 5294

SZET GYAK1: Követelmények ellenőrzése

UML Feladatok. UML Feladatok

TM Terhelés-szabályozott mozdony dekóder

Az anyagdefiníciók szerepe és használata az Architectural Desktop programban

Entity Framework alapú adatbáziselérés

Forráskód generálás formális modellek alapján

Beszédfelismerés és videó keresés web2 módra

A NEMZETI MOBILFIZETÉSI ZRT. SMART MOBILITY VÍZIÓJA

2008 Lakásklíma katalógus

axióma alapú automatizált teszteléssel

Előzmények

AZ EURÓPAI KÖZÖSSÉGEK BIZOTTSÁGA

Starkné dr. Werner Ágnes

Biztonságtechnikai Adatlap

Bánsághi Anna 2014 Bánsághi Anna 1 of 31

Emberi erőforrás menedzsment Exact megoldásokkal

FIATAL MŰSZAKIAK TUDOMÁNYOS ÜLÉSSZAKA

A 29. cikk alapján létrehozott adatvédelmi munkacsoport

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

Tolókocsik / kerekesszék rögzítése Class 1. és Class 2. autóbuszokon

Eseményvezérelt alkalmazások fejlesztése I 11. előadás. Szoftverek tesztelése

XmlGessünk 13. rész - Az XML Schema II.

Informatikai rendszertervezés

Átírás:

Fehér Péter José M. Conejero, Pedro J. Clemente, Roberto Rodríguez-Echeverría, Juan Hernández és Fernando Sánchez-Figueroa cikke alapján MODELL ALAPÚ MEGKÖZELÍTÉS TESZT ÚJRAFELHASZNÁLÁSHOZ INTELLIGENS OTTHON ESETÉN

Intelligens otthonok (Smart Home) Egyre inkább terjednek Magasabb absztrakciós szint hiánya gyengébb minőség nagy komplexitás nehézkes karbantartás Nem újrafelhasználható A modellek ugyanakkor pont hasonló problémákra kínálnak megoldást A Model-Driven megközelítés egyre inkább terjed a SH fejlesztések körében is AMPLE project

A probléma Általában ezen rendszerek fejlesztése alacsonyabb absztrakciós szinten, az éppen aktuális technológiához kötötten történik Model-Driven Development segített ezen a problémán, növelve az újrahasználhatóságot, kezelhetőséget, csökkentve a komplexitást Az MDD azonban nem fedi le a teljes fejlesztési ciklust, a tesztek még mindig az utolsó fázisban történnek -> rendszerint nem újrafelhasználhatóak

Három fő fázis Intelligens otthon rendszermodellezés Teszt pattern modellezése Teszt kiválasztása és beépítése a rendszerbe Az első két fázis egymástól teljesen függetlenül végezhető

I. fázis Intelligens otthon modellezés Esemény (scene) pontos, részletes definiálása Az egész rendszert több scene együttese alkotja Absztrakt rendszer kialakítása Abstract Smart Home Meta-Model (SHMM) -> koncepcionális rendszermodell Nagyon magas absztrakciós szint -> platformfüggetlenség Konkrét rendszer kialakítása Az SHMM kibővítése konkrét platformra (pl. KNX), ezáltal elérhető pl. az automatikus kódgenerálás

Scene definiálás WakeUp scene UML activity diagram segítségével A megfelelő feltételek esetén négy tevékenység automatikus megvalósítása

Absztrakt rendszermodell kialakítása Az SHMM az ECORE meta-modell segítségével lett kialakítva, ami része az AMPLE-nek Minden információt tartalmaz (installáció, komponensek, helyszínek) A Connector osztály teszi lehetővé a kommunikációt a szenzorok és a szerkezetek (actuators) között

Konkrét rendszer kialakítása Az SHMM-ben lévő entitások kiegészítése új, KNX metamodellbeli (KMM) entitásokkal A specifikus metamodell definiálása az absztrakt kiegészítéseként -> a teszt patternek is megvalósíthatóak lesznek

Konkrét rendszer kialakítása KNXProject -> root class Association class -> modeled scenes Group Address class -> érzékelő-szerkezet kapcsolat

II. fázis Teszt patternek kialakítása A teszt esetek patternként való modellezése lehetővé teszi, hogy más SH rendszerek esetén is felhasználhatók legyenek Ezen patternek sztenderd Testing Metamodellen (TMM), konkrétan az UTP-n alapszanak Két különböző teszttípus Unit Tests (-> individual device testing) Integration Tests (->scene behavior testing) A patterneket egy repositoryban tároljuk

Unit Testek definiálása Szekvencia diagram, ahol a működést modellezzük Class diagram, ahol a role-okat határozzuk meg Validation Action -> kiértékeli a teszt eredményét, s meghatározza az ítéletet

Unit Testek definiálása Test Context Több teszteset, mindegyikhez külön szekvencia diagram Egy teszt komponens, mely a futtatásért felel A SUT nem kapcsolódik semmilyen specifikus objektummal sem!

Integration tesztek kialakítása Az eszközök közötti kapcsolatokat teszteli, hogy az eszközök megfelelően reagálnak a jelekre Szekvencia diagram használata A Unit Testek felhasználhatóak Paraméterek megadása (day, time, predefined temp, blind position) Pl.: (Monday, 07:00AM, 19, 50)

Integration test example

III. fázis Tesztek kiválasztása, beépítése Tesz kiválasztása Ún. Weawing modell kialakítása a SH rendszerhez a Weawing Metamodel (WMM) segítségével Ennek segítségével a tesztek automatikusan kialakíthatóak a konkrét rendszerben

Az összefűzés A test patternek kiválasztása a korábban definiált funkcionalitásokon és a scene-eken alapszik. Amint a teszteket kiválasztásra kerültek, automatikusan összefűződik az SH model és a Test Model A kiválasztás és az összefűzés érdekében: Weaving Metamodel a SH domainhez, mint AMW metamodell kiegészítés Összeillesztő szabálygyűjtemény kidolgozása

Az összefűzés Weaving Metamodel Előkészíti a környezetet Egymáshoz illeszti a SH modell és a Test modell megfelelő elemeit Meghatározza a típusokat a SH modellben, melyek részt vehetnek a Unit és Intergation tesztekben Kialakítása a SHMM alapján -> újrafelhasználható ATL szabályok kialak0tása Merging Classes (Rule1) Merging Operations (Rule2) Not-Merging Classes (Rule3)

Az összefűzés

Konklúzió Folyamat, mely automatizálja a tesztek generálását a SH rendszerekbe A folyamat a már egyre terjedő MDD része A tesztek így újrafelhasználhatóak, hisz immár modell szinten vannak, platformfüggetlenek A tesztek patternként vannak definiálva, ezzel is segítve a többszöri felhasználást Hatékony összefűzése a teszteknek és konkrét rendszereknek