SlideShare a Scribd company logo
Přemek Brada / Spolehlivé softwarové architektury (ReliSA)
NTIS / P2 (KIV), Fakulta aplikovaných věd, ZČU v Plzni
> Architektury software se zaměřením na spolehlivost
> 5 zaměstnanců (2 docenti)
> 5 PhD studentů
> 2 národní výzkumné projekty (2009+),
aplikovaný výzkum a konzultační činnost (4+
projekty)
> http://relisa.kiv.zcu.cz/
3
> Ověřování za účelem zjištění/zvýšení spolehlivosti
=> efektivita zajištění kvality vývoje, produktu
> Modelování sw za účelem porozumění
=> efektivita oprav, údržby, integrace
> Modulární systémy – „Software jako Lego“
 reverzní inženýrství, metriky
 zaměření na hotový přeložený kód
> Profesionální sofwarové inženýrství
 metodiky vývoje a technologie – analýza, zavádění, konzultace
4
ReliSA KIV hlavni oblasti vyzkumu (2014-01)
> Motivace = „jar hell“, průběžná (částečná)
aktualizace, skládání software, soulad s požadavky
na funkčnost a kvalitu
> Co ověřujeme
 vzájemná kompatibilita API modulů, knihoven
 splnění definovaných mimo-funkčních charakteristik u modulů
> Technologie PoC = Java (bytecode), OSGi
6
> Testování výkonových charakteristik
 složitý sw => hledání slabých článků náročné,
obvykle výpočty s modely / zátěžové testy
 používáme mix hotových a simulačních komponent
(minimalizace rozdílu mezi ověřovaným modelem a
realitou), modelový čas (urychlení testů),
pravděpodobnostní data (ověření hraničních situací)
> Aplikace
 testování telematických aplikací, předchůdce (C-Sim)
ověření real-time Ethernet kontroleru
7
> Ověřování závislostí v procesu sestavení
 modulární sw => vazby neověřitelné překladem, obvykle integrační testy
 používáme type reconstruction z přeložených komponent (umožňuje
ověřovat během sestavení, vůči modulům od třetích stran)
 úložiště s předem spočítanými výsledky
=> malá zařízení
> Aplikace
 maven plugin,
Java Library Evolution puzzlers
 aplikovatelnost obecně na software
umožnující analýzu (.NET, Java)
8
tvorba překlad
sestavení nasazení
testování provoz
> Příklad nasazení:
Detekce nekompatibilních knihoven
> Aplikace pro Openmatics s.r.o. (automotive /
telematika, OSGi vlastní a 3rd party)
> Součást procesu sestavení software
9
10
Hledání příčiny ruční a pracné
12
Oprava příčiny (konfigurace sw)
14
tvorba
modulů
překlad
modulů
sestavení
systému
zjištění
problému
> https://www.assembla.com/spaces/obcc/wiki
> http://osgi.kiv.zcu.cz/obvs/index.html
> http://www.javaworld.com/article/2074970/java-
library-evolution-puzzlers.html
15
ReliSA KIV hlavni oblasti vyzkumu (2014-01)
> Motivace = usnadnění analýzy složitého sw, zaškolení
nových členů týmu, integrace a dlouhodobé údržby
> Co modelujeme:
 rozhraní modulů, jejich vazby, hierarchickou dekompozici
 na úrovni „data“ (model) i „notace“(diagram)
 zaměření na obecnost (technologická nezávislost) a interaktivitu
(překonání kognitivních limitů)
> Technologie PoC = Java (bytecode), OSGi, HTML5
17
> Interaktivní zobrazení rozsáhlých sw aplikací
 stovky a tisíce modulů, násobně více vazeb => obtížná orientace a
porozumění, obvykle řešeno ručním rozdělením modelů a diagramů
 používáme radikální redukce zobrazovaných informací (např. polo-
automatické shlukování), důraz na interakci, bohatý datový model
> Aplikace
 ověřeno na uživatelských studiích, oproti UML až 3x rychlejší řešení
typických úloh porozumění architektuře/návrhu software
 záměr – využití „sémantických“ informací o modulech pro chytřejší
zobrazování (layout, hierarchie) a interakci
18
> Příklad použití:
Analýza vazeb v Java/OSGi aplikacích
> Výzkumný prototyp
> Ověření metody a způsobu interakce
> Předpokládané uplatnění také pro jiné složité
systémy (sociální sítě, infrastruktury)
19
> Toto je malá aplikace (40 modulů)
> Celkový přehled vs detail
20
21
Ukládání diagramů na serveru (sdílení)
i možnost lokálního nasazení
> http://relisa-dev.kiv.zcu.cz/cocaex/
> https://www.assembla.com/spaces/comav/wiki
> https://www.youtube.com/watch?v=gzRHgncGZ4E
22
> Openmatics s.r.o.
 OSGi Verification (API compliance of 3rd party applications, SDK
internal consistency)
 Agile Process education and pilot project
 Java Virtual Machine benchmarking and selection for ARM CPU
