Bankovní institut vysoká škola Praha Katedra matematiky, statistiky a informačních technologií
Návrh a tvorba mobilních aplikací v podnikovém prostředí Diplomová práce
Autor:
Bc.David Kopřiva Informační technologie
Vedoucí práce:
Praha
Ing. Jan Háněl
Duben 2012
Prohlašuji,
ţe
jsem
diplomovou
práci
zpracoval
samostatně
a v seznamu uvedl veškerou pouţitou literaturu. Svým podpisem stvrzuji, ţe odevzdaná elektronická podoba práce je identická s její tištěnou verzí, a jsem seznámen se skutečností, ţe se práce bude archivovat v knihovně BIVŠ a dále bude zpřístupněna třetím osobám prostřednictvím interní databáze elektronických vysokoškolských prací.
V Praze, dne 10.4.2012
David Kopřiva
Anotace Předmětem diplomové práce „Návrh a tvorba mobilních aplikací v podnikovém prostředí“ je popsání postupu návrhu a tvorby mobilní aplikace od rámcového zadání problému do návrhu konkrétního řešení. V první části práce jsou popsána východiska, moţné aktivity a technické aspekty řešení. Ve druhé části práce je na základě poţadavků společnosti CETELEM ČR, a.s. proveden výběr a návrh řešení. V závěru je porovnán návrh s původním zadáním, dále je provedeno zhodnocení cílového stavu a provedeného postupu. Klíčová slova: mobilní aplikace, prohlíţeč, swot analýza, vícekriteriální rozhodování, UML,
Annotation The thesis "Design and creation of mobile applications in an enterprise environment" describes step by step how to design and create mobile applications from the scratch to specific design solution. The first part describes current situation, possible activities and technical aspects of the solution. The second part contains selection and design of solution based on the requirements defined by CETELEM CR. Proposed solution is compared with the original typing, evaluation process and the target state is described in the conclusion. Key words: mobile applications, browser, swot analysis, multicriteria analysis, UML, project management
Obsah ÚVOD.................................................................................................................................... 7 ZVOLENÉ METODY ZPRACOVÁNÍ ................................................................................ 7 1
VSTUP DO PROBLEMATIKY ................................................................................... 9 1.1
Penetrace mobilních sluţeb a mobilního internetu ČR ................................................ 9
1.2
Uţití v ČR dle typu kanálu ........................................................................................ 10
1.3
Trendy v oblasti „chytrých telefonů“ ......................................................................... 12
1.3.1
Nástup „Smartphone“ telefonů ........................................................................... 12
1.3.2
Integrace a sbliţování sluţeb – „mobilní singularita“ ........................................ 12
1.4 2
3
Auditované měření návštěvnosti mobilního obsahu a sluţeb .................................... 13
PŘEHLED POTENCIONÁLNÍCH SLUŢEB ............................................................ 14 2.1
Mobilní samoobsluha/Podnikové WAPové stránky .................................................. 14
2.2
Mobilní telefon jako platební nástroj ......................................................................... 15
2.3
Mapy/Location based services (LBS) ........................................................................ 15
2.4
Augmented reality...................................................................................................... 15
2.5
Mobilní web-content a s ním spojená reklama .......................................................... 15
2.6
MMS marketing ......................................................................................................... 16
2.7
Samoobsluţné SMS automaty ................................................................................... 16
2.8
SMS/MMS ................................................................................................................. 16
2.9
Dodatkové sluţby pro tisk ......................................................................................... 16
TECHNICKÉ ŘEŠENÍ MOBILNÍCH APLIKACÍ .................................................... 17 3.1
Aplikace pro mobilní prohlíţeč ................................................................................. 17
3.1.1
Historie standartu mobilních stránek .................................................................. 17
3.1.2
Typy mobilních prohlíţečů................................................................................. 18
3.1.3
Zabezpečení dat v mobilních prohlíţečích ......................................................... 19
3.1.4
Vývoj pro prohlíţeč ............................................................................................ 19
3.2
Nativní aplikace ......................................................................................................... 20 4
4
3.2.1
Prostředí pro vývoj nativních aplikací ................................................................ 20
3.2.2
Specifika nejrozšířenějších OS platforem .......................................................... 20
3.2.3
Vývoj nativní aplikace ........................................................................................ 24
3.3
Aplikace na bázi WAP ............................................................................................... 25
3.4
Výhody a nevýhody vývojových prostředí ................................................................ 26
3.4.1
Vývoj pro prohlíţeč ............................................................................................ 26
3.4.2
Nativní vývoj aplikace ........................................................................................ 27
3.4.3
WAP aplikace ..................................................................................................... 27
TEORETICKÝ APARÁT PRO ŘEŠENÍ ................................................................... 28 4.1
SWOT analýza ........................................................................................................... 28
4.2
UML modelování ....................................................................................................... 29
4.2.1 4.3
Vícekriteriální rozhodování ....................................................................................... 31
4.3.1 4.4
5
6
Jazyk UML ......................................................................................................... 29
Matematické postupy pouţité při výběru ........................................................... 32
Techniky odhadu pracnosti ........................................................................................ 33
4.4.1
Expertní odhady a analogie ................................................................................ 33
4.4.2
Odhady zaloţené na modelu ............................................................................... 33
4.4.3
Karnerova metoda UCP ...................................................................................... 34
4.4.4
Ostatní metody.................................................................................................... 35
4.5
Karnerova metoda UCP ............................................................................................. 35
4.6
Řízení projektů ........................................................................................................... 37
SPOLEČNOST CETELEM ČR, A.S. ......................................................................... 40 5.1
Popis společnosti........................................................................................................ 40
5.2
Popis výchozího stavu................................................................................................ 40
5.3
SWOT analýza tvorby mobilních aplikací................................................................. 42
5.4
Vyhodnocení SWOT analýzy a definice kritérií........................................................ 43
VÝBĚR TECHNICKÉHO ŘEŠENÍ ........................................................................... 44 5
7
6.1
Zadání problému ........................................................................................................ 44
6.2
Metodika pro výběr řešení ......................................................................................... 45
6.3
Sestrojení normalizované matice ............................................................................... 45
6.4
Odhad vah kritérií metodou Fullerova trojúhelníku .................................................. 46
6.5
Vícekriteriální hodnocení variant metodou váţeného součtu WSA .......................... 47
6.6
Seřazení a výběr řešení .............................................................................................. 48
ÚVODNÍ STUDIE ...................................................................................................... 49 7.1
8
9
Odborný článek .......................................................................................................... 49
ANALÝZA A NÁVRH ŘEŠENÍ ................................................................................ 52 8.1
Zvolený postup pro provedení analýzy pomocí jazyka UML ................................... 52
8.2
Katalog poţadavků .................................................................................................... 52
8.3
Vazba uţivatelských poţadavků na případy uţití ...................................................... 55
8.4
Diagram případů uţití ................................................................................................ 55
8.5
Návrh hlavní stránky mobilní aplikace ...................................................................... 57
ODHAD NÁKLADŮ, ČASOVÉHO PLÁNU A BEZPEČNOST ŘEŠENÍ............... 58 9.1
Odhad nákladů na realizační fázi za pomoci Karnerovy metody .............................. 58
9.1.1
Rekapitulace odhadu nákladů na realizaci systému ........................................... 60
9.2
Časový plán projektu ................................................................................................. 61
9.3
Rizika projektu ........................................................................................................... 62
9.4
Bezpečnost mobilních aplikací .................................................................................. 63
9.4.1
Typologie útoků na mobilní aplikace ................................................................. 63
9.4.2
Návrh bezpečnostních testů ................................................................................ 65
ZÁVĚRY A DOPORUČENÍ .............................................................................................. 66 SEZNAM POUŢITÉ LITERATURY ................................................................................. 68 SEZNAM OBRÁZKŮ ........................................................................................................ 69 SEZNAM TABULEK ......................................................................................................... 69 SEZNAM GRAFŮ .............................................................................................................. 70 6
ÚVOD Cílem této diplomové práce je navrhnout a popsat postup tvorby mobilních aplikací v prostředí finanční společnosti CETELEM ČR, a.s. tak, aby byla splněna očekávání, která vedení společnosti od tohoto návrhu očekává. Společnost CETELEM ČR, a.s. lze charakterizovat jako silnou a stabilní společnost, která se svojí patnáctiletou tradicí na českém finančním trhu patří mezi největší a nejvýznamnější nebankovní poskytovatele úvěrových produktů a sluţeb. Prostřednictvím svých poboček a sítě obchodních partnerů nabízí klientům: klasické spotřebitelské úvěry v prodejnách obchodních partnerů účelové a neúčelové osobní půjčky kreditní karty produkty určené k financování motorových vozidel různé typy pojištění Vzhledem k dynamickému rozvoji sluţeb v prostředí Internetu a vzrůstajícím moţnostem přístupu k těmto informacím pomocí mobilních prostředků společnost CETELEM ČR, a.s. vnímá tuto situaci jako příleţitost pro vznik nového obchodního kanálu. Ten by mohl umoţnit rozšíření stávajících sluţeb z klasického desktopového prostředí do prostředí mobilních aplikací, kde se skrývá potencionál pro oslovení jak stávajících, tak nových klientů. Na základě tohoto návrhu se společnost CETELEM ČR, a.s. poté rozhodne, zda bude toto řešení realizovat či nikoliv.
ZVOLENÉ METODY ZPRACOVÁNÍ Při zpracování této diplomové práce byl zvolen postup, který systematicky popisuje jednotlivé kroky od rámcového zadání problému aţ do fáze návrhu, ve kterém jsou shromáţděny a vyhodnoceny všechny údaje a informace nutné pro konečné rozhodnutí o realizaci. V rámci
7
těchto kroků jsou pouţity všeobecně známé a ověřené metody či techniky, které tyto dílčí kroky zprůhledňují a významně zkracují dobu nutnou pro vytvoření návrhu. Nejdříve je provedeno zmapování stavu mobilních sluţeb ve vazbě na prostředí Internetu (zejména s ohledem na Českou Republiku), stručný popis potencionálních sluţeb v tomto prostředí a technické aspekty při tvorbě mobilních aplikací. Vyuţití těchto poznatků je klíčové při vlastním procesu tvorby návrhu aplikace. Nedílnou součástí je rovněţ popis metod a postupů, které budou při návrhu a tvorbě aplikací vyuţity. V rámci zmapování výchozího stavu jsou nejdříve vyhodnoceny přístupy z mobilních zařízení na firemní web společnosti CETELEM ČR, a.s. Následně jsou za pomoci SWOT analýzy identifikovány interní a externí faktory, které umoţňují definici výběrových kritérií kladených na výběr vhodného technického řešení takovéto aplikace. Vlastní výběr technického řešení je proveden pomocí některé z metod multikriteriální analýzy. Na základě tohoto výběru je dále proveden návrh a dekompozice systému za pomoci prostředků jazyka UML včetně odhadu nákladů na celé řešení. Nedílnou součástí návrhu je také návrh plánu prací a popis bezpečnostních aspektů při návrhu aplikace. V závěru práce je provedeno jak zhodnocení provedených postupů, tak porovnání prvotních poţadavků na aplikaci s dosaţenými cíli. To má společnosti jiţ v poměrně rané fázi návrhu usnadnit rozhodnutí, zdali tento projekt za stávajících podmínek realizovat či nikoliv.
8
1 VSTUP DO PROBLEMATIKY Pro správné rozhodnutí a volbu vhodného řešení je nejdříve nutné zmapovat stav mobilních sluţeb a nejčastěji pouţívaných mobilních zařízení, včetně technických aspektů při tvorbě aplikací. Veškeré poznatky z teoretické části práce budou postupně uplatněny při návrhu a tvorbě mobilní aplikace.
1.1 Penetrace mobilních sluţeb a mobilního internetu ČR Mobilní telefon se v České republice řadí řadu let jiţ k základním potřebám. Telefon vlastní 92,5% obyvatel ve věkovém rozmezí 16 aţ 74 let, na 100 obyvatel pak připadá cca 130 aktivních SIM karet (toto se vysvětluje zahrnutím zahraničních vlastníků českých karet a vícenásobným vlastnictvím SIM – tj. domácí a firemní/více operátorů). Pokrytí domácností v ČR představuje následující graf, v roce 2009 jsou všechny skupiny pokryty na cca 95%.
Graf č. 1 Penetrace mobilních sluţeb v ČR Zdroj: ČSÚ Veřejná databáze
Lze konstatovat, ţe postupným sniţováním cen za smluvní sluţby a zavedením datových tarifů dochází k přechodu od předplacených karet k sluţbám placeným po jejich konzumaci uţivatelem. Čísla o českém trhu prezentovaná na Mobile Fóru 20101: • počet obyvatel: 10,5M • aktivních SIM karet: 14,3M • počet SIM karet s mobilním internetem: 2,5M (oproti 1,5M v 2009) 1
Konference je společnou akcí serveru Lupa.cz provozovaného společností Internet Info a sdruţení TUESDAY Business Network v rámci jeho řady konferencí COMMUNICATION WEDNESDAY.
9
• 15% pouţívá mobilní internet pro připojení PC/notebook • cca. 1,5M uţivatelů vlastní jiţ “smartphone” • většina uţivatelů smartphone pouţívá mobilní internet (intenzivně na denní bázi) V roce 2010 došlo k výraznému zvýšení přenosové kapacity a cenové dostupnosti mobilního internetu v ČR. Většina operátorů přešla na paušální flat-fee tarify, přičemţ cena za „internet v mobilním telefonu“ se za poslední rok sníţila aţ o 50%. Bariérou rozšíření mobilního internetu v ČR byla v posledních letech jednoznačně cena - technologie běţných přístrojů byla dostačující. Díky tomuto cenovému poklesu byl v letech 2010/2011 zaznamenán výrazný nárůst cílové skupiny disponující pouţitelným mobilním přístupem.
1.2 Uţití v ČR dle typu kanálu SMS - dle statistik operátorů je odesláno nejvíce zpráv právě 24.12. – přes 70 miliónů zpráv. Cena SMS se pohybuje od 1,20 Kč po 5,50 Kč. Uţití SMS v ČR stále patří mezi světový i Evropský nadprůměr. MMS - nejvíce MMS zpráv je odesláno 24.12 a to cca 230 000 tisíc. Penetrace MMS na stávajícím trhu je cca 60% - mobilní telefony, které nedokáţou přijmout MMS (či uţivatel nemá aktivovánu MMS sluţbu), mají moţnost si MMS vyzvednout v operátorově samoobsluze. Nejvíce MMS je posláno pouze s obrazovou přílohou, hlasové zprávy se vyskytují v méně neţ 1 % případů. Cena odeslané MMS je od 2,50 Kč, přijetí je zdarma. Email - nárůstem podílu BlackBerry2 zařízení na českém trhu, integrací emailového klienta do Symbian platformy a příchodem iPhone/Android zařízení dochází k nárůstu pouţívání tohoto kanálu. Díky sníţení ceny za datové připojení začíná email pomalu přebírat zákazníky MMS, kteří mohou díky emailům odesílat obrazová nebo zvuková data komukoliv bez nutnosti mít vhodné přijímací zařízení. Mobilní prohlížeč - pouţití mobilního prohlíţeče je v České republice vysoké díky relativně nízké ceně datového připojení. Nástupem iPhone3 zařízení se většina českých operátorů přiklání k datovým tarifům bez omezení, coţ umoţňuje připravit mnohem kvalitnější internetové prezentace vhodné pro mobilní zařízení.
2 3
Řada mobilních telefonů vyráběná společností Research in Motion (RIM) Mobilní telefon od společnosti Apple
10
Na níţe uvedeném grafu jsou znázorněny podíly přístupu na webové stránky dle společnosti GEMIUS SA4 řazené podle výrobce zařízení pro Českou republiku.
Graf č. 2. Přístup na www stránky v České republice dle zařízení provedený společností GEMIUS SA Zdroj: GEMIUS SA
J2ME5 a Nativní aplikace - J2ME je podporováno přes 60% aktuálně dostupných telefonů v ČR. Podíl smartphone (tzv. chytrých telefonů) umoţňujících instalaci a provoz nativních aplikací roste strmě i v České republice. Níţe uvedený graf znázorňuje stáhnutí J2ME aplikací uţivateli dle výrobce zařízení, celkový objem činí cca 100 000 staţení měsíčně.
Graf č. 3 Staţení J2ME aplikací uţivateli v Q3 Zdroj: T-Mobile
4
Společnost GEMIUS SA se dlouhodobě zaměřuje na výzkum internetového trhu, http://cz.gemius.com J2ME- Java Platform Micro Edition je jedna ze základních platforem Javy určená pro vývoj softwaru na malých zařízeních 5
11
1.3 Trendy v oblasti „chytrých telefonů“ 1.3.1 Nástup „Smartphone“ telefonů [5] Jednoznačným trendem je rychle rostoucí podíl tzv. chytrých telefonů – smartphones. Tento typ telefonu je charakteristický svými pokročilými funkcemi (např. datová konektivita, integrovaným prohlíţečem, přehrávání hudby atd.) a aplikačním rozhraním, které umoţňuje instalaci dalších programů do jeho operačního systému. Mezi nejznámější systémy patří Symbian OS, iOS, Windows Mobile, Android a Blackberry. V roce 2011 podíl prodaných smartphones činil cca 50% V následujícím roce se očekává penetrace okolo 60% (60% pouţívaných telefonů budou tzv. chytré telefony) Cenová hladina za telefon definovatelný jako „smartphone“ se neustále sniţuje: o 2009 – cca 6000 Kč o 2010 – smartphone = cca 3500 Kč
Graf č. 4: Prodeje smartphonů v ČR za první pololetí 2011 Zdroj: mobil.cz
1.3.2 Integrace a sbliţování sluţeb – „mobilní singularita“ Mobilní svět se stává méně samostatným a je čím dál tím více propojen a sloučen s ostatními komunikačními kanály. Stírá se rozdíl mezi mobilním obsahem či aplikací a jeho ekvivalentem pro desktop. Uţivatelé vyţadují přístup k datům a aplikacím různým způsobem, při různých situacích a Toto lze charakterizovat uţivatelskými scénáři – začíná být standardem mít vybudován přístup k jedné a téţe funkci pomocí desktopu, mobilního prohlíţeče či nativní mobilní 12
aplikaci. Specifika mobilních konceptů neleţí dnes primárně v technologické rovině, ale v rovinách: Jiných uţivatelských scénářů – use cases (co a jak jsou lidé zvyklí pomocí mobilního telefonu dělat) Jiného typu ovládání a očekávané „UX“ – user experience (typicky nástup dotykového ovládání a optimalizace pro něj)
1.4 Auditované měření návštěvnosti mobilního obsahu a sluţeb V České republice aktuálně probíhají aktivity pro podchycení jednotného a auditovaného měření mobilních sluţeb a obsahu. Tyto aktivity zaštiťuje tzv. mobilní „metokomise“, jejímţ členem jsou jak operátoři, tak přední poskytovatelé mobilního obsahu. [9] Aktivita jako taková je koordinována a zajišťována Sdruţením pro Internetovou reklamu – viz www.spir.cz. Z posledního průzkumu, který se uskutečnil v listopadu 2011, jsou dostupné následující údaje o činnostech prováděných pomocí různých zařízení pro přístup na Internet.
Graf č. 5: Činnosti prováděné prostřednictvím jednotlivých zařízení (internetová populace 15+), N=3000 Zdroj dat: NetMonitor - SPIR - Mediaresearch & Gemius, gemiusAdHoc, listopad 2011
Překvapující je velký nárůst podílů u činností prováděných prostřednictvím mobilního telefonu. Proti minulé vlně průzkumu z jara 2011 se zvýšil podíl činnosti získávání praktických informací pomocí mobilního telefonu o 9 % a přístup k e-mailu o 7 %. 13
2 PŘEHLED POTENCIONÁLNÍCH SLUŢEB Abychom byly schopni zmapovat základní moţnosti v oblasti tzv. mobilního marketingu6 a na něj navazující převod podnikových aplikací, je velice uţitečné provést stručnou rekapitulaci současného stavu. V tomto kontextu je nutné chápat mobilní telefon jako informační portál, který kaţdý nosí v kapse. Moţnost touto cestou doručit více relevantních informací dává téměř ihned obrovský potenciál ke zvýšení efektivity propagace. Mobilní sluţby jsou obvykle konzumovány v časech, kdy uţivatel není přítomen u počítače, tzn. „je na cestách“. Informace uţivateli lze doručit dvěma formami - internetovým přenosem nebo přímým kontaktem skrze WIFI/Bluetooth. Pro ilustraci, četnost registrace mobilních zařízení do buňky komunikační sítě poskytovatele sluţeb umoţňuje sledovat pohyb osob a vhodně rozmístěné snímače v prodejně dokáţou dle aktuálního pohybu zákazníků přehodnocovat rozmístění reklamy na obrazovkách. Dále se objevují pro-aktivní Bluetooth reklamní plochy poskytující mobilní verzi tištěné reklamy, WIFI zdarma slouţí primárně k propagaci výrobků na prodejnách atd. Rozvíjí se pouţití Location based services, které umoţňují vyhledávat uţivateli informace o svém okolí - obvykle v reálném světě, ale začíná se prosazovat i Augmented reality - virtuální svět na pozadí skutečného. Prostřednictvím vestavěné kamery můţete telefonem sledovat jak reálný svět okolo vás, tak i jeho virtuální verzi - od virtuálních reklamních ploch aţ po uţivatelem stvořené světy.
2.1 Mobilní samoobsluha/Podnikové WAPové stránky Mobilní samoobsluha je forma aktivního přístupu klienta ke svým sluţbám. Neliší se od internetové samoobsluhy, ale při vhodné implementaci autentifikace klienta se zvyšuje komfort přístupu k těmto sluţbám. Výhodou pro klienta je pak dostupnost těchto sluţeb na cestách. Podnikové wapové stránky jsou určeny primárně k rychlé orientaci v aktuálním dění: od jednoduchých informačních stránek aţ po zábavní zónu. V kombinaci s WIFI připojením se jedná o další moţnost jak oslovit např. klienty čekající na pobočce.
6
Mobilní marketing je forma komunikace zaměřená na uţivatele mobilních telefonů
14
2.2 Mobilní telefon jako platební nástroj Rozmach Prémium SMS sluţeb sebou nese nové moţnosti prodeje jak skutečného, tak virtuálního zboţí. Prémium SMS se vyuţívá od zpoplatnění láhve výrobců nápojů aţ po virtuální vstupenky na různé informační zdroje. V přípravě je také systém, který integruje do mobilních zařízení plnohodnotnou platební kartu, která bude umoţňovat platby na platebních terminálech. Jednou z aktivit tuzemských operátorů je aktuální spolupráce na jednotné značce pro mikroplatební systémy z mobilu – více viz „Plať mobilem“ - http://www.platmobilem.cz/
2.3 Mapy/Location based services (LBS) Mobilní zařízení vybavené GPS moduly (či umoţňující AGPS pozice ze sítě) mohou být pouţity k hledání objektů, které se nachází poblíţ. Příkladem můţe být mapa poboček firmy v rámci celé ČR, včetně informací o otevíracích dobách, nabízených sluţbách a dalších pobočkových specifik. Tato sluţba není primárně mobilní, ale je pouze doplňková pro jiţ stávající internetové řešení, které toto musí také zohledňovat. Převáţně se tyto informace zveřejňují v masově dostupných zdrojích (např. Google maps) či v rámci podnikových aplikací, které umoţňují získávat pozici ze zařízení. Existuje mnoho volných (či placených) LBS, které umoţňují shromaţďovat různé informace - od map nejbliţších obchodů aţ po dopravní informace.
2.4 Augmented reality Příkladem je projekt Layar7, který umoţňuje vydavatelům připravit vrstvu s jejich daty, které lze pak prohledávat a zobrazovat uţivateli jako by se díval skrze telefon. Integrované senzory v zařízení umoţňují správné umísťovat objekty v prostoru a uţivatel tak můţe snadněji získávat informace o svém okolí.
2.5 Mobilní web-content a s ním spojená reklama Reklama se začíná dostávat jiţ i do mobilních telefonů. Velcí hráči na poli mobilní reklamy jiţ mají své mobilní reklamní systémy, které fungují na stejném principu jako internetové. Na českém trhu se mobilní reklamně věnují jak významní provozovatelé portálů (např. seznam.cz), tak i přímo operátoři.
7
Dostupný na adrese www.lyar.com
15
Dalším kanálem se staly tzv. 'ad-sponsored gaming', které umoţňují firmám propagovat výrobky na plochách zapojených do těchto sítí. Obdobné reklamní plochy se také nabízí v rámci nativních „free“ aplikací.
2.6 MMS marketing Přímý MMS marketing se v České republice vyuţívá minimálně, jeho nevýhodou je nízké pokrytí příjmů MMS a limit při posílání MMS ve velkém mnoţství. Pro tyto potřeby musí být vytvořeno spojení s kaţdým z operátorů - celá operace je relativně časově náročná. Obvyklé vyuţití MMS marketingu je zaměřeno na jiţ stávající sluţby, které mají známý okruh příjemců.
2.7 Samoobsluţné SMS automaty Rozmachem Prémium SMS přišly na řadu i čísla, která nic nestojí, coţ umoţňuje beznákladovou samoobsluhu pro firmy. Výhodou jsou nízké náklady na vývoj a údrţbu systému, coţ umoţňuje implementovat např. výzkumy spokojenosti zákazníků. Nevýhodou těchto automatů je nízká SMS gramotnost pro starší uţivatele.
2.8 SMS/MMS SMS umoţňují všechny mobilní telefony a v posledních 6 letech se s rozvojem pevných telefonních linek objevují i telefonní stanice umoţňující příjem a odeslání SMS. Limitace pro starší telefony je 160 znaků na SMS, bez české diakritiky (s diakritikou pak 70 znaků). Novější verze SMS umoţňují uţ i rozličné znakové sady a rozdělování SMS. Pomocí SMS lze přenášet jak melodie (tóny) tak i černobílé obrázky. Další SMS uţití jsou 'WAP Push' zprávy – ty jsou pouţívány pro odesílání URL adres či konfiguraci internetu. Problematické u těchto zpráv je, ţe se v telefonech objevují obvykle v příchozích zprávách a ne v příchozích SMS.
2.9 Dodatkové sluţby pro tisk Dodatkové sluţby pro tištěnou reklamu jsou obvykle jako součást větší marketingové kampaně, tištěným prvkem jsou adresy (QR kódy) které umoţňují nasměrovat potencionální klienty na elektronickou verzi reklamy, která můţe obsahovat mnohem více informací neţ jen tištěná reklama.
16
3 TECHNICKÉ ŘEŠENÍ MOBILNÍCH APLIKACÍ Cílem této kapitoly je popsat moţné způsoby technického řešení mobilních aplikací, specifika vývojových prostředí, platformy a stručně porovnat výhody a nevýhody těchto řešení.
3.1 Aplikace pro mobilní prohlíţeč Prohlíţeče v mobilních zařízeních prošly velkým rozkvětem v průběhu posledních 15 let. Od černobílých 3 řádkových stránek aţ k plnohodnotnému PC internetu. Mobilní připojení prošlo vývojem od vytáčeného spojení (přenosová rychlost 28 KBit) přes GPRS(variabilní, od 32kBit aţ k 128kBit) aţ po 3/4G sítě ( > 21 Mbit). S tímto vývojem nutně přicházely změny systému zpoplatnění - od plateb za provolanou minutu, přes platbu za kB aţ k předplacenému přístupu. V dnešní době existují 2 modelyneomezený internet za paušální poplatek (obvykle doplněn FUP8) či předplacený objem dat, v cenovém rozmezí od 150 Kč do 700 Kč měsíčně. V případě podnikových aplikací je moţné dojednat dohodu s operátory o nezpoplatnění uţivatelů při pouţití této aplikace (fixní náklady platí objednatel). Počet předplatitelů neomezených dat pouţívajících k přístupu pouze telefon se jako samostatné číslo nezveřejňuje, ale počet předplatitelů mobilního internetu bylo na konci roku 2009 cca 2,2 miliónů.
3.1.1 Historie standartu mobilních stránek Standard HDML9 byl vytvořen v roce 1996 firmou Openwave a byl určen pro přístup mobilních zařízení na internetové stránky. HDML je koncipován s ohledem na moţnosti mobilních zařízení jako je velikost displeje, ovládacích prvků a přenosové rychlosti vytáčených linek. HDML mimo formátování textu, obrázků (dvoubarevných) obsahuje také skriptovací prvky - akci na základě vstupu uţivatele (vpřed/vzad, klávesové zkratky), moţnost více různých 'aktivit' v rámci jedné stránky (jednoduché kalkulačky atd.). V roce 1998 vzniká WML(Wirelles Markup Language) standart - veřejná specifikace pokrývající vlastnosti HDML a zároveň splňující kritéria XML. V Japonsku vzniká cHTML se stejnými vlastnostmi, ale v Evropě není téměř uţíván.
8
FUP-Fair User Policy je způsob jak při sdílení přenosového pásma zamezit přílišnému stahovaní dat jednoho uţivatele na úkor ostatních 9 Handheld Device Markup Language
17
V roce 2001 vzniká specifikace XHTML Mobile Profile, odvozena od XHTML 1.0 doplněna o klávesové zkratky a jednoduché skriptování - dopředu/vzad. V roce 2005 společnost Google kupuje firmu zabývající se portováním Linuxu na mobilní zařízení - Android, Inc. a začíná vyvíjet operační systém pro mobilní zařízení zaloţený na Open Source platformě. To sebou přináší plnohodnotný prohlíţeč, který umoţňuje procházet stávající stránky.
3.1.2 Typy mobilních prohlíţečů 3.1.2.1 Openwave Prohlíţeče jsou nainstalovány v různých verzích do velké škály mobilních zařízení, obvykle niţších cenových hladin. Podporují od WML10 1.0 aţ po XHTML-MP. Prohlíţeč odesílá detailní informace o verzi telefonu. 3.1.2.2 Opera (Opera mini) Podporovaná na PocketPC, MDA a Symbian Smartphones. Opera zvládá v jistě míře XHTML a ECMA11 skriptování. Opera mini je dostupná pro J2ME (instalována jako Web'n'walk prohlíţeč). Obě Opery se identifikují jako Opera, ale odesílají dodatečnou informaci o zařízení. 3.1.2.3 Apple iPhone a Android Zařízení podporují HTML5 – pomocí Javascriptu je umoţněn přístup k dotykové obrazovce, geo informace, rozšířené instrukce pro CSS styly a implementováno SVG12. Nevýhodou je nutnost testování na skutečných zařízeních, díky rozdílným podmínkám (fonty, rozlišení obrazovky) je také potřeba brát v úvahu více grafických verzí mobilní aplikace. 3.1.2.4 Podpora flash Flash je podporován na mobilních zařízeních s operačním systémem Android 2.2. Flash lite v browseru je podporován pouze pro Nokia Series60.V tomto módu můţe fungovat jako lokální aplikace, či síťová aplikace. 10
Wireless Markup Language je značkovací jazyk na bázi XML ECMA je skriptovací jazyk spravovaný společností ECMA International 12 Scalable Vector Graphics je prostředek pro práci s grafickými objekty 11
18
3.1.3 Zabezpečení dat v mobilních prohlíţečích Zabezpečený přenos prostřednictvím protokolu HTTPS13 je těmito zařízeními podporován. Problém ale vyvstává s důvěryhodnosti certifikátů, protoţe nainstalované certifikáty obvykle obsahují kořenové certifikáty Thawte/Verisign a operátorem dodané certifikáty. Na většině chytrých telefonů lze doinstalovat kořenové/klientské certifikáty, na ostatních nejdou z pravidla instalovat ţádné – to můţe v některých případech vést aţ k nemoţnosti pouţívat aplikace. Unikátní identifikaci uţivatele (telefonní číslo) operátoři poskytují pouze na dohodnuté domény, smluvní proces trvá řádově měsíc.
3.1.4 Vývoj pro prohlíţeč Vývoj pro prohlíţeč lze charakterizovat jako orientovaný na server-side skriptování, tj. odpadá jakákoliv distribuce změn funkcionality. Skript musí být schopen rozpoznat zařízení a dle toho uzpůsobit výstup. Změny se týkají jak formátu výstupu), datových limitu, tak i třeba rozlišné interpretace odkazu s vnořeným obrázkem a textem. Existují Open Source i komerční projekty usnadňující tento vývoj. Při vývoji je potřeba kontrolovat kvalitu a konzistenci výstupu při existenci velké mnoţství zařízení. Zde se můţe stát, ţe klienti přistupující skrze brány operátorů se budou lišit. Při provozu aplikace je zároveň potřeba udrţovat aktuální seznam mobilních zařízení pro identifikaci a starat se o vzhled aplikace na nových zařízeních.
13
HTTPS je zabezpečený protokol určený pro komunikaci mezi serverem a prohlíţečem
19
3.2 Nativní aplikace 3.2.1 Prostředí pro vývoj nativních aplikací Operační systémy mobilních zařízení procházejí vývojem tak, jak se vyvíjí technologické moţnosti hardwaru. Od jednoduchých 'programů' které fungovali pouze a jen na jednom typu zařízení aţ k plnohodnotným 'PC' operačním systémům distribuovaným mezi pěti výrobci. Existuje mnoho platforem, od primárně mobilních aţ k PC platformám konvertovaným na mobilní zařízení. Udrţet funkční kompatibilitu mezi těmito platformami je problematické, vzhledem k moţnostem a omezením, které jednotlivé platformy poskytují. Pro jednoduché aplikace vyţadující pouze vstup uţivatele se obvykle vyuţívá J2ME, která je s malými modifikacemi pouţitelná na naprosté většině zařízení na českém trhu. Nevýhodou je rozdílná implementace grafických prvků, proto se pouţívá obvykle vlastní implementace grafických prvků, coţ sebou nese náročnější vývojový cyklus. Pro lepší aplikace (např. integrace reklamy do videa nativně v telefonu) je jiţ zapotřebí pouţít programovací platformu určenou přímo pro toto zařízení. To sebou nese zvýšené náklady na lidské zdroje. Výrobci operačních systému se pokoušejí zvýšit podíl na trhu zavedením jednotného aplikačního trhu (iPhone App market, Android market, Nokia Ovi store, Samsung Store atd.), coţ sice vede k zvýšení dostupného SW pro uţivatele, ale zároveň ke zvýšeným nákladům na straně vývojářů - aplikace se musí certifikovat. Samotné operační systémy mají implementovány bezpečnostní protokoly zaměřené proti zneuţití aplikačních prostředků, takţe uţivatel má jakousi kontrolu nad tím, co aplikace dělá. V případě Android/iPhone je moţné do originálního systému instalovat aplikace pouze z důvěryhodných zdrojů, tzn. 'not-rooted iPhone/Android' nepovolí nainstalovat aplikaci odjinud neţ ţe zabudovaného obchodu. Toto omezení lze obejít, pro případ Android je moţné povolit stahování z 'nedůvěryhodných' zdrojů, iPhone tuto moţnost zatím neposkytuje.
3.2.2 Specifika nejrozšířenějších OS platforem 3.2.2.1 Symbian OS Symbian OS je operační systém pro chytré telefony, který byl vyvinut na základě operačního systému firmy EPOC. První verze Symbian OS 6.1 se dostala na svět v roce 2001 spolu s 20
telefonem Nokia 9210 Communicator. V roce 2003 je vydán Symbian OS 7.0 pro Smartphones Sony Ericsson/Motorola (verze UIQ) a Nokia Series 60/80/90. Všechny se převáţně liší v GUI a ovládacími prvky. V roce 2008 došlo k zaloţení neziskového uskupení Symbian Foundation, které se stará o Symbian platformu jako celek pro všechny výrobce zařízení. K dnešnímu dní je Symbian OS pouţíván 5 výrobci - Nokia, Sony Ericsson, Sharp, Fujitsu a Mitsubishi. K vývoji se pouţívá programovací jazyk C++, který umoţňuje přístup k vnitřním knihovnám zařízení. Pro Symbian OS jsou tyto informace přístupné pouze autorizovaným vývojářům. Symbian umoţňuje plně ovládat mobilní telefon, od přístupu ke kontaktům aţ ke kontrole odchozích hovoru. Dále také umoţňuje běh aplikace na pozadí, mimo Nokia Series40 zařízení. Symbian umoţňuje podepisování aplikaci, ale to ve skutečnosti jen znamená, ţe vydavatel je registrován jako Symbian vývojář. Většina verzí obsahuje systém práv umoţňující uţivateli kontrolovat přístup k uţivatelským informacím a zdrojům zařízení. Symbian OS obsahuje nativně prostředí pro J2ME. Od verze OS 7.0 jsou dodávány s podporou Flash Lite. Nokia podporuje svůj vlastní aplikační obchod Nokia OVI store. Symbian se v posledních dvou letech stal OpenSource, nicméně nyní se opět stává uzavřenou platformou (informace z roku 2010). Nokia podporuje tvorbu Symbian aplikací různými online nástroji – např. jednoduchým Ovi App Wizard14. 3.2.2.2 Windows CE/Pocket PC/Windows Mobile Operační systém zaloţený na jádře Windows, jehoţ vývoj se datuje od roku 1996. Operační systém primárně určený pro HPC (Handheld PC), později adaptován pro Pocket PC/Smartphone. Systém CE je určen pro jednoúčelová zařízení (obvykle jediný program na popředí) s dotykovou obrazovkou, hardware klávesnicí a dalšími perifériemi pro komunikaci. Pocket PC je pouţíván primárně jako operační systém pro PDA (Personal Digital Assistent), po přidání GSM modulu do těchto zařízení slouţí jako MDA - Mobile Digital Assistant. Platforma umoţňuje streamovat audio/video, podporuje multitasking,
14
Dostupný na adrese http://oviappwizard.com
21
Vývoj je zaloţen na jazyce C++ a s vývojem .NET pro PC se objevuje verze .NET CF Compact Framework, která je určena pro mobilní zařízení. V současné době se pro vývoj pouţívá .NET pro aplikace a C++ pro specifické knihovny či jednoúčelové zařízení. Většina verzí obsahuje systém práv umoţňující uţivateli kontrolovat přístup k uţivatelským informacím a zdrojům zařízení. Windows neobsahuje nativně prostředí pro J2ME, Flash verze je v přípravě. Microsoft podporuje svůj vlastní aplikační obchod Windows Market. Lze konstatovat, ţe v současné době většina výrobců mobilních zařízení do svých nových produktů zařazuje spíše Android neţ Windows. 3.2.2.3 Google Android Operační systém zaloţený na Linuxu, spravovaný firmou Google. Plnohodnotný operační systém, který je určený primárně pro mobilní telefony. Aplikace se vyvíjí pomocí vlastního programovacího jazyka zaloţeného na JAVA, který umoţňuje plně kontrolovat telefon, zavedený multitasking umoţňuje více najednou spuštěných aplikaci. Obsahuje vestavěný systém práv umoţňující uţivateli kontrolovat přístup k uţivatelským informacím a zdrojům zařízení. Android má Flash verzi v přípravě. Google podporuje aplikační obchod - Android Market. 3.2.2.4 iPhone / iOS Zařízení společnosti Apple, které bylo vyvinuto a prodáváno od roku 2007, zaznamenalo od té doby obrovský nástup. Proprietární platforma jako první přinesla multitouch, větší vyuţití GPS/Location based services a defacto donutila operátory připravit neomezené datové balíčky. Aplikace se vyvíjí pomocí vlastního programovacího jazyka Objective C, který umoţňuje plně kontrolovat telefon, zavedený multitasking umoţňuje více najednou spuštěných aplikaci. 3.2.2.5 J2ME J2ME - Java 2 Mobile Edition. Verze mobilní Javy byla představena v roce 1998, v té době ještě jako PersonalJava, určena pro zařízení s omezenými prostředky. J2ME je dodávána jako hardwerová součást telefonu. U niţších cenových skupin obvykle představuje mikročip, u zařízení s operačním systémem je J2ME interpret instalován jako software. J2ME má několik verzi, kde kaţdá novější podporuje více vlastnosti a funkci. 22
MIDP - Mobile Information Device Profile, rozhraní umoţňující přistupovat k síťovým prostředkům. Verze MIDP 1.0 umoţňuje pracovat aplikaci na telefonu (základní aplikační cyklus, http spojení, uţivatelské rozhraní a trvale úloţiště dát). Verze MIDP 2.0 rozšiřuje verzi 1.0 o zabezpečené http spojení, ovládání multimédií, přístupová práva aplikace a podepisování aplikace. Nevýhodou vývoje pro J2ME je nutnost připravovat mnoţství verzí aplikací, ať uţ z důvodů rozličných velikosti obrazovky, schopností přístroje či maximální velikostí aplikace. Podepisování aplikace slouţí k zajištění 'důvěryhodnosti' vydavatele aplikace - certifikovaná autorita zkontroluje aplikaci, zdali neumoţňuje nevhodné chování a zároveň umoţní přístup k citlivým informacím bez souhlasu uţivatele. Nedůvěryhodné aplikace jsou při kaţdém takovém dotazu přerušeny a uţivatel je dotázán, zdali povolí aplikaci přístup. J2ME neumoţňuje běh aplikace na pozadí, při kaţdém předání řízení (příchozí SMS, příchozí volání) je aplikace zastavena a poté můţe být znovu spuštěna. J2ME je moţné provozovat na platformě iPhone/Android/Windows mobile pouze s doinstalovaným J2ME prostředím, které je dostupné v mnoha verzích. Obecně se ale toto nedoporučuje – výrobci zařízeni mají svůj vlastní aplikační jazyk. 3.2.2.6 Flash Flash lite je podporován na téměř všech Symbian zařízeních v různých verzích, umoţňující programovat samostatné aplikace, šetříce obrazovku a tapety. Flash podporuje přístup na internet, obsluhu kontaktů a ostatních osobních údajů, dále pak komunikace s perifériemi. Zabudovaný bezpečnostní systém umoţňuje uţivateli kontrolovat vše, co aplikace dělá. Podepisování aplikaci je prováděno vývojářem, který musí být zaregistrován u výrobce Flash - společnosti Adobe.
23
3.2.3 Vývoj nativní aplikace Vývoj nativní aplikace lze rozdělit do 2 fází: příprava modelové verze, při které se vyrobí prvotní verze aplikace na modelové zařízení dále se modifikuje modelové verze pro ostatní zařízení. Při vývoji se stává, ţe aplikace v dané podobě není schopna běţet na minoritním zařízení a proto je buď z podpory vyškrtnuta, či se musí napsat vlastní verze. Pro J2ME se připravuje cca 17 rozdílných verzí aplikace, cca 6 rozlišení a 5 různých platforem. Pro zvýšení důvěryhodnosti aplikace je vhodné ji podepsat, tj. odeslat ji certifikační autoritě, která tuto verzi aplikace podepíše. Tím uţivateli odpadne nutnost povolovat jednotlivé akce aplikace např. ohledně způsobu komunikace, práce s kontakty atp. Pro iPhone se vyrábí jen jedna verze, pro Android verzi je třeba jedna aplikace, která zvládne čtyři rozlišení. Dále následuje distribuce aplikace, která se skládá buďto z publikace na vlastních stránkách nebo v případě iPhone/Android se zveřejňuje na stránkách vestavěného obchodu.
24
3.3 Aplikace na bázi WAP Další alternativou při tvorbě mobilních aplikací můţe být řešení zaloţené na bázi protokolu WAP – Wireless Application protocol. Jedná se o technologii, resp. mnoţinu protokolů, které umoţňují zobrazení obsahu www stránek v mobilních zařízeních, kde není nebo nebyl k dispozici dostatečný výpočetní výkon (málo výkonné CPU, malá velikost paměti, malý displej, klávesnice atd.) [7] Celé řešení bylo nejdříve komerčně dostupné ve verzi 1.0, která vyţadovala stránky napsané v jazyce WML(Wireless Markup Language). Toto byla zjevná nevýhoda, protoţe v případě provozování klasické i mobilní verze stránek musely být udrţovány dva odlišné zdrojové kódy – HTML a XML. Nástupcem je verze 2.0, která je jiţ pouţívá jazyk XHTML MP (XHTML Mobile Profile), který je zaloţený na obecném jazyce XML. Hlavním grafickým formátem je zde PNG, verze jiţ není závislá na WAP gateway (tedy prostředník mezi koncovým mobilním zařízením a serverem, který poskytuje obsah), podporuje CSS styly (různá barva textu a jiných prvků). Architektura je tvořena těmito vrstvami: Aplikační vrstva (WAE) – v zásadě programátorské prostředí, vrstva je zaloţena na kombinaci WWW a technologie mobilních přístrojů. Relační vrstva (WSP)-komunikační rozhraní, sluţby nad transakčním protokolem WTP a nad datagramovou sluţbou WDP Transakční vrstva (WTP) – vrstva poskytující transakční protokol pro klientskou stranu Bezpečnostní vrstva (WTLS)-obdoba bezpečnostního protokolu SSL Transportní vrstva (WDP)- nabízí transportní sluţby vyšším vrstvám WAP jako takový je v zásadě ekvivalent k internetovým protokolům v GSM, historicky je podporován téměř všemi typy mobilních telefonů a dostupný v rámci nabídky sluţeb mobilních operátorů.
25
3.4 Výhody a nevýhody vývojových prostředí V následující kapitole jsou uvedeny nejčastější výhody a nevýhody jednotlivých vývojových prostředí. Cílem není detailní porovnání, ale spíše obecný přehled hlavních předností a nedostatků
3.4.1 Vývoj pro prohlíţeč Výhody
Nevýhody
Existují standardy umoţňující sdílet vývoj pro různá zařízení/výrobce (WebKit jádro, HTML5) Standardizace prohlíţečů je podporována výrobci a odbornými skupinami – obecně potenciálně niţší náklady na vývoj a údrţbu Není třeba instalovat do cílového zařízení Nové verze není třeba jakkoli distribuovat – funkce „instant update“ Ze své podstaty vţdy pro uţivatele zdarma Prohlíţečem disponuje i řada „hloupých“ telefonů bez OS Niţší nároky na paměť telefonu
Prohlíţeč má omezenu maximální velikost stránky, včetně přiloţených zdrojů. Z důvodu čitelnosti a přehlednosti je potřeba stránku optimalizovat pro velké mnoţství zařízení. Velkým problémem bývá dodrţení jednotného vzhledu. Starší prohlíţeč má striktní validaci a ţádné opravné mechanismy, např. pokud u obrázku chybí alternativní text. Openwave prohlíţeč zobrazí chybu – stránka není v pořádku. Prohlíţeč dokáţe udrţet omezený počet Cookie. Např. starší telefony udrţí jen 20 Cookies, přetrvávající do vypnutí telefonu, či zařízení, které datum expirace cookies mají nastaveno na maximálně 30 dní. Prohlíţeč nemá přístup k ţádné informaci v telefonu. Nedokáţe 100% uchovat identitu zákazníka, ale je moţné poţádat operátory o poskytování těchto informaci pomocí jejich vnitřní infrastruktury. Verze prohlíţeče je obvykle vztaţená k Firmware telefonu, dva stejné telefony s různým firmware mohou zobrazovat stránku rozdílně. Prohlíţeč přistupuje na aktuální stránku – veškeré statické zdroje jsou umístěny mimo zařízeni. Telefony si umí uchovávat některé zdroje v paměti – toto má ale omezeni – např. Nokia Series40 pojme cca 2 MB obrázků.
Tabulka č. 1 Výhody a nevýhody vývoje pro prohlíţeč Zdroj: Autor
26
3.4.2 Nativní vývoj aplikace Výhody
Nevýhody
Aplikace má přístup k vlastnostem telefonu (specifikováno v API). Můţe načítat unikátní identifikátory zařízení (SIM, IMEI), zjišťovat informace ze sítě atd. Aplikace má po schválení přístup k datům v telefonu (SMS, adresář) a k určení polohy Aplikace po instalaci stahuje jen potřebná data (menší datový provoz). Zároveň vyţaduje striktní implementaci přenosového protokolu, který musí být orientován na data. Aplikace můţe pouţívat i SMS/MMS pro komunikaci. K tomuto kroku obvykle dochází, pokud je uzavřena smlouva s operátorem a v tomto případě je SMS/MMS komunikace zdarma. Můţe lépe vyuţít specifika telefonu (GUI, grafika, integrace ovládání)
Aplikační prostředí je závislé na modelové řadě a vybavení zařízení. Problematická bývá síťová komunikace, přístup k audio a video funkcím a chování periférií (SD karta atd.). Obecně vyšší náklady na vývoj a údrţbu při stejném pokrytí trhu Aplikace má integrovaný graficky design a předdefinované chování. Vzhledem k roztříštěnosti grafického rozhraní mobilních zařízení, je potřeba aplikaci koncipovat v několika rozměrech a verzích ovládání – telefonní klávesnice, touchscreen, multitouch. Aplikaci pro změny funkcionality je potřeba znovu redistribuovat klientům pomocí obvykle uţivatelem vyvolané aktualizace. Při vylepšování aplikace je obvykle nutné zachovávat zpětnou kompatibilitu nebo notifikační systém, který uţivatele informuje o nové verzi.
Tabulka č. 2 Výhody a nevýhody vývoje nativní aplikace Zdroj: Autor
3.4.3 WAP aplikace Výhody
Nevýhody
Prověřená technologie Dostupnost a podpora téměř na všech typech mobilních telefonů
slabší grafická prezentace oproti nativní aplikaci nebo aplikaci vytvořené přímo pro prohlíţeč nejasná budoucnost a další vyuţití protokolu WAP v současné době můţe být jiţ chápana jako zastaralá technologie
Tabulka č. 3 Výhody a nevýhody vývoje WAP Aplikace Zdroj: Autor
27
4 TEORETICKÝ APARÁT PRO ŘEŠENÍ 4.1 SWOT analýza SWOT analýza představuje ucelenou metodu kvalitativního vyhodnocení veškerých relevantních stránek právě řešeného problému. Je v celku lhostejno, zdali se jedná např. o projekt, tvorbu strategie nebo procesů či uvedení nového produktu na trh. SWOT je také důleţitým nástrojem pro celkovou analýzu vnitřních a vnějších činitelů. Analýza spočívá v rozboru a hodnocení současného stavu (interní analýza) řešeného problému, kdy se hodnotí silné (Strenghts) a slabé (Weaknesses) stránky a současně situace okolí (externí analýza), kdy jsou hodnoceny hrozby (Threats) a příleţitosti (Opportunities) spojené s řešenou problematikou. Pokud např. hodnotíme podnik jako celek, tak těţiště úspěchu bude spočívat v maximalizaci jeho předností (silných stránek) a příleţitostí, a naopak minimalizací jeho nedostatků (slabých stánek) a hrozeb. SWOT analýza také můţe být chápána jako rozvaha, kdy jednotlivé faktory rozdělíme podle níţe uvedené tabulky. SWOTanalýza
Interní analýza Silné stránky
Slabé stránky
S-O-Strategie: E W-O-Strategie: Vývoj nových metod, které x Odstranění slabin pro vznik Příležitosti jsou vhodné pro rozvoj silných t nových příleţitostí. stránek společnosti (projektu). e r n í W-T-Strategie: a S-T-Strategie: Vývoj strategií, díky nimţ je n Hrozby Pouţití silných stránek pro moţné omezit hrozby, a zamezení hrozeb. ohroţující naše slabé l stránky. ý z a Tabulka č. 4. Uspořádání jednotlivých kvadrantů Swot analýzy Zdroj: http://cs.wikipedia.org/wiki/SWOT
28
4.2 UML modelování 4.2.1 Jazyk UML [2] Jazyk UML (Unified Modeling Language) lze charakterizovat jako prostředek pro grafickou tvorbu objektových modelů. Jazyk jako takový se je znám od poloviny devadesátých let, kdy došlo ke sloučení do té doby dvou nejvíce pouţívaných metodik Booch15 a OMT16.
Nejdříve vznikla verze 1.0, která začala být konsorciem OMG17
doporučována jako standard, coţ umoţnilo její rozšíření. V současné době je UML k dispozici ve verzi 2.0, kde jsou k dispozici nové typy diagramů, zejména diagram přehledu interakcí, načasování a smíšené struktury.
Obrázek č.1 Unified Modeling Language Zdroj: http://upload.wikimedia.org/wikipedia/commons/d/d6/Uml_diagram2.png
Diagram balíčků (Package Diagram) Slouţí k dekompozici systému a seskupení souvisejících prvků v modelu. Jejich prostřednictvím je moţné znázornit závislosti mezi dílčími částmi systému
15
Booch metodika zaměřená zejména na design a implementaci OMT: Object Modeling Technique 17 OMG: Object Management Group 16
29
Diagram aktivit (Activity Diagram) Modeluje chování systému a znázorňují tok činností, tj. sled jejich provádění včetně větvení na základě splněných podmínek. Diagram případů užití (Use Case Diagram) Slouţí ke znázornění chování systému z pohledu uţivatele(actora), lze znázornit interakci systému a uţivatelů při vykonávání určité ohraničené jednotky činností. Diagram tříd (Class Diagram) Slouţí ke znázornění statické struktury modelovaného systému, znázorňuje typy objektů a vztahy mezi nimi. Jedná se patrně o nejznámější diagram. Stavový diagram (State Machine Diagram) Slouţí ke znázornění stavů a přechodů mezi nimi. Typicky se jedná o stavy jedné třídy nebo ţivotní cyklus entity. Diagram komunikace (Communication Diagram) Dokumentují spolupráci objektů při řešení úlohy a zobrazují toky událostí mezi třídami včetně jejich pořadí (dříve se nazývaly diagramy kolaborace) Diagram komponent (Component Diagram) Zobrazuje a popisuje jednotlivé komponenty, ze kterých se celý systém skládá. Diagram vnitřní struktury (Composite Structure Diagram) Jsou určeny pro vyjádření kolaborace instancí a instancí komunikačních struktur Diagram nasazení (Deployment Diagram) Popisují fyzické rozmístění jednotlivých komponent v rámci výpočetního systému. Diagram přehledu interakcí (Interaction Overview Diagram) Zachycuje tok řízení v rámci systému nebo procesu. Kaţdý uzel nebo aktivitav rámci diagramu můţe reprezentovat další diagram interakce. Objektový diagram (Object Diagram) Znázorňuje objekty a jejich vztahy na úrovni jejich konkrétních instancí. Sekvenční diagram (Sequence Diagram) Znázorňuje, jak se jednotlivé akce instancí tříd mění v čase včetně vzájemné komunikace mezi nimi.
30
4.3 Vícekriteriální rozhodování [1] Podstatou úloh vícekriteriálního rozhodování se rozumí výběr jedné varianty z mnoţiny (v dané chvíli potencionálně realizovatelných) variant na základě zvolených kritérií. Volba optimální varianty je závislá na celé řadě faktorů a zejména na zvolených vahách kritérií. Velmi častou chybou je snaha o zjednodušení celého procesu tím, ţe se zredukuje počet kritérií hodnocení. Jedním z klíčových momentů je volba metody, která je pro daný typ rozhodnutí pouţita. Některé metody jsou zaloţené na převodu kritérií na společnou jednotku, která můţe mít buď hodnotové vyjádření (za pouţití tzv. převodních můstků např. do peněţní formy) nebo na nějakou bezrozměrnou veličinu. Zde je opět důleţitý způsob, jakým jsou stanoveny váhy jednotlivých kritérií. Metody mohou zaloţené na přímém stanovení vah (bodová metoda, metoda pořadí) nebo na párovém srovnávání (metoda párového srovnávání18 nebo Saatyho metoda). Pokud je kritérií vice (zpravidla více neţ 10), tak lze vyuţít metodu postupného rozvrhu vah, která umoţňuje ohodnotit významnost kritérií etapově. Dále je důleţité zdůraznit, ţe zvolená varianta na prvním místě preferenčního uspořádání je variantou optimální pouze v případě, ţe: soubor hodnotících kritérií obsahuje všechna významná hlediska a faktory bude platit, ţe po realizaci této varianty se nezmění hodnoty, ze kterých se vycházelo v momentě rozhodování Multikriteriální vyhodnocovací metody je moţné rozdělit podle výpočetního principu dle: maximalizace uţitku minimalizace vzdálenosti od ideální varianty vyhodnocování variant na základě preferenční relace Mezi nejznámější metody, které jsou zaloţeny na těchto principech, patří např.: Metoda váţeného součtu (WSA – Weight Sum Approach) Metoda ideálních bodů (IPA - Ideal Points Analysis) Metoda TOPSIS (Technique for Order Preference by Similarity to Ideal Solution) Metoda shody a neshody (CDA - Concordance Discordance Analysis)
18
téţ známa jako „Fullerův trojúhelník“
31
4.3.1 Matematické postupy pouţité při výběru Výpočet vah kritérií
vi-normovaná váha i-tého kritéria pi-počet preferencí i-tého kritéria k-počet kritérií
Metoda WSA - Maximalizační kritérium
y´ij – dílčí funkce uţitku i-tého kritéria Dj…nejniţší kriteriální hodnota kritéria yij (při maximalizaci nejhorší varianta a opačně) Hj…nejvyšší kriteriální hodnota kritéria yij (při maximalizaci nejhorší varianta a opačně)
Metoda WSA - Minimalizační kritérium
Celkový uţitek varianty Celkový uţitek jedné varianty se vypočítá jako váţený součet dílčích uţitků jednotlivých kritérií.
X – varianta rozhodování vj – váha i-tého kritéria y´ij – dílčí funkce uţitku i-tého kritéria k - počet kritérií
32
4.4 Techniky odhadu pracnosti [4] Provedení odhadu ceny vývoje SW řešení nebo tvorby nové aplikace a její zavádění do informačního systému společnosti je v rámci procesu dalšího rozhodování o způsobu implementaci poměrně kritickou záleţitostí. Metody odhadu nákladů lze rozdělit zhruba do níţe uvedených kategorií, které vycházejí zejména z druhu a mnoţství vstupních informací, které o systému či softwaru máme: -
Expertní odhady a analogie
-
Odhady zaloţené na modelu (Cocomo, FPA)
-
Ostatní metody
4.4.1 Expertní odhady a analogie Tento typ odhadu je prováděn expertem, na základě jeho znalostí. Lze pouţít všude tam, kde při odhadu návrhu systému nejsou k dispozici měřitelná data. Hlavním cílem je provedení odhadu velikosti jednotlivých fází, tj. analýzy, návrhu, kódování, testování, vytvoření dokumentace a následné uvedení do provozu. Analogický typ odhadu lze pouţít ve chvíli, kde jsou k dispozici údaje o podobných projektech, na základě kterých jsme schopni popsat rozdíly mezi těmito projekty a námi navrhovaným systémem. Tyto rozdíly poté ovlivňují na námi odhadovanou pracnost.
4.4.2 Odhady zaloţené na modelu Pojem model lze chápat jako závislost velikosti projektu na pracnosti, který byl vytvořen na základě nashromáţděných dat ze skutečných projektů. Nejznámější metody odhadu nákladů zaloţené na modelu jsou: Cocomo (Constructive Cost Model) Jedná se o metodu vytvořenou B.Boehmem19, která vychází z úvahy, ţe pracnost, cena a čas nutný pro vytvoření nového systému je úměrný velikosti zdrojových souborů kódu takového systému.
19
B.Boehm je americký softwarový inţenýr, který metodu COCOMO publikoval v roce 1981
33
Metoda pouţívá různé úrovně detailu výpočetního modelu (základní, střední a pokročilý model) a složitosti vývoje (tzv. organický,bezprostřední a vázaný mód). Základní vztahy pro výpočet úsilí (E-effort) a času (T-Time) jsou následující: E= a (KSLOC)^b T=c E^d Symboly a,b,c,d představují parametry zvolené podle úrovně detailu a sloţitosti, hodnota KSLOC se uvádí jako tisíce řádků programového kódu. Z výše uvedeného je zřejmé, ţe v případě, kdy není k dispozici odhad velikosti budoucího kódu, je tato metoda nepouţitelná.
Function Point Analysis(FPA) Při této metodě jsou jako měřítko sloţitosti pouţity tzv. „funkční body“, které lze chápat jako jednotku výroby při tvorbě softwaru. Nejdříve se stanoví tzv. neupravené funkční body NFP (identifikované dle transakčních nebo datových funkcí), které se poté rozdělí do skupin podle typu a sloţitosti. Počet těchto bodů z kaţdé skupiny se vynásobí vahou a následně se vše sečte, čímţ se získá hodnota NFP Dále se odhadovaný systém ohodnotí 14 faktory, které jej charakterizují (např. jaká je poţadovaná dostupnost dat). Kaţdý faktor je poté hodnocen číslem od 0 do 5. Součtem těchto hodnocení získáme sumu všech charakteristik - Σ Fi Upravené funkční body získáme následovně: FP = 0,65 . 0,01 Σ Fi . NFP Celkový odhad je poté proveden podle pracnosti kaţdého funkčního bodu FP.
4.4.3 Karnerova metoda UCP Tato metoda je podrobněji popsána v kapitole 4.5
34
4.4.4 Ostatní metody Metody jako Pricing to win nebo Parkinsonův zákon jsou v praxi často pouţívány, ale vţdy je nutné zváţit jejich objektivitu. Termín „Pricing to win“ chápeme jako částku, kterou je zákazník ochoten investovat bezprostředně do vývoje čí koupě SW na základě rozpočtu, který na takový vývoj má. Zároveň se počítá s tím, ţe k dokončení plné funkcionality produktu dojde aţ později, např. formou víceprací, zvýšenou údrţbou atd. Podle Parkinsonova zákona bude pracnost taková, ţe spotřebuje všechny dostupné zdroje a čas. Pokud má být projekt dokončen nejpozději do jednoho roku a k dispozici jsou 4 pracovníci, tak celková pracnost bude 48 člověko-měsíců.
4.5 Karnerova metoda UCP [6] Metoda byla vyvinuta v roce 1993 Gustavem Karnerem. Je zaloţena na analýze function points, která vznikla v 70. letech ve výzkumných laboratořích IBM. Výhodou této metody je fakt, ţe můţe být pouţita jiţ v rané fázi návrhu systému, kdy ještě není k dispozici podrobná analýza funkcionalit navrhovaného systému. V této fázi máme pouze hrubý přehled funkcí systému, které budou poţadovány budoucími uţivateli. Modely jednání - use case - mohou být v tomto případě jednoduše pouţity pro odhad sloţitosti vývoje softwaru a jeho testování. Výpočet use case points se skládá ze tří částí: 1. Neupravený UCP o Počet aktorů: aktoři se rozdělí do třech kategorií, kterým se přidělí váhy Jednoduchý: jiný systém připojený na odhadovaný systém přes interface, váha=1 Průměrný: další systém, který na odhadovaný systém komunikuje přes protokol, váha=2 Sloţitý: představuje osoby, které komunikují se systémem přímo přes grafické rozhraní, váha=3 Získaná hodnota představuje celkovou nevyrovnanou váhu aktorů (Total Unadjusted Actor Weight – uaw) o Počet use case: jednotlivé případy uţití se zařadí do kategorie sloţitosti podle počtu transakcí v jednotlivém případu: - jednoduchý (méně neţ 4 transakce) 35
- střední (4 aţ 7 transakcí) - sloţitý (více neţ 7 transakcí). a těmto kategoriím se přidělí váhy: 5 (jednoduchý), 10 (střední) nebo 15 (sloţitý). Získaná hodnota představuje celkovou nevyrovnanou váhu počtu případů uţití
(Total
Unadjusted Use Case Weight – uucw) Neupravený UCP (Unadjusted use case points) je součtem obou předchozích, tedy uucp = uaw + uucw 2. Technický faktor Provede se ohodnocení systému z technického pohledu, kde se 13 technických faktorů ohodnotí známkou od 0 do 5. Nejniţší hodnota představuje bezvýznamný vliv na systém, naopak čím je hodnota vyšší, tím faktor významně ovlivňuje navrhovaný systém. Výsledkem je sumární tFactor, celkový technický faktor pak: tcf = 0,6 + (0,01 * tFactor ) 3. Faktor prostředí Provede se ohodnocení 8 faktorů, které souvisejí se znalostmi a dovednostmi zaměstnanců. Známky jsou stejné jako u technického faktoru, výsledkem je sumární eFactor, celkový faktor prostředí pak: ef = 1,4 + (-0,03 * eFactor ) Celkový počet UCP získáme roznásobením nevyrovnané části UCP technickým faktorem a faktorem prostředí: aucp = uucp * tcf * ef Tuto hodnotu (v této chvíli se jedná o bezrozměrné číslo) je potřeba převést na skutečnou pracnost, kterou představuje hodnota člověkohodina. Dle Karnera je doporučeno 20 hodin na jeden aucp , dle jiných autorů kolísá hodnota v rozmezí 15-30 hodin. 36
4.6 Řízení projektů Pojem projekt je třeba chápat jako souhrn koordinovaných aktivit za účelem změny stávajícího stavu do stavu nového. Je jasné, ţe do celého procesu jiţ vstupujeme s jistými omezeními a v jeho průběhu je třeba počítat s různými rizikovými faktory. Jak velice vhodný nástroj můţe být pouţití některé ze známých metodik. Tu chápeme jako souhrn definovaných pravidel a postupů, které nám při jejich dodrţení umoţní lepší zvládnutí celého procesu. [3] Mezi nejznámější metodiky patří např. PRINCE220. Mezi klíčové vlastnosti projektu patří zejména: Určení jednoznačného cíle Vypracování smysluplného, resp. do fázích rozděleného plánu (harmonogramu) Alokaci patřičných zdrojů Jasné určení rolí – ve smyslu zákazníka nebo zadavatele Akceptační kritéria: stanovit na začátku projektu, musí být měřitelná Mezi kritické faktory projektu řadíme: Součinnost jak mezi řešiteli, tak uţivateli Podporu vedení společnosti-aktivní roli sponzora Specifikaci poţadavků Plán prací Očekávání V rámci ţivotní cyklu projektu je třeba naplánovat jednotlivé etapy tak, aby výstup jednotlivé fáze navazoval na další a nedocházelo k neţádoucímu návratu do předchozího stavu. Jedinou výjimkou by měl být proces řízené změny, který se můţe objevit ve fázi realizace celého projektu. Nejčastěji se jedná o pozdě nebo nedostatečně identifikované poţadavky mezi původním zadáním (představou zadavatele) a způsobem realizace řešitelem (tj. dodavatelem).
20
Metodika PRINCE2 je spravována a rozvíjena organizací The Office of Government Commerce(OGC)
37
Ţivotní cyklus projektu je vhodné rozdělit do čtyř fází, které musí mít jasné výstupy. To je předpokladem zahájení jak další fáze, tak moţnosti provádět průběţné kontroly a vyhodnocovat plnění a dodávky na projektu. Fáze1-Iniciace: popis výchozího a cílového stavu (zejména proč jej chceme dosáhnout), tvorba dokumentu na úrovni studie proveditelnosti. Výstupem je schválení projektu. Fáze2-Plánování a návrh řešení: Tvorba rozpočtu a detailního harmonogramu, volba vhodného technického řešení, smluvní zajištění. Výstupem je schválené řešení. Fáze3-Realizace (implementace) řešení: Vlastní tvorba řešení, integrace do okolních systémů, testování a školení. Výstupem je akceptace implementovaného řešení v této části projektů podle výsledku integračních testů. Fáze4-Zavedení do provozu: Provozní testy, zkušební a pilotní provoz, na který navazuje proces plného převzetí díla do provozu. Výstupem je protokol o převzetí a vyhodnocení celého projektu – nejčastěji formou posouzení shody s původním zadáním z fáze 1. Rizika projektu je nutné chápat jako určitou míru nejistoty, která provází celý ţivotní cyklus projektu. Rizika můţou mít kladný (jejich poznáním a řízením eliminujeme neúspěch projektu) nebo záporný vliv (nedostatečná identifikace vede k zvýšení nákladů projektu a prodluţování doby celkové realizace) na splnění cílů projektu. Proces řízení rizik projektu je znázorněn na následujícím obrázku tak, jak jej chápe metodika PRINCE2.
Obrázek č.2 Procedura řízení rizik Zdroj: Managing Successful Projects with PRINCE2
38
Procedura risk managementu je tedy rozčleněna do pěti oblastí: Identifikace rizik: zjištění potencionálních oblastí a rozpad na dílčí rizika, popsání rizik. Lze vyuţít různé techniky, např. brainstorming, risk checklist, rozhovor atd. Posouzení rizik: zejména kvalitativních (hodnocení pravděpodobnosti a dopadu těchto rizik, jejich velikost a priorita) a kvantitativních (číselné odhady dopadů). Plánování řízení rizik Stanovení plánu postupu a kontroly projektu tak, aby byly redukovány nebo odstraněny hrozby a naopak naplněny příleţitosti, které má projekt přinést Implementace opatření spočívá zejména v dohledu nad prováděnými opatřeními, rovněţ je důleţitá identifikace vlastníka rizika Komunikace Je nutné chápat jako průběţnou činnost ve všech fázích, kde je formou reportů (kontrolní, zápis ze schůzky, ukončení) prováděn neustálý monitoring stavu řízení rizika.
39
5 SPOLEČNOST CETELEM ČR, A.S. 5.1 Popis společnosti Společnost CETELEM ČR, a.s. je silná a stabilní společnost, která se svojí patnáctiletou tradicí na českém finančním trhu patří mezi největší a nejvýznamnější nebankovní poskytovatele úvěrových produktů a sluţeb. Prostřednictvím svých poboček a sítě obchodních partnerů nabízí klientům: klasické spotřebitelské úvěry v prodejnách obchodních partnerů účelové a neúčelové osobní půjčky kreditní karty produkty určené k financování motorových vozidel různé typy pojištění Jak jiţ bylo konstatováno v úvodu, společnost CETELEM ČR, a.s. vnímá zpřístupnění vybraných sluţeb, které jsou doposud poskytovány výhradně prostřednictvím klasického stolního počítače, jako příleţitost pro tvorbu nového obchodního kanálu. Ten by měl být k dispozici jak stávajícím klientům, tak novým potencionálním zájemcům o sluţby společnosti. Vzhledem k tomu, ţe společnost podniká ve vysoce konkurenčním prostředí jako je poskytování spotřebitelských úvěrů, tak je také nutné věnovat patřičnou pozornost aktivitám konkurence. Lze konstatovat, ţe společnosti obdobného typu jiţ mají nebo se chystají poskytnout aplikace podobného typu. Jako příklad lze uvést mobilní aplikaci společnosti GE Money21, která umoţňuje přístup k hlavním bankovním sluţbám.
5.2 Popis výchozího stavu Jako první krok bylo provedeno vyhodnocení přístupu na dva hlavní weby společnosti, a to: www.cetelem.cz – firemní web, který poskytuje ucelené informace o sluţbách a produktech www.aurakarta.cz – produktový web zaměřený na jeden z hlavních produktů společnosti- revolvingovou kartu Statistika přístupů byla provedena pro dva typy segmentů: 21
Aplikace je dostupná na adrese http://www.gemoney.cz/ge/cz/1/ucty/banka-v-mobilu/aplikace-do-mobilu
40
Operační systémy: tedy z prostředí stolního počítače. Zde se projevila jasná dominance systému Windows ve všech jeho klonech. Detail této statistiky je uveden v příloze. Mobilní zařízení: tedy z „přenosných zařízení“, detail je na níţe uvedeném obrázku
Graf č. 6 Statistika přístupů na hlavní weby společnosti Zdroj: Autor
Jedná se o výstup z programu Google Analytics22 za období od 1/2011 do 10/2011, kde je vidět na prvních třech místech skupinu zařízení na bázi platforem Android/ SymbianOS /IPhone. Je zřejmé, ţe klienti (ať stávající či potencionální) pro přístup na tyto stránky pouţívají také přenosná zařízení. Počet přístupů z těchto zařízení v této chvíli sice představuje jedno procento z celkového počtu, ale je nutné si uvědomit, ţe oba tyto weby nejsou optimalizovány pro přístup z těchto zařízení. Zobrazení na těchto zařízeních tedy zdaleka není optimální. Podobně jako tradiční www stránky se předpokládá prakticky časově neomezený přístup k mobilním aplikacím, coţ by opět mohl být vhodný doplněk k poskytovaným sluţbám na klasických kamenných pobočkách.
22
Google Analytics (GA) je statistický program běţící na serverech společnosti Google, který uţivatelům umoţňuje dát si do vlastních stránek měřící kódy, které lze za pomoci tohoto programu poté vyhodnocovat.
41
5.3 SWOT analýza tvorby mobilních aplikací V níţe uvedené tabulce jsou silné a slabé stránky pro vytvoření souboru mobilních aplikací a dále pak hrozby a příleţitosti vyplývající z implementace mobilních sluţeb. SWOT analýza byla vybrána jako vhodný nástroj pro následnou definici výběrových kritérií, která bude nutné při výběru vhodného řešení dodrţet.
SWOT Interní faktory – vnitřní prostředí Silné stránky
Slabé stránky
-
Stabilní produktové portfolio
-
-
Vhodnost klientského portfolia pro tento typ mobilních sluţeb
Zkušenost s technologiemi v dané oblasti
-
Řešení bezpečnosti v tomto způsobu komunikace
-
Robustnost navrhovaného řešení
-
-
Informační systém společnosti umoţňuje snadný přístup k informacím pro budoucí mobilní aplikaci
Dostatečná interní kapacita vývojového týmu Externí faktory – vnější prostředí Příležitosti
Hrozby
-
Zpřístupnění sluţeb stávajícím klientům novým komunikačním kanálem
-
Rostoucí počet konkurenčních řešení při mobilním poskytování úvěrových produktů
-
Lepší cílení produktů na konkrétního zákazníka
-
-
Inovativnost
Měnící se technologie-nutnost neustále sledovat dění v této oblasti
-
Zlepšení povědomosti o společnosti
-
Legislativní omezení
Tabulka č. 5 SWOT analýza příleţitosti tvorby mobilních aplikací Zdroj: Autor
Analýza jako taková byla vytvořena z pohledu budoucího řešitele, tj. jedná se pohled „zevnitř“ společnosti.
42
5.4 Vyhodnocení SWOT analýzy a definice kritérií Na základě vyhodnocení SWOT analýzy a poznatků získaných v rámci přehledu potencionálních sluţeb společnost CETELEM ČR, a.s. stanovila tyto poţadavky, které musí být navrhované řešení splňovat. 1. Z pohledu stávajících klientů: zaměřit se na oblast kreditních karet a osobních půjček. Tyto oblasti nabízí nejvíce moţností vyuţití a zároveň jej lze okamţitě nabídnout stávajícím klientům. 2. Z pohledu nových klientů: připravit úvěrový kalkulátor tak, aby umoţnil simulaci výpočtu výše úvěru. Téţ připravit konsolidační kalkulátor pro klienty, kteří uvaţují o sloučení více půjček do jedné – konsolidace spotřebitelských úvěrů. 3. Nabídnout sluţby, ve kterých je spojitost mezi klienty společnosti a obchodními partnery23 , např. vyhledání nejbliţšího prodejce na mapě 4. Vlastní realizaci provést za pomoci interních vývojových kapacit a znalostí, tj. neimplementovat externí řešení. Hlavním důvodem je zejména bezpečnost řešení a sdílení know-how v oblasti poskytování a rozhodování o schválení úvěrů. 5. Odezva aplikace musí být srovnatelná nejenom s konkurenčními řešeními v dané oblasti, ale i s podobnými portály, např. m.idnes.cz, m.ihned.cz atd. 6. Ekonomické parametry návrhu: a. Čas implementace nesmí přesáhnout 10 měsíců b. Na celý projekt můţe být alokováno max. 8 lidí, preferovaná varianta je z interních zdrojů společnosti c. Celková cena řešení nesmí přesáhnout 2 miliony Kč. Z výše uvedeného vyplývá, ţe se jedná o funkční (kalkulátor, vyhledávač) a nefunkční (robustnost, odezva aplikace) poţadavky. Jejich rozdělení stačí sice provést aţ při analýze vlastního řešení, ale je třeba na ně pamatovat jiţ při návrhu výběrových kritérií.
23
Obchodním partnerem se rozumí smluvní prodejce společnosti, který nabízí a prodává její úvěrové produkty
43
6 VÝBĚR TECHNICKÉHO ŘEŠENÍ 6.1 Zadání problému Výběr technického řešení je pro tvorbu takovéto aplikace zcela zásadní. Je nutné si uvědomit, ţe ve fázi případné realizace jiţ nelze způsob řešení změnit, protoţe tím by se zcela změnily podmínky, za kterých bylo učiněno rozhodnutí realizovat tvorbu této aplikace. V kapitole č.3 Technické řešení mobilních aplikací byly popsány tyto moţné způsoby řešení: 1. Vývoj pro prohlíţeč (browser) 2. Nativní vývoj aplikace (native) 3. Vývoj na bázi WAP (wap) Cílem je tedy porovnat tyto způsoby řešení a jeden z výše uvedených doporučit k realizaci. Výběrová kritéria jsou navrţena následovně: 1. Odhad úsilí, které bude třeba vyvinout při tvorbě základu mobilního portálu 2. Odhad úsilí, které bude třeba vyvinout při tvorbě kalkulátoru úvěru 3. Odhad úsilí, které bude třeba vyvinout při tvorbě transakcí v oblasti platebních karet 4. Ostatní funkcionality, např. vyhledávač prodejců 5. Robustnost řešení v kontextu celého informačního systému společnosti 6. Odhad celkového času 7. Alokace lidských zdrojů 8. Náklady na řešení
44
6.2 Metodika pro výběr řešení Sestrojení normalizované matice -
V řádcích budou tři moţná řešení, ve sloupcích výběrová kritéria
-
Zvolená kritéria v kombinaci se způsoby budou obodována
-
Hodnoty v matici budou upraveny do jednotného formátu tak, aby se dal zjistit uţitek jednotlivých scénářů
Odhad vah kritérií metodou Fullerova trojúhelníku -
Kritéria budou vzájemně porovnána a tím budou získány jednotlivé váhy. Některá kritéria jsou tzv. dominantní a zvolené řešení je musí splňovat, jiná budou maximalizační nebo minimalizační (např. délka trvání implementace)
Vícekriteriální hodnocení variant metodou váţeného součtu -
Cílem je kvantitativním způsobem vyjádřit uţitek jednotlivých způsobů řešení
-
Celkový uţitek kaţdého řešení se spočítá jako váţený součet dílčích uţitků jednotlivých kritérií
-
Ve výsledné matici bude nový sloupec, ve kterém bude vyjádřen uţitek jednotlivých scénářů.
Seřazení a výběr řešení -
Matice je počítána jako maximalizační, tedy řešení s nejvyšší hodnotou bude doporučeno k realizaci
Vlastní výpočet byl proveden (dle matematických postupů popsaných v teoretické části) ta pomoci MS Excel. Hodnoty, které jsou uvedené v tabulkách, jsou výsledkem několika iterací celého rozhodovacího procesu. Hlavním důvodem bylo zejména ověření citlivosti preferenčního uspořádání při změně vah a hodnot některých kritérií, jejichţ hodnota musela být víceméně odhadnuta.
6.3 Sestrojení normalizované matice Kritériím 1-5 jsou přiděleny a následně sečteny body v rozsahu od 1 do 5. Toto značí, jaké úsilí se bude muset věnovat návrhu, vývoji a implementaci dané oblasti při zvoleném způsobu řešení. Menší hodnota znamená mnoho úsilí, protoţe daná funkcionalita můţe v rámci tohoto řešení komplikovaná. V tomto případě se jedná o maximalizační kritérium. Platí tedy, ţe čím je hodnota vyšší, tím je to pro hodnocenou variantu lepší. Minimalizační kritéria jsou odhad 45
času implementace, který je uveden v měsících, lidé jsou v počtu a cena je ve statisících korun. 4.
5.
6.
7.
Cena
8.
Lidské zdroje
Ostatní funkce Robustn ost řešení Čas impleme ntace
3. Kalkuláto r úvěru Podpora karetních operací
Řešení/Kritérium Vývoj pro prohlížeč (browser) Nativní vývoj aplikace (native)
2. Mobilní portálzáklad
1.
4
4
3
3
5
6
4
11
3
3
4
4
4
8
5
18
2
1
1
2
4
2
8
2 Vývoj na bázi WAP(wap) Tabulka č. 6 Sestrojení normalizované matice Zdroj: autor
6.4 Odhad vah kritérií metodou Fullerova trojúhelníku Fullerův trojúhelník umoţňuje porovnávat jednotlivá kritéria mezi sebou. V našem případě se jedná 8 kritérii. Kaţdá dvojice se při porovnání vyskytuje právě jednou. Důleţitější kritérium se viditelně označí. V případě, ţe jsou obě kritéria stejně důleţitá, označí se obě.
f1/f2
f6
f7
f8 Cena
f5
Lidé
f4
Robustno st řešení Čas implemen tace
f3
Ostatní funkce
f2
Kalkulátor úvěru Podpora karetních operací
Řešení/Kriterium Mobilní portál-základ Kalkulátor úvěru
Mobilní portálzáklad
f1
f1/f3 f2/f3
f1/f4 f2/f4
f1/f5 f2/f5
f1/f6 f2/f6
f1/f7 f2/f7
f1/f8 f2/f8
Podpora karetních operací Ostatní funkce Robustnost řešení Čas implementace Lidé Cena Tabulka č. 7 Odhad vah kritérií metodou Fullerova trojúhelníku Zdroj: Autor
f3/f4
f3/f5 f4/f5
f3/f6 f4/f6 f5/f6
f3/f7 f4/f7 f5/f7 f6/f7
f3/f8 f4/f8 f5/f8 f6/f8 f7/f8
Takto označená kritéria jsou obodována podle počtu výskytů. Pokud je kritérium preferováno, tak dostane přidělen 1 bod. V případě stejné důleţitosti s druhým kritériem 0,5 bodu. Poté je proveden součet všech bodů a tímto výsledkem vydělen počet jednotlivých bodů kritérií. Pro stanovení vah jednotlivých kritérií je dále zapotřebí určit jejich typ, tj. zdali jsou maximalizační nebo minimalizační. To je uvedeno ve druhém řádku s názvem „max/min= 1/0“. Je zřejmé, ţe v zájmu kaţdého projektu je spotřebovat co nejméně lidských zdrojů a minimalizovat čas nutný k realizaci. 46
1 0,1944
1 1 0,0556 0,0903
1 1 0,155 0,1544
8. Cena
7. Lidské zdroje
6.
Robustn ost řešení Čas impleme ntace
5.
Ostatní funkce
Kritérium max/min = 1/0 Váha kritéria
4.
Podpora karetních operací
3. Kalkuláto r úvěru
2. Mobilní portálzáklad
1.
0 0 0 0,124 0,1506 0,0757
Tabulka č. 8 Váhy výběrových kritérií Zdroj: autor
Z výše uvedené tabulky vyplývá, ţe důleţitými kritérii pro výběr řešení je tvorba základu mobilního portálu a ostatní funkcionalita spolu s robustností celkového řešení, za nimi přibliţně na stejné úrovni alokace lidských zdrojů pro realizaci.
6.5 Vícekriteriální hodnocení variant metodou váţeného součtu WSA Metoda váţeného součtu je zaloţena na konstrukci lineární funkce uţitku v rozmezí od 0 do 1. Tyto hodnoty představují krajní uţitky variant v rámci jednotlivých kritérií. 0 přestavuje nejniţší uţitek, naopak hodnota 1 nejvyšší. Celkový uţitek kaţdého řešení se vypočítá jako váţený součet dílčích uţitků jednotlivých řešení.
0,1944
0,0556 0,0602 0,1033 0,1544
0,0972
0,0278 0,0903
0 1 0,1786
0
0
0,155 0,1029 0
0
0,062 0,0505 0,1054 0,7858 0
0
0 0,4732
0,124 0,0757 0,1506 0,3503
1 1 1 1 0 0 0 0,0536 0,0536 0,0536 0,1786 0,1786 0,1427 0,1607
Tabulka č. 9 Celkové uţitky jednotlivých řešení Zdroj: autor
47
Celkový užitek řešení
Overall Benefit of scenario
8. Lidské zdroje
7.
Čas implementace
6.
Robustnost řešení
5. Ostatní funkce
4.
Podpora karetních operací
3. Kalkulátor úvěru
Řešení/Kritérium Vývoj pro prohlížeč (browser) Nativní vývoj aplikace (native) Vývoj na bázi WAP(wap) max/min = 1/0 Váha kritéria
2. Mobilní portálzáklad
1.
6.6 Seřazení a výběr řešení V následující tabulce jsou jednotlivá řešení seřazena sestupně podle svého klesajícího uţitku. Pořadové číslo určuje způsob řešení, který bude doporučen k realizaci. Pořadí 1. 2. 3.
Řešení/Kritérium uţitek řešení Vývoj pro prohlíţeč (browser) 0,7858 Nativní vývoj aplikace (native) 0,4732 Vývoj na bázi WAP(wap) 0,3503
Tabulka č. 10 Seřazení a výběr řešení Zdroj: autor
Dle zobrazeného pořadí je jasné, ţe největší uţitek řešení přináší vývoj pro prohlíţeč. To je dáno zejména kombinací faktorů: úsilí, které je nutné vyvinout při tvorbě základu mobilního portálu v kombinaci s robustností celkového řešení. Při hodnocení tohoto kritéria byl zohledněn fakt, ţe vytvoření jednoho „univerzálního“ řešení pro prohlíţeč je v dané chvíli jednodušší neţ tvorba a údrţba několika nativních aplikací pro různé typy mobilních telefonů. Z pohledu zabezpečení lidských zdrojů při vývoji jasně zvítězil varianta pro prohlíţeč před nativní aplikací – to je jednak důsledkem faktu, ţe společnost jako jedno z kritérií definovala vytvoření vlastními silami a zdroji, coţ v případě nativní aplikace nelze v současné době zajistit. Vývoj na bázi WAP řešení se umístil na třetím místě – to je dáno zejména faktem, ţe v současné době jiţ tato technologie není schopna poskytnout na stejné prezentační úrovni všechny poţadované sluţby jako řešení pro prohlíţeč nebo nativní aplikace. Přesto byla brána do úvahy jako jedna z alternativ, protoţe byla zajímavá z pohledu lidských zdrojů (její realizace by byla pro pracovníky společnosti nejjednodušší) a ceny řešení. V této chvíli lze tedy učinit dílčí závěr, ţe celé řešení bude realizováno formou vývoje pro prohlíţeč.
48
7 ÚVODNÍ STUDIE 7.1 Odborný článek Cílem tohoto projektu je vytvoření souboru mobilních aplikací, které umoţní klientům přístup ke sluţbám za pomoci mobilních prostředků. Předpokládá se přístup jak stávajících klientů společnosti, tak nových zájemců o tyto sluţby. Celé řešení bude koncipováno jako portál na dedikované adrese „m.cetelem.cz“. Tento portál nebude ekvivalentem firemního webu (www.cetelem.cz), ale bude naopak sdruţovat obsah, sluţby a odkazy na funkce vyvinuté na míru mobilním zařízením. Bude jakýmsi přístupovým bodem ke všem mobilním sluţbám poskytovaným společností CETELEM ČR, a.s. Okruhy k řešení jiţ byly definovány v rámci vyhodnocení SWOT analýzy tvorby mobilní aplikace, coţ nyní umoţňuje jejich rámcový popis jakoţto jednotlivých funkcí navrhovaného řešení. Klient po otevření úvodní stránky portálu bude mít k dispozici následující menu: 1. Úvodní stránka: obsahuje odkazy „o Nás“, kontakty, ochrana dat, reklamní banner 2. Kalkulátor osobní půjčky: bude obsahovat splátkovou kalkulačku zaměřenou na produkt osobní půjčka24 3. Kalkulátor konsolidací: bude obsahovat „combi“ kalkulátor optimalizovaný pro slučování více půjček do jedné 4. Společné funkce pro kalkulátory: v mobilním zařízení musí být umoţněn komfortní a dobře ovladatelný výpočet podporující úpravy základních parametrů (výše půjčky, výše měsíčních splátek, délka splácení). Jakékoliv další sloţitější operace budou směřovány do plnohodnotné kalkulačky umístěné na firemním webu www.cetelem.cz. Zavolat si o půjčku: aktivuje telefonní aplikaci25 daného zařízení a nabídne předvyplněné telefonní číslo „xxx xxx xxx“
24
Produktů společnosti CETELEM ČR,a.s., který klientovi umoţňuje pořízení účelové půjčky
49
Dokončit online: aktivuje nové okno mobilního prohlíţeče směřované na firemní web www.cetelem.cz a otevře stránku s kalkulačkou a naplní ji vstupními informacemi z mobilní simulace Přeposlat ţádost: Aktivuje emailovou aplikaci daného zařízení s nevyplněnou emailovou adresou, kam můţe uţivatel napsat libovolnou adresu, včetně své vlastní. V těle emailu bude vygenerován text, souhrn parametrů, výsledku dotazu a odkaz na adresu, který kliknutím přenese uţivatele na plnohodnotnou kalkulačku www.cetelem.cz kde budou vyplněny zadané vstupní parametry. Kontaktujte mne: Aktivuje kontaktní formulář, který odešle informace typu jméno, příjmení, email a vypočtené informace z výpočtu osobní půjčky. 5. Kreditní karta: Kaţdá jednotlivá transakce v této části se bude ověřovat specifickým heslem,
kódem
či
privátní
informací.
Podporovány musejí být tyto transakce: -disponibilní zůstatek - transakční historie karty - zaslání peněz na účet - blokace karty - platba Virtuální kartou - obnova PINu kreditní karty 6. Vyhledávač prodejců: umoţní klientovi najít nejbliţší obchod, kde jsou poskytovány sluţby společnosti CETELEM ČR, a.s. Dále musí být umoţněna správa a publikace obsahu s vyuţitím stávajícího CMS26 a s příslušnou technologickou podporou - logika identifikace cílových zařízení a platforem, podpora pro variantní aplikaci šablon a stylů dle těchto zařízení a mapování vzhledu dle zařízení a rozlišení. Dále pak obecné publikační moţnosti a příprava vzhledů a stylů pro podporovaná zařízení. Očekává se i podpora pro jednoduchý banner management. V rámci výběru technického řešení, které bylo provedeno v kapitole 6, byl zvolen způsob realizace formou vývoje pro prohlíţeč. V teoretické části práce bylo provedeno zmapování
25
Některá zařízení zobrazují potvrzovací dialog, jiná přenášejí uţivatele do volby telefonního čísla, kde toto číslo bude předvyplněné. Tuto funkci nelze ovlivnit, protoţe se jedná o systémovou záleţitost a je závislá na konkrétním zařízení. 26 Containt Management Systém slouţí pro správu obsahu webových stránek bez znalostí programování
50
nejčastěji pouţívaných mobilních zařízení včetně trendů jejich vyuţití do budoucna. Tyto znalosti nyní umoţňují specifikovat podporovaná zařízení a zobrazovací schopnosti mobilního frameworku vůči těmto zařízením. Podporované platformy budou rozděleny do tří skupin, kdy skupina A umoţní nejlepší zobrazení a skupina C základní zobrazení. Vzhledem k designu stránek budou pouţity některé elementy CSS verze 3, které nemusí některé zařízení ze seznamu A podporovat. V praxi to bude znamenat, ţe návštěvník těchto stránek, který má zařízení nepodporující nové funkce CSS3, uvidí design nepatrně jinak (například kulaté rohy budou hranaté, nesystémový font Helvetica bude nahrazen systémovým Arialem atp.). Tato skutečnost neovlivňuje samotnou A B C podporu, jen vizuální záţitek z prohlíţení webu. Seznam podporovaných zařízení dle výše navrhovaného členění je uveden v příloze.
51
8 ANALÝZA A NÁVRH ŘEŠENÍ 8.1 Zvolený postup pro provedení analýzy pomocí jazyka UML Protoţe jazyk UML není metodika, ale pouze notace zápisu, existuje mnoho způsobů, jak postupovat při samotné analýze. Při návrhu tohoto řešení byl zvolen následující postup: 1. Odborný článek, studium uţivatelských poţadavků, interview se zadavatelem. Zaloţení úloţiště pro EA model27 2. Vytvoření katalogu uţivatelských poţadavků, validace, kategorizace poţadavků (funkční a nefunkční). 3. Propojení uţivatelských poţadavků (na základě katalogu) s jednotlivými případy uţití, definice aktorů systému a jejich následná validace zadavatelem 4. Návrh uţivatelského rozhraní v kombinaci s případy uţití 5. Odhad nákladů pomocí Karnenovy metody
8.2 Katalog poţadavků Katalog poţadavků na tvorbu souboru mobilních aplikací byl vytvořen na základě odborného článku. Struktura katalogu poţadavků je rozčleněna na logické části, které de facto představují jiţ základní UC-případy uţití. Poţadavky jsou dále rozděleny na funkční (FP) a nefunkční poţadavky (NFP).
FP: Funkční poţadavky FP1:Základ portálu P.1.1 identifikovat cílové zařízení a podle toho optimalizovat stránku P.1.2 vygenerovat hlavní stránku, tzv. homepage a sestavit úvodní menu(dále statické stránky „o nás“, kontakty, ochrana dat P.1.3 načíst obsah vytvořený DMS systémem P.1.4 algoritmus detekce pro přesměrování na mobilní vs. plnou verzi webu
FP2.Kalkulátor-osobní půjčka P.2.1 sestavení úvodní info stránky o osobní půjčce 27
UML modelování je provedeno pomocí nástroje Enterprise Architect 7.5 od firmy Sparx System
52
P.2.2 výpočet osobní půjčky, zobrazeni účelu úvěru, výše úvěru a délky splácení P.2.3 zobrazení výsledku simulace a moţnost změnit parametry P.2.4 podpůrné funkce kalkulátorů: umoţní dokončení simulace tím, ţe nabídne tyto moţnosti
dokončení
ţádosti:
telefonické
dokončení,
přechod
na
formulář
na
www.cetelem.cz, přeposlání výsledku simulace na libovolnou emailovou adresu, volba “kontaktujte mě” formou vyplnění kontaktního formuláře
FP3.Kalkulátor-konsolidace P.3.1 sestavení úvodní info stránky o konsolidaci P.3.2 výpočet konsolidace formu „kombi“ kalkulačky, zobrazeni hodnot „zbývá k doplacení“
,“měsíčně splácíte“ ,“nové prostředky“ ,účel nových prostředků a délku
splácení P.3.3 zobrazení výsledku simulace a moţnost změnit parametry P.3.4 podpůrné funkce kalkulátorů: umoţní dokončení simulace tím, ţe nabídne tyto moţnosti jak dokončit ţádost: telefonické dokončení, přechod na formulář na www.cetelem.cz, přeposlání výsledku simulace do libovolného mailu, volba “kontaktujte mě” formou vyplnění kontaktního formuláře
FP4 Kreditní karta P.4.1 sestavení úvodní info stránky s informacemi o kreditní kartě P.4.2 algoritmus umoţňující ověření vybraných transakcí pomocí sms zprávy P.4.3 provádět tyto transakce: -disponibilní zůstatek - transakční historie karty - zaslání peněz na účet - blokace karty - platba Virtuální kartou - obnova PINu kreditní karty
FP5. Vyhledávač prodejců P5.1 formou vrstvy přes google maps zobrazit adresy nejbliţších obchodních partnerů Cetelem. P5.2 informace o adresách partnerů načítat z datového interfejsu, vyuţít geolokaci mobilního telefonu
FP6.Publikace obsahu P6.1 vytvoření a propagování obsahu
FP7.Datový interface P.7.1 Vytvoření rozhraní pro vstup dat z informačního systému do základu portálu
53
NFP: Nefunkční poţadavky NFP1: Platforma a Architektura NFP.1.1 základ portálu: CMS LARS VIVO28 NFP.1.2 zdroj informací: Databáze Oracle 11g NFP.1.3 Framework m.jquery pro určení typu mobilního zařízení29
NFP2: Výkonnostní a datové požadavky NFP.2.1 Obsah přenášených dat v rámci jedné stránky se musí pohybovat v rozpětí 300kB-500kB NFP.2.2 Přechod a načtení jednotlivých stránek nesmí přesáhnou 5 sekund
NFP3: Ostatní NFP.3.1 Deduplikace předávaných informací: totoţné informace nahrané z informačního systému nesmějí být znovu v rámci řešení ukládány NFP.3.2 Aplikace musí být dimenzovaná na paralelní přístup cca 100 zařízení Tabulka č. 11 Katalog poţadavků Zdroj: Autor
28
Contain Management Systém http://vivo.lundegaard.eu/cs/vivo-cms/ 29
společnosti
Lundegaard,
informace
Aktuální seznam podporovaných zařízení je na adrese: http://jquerymobile.com/gbs/
54
jsou
dostupné
na
8.3 Vazba uţivatelských poţadavků na případy uţití V tomto kroku je provedeno propojení jednotlivých uţivatelských poţadavků s případy uţití. Cílem je zajistit, aby ţádný poţadavek nezůstal nerealizován.
Obrázek č.3 Vazba uţivatelských poţadavků na případy uţití Zdroj: autor
8.4 Diagram případů uţití Diagram případů uţití znázorňuje vztah mezi uţivateli systému a jednotlivými případy uţití. Zároveň je provedena dekompozice případů uţití do jednotlivých částí budovaného systému. Při návrhu informačního systému lze případy uţití také vyuţít v následujících oblastech: 55
Tvorbu testovacích scénářů a dokumentace Řízení projektu na základě případů uţití ve vazbě na vhodnou projektovou metodiku30 Pro stanovení odhadu pracnosti je diagram případů uţití důleţitý pří výpočtu nevyrovnané části UCP, kde pomůţe určit jak počet actorů v jednotlivých UC, tak i rozsah a sloţitost kaţdého takového případu uţití.
Obrázek č.4 Diagram případů uţití Zdroj: Autor
30
Např. metodika Select Perspective, která se vyuţívá při iterativním vývoji za pomoci případů uţití
56
8.5 Návrh hlavní stránky mobilní aplikace Jiţ v této fázi návrhu je vhodné vytvořit návrh obrazovek budoucí aplikace a provázat je s jednotlivými případy uţití. Jednak je tím jasně znázorněno, ţe kaţdý případ uţití realizuje některou část budoucí aplikace a dále pak je výrazně usnadněna komunikace se zadavatelem, který získá konkrétní představu o navrhovaném rozhraní.
Obrázek č.5 Návrh hlavní stránky mobilní aplikace Zdroj: Autor
Na základě tohoto návrhu je jiţ moţné připravit jednoduché grafické návrhy, tzv. wireframes. Níţe je zobrazen návrh hlavní stránky, zbývající návrhy jsou v příloze.
Obrázek č. 6 Grafický návrh hlavní stránky mobilní aplikace Zdroj: Autor
57
9 ODHAD NÁKLADŮ, ČASOVÉHO PLÁNU A BEZPEČNOST ŘEŠENÍ 9.1 Odhad nákladů na realizační fázi za pomoci Karnerovy metody Popis a význam hodnot byl jiţ popsán v kapitole 4.5, níţe jsou uvedeny jiţ konkrétní výpočty hodnot. Pro vlastní výpočet byl pouţit excelový kalkulátor, který je dostupný na webových stránkách společnosti Komix31. Neupravený UCP Přidělení vah aktorům Actor Type Weighting Factor Simple (machine with API) 1 Average (human) 2 Complex (human with GUI) 3 Total uaw Tabulka č. 12 Karnerova metoda odhadu nákladů – přidělení vah aktorům Zdroj: Komix a autor
Number of Actors 1 1 1
Total 1 2 3 6
Přidělení vah případům uţití Weighting Number of use case Total Use Case Type Number of transactions per UC Factor Simple <4 5 1 5 Average 4 to 7 10 4 40 Complex >8 15 2 30 Total uuaw 75 Tabulka č. 13 Karnerova metoda odhadu nákladů – přidělení vah případům uţití Zdroj: Komix a autor
Výpočet nevyrovnané části UCP je proveden jako součet dvou výše uvedených vah, tj. uucp= jaw + uuvw , celkem tedy uucp= 81 Technický faktor Technical Factors Distributed Systém Response adjectives End-user efficiency Complex processing Reusable code 31
Weight 2 1 1 1 1
Factor (0 - 5) 3 3 2 2 2
Komix, www.komix.cz
58
6 3 2 2 2
0 No influence 3 Average influence 5 Strong influence
Easy to install Easy to use Portable Easy to change Concurrent Security features Access for third parties Special training required
0,5 0,5 2 1 1 1 1 1
1 3 2 2 2 3 2 3
Technical complexity factor Tabulka č. 14 Karnerova metoda odhadu nákladů – technický faktor Zdroj: Komix a autor
0,5 1,5 4 2 2 3 2 3 33 0,93
Faktor prostředí Environmental factors Familiar with RUP Application experience Object-oriented experience Lead analyst capability Motivation Stable requirements Part time workers Difficult programming language
1,5 0,5 1 0,5 1 2 -1 -1
Factor (0 - 5) 4 3 1 4 3 4 0 0
Environmental factor Tabulka č. 15 Karnerova metoda odhadu nákladů – faktor prostředí Zdroj: Komix a autor
6 1,5 1 2 3 8 0 0 21,5
0 No influence 3 Average influence 5 Strong influence
0,76
Celkový počet UCP Pro získání vyrovnaného počtu UCP roznásobíme získané hodnoty z předchozích kroků, tj. UCP=UUCP*TCF*EF ->UCP= 57,25 Hodnota UCP představuje pracnost, v této chvíli jde však o bezrozměrné číslo. Obecně je doporučována hodnota 20 člověkohodin32 na jeden UCP, v našem případě tedy: 57,25 x 20 = 1145,00 hodin.
32
Téţ závisí na zkušenosti z jiných projektů, ale hodnota by se měla pohybovat v rozmezí 15-30 hodin na jeden UCP
59
9.1.1 Rekapitulace odhadu nákladů na realizaci systému Díky této metodě jsme relativně rychle schopni odhadnout náklady na vytvoření této nové funkcionality
Náklady Počet pracovníků
3,5 Člověkodny
40,89 Člověkoměsíce
2,04
Počet prac.hodin/den Počet prac dnů/měsíc
8 Člověkoden 20
7 000 Kč Člověkohodina Měsíčně
875 Kč 140 000 Kč
Total 1 001 875 Kč Tabulka č. 16 Rekapitulace odhadu nákladů na realizaci systému Zdroj: Autor
Výše uvedený výpočet vychází z předpokladu, ţe na vytvoření systému bude vyčleněna plná kapacita jednoho analytika a dvou programátorů, poloviční kapacita je vyhrazena na testování. Cena za člověkoden je na spodní hranici, která je obvyklá u těchto typů profesí. Lze tedy konstatovat, ţe pokud na tvorbě souboru mobilních aplikací bude pracovat 3,5 člověka na plný úvazek, tak odhadovaná doba realizace jsou dva měsíce a za dílo společnost zaplatí cca jeden milion korun.
60
9.2 Časový plán projektu Nedílnou součástí návrhu je časový plán jednotlivých činností a fází projektu, který je zpracován formou časového plánu. Z něho je patrné, kdy jednotlivé činnosti začínají a kdy končí, které činnosti na které navazují a jaké se vzájemně překrývají. Takto připravený plán, při jehoţ návrhu bylo vyuţito všech předchozích znalostí a informací z návrhu a analýzy řešení, dává společnosti celkový obrázek o čase a činnostech nutných pro realizaci celého řešení.
Číslo osnovy
Název úkolu
Doba trvání
Zahájení
Dokončení
Předchůdci
1 1.1 1.2 1.3 1.4 2
Fáze1-Iniciace projektu vypracování a odsouhlasení záměru dokumentace projektu klíčové role na projektu definice formálních pravidel na projektu schválení projektu
8 dny 3 dny 5 dny 1 den 1 den 0 dny
2.4. 12 2.4. 12 5.4. 12 9.4. 12 10.4. 12 12.4. 12
11.4. 12 4.4. 12 11.4. 12 9.4. 12 10.4. 12 12.4. 12
2 3SS 4 1
3 3.1 3.2 4
Fáze2-plánování a návrh řešení vlastní návrh řešení rozpočet a detailní harmonogram schválení řešení
15 dny 15 dny 3 dny 0 dny
12.4. 12 12.4. 12 12.4. 12 3.5. 12
2.5. 12 2.5. 12 16.4. 12 3.5. 12
6 9SS 8
5 5.1 5.2 6
Fáze3-realizace řešení Tvorba systému dle návrhu řešení Testování akceptace integračních testů
50 dny 40 dny 10 dny 0 dny
3.5. 12 3.5. 12 28.6. 12 12.7. 12
11.7. 12 27.6. 12 11.7. 12 12.7. 12
11 14 13
7 7.1 7.2 7.3 7.4
Fáze4-zavádění do provozu Provozní (výkonnostní) testy zkušební provoz pilotní provoz předání do provozu
17 dny 2 dny 5 dny 10 dny 0 dny
11.7. 12 11.7. 12 13.7. 12 20.7. 12 3.8. 12
3.8. 12 12.7. 12 19.7. 12 2.8. 12 3.8. 12
16 19 20 21
8
Vyhodnocení a uzavření projektu
0 dny
3.8. 12
3.8. 12
22
Tabulka č. 17 Harmonogram projektu Zdroj: Autor
Harmonogram byl připraven v prostředí MS Project 2010 a znázorňuje úkoly nejvyšší úrovně spolu s dílčími kroky kaţdé etapy. Zvolené termíny zahájení a ukončení jsou pouze ilustrativní, ale doba trvání dílčích etap by se v případě posunu zahájení projektu nezměnila.
61
9.3 Rizika projektu Úspěch případného projektu tvorby mobilních aplikací můţe být do značné míry ovlivněn řadou faktorů a rizik, jejichţ identifikace a popis je vhodné provést jiţ ve fázi návrhu řešení. V průběhu návrhu byla identifikována tato případná rizika: Cíle projektu: soubor mobilních aplikací nemá ambice nahradit stávající www stránky společnosti. Na toto je nutné zadavatele výslovně upozornit Plánování jednotlivých činností: Věnovat patřičnou dobu testování celé aplikace, zejména důsledně vyhodnotit pilotní provoz. V případě nutnosti ještě rozdělit projekt na menší části a na ně pohlíţet jako na dílčí milníky v projektu Volba technického řešení: zvolené řešení formou pro prohlíţeč bylo vybráno jako vhodné řešení. Nelze od něho poţadovat funkcionality, které jednak nebyly poţadovány a které lze realizovat pouze v reţimu tvorby nativní aplikace (např. získávání specifických informací z mobilního zařízení a SIM karty ve vazbě na uţivatele) Odezva aplikace: je zřejmé, ţe aplikace musí z pohledu uţivatele poskytovat přiměřenou dobu odezvy. Vzhledem k tomu, ţe aplikace v průběhu jejího pouţívání komunikuje s informačním systémem společnosti, tak je nutné zohlednit jeho případnou momentální vytíţenost Uţivatelská přívětivost aplikace: nesnaţit se za kaţdou cenu o graficky „perfektní“ vzhled, ale spíše preferovat funkčnost na jednotlivých mobilních zařízeních Bezpečnost řešení: po celou dobu tvorby aplikace je třeba mít na paměti, ţe do této aplikace je přistupováno z prostředí internetu a zároveň jsou získávána data z vnitřního systému. To klade zvýšené nároky nejen na vývoj a testování, ale i na provoz budoucí aplikace
62
9.4 Bezpečnost mobilních aplikací [6] S rozšiřováním funkčností chytrých telefonů (smartphones) a jejich stále většímu vyuţití pro přístup k aplikacím (zejm. finančního charakteru) z prostředí Internetu se mobilní aplikace dostávají do zorného úhlu profesionálních útočníků primárně zaměřených na zisk. Současně je z principu oslabena moţnost dvoukanálové autorizace transakcí či aktivit, neboť potvrzovací SMS zpráva směřuje na stejné zařízení, ze kterého byl zaslán poţadavek. Lze konstatovat, ţe problematice zabezpečení mobilních aplikací je a bude třeba v budoucnu věnovat větší pozornost neţ zabezpečení „klasických“ webových aplikací.
9.4.1 Typologie útoků na mobilní aplikace Útok můţe být směřován v zásadě třemi směry: 1. Na samotné mobilní zařízení 2. Na síť přenášející data z/do mobilního zařízení 3. Serverovou část aplikace na straně poskytovatele takovéto sluţby V následující tabulce je uveden přehled nejčastějších způsobů
Aktivum
Způsob útoku, charakteristika
Telefon
Baseband attacs, SMiShing
Prohlíţeč
Phishing,Framing,Man-in-the-Mobile,Data cacing
Aplikace
Ukládání citlivých dat, nesprávné šifrování,SSL certifikáty-validace
Síť
Podvodný Access Point,sniffing,Man-in-the-Middle,DNS poisoning
Web server
Špatná konfigurace XSS, útoky hrubou silou
Databáze
SQL injection, eskalace práv, zneuţití příkazů OS
Tabulka č. 18 Nejčastější způsoby útoků na mobilní aplikace Zdroj: Autor
V kontextu těchto informací je nutné si uvědomit, ţe mobilní aplikace jsou ve většině případů softwarová díla na zakázku, takţe nejčastějším zdrojem chyb je programátor (lhostejno, zdali se jedná o zaměstnance či dodavatele). Tyto „jedinečné“ chyby neodhalí ţádný automatizovaný nástroj pro testování zranitelností (tzv. vulnerability scanner) a proto je nutné provést řadu manuálních testů na tyto specifické slabiny. Celou řadu doporučení můţeme
63
nalézt na stránkách sdruţení OWASP33(The Open Web Application Security project), pro oblast mobilních zařízení je nově vydáván tzv. OWASP Top Ten Mobile Risks34. [8] Nejvýznamnější rizika jsou uvedena v následujícím přehledu 1. Insecure Data Storage: nedůsledná ochrana uţivatelských dat, která v případě ztráty umoţňuje útočníkovi ovládnout mobilní zařízení 2. Weak Server Side Controls: nedostatečnou validací zaslaných dat na serverové straně jsou do aplikace/databáze uloţena nesmyslná nebo nepravdivá data 3. Insufficient Transport Layer Protection: Transportní vrstva protokolu TCP/IP je nedostatečně chráněna 4. Client Side Injection: na straně mobilního zařízení lze vloţit škodlivý kód za běhu aplikace 5. Poor Authorization and Authentication: nedostatečné mechanismy pro zajištění kontroly přístupu, hrozící ztráta autentizačních údajů-jména a hesla, certifikáty 6. Improper Session Handling: uloţené hodnoty v seancích (tzv.cookies) nejsou řádně ošetřeny, útočník můţe tuto slabinu vyuţít k nekorektnímu zacházení(podsouvání, unášení regulérních relací. 7. Security Decisions Via Untrusted Inputs: ochranné mechanismy aplikace zaloţené na hodnotách vstupů mohou být útočníkem upravena tak, aby šlo např. uţívat sluţby placené řádným uţivatelem nebo si eskalovat oprávnění 8. Side Channel Data Leakage: únik dat na přenosové cestě, nejčastěji chybnou implementací šifrovaného přenosového protokolu 9. Broken Cryptography: získání šifrovaných dat chybou např. slabé kryptografické funkce aplikace 10. Sensitive Information Disclosure: typicky ztráta zdrojového kódu aplikace Na základě znalostí těchto nejčastějších útoků a rizik jsme lépe schopni odhadnout a poté navrhnou způsob testování aplikace z bezpečnostního pohledu.
33 34
Informace o sdruţení jsou dostupné na adrese https://www.owasp.org
Dostupný na adrese _Top_Ten_Mobile_Risks
https://www.owasp.org/index.php/Projects/OWASP_Mobile_Security_Project_-
64
9.4.2 Návrh bezpečnostních testů Cílem návrhu těchto testů je co moţná nejpřesněji určit reálnou zranitelnost aplikace vůči skutečným útokům, jinými slovy je potřeba co nejpřesněji aplikovat postupy potencionálního útočníka. Testování by mělo být provedeno v těchto fázích: 1. Testování bezpečnostního designu aplikace: zejména s ohledem na konkrétní chování na koncovém mobilním zařízení z pohledu získání, instalace, aktivace a autorizace aplikace vůči serveru. Prověřit mechanismy autentizace35 a autorizace36 a způsobu uloţení dat (pokud k němu dochází) na mobilním zařízení. Vlastní test provést ve dvou úrovních: Testování z anonymní úrovně: bez znalostí samotné aplikace, co nejvíce simulovat běţného uţivatele Testování se znalostí zdrojového kódu aplikace: podrobit zdrojový kód revizi a s touto znalostí postupně provádět test 2. Testování ochrany komunikace: prověřit komunikační a aplikační protokoly, certifikáty, práce s cookies atd. 3. Testování serverové části aplikace: Prověřit řízení přístupových práv, moţnost manipulace s formátem předávaných zpráv, ověření validace vstupů na serverové straně před jejich zpracováním a ověření odolnosti serverové části proti známým útokům typu SQL injection, data mining nebo útokům na session management. Závěrečné doporučení v oblasti bezpečnosti: vzhledem k tomu, ţe aplikace bude vyvíjena za pomoci vlastních kapacit společnosti CETELEM ČR, a.s., tak doporučuji provést testování za pomoci externích dodavatelů. Znalost zdrojového kódu a ostatních souvislostí běhu aplikace v kontextu s informačním systémem v zásadě znemoţňuje objektivní aplikace jako celku.
35 36
Autentizace-Ověření identity Autorizace-ověření oprávnění
65
ZÁVĚRY A DOPORUČENÍ Cílem této práce bylo provést návrh tvorby mobilní aplikace tak, aby byly splněny podmínky, které společnost CETELEM ČR, a.s. předem definovala. Výchozí stav by se dal zhruba popsat následovně „Pro klienty je potřeba vytvořit aplikaci pro mobilní telefony, aby naše služby nebyly dostupné pouze prostřednictvím stolních PC nebo limitovány otevírací dobou poboček“. Z toho je zřejmé, ţe se jedná o poměrně široké zadání, které vyţadovalo systematický přístup k dané problematice. Nejdříve jsem provedl zmapování situace na trhu mobilních sluţeb a mobilního Internetu, včetně trendů ve vývoji mobilních zařízení. To umoţnilo zvolit spektrum sluţeb, které lze klientům nabídnout. Dílčím cílem bylo zmapování jak současného stavu, tak i sluţeb které budou moci být nabídnuty i v budoucnu. Protoţe jedním z hlavních cílů práce bylo provedení samotného návrhu aplikace, tak jako další logický krok bylo provedeno zpracování přehledu technických aspektů, které je třeba dodrţet při vlastním návrhu. Tím vznikli tři moţné způsoby, jak takovouto aplikaci vytvořit: Vývoj pro prohlíţeč (browser) Nativní vývoj aplikace (native) Vývoj na bázi WAP (wap) Vlastní návrh aplikace jsem provedl ve třech na sebe navazujících etapách: 1.
Etapa výběru technického řešení ze třech variant Na základě provedené SWOT analýzy tvorby mobilní aplikace byly stanoveny poţadavky, které umoţnili nadefinovat výběrová kritéria. Protoţe výběr technického řešení je v rámci návrhu zcela klíčovou záleţitostí, tak vlastní výběr byl proveden pomocí jedné z metod multikriteriální analýzy: stanovení vah pomocí párového srovnání (tzv.Fullerův trojúhelník) a následné vyhodnocení uţitku řešení za pomoci metody váţeného součtu-WSA. Výsledkem této etapy bylo rozhodnutí, ţe řešení bude provedeno formou vývoje pro prohlíţeč.
2.
Analýza a návrh řešení na základě vybraného řešení 66
Cílem této etapy nebyl detailní návrh řešení, ale na základě odborného článku vytvořit popis základních funkcionalit navrhovaného systému tak, aby byly zohledněny všechny poţadavky, které má aplikace splňovat. Za pomoci modelovacího jazyka UML byl vytvořen základní přehled případů uţití (tzv. use case) a jejich provázání s funkčními poţadavky. Jiţ v této fázi jsem připravil návrh vzhledu základní stránky navrhované mobilní aplikace tak, aby společnost měla konkrétní představu o jejím budoucím vzhledu. 3.
Ostatní aspekty návrhu Díky dekompozici návrhu řešení na jednotlivé případy uţití jsem vyuţil Karnerovu metodu odhadu nákladů, která mi pomohla jiţ v rané fázi návrhu provést odhad doby trvání a nákladů na realizační fázi. Protoţe společnost poţadovala odhad celkové doby trvání vytvoření mobilní aplikace, tak jsem provedl návrh plánu prací včetně přehledu potencionálních rizik. Zde doporučuji celý vývoj řídit jako samostatný projekt ve čtyřech na sebe navazujících etapách. Vzhledem k tomu, ţe celá aplikace má být provozována v prostředí internetu s přístupem do informačního systému společnosti, tak je zvláštní kapitola návrhu věnována bezpečnostním aspektům a testování aplikace.
Jedním z klíčových poznatků při návrhu a tvorbě aplikace se ukázala důleţitost teoretických znalostí a metod. Jejich aplikace značně zprůhledňuje navrhované řešení a zároveň zkracuje nutnou dobu pro vytvoření návrhu jako takového. Rovněţ lze konstatovat, ţe poţadavky, které společnost CETELEM ČR, a.s. stanovila na tvorbu mobilní aplikaci, byly návrhem splněny.
67
SEZNAM POUŢITÉ LITERATURY Monografie [1] FOTR, J. a kol. Manažerské rozhodování postupy, metody, nástroje. Praha: Ekopress, 2006. ISBN 80-86929-15-9. [2] KANISOVÁ, Hana; MULLER, Miroslav. UML srozumitelně. 2.aktualizované vydání. Brno: Computer Press, 2007. ISBN 80-251-1083-4. [3] MURRAY, Andy. Managing Succesfull projects with Prince2. 2009. ISBN 978-0-11331059-3 [4] KOPŘIVA, David. Jaké znáte metody odhadu nákladů na informační systém. Praha, 2010. Semestrální práce. BIVŠ. Elektronické zdroje: [5] MATURA, Jan. Česko, země věrná nokiím [online]. 2011, [cit. 2011-12-15]. Dostupné z: < http://mobil.idnes.cz/cesko-zeme-verna-nokiim0vs/mob_tech.aspx?c=A110811_134029_mob_tech_jm> [6] PINKAVA, Jaroslav. Bezpečnostní střípky: zajímavé výsledky na konferenci 27C3 [online]. 2011, [cit. 2012-03-15]. Dostupné z:< http://www.root.cz/clanky/bezpecnostnistripky-zajimave-vysledky-na-konferenci-27c3/> [7] Material from Affiliates - Wireless Application Protocol. Open Mobile Alliance Ltd. [online]. 2012 [cit. 2012-02-18]. Dostupné z:
[8] The Open Web Application Security Project. OWASP [online]. 2012 [cit. 2012-03-30]. Dostupné z: [9] Tisková zpráva: Využívání internetových služeb z mobilního telefonu rychle roste. SPIR Z.S.P.O. [online]. 2012 [cit. 2012-03-11]. Dostupné z: <
68
SEZNAM OBRÁZKŮ Obrázek č. 1 Unified Modeling Language Obrázek č. 2 Prince2 - procedura řízení rizik Obrázek č. 3 Vazba uţivatelských poţadavků na případy uţití Obrázek č. 4 Diagram případů uţití Obrázek č. 5 Návrh hlavní stránky mobilní aplikace Obrázek č. 6 Grafický Návrh hlavní stránky mobilní aplikace
SEZNAM TABULEK Tabulka č. 1 Výhody a nevýhody vývoje pro prohlíţeč Tabulka č. 2 Výhody a nevýhody vývoje nativní aplikace Tabulka č. 3 Výhody a nevýhody na bázi SMS/MMS řešení Tabulka č. 4. Uspořádání jednotlivých kvadrantů Swot analýzy Tabulka č. 5 SWOT analýza příleţitosti tvorby mobilních aplikací Tabulka č. 6 Sestrojení normalizované matice Tabulka č. 7 Odhad vah kritérií metodou Fullerova trojúhelníku Tabulka č. 8 Váhy výběrových kritérií Tabulka č. 9 Celkové uţitky jednotlivých řešení Tabulka č. 10 Seřazení a výběr řešení Tabulka č. 11 Katalog poţadavků Tabulka č. 12 Karnerova metoda odhadu nákladů – přidělení vah aktorům Tabulka č. 13 Karnerova metoda odhadu nákladů – přidělení vah případům uţití Tabulka č. 14 Karnerova metoda odhadu nákladů – technický faktor Tabulka č. 15 Karnerova metoda odhadu nákladů – faktor prostředí Tabulka č. 16 Rekapitulace odhadu nákladů na realizaci systému Tabulka č. 17 Harmonogram projektu Tabulka č. 18 Nejčastější způsoby útoků na mobilní aplikace 69
SEZNAM GRAFŮ Graf č. 1 Penetrace mobilních sluţeb v ČR Graf č. 2 Přístup na www stránky v ČŘ dle zařízení podle spol. GEMIUS SA Graf č. 3 Stahování J2ME aplikací uţivateli v Q3 Graf č. 4 Prodeje smartphonů v ČR za první pololetí 2011 Graf č. 5 Činnosti prováděné prostřednictvím jednotlivých mobilních zařízení Graf č. 6 Statistika přístupů na hlavní weby společnosti
SEZNAM PŘÍLOH Příloha č. 1 Statistika přístupů na www.cetelem.cz dle operačních systémů Příloha č. 2 Návrh obrazovek souboru mobilních aplikací Příloha č. 3 Seznam podporovaných mobilních zařízení
70
Příloha č. 1 Statistika přístupů na www.cetelem.cz dle operačních systémů
1
Příloha č. 2 Návrh obrazovek souboru mobilních aplikací
1
Příloha č. 3 Seznam podporovaných mobilních zařízení Podporovaná zařízení/platformy skupiny „A“ Apple iOS 3.2-5.0 beta: iPad (3.2 / 4.3), iPad 2 (4.3), iPhone (3.1), iPhone 3 (3.2), 3GS (4.3), and 4 (4.3 / 5.0 beta) Android 2.1-2.3: HTC Incredible (2.2), Droid (2.2), Nook Color (2.2), HTC Aria (2.1), Google Nexus S (2.3). Android Honeycomb –Samsung Galaxy Tab 10.1 Windows Phone 7: HTC 7 Surround Blackberry 6.0: Torch 9800 and Style 9670 Blackberry Playbook: PlayBook version 1.0.1 / 1.0.5 Palm WebOS (1.4-2.0): Palm Pixi (1.4), Pre (1.4), Pre 2 (2.0) Palm WebOS 3.0 – HP TouchPad Firefox Mobile (Beta): Android 2.2 Opera Mobile 11.0: iPhone 3GS a 4 (5.0/6.0), Android 2.2 (5.0/6.0), Windows Mobile 6.5 (5.0) Kindle 3: WebKit v Kindle 3 Chrome Desktop 11-13 – OS X 10.6.7 a Windows 7 Firefox Desktop 3.6-4.0 – OS X 10.6.7 a Windows 7 Internet Explorer 7-9 –Windows XP, Vista a 7 Opera Desktop 10-11 - OS X 10.6.7 a Windows 7 Podporovaná zařízení/platformy skupiny „B“ Blackberry 5.0: Storm 2 9550, Bold 9770 Opera Mini (5.0-6.0) - iOS 3.2/4.3 Windows Phone 6.5 – HTC Nokia Symbian^3 NEW – Nokia N8 (Symbian^3), C7 (Symbian^3), N97 (Symbian^1) Podporovaná zařízení/platformy skupiny „C“ Blackberry4.x: Curve 8330 Všechny starší smartphony a jakékoli zařízení, které nepodporuje novější technologie dostává známku C. Nepodporovaná zařízení/platformy Meego Samsung Bada Všechny zařízení, které neumějí plnohodnotně zobrazovat HTML. Uţivatelům těchto zařízení se zobrazí „chybová“ stránka s upozorněním na nepodporované zařízení.
1