Aplikace czSMS Posílání SMS zpráv přes mobilní datové přenosy
Jan Kolařík
České vysoké učení technické v Praze Fakulta elektrotechnická Principy tvorby mobilních aplikací (A7B39PDA) 2011/2012
A7B39PDA – Principy tvorby mobilních aplikací
Aplikace czSMS – Jan Kolařík (kolarj29)
Část D1 1 .1 P RVOT N Í
POPIS APLIKACE
Jako semestrální práci do předmětu A7B39PDA se chystám „oprášit“ mou starou aplikaci czSMS. Ve své době se jednalo o první aplikaci pro systém Android umožňující posílat zdarma SMS zprávy do všech českých sítí. Odesílání probíhalo pomocí veřejných webových bran operátorů a odesláním jedné zprávy tedy byly uskutečněny pouze datové přenosy. Bohužel jsem aplikaci po první verzi pro nedostatek času přestal vyvíjet a dnes jsou v Android Marketu dostupní mnohem schopnější konkurenti. V rámci předmětu svou aplikaci aktualizuji tak, aby fungovala opět s nejnovějšími verzemi bran operátorů, a budu se snažit vytvořit její multiplatformní verzi pomocí nástroje PhoneGap nebo podobného. Jsou to totiž platformy jako Windows Phone 7 nebo Samsung Bada, které zoufale potřebují takový typ aplikace. Mezi podporované funkce bude patřit výběr čísla ze seznamu kontaktů, možnost zasílat dlouhé zprávy (aplikace sama zařídí rozdělení zprávy na více částí), automatická detekce operátora, odesílání přes verze bran vyžadující registraci apod.
2
A7B39PDA – Principy tvorby mobilních aplikací
Aplikace czSMS – Jan Kolařík (kolarj29)
Část D2 2 . 1 U Ž I VAT E L É Typickými uživateli aplikace czSMS bude především mládež zasílající velké množství textových zpráv. Vzhledem k tomu, že v České republice na rozdíl od většiny ostatních zemí neexistuje žádný cenově dostupný neomezený tarif pro posílání SMS, rozmohlo se mnoho aplikací umožňující posílání SMS zpráv zdarma – resp. pouze za poplatky za datové přenosy. K samotnému odeslání zprávy aplikace czSMS použije volně dostupné SMS brány tří českých operátorů, ale uživatel se bude cítit, jakoby používal klasické telefonní rozhraní pro psaní a odesílání SMS.
2.2 AKTIVITY Následující aktivity musí uživatel provést, aby dosáhl kýženého odeslání textové zprávy zdarma: •
Úvodní nastavení (průvodce/wizard) (zobrazí se pouze při prvním spuštění aplikace, nastavené hodnoty bude samozřejmě možné dále měnit): Uživatel nastaví např. své vlastní telefonní číslo nebo přihlašovací údaje do služeb typu Vodafone Park nebo 1188.cz.
•
Napsání textu zprávy a výběr příjemce: Uživatel zadá text zprávy, kterou se chystá odeslat, a ze seznamu kontaktů vybere číslo příjemce; případně musí vybrat, jakého mobilního operátora příjemce používá. Kromě testování prvních tří číslic telefonního čísla totiž bohužel neexistuje jiný způsob, jak detekci operátora provést – a tento způsob selhává u čísel, která byla převedena k operátorovi jinému.
•
Samotné odeslání zprávy: Uživatel klikne na tlačítko „Odeslat“ a aplikace se připojí ke vzdálenému serveru operátora. Je-li to potřeba, zobrazí i CAPTCHA kód z operátorské SMS brány a vyzve uživatele k jeho opsání a potvrzení. Dojde-li k situaci, kdy je napsaná zpráva příliš dlouhá, a pro odeslání je vyžadováno opsání CAPTCHA kódu, musí aplikace nabídnout k opsání odpovídající počet kódů.
•
Podrobné nastavení: Zde bude možné nastavit automatické přidávání podpisu pro zprávy odeslané přes jednotlivé brány, vlastní telefonní číslo, zda se mají odeslané zprávy ukládat – a samozřejmě tu bude možné měnit i položky nastavené v průvodci (viz výše).
3
A7B39PDA – Principy tvorby mobilních aplikací
Aplikace czSMS – Jan Kolařík (kolarj29)
2.3 PODPORA 2.3.1 Podporované funkce •
Archiv zpráv: Vizuálně přehledný archiv všech odeslaných zpráv s různými možnostmi filtrování – např. podle místa odeslání (geolokace), podle čísla příjemce, podle data a času odeslání. Archiv rovněž umožní export zpráv na paměťovou kartu nebo následný import využitelný zejména při zakoupení nového telefonu.
•
Statistiky činnosti: Uživatel bude mít možnost zobrazit statistiky své aktivity nebo zapnout pravidelné týdenní odesílání statistik a výpisu odeslaných zpráv pomocí emailu.
•
Pamatování si operátora pro jednotlivá čísla: Vybere-li uživatel pro některé telefonní číslo ručně jiného než výchozího operátora, aplikace si toto zapamatuje a příště automaticky nabídne příslušnou bránu.
2.3.2 Cílová zařízení Primární platformou pro mou aplikaci bude Android, rád bych však s využitím knihovny PhoneGap vytvořil i multiplatformní verzi cílící na uživatele platforem jako Samsung Bada, Symbian, Windows Phone 7 nebo iOS.
2 . 4 KO N T E X T Uživatelské rozhraní aplikace czSMS musí být dobře ovladatelné prstem a to i v dopravních prostředcích. K dopravním prostředkům – především metru – se však vztahuje také jeden další požadavek: aplikace musí být odolná vůči výpadkům signálu pro datové přenosy. Dojde-li k takovému výpadku, mělo by být možné bezpečně ukončit právě probíhající operaci. Samotné metody vkládání textu je záležitostí každého operačního systému, avšak alespoň rozložení prvků uživatelského rozhraní bude přizpůsobeno používání v MHD.
4
A7B39PDA – Principy tvorby mobilních aplikací
Aplikace czSMS – Jan Kolařík (kolarj29)
Část D3 3.1 POPIS
N ÁV R H U RO Z H R A N Í A P L I K A C E
K návrhu uživatelského rozhraní aplikace jsem použil nástroj Balsamiq Mockups (zdrojový soubor viz web http://hcisemestralky.felk.cvut.cz/), v němž byly vytvořeny „pseudoscreenshoty“ jednotlivých aktivit aplikace. Ke zhotovení takového návrhu jsem přistoupil, aby bylo možné předejít chybám v použitelnosti aplikace ještě před jejím samotným programováním.
3 . 2 N ÁV R H
U Ž I VAT E L S K É H O RO Z H R A N Í
3.2.1 Úvodní nastavení Při prvním spuštění aplikace se uživateli zobrazí průvodce (wizard) popisující fungování aplikace a umožňující nastavit základní parametry pro její bezproblémové používání.
Obr. 1: Úvodní text při spuštění aplikace
Obr. 2: Nastavení vlastního čísla a podpisu. V úvodním textu bude vysvětleno, že nezadá-li uživatel žádný podpis, nebude se automaticky přidávat žádný.
5
Obr. 3: Přidání účtu služby Vodafone Park
A7B39PDA – Principy tvorby mobilních aplikací
Obr. 4: Přidání účtu služby sms.1188.cz
Aplikace czSMS – Jan Kolařík (kolarj29)
Obr. 5: Hláška zobrazená po úspěšném ukončení průvodce
3.2.2 Rozhraní pro psaní a odesílání zpráv Po ukončení výše zmíněného průvodce nebo při dalších spuštění aplikace se automaticky objeví aktivita pro psaní nové zprávy. V horní části displeje si povšimněte lišty „action bar“.
Obr. 6: Hlavní aktivita, nelze-li detekovat operátora, tlačítko „Odeslat“ je neaktivní.
Obr. 7: Hlavní aktivita, tentokrát bylo možné zjistit telefonního operátora příjemce.
6
Obr. 8: Hlavní aktivita, ruční výběr operátora příjemce
A7B39PDA – Principy tvorby mobilních aplikací
Obr. 9: Opisování CAPTCHA kódu při odesílání zprávy; varianta pro případ, kdy se text zprávy vleze do jedné SMS
Aplikace czSMS – Jan Kolařík (kolarj29)
Obr. 10: Opisování CAPTCHA kódu při odesílání zprávy; varianta pro případ, kdy se text zprávy vleze do více než jedné SMS
Obr. 12: Hlášení o úspěšném odeslání zprávy
7
Obr. 11: Toto hlášení se zobrazí, pokusí-li se uživatel navrátit zpět k psaní zprávy, ale jedna část textu již byla úspěšně odeslána.
A7B39PDA – Principy tvorby mobilních aplikací
Aplikace czSMS – Jan Kolařík (kolarj29)
3.2.3 Dialog nastavení a historie zpráv Přístup k těmto dialogům je možný přes horní lištu („action bar“).
Obr. 13: Hlavní aktivita dialogu nastavení
3 . 3 T E S TOVÁ N Í
Obr. 14: Nastavení přiřazených účtů (Vodafone Park a sms.1188.cz)
Obr. 15: Historie odeslaných zpráv
U Ž I VAT E L S K É H O RO Z H R A N Í
3.3.1 Úvod k testování K testování návrhu uživatelského rozhraní aplikace czSMS byla použita metoda heuristické evaluace. Při testování použitelnosti uživatelského rozhraní touto metodou si nejprve stanovíme cíl, jejž chceme při používání zařízení nebo aplikace dosáhnout. Dále provádíme kroky potřebné k dosažení cíle a během tohoto procesu přemýšlíme, jaké zásady návrhu dobře použitelného uživatelského rozhraní byly na zařízení či v aplikaci porušeny. Zde byl použit seznam deseti nejvýznamnějších znaků dobře použitelného rozhraní podle Jacoba Nielsena: •
H1: Viditelnost stavu systému
•
H2: Podobnost systému s reálným světem
•
H3: Svoboda uživatele při ovládání
•
H4: Konzistence a standardy 8
A7B39PDA – Principy tvorby mobilních aplikací
Aplikace czSMS – Jan Kolařík (kolarj29)
•
H5: Prevence chyb
•
H6: Ovládání bez nutnosti pamatování si informací
•
H7: Efektivita používání
•
H8: Estetika a minimalistický design, žádné zbytečné informace
•
H9: Výstižná chybová hlášení
•
H10: Nápověda a dokumentace
Testování jsem prováděl já (v tomto semestru navštěvuji předmět Testování uživatelských rozhraní A7B39TUR) a kamarád Ondřej Vaverka (student 3. ročníku informatiky na Přírodovědecké fakultě Univerzity Palackého v Olomouci, v minulém semestru absolvoval ekvivalent našeho předmětu Testování uživatelských rozhraní). Následující scénáře použití byly otestovány: •
průchod průvodcem úvodním nastavením
•
odeslání textové zprávy s textem kratším než 160 znaků
•
odeslání textové zprávy s textem delším než 160 znaků
•
průchod dialogem nastavení
•
průchod historií zpráv
3.3.2 Testování použitelnosti – Jan Kolařík Během procházení jsem narazil na následující prohřešky vůči zmíněným pravidlům použitelnosti: •
Popis prohřešku: V dialogu, který se zobrazí po kliknutí na tlačítko „Odeslat“ (opisování CAPTCHA kódu), není zobrazeno číslo příjemce a např. začátek textu zprávy, pokud uživatel odesílá mnoho různých zpráv různým příjemcům během krátké doby. (viz obr. 9) Prohřešek proti zásadě: H6 – ovládání bez nutnosti pamatování si informací Návrh řešení: Přidání čísla příjemce a krátkého úryvku odesílané zprávy pro lepší orientaci
•
Popis prohřešku: Nelze ručně vybrat operátora, aniž by bylo vybráno číslo příjemce. (viz obr. 6) Prohřešek proti zásadě: H7 – efektivita používání Návrh řešení: Přidání této možnosti
9
A7B39PDA – Principy tvorby mobilních aplikací
Aplikace czSMS – Jan Kolařík (kolarj29)
•
Popis prohřešku: Při odesílání zprávy skládající se z více SMS není dostatečně výrazně zobrazeno, kolik kódů bude ještě třeba opsat. (viz obr. 10) Prohřešek proti zásadě: H7 – efektivita používání Návrh řešení: Zvýraznění informace
•
Popis prohřešku: Po kliknutí na tlačítko „Uložit nastavení a zpět“ v dialozích nastavení uživatel nedostane zprávu o tom, zda bylo nastavení uloženo. Po zmáčknutí hardwarového tlačítka „krok zpět“ neví, zda bylo nastavení uloženo, nebo ne. (viz obr. 13; obr. 14) Prohřešek proti zásadě: H7 – viditelnost stavu systému Návrh řešení: Přidání „message boxů“ s informacemi o tom, zda byla nastavení uložena
3.3.3 Testování použitelnosti – Ondřej Vaverka Během procházení Ondřej narazil na následující prohřešky vůči zmíněným pravidlům použitelnosti: •
Popis prohřešku: V dialogu správy účtů mimo úvodního průvodce chybí odkazy pro registrace na službách Vodafone Park a sms.1188.cz. (viz obr. 14) Prohřešek proti zásadě: H3 – svoboda uživatele při ovládání Návrh řešení: Přidání těchto odkazů
•
Popis prohřešku: Nepovede-li se odeslání zprávy, je zobrazena pouze generická chybová hláška a příčina neúspěšného odeslání není nikde uvedena. Prohřešek proti zásadě: H9 – výstižná chybová hlášení Návrh řešení: Rozlišení mezi důvody nemožnosti odeslání
•
Popis prohřešku: Po kliknutí na odkaz „Zrušit úvodní nastavení“ není zobrazen žádný potvrzovací dialog. (viz obr. 2; obr. 3; obr. 4; obr. 5) Prohřešek proti zásadě: H5 – prevence chyb Návrh řešení: Přidání dialogu
•
Popis prohřešku: V průvodci úvodním nastavením chybí číslo aktuálního kroku (viz obr. 1; obr. 2; obr. 3; obr. 4; obr. 5) Prohřešek proti zásadě: H1 – viditelnost stavu systému Návrh řešení: Přidání textového popisku s číslem kroku a celkového počtu kroků
10
A7B39PDA – Principy tvorby mobilních aplikací
Aplikace czSMS – Jan Kolařík (kolarj29)
•
Popis prohřešku: V průvodci úvodním nastavením chybí zaškrtávací políčko, zda se má používat podpis. To by umožnilo definovat a uložit podpis pro další použití, aniž by jeho automatické vkládání do zpráv muselo být povoleno. Prohřešek proti zásadě: H3 – svoboda uživatele při ovládání Návrh řešení: Přidání zaškrtávacího políčka
•
Popis prohřešku: V dialogu historie zpráv chybí tlačítko pro její vymazání, přitom v dialogu nastavení je. (viz obr. 15; obr. 13) Prohřešek proti zásadě: H4 – konzistence a standardy Návrh řešení: Přemístění nebo přidání tlačítka
•
Popis prohřešku: Dokumentace je dostupná pouze přes hardwarové tlačítko „menu“. (viz obr. 6; obr. 7) Prohřešek proti zásadě: H10 – nápověda a dokumentace Návrh řešení: Přidání tlačítka pro otevření nápovědy do hlavní aktivity
•
Popis prohřešku: Nelze znovu spustit průvodce úvodním nastavením (viz obr. 13) Prohřešek proti zásadě: H7 – efektivita používání Návrh řešení: Přidání odkazu pro opětovné spuštění tohoto průvodce do dialogu nastavení
3.3.4 Návrhy pro část D4 Při komplexnějším návrhu rozhraní aplikace v části D4 je nutné brát ohled na všechny zvyklosti jednotlivých platforem, aby byla zachována konzistence s konkrétními operačními systémy. Rovněž je nutné poučit se z výsledků testování návrhů uživatelského rozhraní z části D3.
11