> Eurosoftware s.r.o.
 Agile process introduction, customization, mentoring
23
http://relisa.kiv.zcu.cz/
24

More Related Content

Similar to ReliSA KIV hlavni oblasti vyzkumu (2014-01)

OKbase - Optimalizujte náklady na vzdělávání moderně
OKbase - Optimalizujte náklady na vzdělávání moderněOKbase - Optimalizujte náklady na vzdělávání moderně
OKbase - Optimalizujte náklady na vzdělávání moderně
OKsystem
 
Odborná snídaně 20.9. - Agile@DevOps - 2. část
Odborná snídaně 20.9. - Agile@DevOps - 2. částOdborná snídaně 20.9. - Agile@DevOps - 2. část
Odborná snídaně 20.9. - Agile@DevOps - 2. část
Profinit
 
20110511 Vývoj software - produktivně, efektivně, kvalitně
20110511 Vývoj software - produktivně, efektivně, kvalitně20110511 Vývoj software - produktivně, efektivně, kvalitně
20110511 Vývoj software - produktivně, efektivně, kvalitně
Jiří Mareš
 
MicroStrategy GI a GIS Connector
MicroStrategy GI a GIS ConnectorMicroStrategy GI a GIS Connector
MicroStrategy GI a GIS Connector
OKsystem
 
OKbase - moderní IT nástroj pro HR
OKbase - moderní IT nástroj pro HROKbase - moderní IT nástroj pro HR
OKbase - moderní IT nástroj pro HR
OKsystem
 
2009 X33EJA Moderní Technologie Pro Vývoj JEE
2009 X33EJA Moderní Technologie Pro Vývoj JEE2009 X33EJA Moderní Technologie Pro Vývoj JEE
2009 X33EJA Moderní Technologie Pro Vývoj JEE
Martin Ptáček
 
OKbase - Efektivní využití moderních IT nástrojů při řízení HR
OKbase - Efektivní využití moderních IT nástrojů při řízení HROKbase - Efektivní využití moderních IT nástrojů při řízení HR
OKbase - Efektivní využití moderních IT nástrojů při řízení HR
OKsystem
 
Atlassian onlio about onepager 1v0
Atlassian onlio about onepager 1v0Atlassian onlio about onepager 1v0
Atlassian onlio about onepager 1v0
Onlio
 
JIRA addon Portfolio
JIRA addon PortfolioJIRA addon Portfolio
JIRA addon Portfolio
Onlio
 
2007 Technologie Pro Tvorbu Java Enterprise Aplikací
2007 Technologie Pro Tvorbu Java Enterprise Aplikací2007 Technologie Pro Tvorbu Java Enterprise Aplikací
2007 Technologie Pro Tvorbu Java Enterprise Aplikací
Martin Ptáček
 
Profinit: Prezentace snídaně integrace aplikací 2016
Profinit: Prezentace snídaně integrace aplikací 2016Profinit: Prezentace snídaně integrace aplikací 2016
Profinit: Prezentace snídaně integrace aplikací 2016
Profinit
 
Jira DevOps Cloud
Jira DevOps CloudJira DevOps Cloud
Jira DevOps Cloud
Onlio
 
Pracovní snídaně: Zavádíme integrační platformu v 75 minutách
Pracovní snídaně: Zavádíme integrační platformu v 75 minutáchPracovní snídaně: Zavádíme integrační platformu v 75 minutách
Pracovní snídaně: Zavádíme integrační platformu v 75 minutách
Profinit
 
Semináře M-Files: Konec hledání řešení pro správu firemních dat
Semináře M-Files: Konec hledání řešení pro správu firemních datSemináře M-Files: Konec hledání řešení pro správu firemních dat
Semináře M-Files: Konec hledání řešení pro správu firemních dat
Jaroslav Prodelal
 
Funkční testování – chybějící vrchol pyramidy (WebExpo 2016)
Funkční testování – chybějící vrchol pyramidy (WebExpo 2016)Funkční testování – chybějící vrchol pyramidy (WebExpo 2016)
Funkční testování – chybějící vrchol pyramidy (WebExpo 2016)
Ondřej Machulda
 
Vizualizace chemickych struktur na www
Vizualizace chemickych struktur na wwwVizualizace chemickych struktur na www
Vizualizace chemickych struktur na www
Martin Slavík
 
EDIH Showcase in PSO and SME sectors, in a nutshell
EDIH Showcase in PSO and SME sectors, in a nutshellEDIH Showcase in PSO and SME sectors, in a nutshell
EDIH Showcase in PSO and SME sectors, in a nutshell
David Pešek
 

Similar to ReliSA KIV hlavni oblasti vyzkumu (2014-01) (20)

OKbase - Optimalizujte náklady na vzdělávání moderně
OKbase - Optimalizujte náklady na vzdělávání moderněOKbase - Optimalizujte náklady na vzdělávání moderně
OKbase - Optimalizujte náklady na vzdělávání moderně
 
Odborná snídaně 20.9. - Agile@DevOps - 2. část
Odborná snídaně 20.9. - Agile@DevOps - 2. částOdborná snídaně 20.9. - Agile@DevOps - 2. část
Odborná snídaně 20.9. - Agile@DevOps - 2. část
 
20110511 Vývoj software - produktivně, efektivně, kvalitně
20110511 Vývoj software - produktivně, efektivně, kvalitně20110511 Vývoj software - produktivně, efektivně, kvalitně
20110511 Vývoj software - produktivně, efektivně, kvalitně
 
MicroStrategy GI a GIS Connector
MicroStrategy GI a GIS ConnectorMicroStrategy GI a GIS Connector
MicroStrategy GI a GIS Connector
 
OKbase - moderní IT nástroj pro HR
OKbase - moderní IT nástroj pro HROKbase - moderní IT nástroj pro HR
OKbase - moderní IT nástroj pro HR
 
2009 X33EJA Moderní Technologie Pro Vývoj JEE
2009 X33EJA Moderní Technologie Pro Vývoj JEE2009 X33EJA Moderní Technologie Pro Vývoj JEE
2009 X33EJA Moderní Technologie Pro Vývoj JEE
 
OKbase - Efektivní využití moderních IT nástrojů při řízení HR
OKbase - Efektivní využití moderních IT nástrojů při řízení HROKbase - Efektivní využití moderních IT nástrojů při řízení HR
OKbase - Efektivní využití moderních IT nástrojů při řízení HR
 
Atlassian onlio about onepager 1v0
Atlassian onlio about onepager 1v0Atlassian onlio about onepager 1v0
Atlassian onlio about onepager 1v0
 
TNPW2-2011-06
TNPW2-2011-06TNPW2-2011-06
TNPW2-2011-06
 
JIRA addon Portfolio
JIRA addon PortfolioJIRA addon Portfolio
JIRA addon Portfolio
 
2007 Technologie Pro Tvorbu Java Enterprise Aplikací
2007 Technologie Pro Tvorbu Java Enterprise Aplikací2007 Technologie Pro Tvorbu Java Enterprise Aplikací
2007 Technologie Pro Tvorbu Java Enterprise Aplikací
 
Profinit: Prezentace snídaně integrace aplikací 2016
Profinit: Prezentace snídaně integrace aplikací 2016Profinit: Prezentace snídaně integrace aplikací 2016
Profinit: Prezentace snídaně integrace aplikací 2016
 
Jira DevOps Cloud
Jira DevOps CloudJira DevOps Cloud
Jira DevOps Cloud
 
Pracovní snídaně: Zavádíme integrační platformu v 75 minutách
Pracovní snídaně: Zavádíme integrační platformu v 75 minutáchPracovní snídaně: Zavádíme integrační platformu v 75 minutách
Pracovní snídaně: Zavádíme integrační platformu v 75 minutách
 
TNPW2-2011-04
TNPW2-2011-04TNPW2-2011-04
TNPW2-2011-04
 
Semináře M-Files: Konec hledání řešení pro správu firemních dat
Semináře M-Files: Konec hledání řešení pro správu firemních datSemináře M-Files: Konec hledání řešení pro správu firemních dat
Semináře M-Files: Konec hledání řešení pro správu firemních dat
 
Funkční testování – chybějící vrchol pyramidy (WebExpo 2016)
Funkční testování – chybějící vrchol pyramidy (WebExpo 2016)Funkční testování – chybějící vrchol pyramidy (WebExpo 2016)
Funkční testování – chybějící vrchol pyramidy (WebExpo 2016)
 
Vizualizace chemickych struktur na www
Vizualizace chemickych struktur na wwwVizualizace chemickych struktur na www
Vizualizace chemickych struktur na www
 
TNPW2-2012-01
TNPW2-2012-01TNPW2-2012-01
TNPW2-2012-01
 
EDIH Showcase in PSO and SME sectors, in a nutshell
EDIH Showcase in PSO and SME sectors, in a nutshellEDIH Showcase in PSO and SME sectors, in a nutshell
EDIH Showcase in PSO and SME sectors, in a nutshell
 

ReliSA KIV hlavni oblasti vyzkumu (2014-01)

  • 1. Přemek Brada / Spolehlivé softwarové architektury (ReliSA) NTIS / P2 (KIV), Fakulta aplikovaných věd, ZČU v Plzni
  • 2. > Architektury software se zaměřením na spolehlivost > 5 zaměstnanců (2 docenti) > 5 PhD studentů > 2 národní výzkumné projekty (2009+), aplikovaný výzkum a konzultační činnost (4+ projekty) > http://relisa.kiv.zcu.cz/ 3
  • 3. > Ověřování za účelem zjištění/zvýšení spolehlivosti => efektivita zajištění kvality vývoje, produktu > Modelování sw za účelem porozumění => efektivita oprav, údržby, integrace > Modulární systémy – „Software jako Lego“  reverzní inženýrství, metriky  zaměření na hotový přeložený kód > Profesionální sofwarové inženýrství  metodiky vývoje a technologie – analýza, zavádění, konzultace 4
  • 5. > Motivace = „jar hell“, průběžná (částečná) aktualizace, skládání software, soulad s požadavky na funkčnost a kvalitu > Co ověřujeme  vzájemná kompatibilita API modulů, knihoven  splnění definovaných mimo-funkčních charakteristik u modulů > Technologie PoC = Java (bytecode), OSGi 6
  • 6. > Testování výkonových charakteristik  složitý sw => hledání slabých článků náročné, obvykle výpočty s modely / zátěžové testy  používáme mix hotových a simulačních komponent (minimalizace rozdílu mezi ověřovaným modelem a realitou), modelový čas (urychlení testů), pravděpodobnostní data (ověření hraničních situací) > Aplikace  testování telematických aplikací, předchůdce (C-Sim) ověření real-time Ethernet kontroleru 7
  • 7. > Ověřování závislostí v procesu sestavení  modulární sw => vazby neověřitelné překladem, obvykle integrační testy  používáme type reconstruction z přeložených komponent (umožňuje ověřovat během sestavení, vůči modulům od třetích stran)  úložiště s předem spočítanými výsledky => malá zařízení > Aplikace  maven plugin, Java Library Evolution puzzlers  aplikovatelnost obecně na software umožnující analýzu (.NET, Java) 8 tvorba překlad sestavení nasazení testování provoz
  • 8. > Příklad nasazení: Detekce nekompatibilních knihoven > Aplikace pro Openmatics s.r.o. (automotive / telematika, OSGi vlastní a 3rd party) > Součást procesu sestavení software 9
  • 12. > https://www.assembla.com/spaces/obcc/wiki > http://osgi.kiv.zcu.cz/obvs/index.html > http://www.javaworld.com/article/2074970/java- library-evolution-puzzlers.html 15
  • 14. > Motivace = usnadnění analýzy složitého sw, zaškolení nových členů týmu, integrace a dlouhodobé údržby > Co modelujeme:  rozhraní modulů, jejich vazby, hierarchickou dekompozici  na úrovni „data“ (model) i „notace“(diagram)  zaměření na obecnost (technologická nezávislost) a interaktivitu (překonání kognitivních limitů) > Technologie PoC = Java (bytecode), OSGi, HTML5 17
  • 15. > Interaktivní zobrazení rozsáhlých sw aplikací  stovky a tisíce modulů, násobně více vazeb => obtížná orientace a porozumění, obvykle řešeno ručním rozdělením modelů a diagramů  používáme radikální redukce zobrazovaných informací (např. polo- automatické shlukování), důraz na interakci, bohatý datový model > Aplikace  ověřeno na uživatelských studiích, oproti UML až 3x rychlejší řešení typických úloh porozumění architektuře/návrhu software  záměr – využití „sémantických“ informací o modulech pro chytřejší zobrazování (layout, hierarchie) a interakci 18
  • 16. > Příklad použití: Analýza vazeb v Java/OSGi aplikacích > Výzkumný prototyp > Ověření metody a způsobu interakce > Předpokládané uplatnění také pro jiné složité systémy (sociální sítě, infrastruktury) 19
  • 17. > Toto je malá aplikace (40 modulů) > Celkový přehled vs detail 20
  • 18. 21 Ukládání diagramů na serveru (sdílení) i možnost lokálního nasazení
  • 20. > Openmatics s.r.o.  OSGi Verification (API compliance of 3rd party applications, SDK internal consistency)  Agile Process education and pilot project  Java Virtual Machine benchmarking and selection for ARM CPU > Eurosoftware s.r.o.  Agile process introduction, customization, mentoring 23