June 6, 2018 | Author: Miloš Davitković | Category: N/A
Teorija za ispit iz Mobilnih Sistema i servisa, dopunjeno izdanje sa interneta, bliže objašnjeni pojmovi koji su samo na...
- *Mobilni uređaji sve naprednijih računarsko/komunikacionih karakteristika i funkcija : -Mobilni uređaji imaju veću procesorsku snagu nego PC pre 5-10 godina; -Mobilno pozicioniranje zasnovano na satelitskim sistemima (GPS, Glonass, Galileo),
infrastrukturama bežičnih komunikacija, na kombinaciji obe tehnologije (A-GPS), ili specijalnim infrastrukturama (WiFi, RFID, Bluetooth, itd.);
Senzori integrisani sa mobilnim uređajima: 3D akcelerometri, proximity, video kamere, diktafoni, itd, ili integrisani u infrastrukturu senzorske mreže. : WWAN (GSM, GPRS, EDGE, UMTS, LTE, ...),
WLAN (WiFi, WiMAX, ZigBee) i WPAN (Bluetooth, RFID) koje omogućuju mobilni pristup podacima i servisima: -Sve veći propusni opseg (bandwidth); -Always-on karakteristike; -Smanjena cena pristupa podacima i servisima; -Nove aplikacije i servisi; -Interoperabilnost između mobilnih operatera. *Softverska infrastruktura, platforme i okruženja za razvoj mobilnih aplikacija i servisa (Android SDK, iOS SDK, .NET API, Qt, HTML5, J2ME, Flash Lite,...). *Standardi - WAP, XHTML-MP, HTML5, VoiceXML, SyncML, Bluetooth, itd. Veliki interes korisnika (individualnih ili kompanija) za korišćenje specijalizovanih mobilnih sistema, aplikacija i servisa za različite poslovne, turističke i slobodne aktivnosti: -Korisnici žele pristup podacima, aplikacijama i servisima u svakom trenutku, sa svakog
mesta, kad i gde je potrebno, putem različitih mobilnih računarsko/komunikacionih uređaja; Kompanije žele mobilne aplikacije za poslovne aktivnosti i procese koji su distribuirani u prostoru da...: - povećaju produktivnost zaposlenih; - -ubrzaju vreme odgovora na dinamičke situacije i poslovne aktivnosti; - -povećaju zadovoljstvo korisnika/kupaca. Mobilni – računarski uređaj koji se može lako prenositi sa jedne na drugu lokaciju i koristiti u kretanju.
Bežični – Bežični – mogućnost konektovanja na drugi računar putem određene komunikacione mreže (npr. IP mreže) b ez komunikacionih kablova. Primer: statički računar (PC, radna stanica) i aplikacije (Mobilni, Bežični); - Aplikacija koja ne zahteva bežičnu mrežu; - Aplikacija na računaru koja koristi bežičnu mrežu; na pametnom telefonu/tabletu koja pristupa servisima preko bežične mreže. M-trgovina (m-commerce) – kupovina proizvoda i usluga putem mobilnog uređaja: *Narudžba i kupovina digitalnog sadržaja (zvona, igre, wallpaper, itd); *Mobilno bankarstvo – pristup bankovnom računu i izvršavanje novčanih transakcija i plaćanja ; *Informacioni servisi – pristup informacijama poput vremenske prognoze, stanja na putevima, rezultata utakmica, rezervacija restorana,
multimedijalnom sadržaju, itd. (mogu biti isporučeni na zahtev korisnika, ili inicirani od strane servera u formi notifikacije); *Lokaciono-zasnovani servisi (LBS - Location-based services) – pristup informacijama i servisima u skladu sa trenutnom lokacijom mobilnog korisnika (turist ički vodiči, navigacioni servisi, servisi za slučaj opasnosti, itd.) ; *Mobilna kupovina –
kupovina karata za utakmice ili pozorište, plaćanje parkinga ili putarine, karata za autobus, itd. *Mobilno reklamiranje – oglašivači mogu slati personalizovane reklame u skladu sa trenutnom lokacijom korisnika,
njegovim preferencama i profilom. Pošto se radi o “ometajućim” informacijama, u obzir dolaze samo oglasi i reklame na koje se korisnik na
neki način pretplatio, npr. najbliži restoran ili benzinska pumpa. – (m-business) koristi se od strane kompanija da obezbedi siguran mobilni pristup podacima kompanije sa bilo koje lokacije, omogućavajući efikasniji rad službenika na terenu : *Mobilna kancelarija – omogućava pristup kompanijskim informacijama, poput e-maila, kalendara aktivnosti, liste zaduženja i adresara. ; *Prodaja na terenu –
omogućava pristup relevantnim podacima o robi i uslugama koje se prodaju na terenu i predočavanje tih informacijama potencijalnim kupcima; *Rad na terenu – omogućava servisnom osoblju efikasna rad na terenu pružajući neophodne informacije vezane za posao, istorijat servisnih aktivnosti, tehničke specifikacije i podatke značajne za postupak repariranja ili servisiranje. Takođe sve neophodne informacije mogu biti dostavljene po potrebi osoblju na terenu.; *Transport robe i ljudi i logistika – obezbeđuje informacije o lokacijama i rutama vozila, ažurne informacije o statusu isporuke , kompletiranim isporukama, eventualnim zakašnjenjima, stanju na putevima, zastojima i preprekama na ruti transporta, u cilju sigurnog i efikasnog transporta.
: (UniversalMobileTelecommunicationSystems) – 3G, Zasnovano je na kodnom multipleksiranju korisnika. Ova realizacija se naziva WCDMA (eng. Wideband Code Division Multiple Access) , (Wi-Fi je bežična lokalna računarska mreža (WLAN) koja počiva na
standardu IEEE 802.11. Svi uređaji koji su povezani na ovu mrežu su u blizini (par desetina metara) antene (uređaja) koja prima i predaje potrebne signale, - DAB систем аутоматски проналази све доступне станице,
нудећи листу станица које слушалац може да одабере. DAB може да носи радиотекст (у DAB терминологији, Dynamic Label Segment) или (DLS) са станице пружајући информацију у реалном времену као што су наслови песама, тип музике, вести, као и вести о стању на путевима. У појединим п ојединим подручјима, нарочито руралним, увођење DAB-а пружа слушаоцима радија већи избор радио станица. На пример, на југу Норвешке, слушаоци радија добили су могућност већег избора радио станица од 6 до 21, када је DAB уведен у новембру 2006. (Digital Video Broadcasting) odnosno digitalno emitovanje televizije, U mnogim zemljama DVB standard zamenjuje PAL, SECAM i NTSC standarde), (High-Speed Downlink Packet Access 3G i po generacija,
omogućavaju povećanje brzine protoka podataka i mrežnih resursa.) (Enhanced Data Rates for GSM Evolution) - Cilj ove tehnologije je
povećanje brzine prenosa i kapaciteta sistema i omogućavanje novih aplikacija. EDGE tehnologija koristi 8-PSK (eng. 8-Phase Shift Keying) modulaciju, koja pruža veću bitsku brzinu . Mana ove vrste modulacije je
to što je dosta kompleksnija od drugih a manje je otporna na uticaj šuma i ostalih smetnji. - U GSM U GSM sistemima raspoloživ spektar je bio podeljen na kanale (frekvencijski multipleks ). Različiti kanali su bili dodeljivani različitim baznim stanicama. Sa druge strane, korisnici povezani na istu baznu stanicu su koris tili isti radio kanal u različitim trenucima (vremenski multipleks), multipleks), (Američki sistem CDMA2000 je veoma sličan UMTS-u),
TETRA,… Personal Travel Trave l Assistant, PDA, Laptop, GSM, G SM, UMTS, WLAN, WLAN, Bluetooth,… – Trendovi: Minijaturizacija; Porast računarske snage; Porast memorijskih kapaciteta; Bežična komunikacija . - Prvi “istinski” mobilni uređaji; Fokus na menadžment personalnih informacija informacija - PIM (konakti, kalendar, …) ; UI zasnovan na pen-u ili minitastaturi; Open API (Palm OS, Windows CE); Trendovi: *dodavanje bežičnih komunikacija: Bluetooth; WLAN; GSM; Unapređene metode ulaza - Prvi “istinski” bežični uređaji ; Fokus na komunikaciji; UI zasnovan na ograničenoj tastaturi; Zatvoren API / vlasnički operativni sistemi. Trendovi: Evoluiraju prema PDA; Programski API: Java, ili otvoreni OS (Symbian, Windows, Linux); Proširene računarske i komunikacione karakteristike (multimedia, prenos podataka). - *Prvi “istinski” bežični mobilni uređaji ; *Širok opseg: operativnih sistema, U/I metoda, komunikacionih karakteristika, aplikacija, … Trendovi: Nastavljaju da evoluiraju i dobijaju nove karakteristike. - Mobilni uređaji su široko rasprostranjeni i prihvaćeni; Standardi su definisani i implementirani: GSM, GPRS, UMTS, LTE, Bluetooth, NFC, IrDA, TCP/IP,
HTTP, WAP, J2ME, OBEX, Sync ML, … Sve više poslovnih aplikacija će koristiti mobilne uređaje za mobilni (klijentski) deo aplikacije . Još uvek se očekuje tzv. “killer” aplikacija na potrošačkom tržištu mobilnih uređaja . Problem: mobilni uređaji su ekstremno heterogeni Ograničenja predstavljaju izazov u razvoju softvera ; Ograničenja će ubuduće biti smanjena, ali neće nestati (posebno ona koja se odnose na napajanje).
: (UniversalMobileTelecommunicationSystems) – 3G, Zasnovano je na kodnom multipleksiranju korisnika. Ova realizacija se naziva WCDMA (eng. Wideband Code Division Multiple Access) , (Wi-Fi je bežična lokalna računarska mreža (WLAN) koja počiva na
standardu IEEE 802.11. Svi uređaji koji su povezani na ovu mrežu su u blizini (par desetina metara) antene (uređaja) koja prima i predaje potrebne signale, - DAB систем аутоматски проналази све доступне станице,
нудећи листу станица које слушалац може да одабере. DAB може да носи радиотекст (у DAB терминологији, Dynamic Label Segment) или (DLS) са станице пружајући информацију у реалном времену као што су наслови песама, тип музике, вести, као и вести о стању на путевима. У појединим п ојединим подручјима, нарочито руралним, увођење DAB-а пружа слушаоцима радија већи избор радио станица. На пример, на југу Норвешке, слушаоци радија добили су могућност већег избора радио станица од 6 до 21, када је DAB уведен у новембру 2006. (Digital Video Broadcasting) odnosno digitalno emitovanje televizije, U mnogim zemljama DVB standard zamenjuje PAL, SECAM i NTSC standarde), (High-Speed Downlink Packet Access 3G i po generacija,
omogućavaju povećanje brzine protoka podataka i mrežnih resursa.) (Enhanced Data Rates for GSM Evolution) - Cilj ove tehnologije je
povećanje brzine prenosa i kapaciteta sistema i omogućavanje novih aplikacija. EDGE tehnologija koristi 8-PSK (eng. 8-Phase Shift Keying) modulaciju, koja pruža veću bitsku brzinu . Mana ove vrste modulacije je
to što je dosta kompleksnija od drugih a manje je otporna na uticaj šuma i ostalih smetnji. - U GSM U GSM sistemima raspoloživ spektar je bio podeljen na kanale (frekvencijski multipleks ). Različiti kanali su bili dodeljivani različitim baznim stanicama. Sa druge strane, korisnici povezani na istu baznu stanicu su koris tili isti radio kanal u različitim trenucima (vremenski multipleks), multipleks), (Američki sistem CDMA2000 je veoma sličan UMTS-u),
TETRA,… Personal Travel Trave l Assistant, PDA, Laptop, GSM, G SM, UMTS, WLAN, WLAN, Bluetooth,… – Trendovi: Minijaturizacija; Porast računarske snage; Porast memorijskih kapaciteta; Bežična komunikacija . - Prvi “istinski” mobilni uređaji; Fokus na menadžment personalnih informacija informacija - PIM (konakti, kalendar, …) ; UI zasnovan na pen-u ili minitastaturi; Open API (Palm OS, Windows CE); Trendovi: *dodavanje bežičnih komunikacija: Bluetooth; WLAN; GSM; Unapređene metode ulaza - Prvi “istinski” bežični uređaji ; Fokus na komunikaciji; UI zasnovan na ograničenoj tastaturi; Zatvoren API / vlasnički operativni sistemi. Trendovi: Evoluiraju prema PDA; Programski API: Java, ili otvoreni OS (Symbian, Windows, Linux); Proširene računarske i komunikacione karakteristike (multimedia, prenos podataka). - *Prvi “istinski” bežični mobilni uređaji ; *Širok opseg: operativnih sistema, U/I metoda, komunikacionih karakteristika, aplikacija, … Trendovi: Nastavljaju da evoluiraju i dobijaju nove karakteristike. - Mobilni uređaji su široko rasprostranjeni i prihvaćeni; Standardi su definisani i implementirani: GSM, GPRS, UMTS, LTE, Bluetooth, NFC, IrDA, TCP/IP,
HTTP, WAP, J2ME, OBEX, Sync ML, … Sve više poslovnih aplikacija će koristiti mobilne uređaje za mobilni (klijentski) deo aplikacije . Još uvek se očekuje tzv. “killer” aplikacija na potrošačkom tržištu mobilnih uređaja . Problem: mobilni uređaji su ekstremno heterogeni Ograničenja predstavljaju izazov u razvoju softvera ; Ograničenja će ubuduće biti smanjena, ali neće nestati (posebno ona koja se odnose na napajanje).
4G – ĉetvrta generacija: LTE, Mobile WiMAX
Osnovna razlika bežične i žičane (fiksne) mreže je u fizičkom sloju i sloju veze (data link); Tehnologija žiĉanih mreža se zasniva na kablovima (optiĉkim ili bakarnim); Prenos podataka u bežiĉnim mrežama obavlja se korišćenjem elektromagnetskih talasa koji se prenose kroz prostor (i pri tome su podložni rasejanju, refleksiji i slabljenju): Podaci se modulišu na noseću frekvenciju (amplitudna, frekventna, fazna modulacija,…); Data link sloj (pristup medijumu, multipleksiranje, korekcija grešaka, sinhronizacija) zahteva mnogo složenije mehanizme nego kod žiĉanih mreža Viši stepen gubitaka kvaliteta signala zbog interferencije sa drugim izvorima EM zraĉenja: -elektriĉni uređaji, mašine, itd. *Restriktivne regulacije korišćenja frekvencija: frekvencija: -Korišćenje frekvencija i frekventnih opsega mora biti koordinisano; korisne frekvencije su skoro potpuno zauzete. *Male brzina prenosa: -U lokalu reda Mbit/s, u regionalnom podruĉju, npr., 50 Kbit/s sa GSM/GPRS. *Veće kašnjenje i veći jitter: -uspostavljanje konekcije sa GSM
je reda sekunde, sekunde, dok je za ostale ostale bežiĉne bežiĉne sisteme sisteme nekoliko stotina stotina milisekundi. *Smanjena sigurnost i jednostavni aktivni napadi na komunikaciju: -Radio interfejs je dostupan svakom; bazne stanice mogu biti simulirane i tako privuku pozive sa mobilnih telefona. *Deljeni medijum: -Veoma važni mehanizmi za obezbeđenje sigurnosti pristupa - ITU-R (International Telecommunication Union – Radiocommunication) upravlja korišćenjem frekventnih opsega širom sveta i održava aukcije za nove frekvencije . *Komutacija kola (Circuit switching ) i komutacija paketa (Packet switching). *Modulacija digitalnih signala: -Amplitude Shift Shift Keying (ASK); -Frequency Shift Keying (FSK); -Phase Shift Keying (PSK). *Multipleksiranje – definiše naĉin kako
više korisnika može deliti komunikacioni medijum bez, ili sa minimalnom interferencijom: -Frequency Division Multiplexing; -Time Division Multiplexing; -Code Division Multiplexing. *MAC pripada data link sloju
ISO/OSI modela i implementira mehanizme kojima se reguliše pristup korisnika medijumu korišćenjem TDM, FDM ili CDM : -FDMA = Frequency Division Multiple Access; -TDMA = Time Division Multiple Access; -CDMA = Code Division Multiple - 5 tipova bežiĉnih mreža
: wireless personal area networks: -Komunikacija u bliskom
okruženju (oblasti oko korisnika) Potrošnja male snage -Niska cena; - Male mreže; -Ne zahteva prethodno postavljenu infrastrukturu. WPAN standardi: -UWB (Ultra-WideBand):
- -Bežiĉni monitori, prenos podataka od digitalnih kamkordera, bežiĉno štampanje digitalnih slika; - -Transfer datoteka između mobilnih telefona ili drugih mobilnih uređaja. *Bluetooth, Bluetooth LE (Low Energy); - je bežični komunikacioni protokol namenjen ličnim mrežama s
malom propusnošću i malom potrošnjom energije. Ciljane primene ZigBee-a su aplikacije ko je zahtevaju umrežavanje velikog broja uređaja, prenos male količine podataka, malu potrošnju energije te visoku sigurnost prenosa. Ad-hoc bežiĉno povezivanje elektronskih uređaja: -PC, štampaĉa, mobilnih telefona, bežiĉnih slušalica, LCD projektora, modema, laptop-a, PDA, itd. Ime sugerisano od strane Ericsson-a: Harald Bluetooth, Vikinški kralj u Danskoj u 10 -om veku,
ujedinio državu i uveo Hrišćanstvo U frekventnom opsegu 2.4 GHz - komutacija paketa (Packet switched); 1 milliWatt – u odnosu na 500 mW celularnih telefona. Niska cena; Opseg 10m do 100m; Koristi Frequency Hop (FH) spread spectrum, kojim se deli frekventni opseg u određeni broj kanala. Tokom konekcije, ure đaji menjaju frekvenciju (hop) sa jednog na drugi kanal 1600 puta u sekundi; Propusni opseg 1-2 Mbs/s (GPRS je ~50kbits/s); Podržava do 8 uređaja u piconet; Više piconet-a čini scatternet Ugrađena sigurnost. Ne zahteva optiĉku vidljivost (line-of-sight) za prenos signala, tako da prolazi kroz zidove i druge prepreke; Laka
integracija sa TCP/IP za umrežavanje. Slušalice za mobilne telefone; Povezivanje periferija: miša, tastature, štampaĉa. Kontroleri i joystici za igre Transfer datoteka između mobilnih uređaja, ili mobilnih i stacionarnih raĉunara. Daljinska kontrola i upravljanje uređajima... Radio frekvencija: 2.4GHz ISM band sa 40 kanala na 2MHz razmaka; Propusni opseg: 1Mbit/s using GFSK modulation; Koristi Adaptivni frequency hopping sa manjom brzinom promene frekvencije; 4 osnovna moda rada BLE uređaja: Master device mode, Slave device mode, Advertising mode, Scanning mode. Dve vrste paketa: Data paket i Advertise paket sa varijabilnom dužinom. BLE 4.0 je projektovan za periodiĉno slanje kratkih podataka; Aplikacioni profili su zasnovani na Generic Attribute Profile (GATT) – generalna specifikacija za slanje i prijem kratkih delova podataka koji se nazivaju atributi preko linka sa malim utroškom energije: Health care profil Sports & fitness profil, Proximity sensing Alerts & time profil.
Cilj: Bežiĉni standard za senzorske i kontrolne aplikacije ; Visoko pouzdan i siguran; interoperabilan; Zapoĉet 1999 godine, a završen (verzija 1.0) krajem 2004. ZigBee (IEEE 802.15.4: WPAN manjeg propusnog opsega): -Ekstremno niska potrošnja snage Propusni opseg maksimalno 250 Kbps; -Senzori, interaktivne igraĉke, pametni bedževi, daljinska kontrola, pametne kuće (home automation) ; -Protokol rutiranja: AODV
Manji paketi preko većih mreža: 216 - vs. - Veći paketi preko manjih mreža: 8; Mali memorijski zahtevi: 4-32KB - vs. -Veći memorijski zahtevi: 250KB; Brzo prikljuĉenje mreži: milisekunde - vs. Sporije prikljuĉenje mreži: sekunde ; Veoma niska cena: manje od 1$ - vs. Kompleksan dizajn; Mali propusni opseg: 20-250Kbps - vs. - Srednji propusni opseg: 1Mbps; Srednji domet: 10-100m - vs. - Srednji domet: 10100; Trajanje baterije: više godina - vs. - Trajanje baterije: nekoliko dana. karakteristike: Mogući naslednik Bluetooth -a za prenos podataka velikom brzinom (veliki propusni opseg) u bliskom
dometu; Sigurnost veća u odnosu na Bluetooth (svaki uređaj ima jedinstveni ID); Radi na frekventnom opsegu 3.1 –10.6 GHz; Radio signalom se prenosi 640 Mbps, ali maksimalni brzina prenosa je 480 Mbps zbog korekcija grešaka u prenosu : Prenos video podataka na kratkim rastojanjima, npr. od kamere do PC ili televizora; Bežiĉno štampanje ili bežiĉno povezivanje monitora. Senzorske aplikacije. Sistem za precizno lociranje i praćenje u realnom vremenu Precizna tehnologija radarskih slika, kojom se “vidi” kroz zidove i druge prepreke. Bez infrastrukture: U sluĉaju katastrofa i
nepogoda, u ruralnim podruĉjima, senzorskim Mrežama; Redukovani troškovi (nije neophodan provajder servisa). Komunikacija: Neophodni su multi-hop protokoli; Konekcije između mobilnih uređaja se mogu brzo menjati, sa kretanjem mobilnih korisnika; Neophodni su odgovarajući protokoli za rutiranje Opseg/pokrivenost – Opseg WLAN je od 50 do 150 metara. Propusni opseg – Brzina prenosa podataka je u opsegu od 1 Mbps - 54 Mbps - 600Mbps. Interferencija – Neki od WLAN standarda podložni su interferenciji sa elektromagnetnim signalima kućne elektronike ili drugih tehnologija bežiĉnih mreža.; Potrošnja snage – Potrošnja snage od strane bežiĉnog adaptera se razlikuje od proizvoda do proizvoda, u zavisnosti od standarda koji implementiraju; Troškovi – Cena WLAN infrastrukture zavisi u velikoj meri od zahteva i primene mreže, kao i od standarda koji j e implementiran Najjednostavnija WLAN je peer-to- peer
konfiguracija dva ili više uređaja opremljenih bežiĉnim adapterima Ove mreže mogu biti proširene dodavanjem wireless access point–a (wireless router). Access point funkcioniše kao repetitor između uređaja, povećavajući opseg mreže. Takođe, access point može da obezbedi i konekciju na fiksnu mrežu, omogućavajući bežiĉnim korisnicima pristup i deljenje resursa u fiksnoj mreži. 1G: Analogna, komutacija kola (circuitswitched) (AMPS, TACS); 2G: Digitalna, komutacija kola (GSM) 10 Kbps; Napredna 2G: Digitalna, komutacija kola (HSCSD High-Speed Circuit Switched Data), Internet (WAP) 10 Kbps; 2.5G: Digitalna, komutacija paketa (packet-switched), TDMA (GPRS, EDGE) 40 - 400 Kbps; 3G: Digitalna, komutacija paketa, W-CDMA (UMTS), HSDPA 2 Mbps – 14 Mbps; 4G (100 Mbit/s - 1 Gbit/s); Long Term Evolution (LTE), LTE Advanced WiMAX (IEEE 802.16), WiMAX rel2 Prostor je podeljen u ćelije ; Koristi nekoliko nosećih frekvencija, pri čemu te frekvencije nisu iste u susednim ćelijama;
Veliĉina ćelija varira od 100 m do 35 km u zavisnosti od gustine naseljenosti, karakteristika podruĉja, snag e tranciver-a, itd. Ukoliko mobilni korisnik promeni ćeliju - handover (hand-off); Ukoliko korisnik pređe u ćeliju koju pokriva drugi operater – roaming. – Komponente: MS - mobilni telefon; BTS - bazna stanica; BSC – kontroler bazne stanice pokriva više (10-100) bliskih BTS; MSC – podržava circuit-switched komunikaciju i mobilnost korisnika; GMSC (Gateway Mobile Switching Center) – komunikacija sa fiksnom komunikacionom mrežom; HLR – baza podataka svih korisnika mreže mobilnog operatera; VLR – privremene baze podataka sa podacima o korisnicima koje pokriva određeni; MSC. Podsistemi: BSS (Base Station Subsystem): Upravlja komunikacijom i razmenom signala između mobilnih telefona i NSS; NSS (Network Switching Subsystem): prosle đivanje poziva, handover, switching, itd. OSS (Operation Subsystem): upravljanje mrežom Pristup Web-u i Web aplikacijama; Pristup email-u, kalendaru aktivnosti, listi kontakata, itd.; Razmena poruka - Instant messaging Pristup audio i video materijalu; Pozicioniranje mobilnih uređaja; Lokaciono-zasnovani servisi (location-based services); Daljinski pristup LAN Deljenje i razmena datoteka... - Bežične mreže treće generacije (3G) su započete sa vizijom da se razvije jedinstveni globalni standard za servise koji podrazumevaju veliku brzinu prenosa podataka i visok kvalitet govora: Third-Generation Partnership Project (3GPP) grupa Razvijene su tri grane 3G sistema u svetu: Wideband CDMA (WCDMA), CDMA2000, i Enhanced Data Rates for Global Evolution (EDGE). U Evropi, 3G sistemi s e ĉesto oznaĉavaju kao UMTS (Universal Mobile Telecommunications System) pre nego WCDMA
Velika brzina prenosa podataka, od 144 Kbps do 2 Mbps, u zavisnosti od stepena mobilnosti korisnika: -Visoka mobilnost: 144 Kbps za korisnike na otvorenom, ruralnom podruĉju; -Puna mobilnost: 384 Kbps za korisnike koji se kreću brzinama manjim od 120 km/h u urbanim podruĉjima. Ograniĉena
mobilnost: 2 Mbps za korisnike koji se kreću brzinama manjim od 10 km/h. Povećanje kvaliteta usluga (QoS) – određena brzina prenosa podataka i vreme za pristup mreži (latency) . Streaming video aplikacije; Download audio sadržaja, poput MP3 Over-the-air download softvera Kolaboracija (Workplace collaboration) Voice-over-IP (VoIP); Lokaciono-zasnovani (location-based) i kontekstno-svesni (context-aware) servisi - Multimedia messaging servisi; Podrška za pristup mail-u i prijem/slanje razliĉitih attachment-a; Mobilne igre; Mobilna trgovina i plaćanje... Predstavlja novu generaciju bežiĉnih komunikacija Poptuno IPzasnovan integrisani sistem. Očekuje se brzina prenosa između 100 Mbit/s i 1 Gbit/s u zatvorenom i na otvorenom prostoru, sa visokim kvalitetom i sigurnošću prenosa. LTE (Long Term Evolution): Prvi javno dostupan LTE servis obezbedila je TeliaSonera u Stokholmu i Oslu 14. decembra 2009; LTE predstavlja skup proširenja Universal Mobile Telecommunications System (UMTS) koji je definisan u okviru 3rd Generation Partnership Project (3GPP) Release 8. LTE Advanced, WiMAX, WiMAX rel 2 (IEEE 802.16) (Worldwide Interoperability for Microwave Access) - je
telekomunikaciona tehnologija koja svojom organizacijom podseća na mobilnu telefoniju (bazne stanice) ali umesto mobilnog telefona na strani
korisnika je uređaj koji omogućuje usluge korisniku koje liče na ADSL ili kablovski internet. WiMAX omogućuje k orisnicima da preko pristupnog uređaja pristupaju i Internetu i da telefoniraju. Kao i mobilni telefoni, uključivanjem računara, automatski, računar se preko odgovarajućeg korisničkog uređaja, povezuje sa baznom stanicom, koja ima najjači signal. Optička vidljivost sa baznom stanicom nije obavezna. (Radio Frequency IDentification) – *Komponente: -Tag: - -Mikroĉip povezan sa antenom; - -Može biti pasivan (bez baterije), aktivan (sa baterijom) ili poluaktivan (sa baterijom, ali zahteva inicijalno napajanje); Čitač (Reader): - -Ispituje tagove korišćenjem radio signala . * Funkcionisanje: -Čitač šalje radio signal kojim ispituje tagove ; - RFID tag emituje svoj ID koji ĉitaĉ detektuje ; -Lokacija taga se može odrediti merenjem vremena prostiranja signala. *Karakteristike: -Nije neophodna optiĉka vidljivost (line-of-sight) - nasuprot barkodovima (domet do 3m za
pasivne i do 100m za aktivne tagove) Otporan na uslove okruženja: smrzavanje, toplota, prljavština, pod vodom …; -RFID tagovi sa read & write memorijom (EEPROM); Aktivni tagovi mogu da se integrišu sa senzorima. Brzina prenosa: 9.6 –115 kbit/s; *Uređaji: -
Ĉitaĉ: simultano detektuje do 256 tagova, skenirajući do 40 tagova u sekundi; -Vreme odziva RFID taga je manje od 100 milisekundi. *ID taga: Tipiĉno 64 ili 96 bitova . *RFID frekvencije LF: low frequency (125 –134.2 kHz, 140 –148.5 kHz), domet ĉitanja do 30cm; HF: high frequency (13.56 MHz), domet ĉitanja do 1m; UHF: ultrahigh frequency (868 –928 MHz), domet ĉitanja 3m (pasivni), 15m i više (aktivni). Microwave UHF: (2.45GHz, 5.8GHz). Prednosti: veoma jeftini,
bez potrebe održavanja, jednostavni za upravljanje, skeniranje moguće i pri velikim brzinama (300 km/h). Nedostatci: nije garantovan kvalitet servisa, samo pasivna akvizicija podataka (asimetriĉna komunikacija) . : E-pasoši; Naplata troškova u transportu ; Naplata putarine; RFID u vozilima za zaštitu od lopova, RFID u gumama (Michelin) ; Lanac nabavke (SCM) i upravljanje inventarom i resursima (ERP); Prevencija krađa; Praćenje kretanja proizvoda i objekata; Ljudski implanti za plaćanje u VIP klubovima, ili za identifikaciju pacijenata Alzheimer bolesti - Michelin ugrađuje pasivne RFID tag -ove na bočnim zidovima guma tokom proizvodnog procesa. Ovo omogućava autobusu voznog parka gradske ili osoblje iz Michelin - a da koriste RFID za automatsku identifikaciju svake guma u vreme kada se meri njihov
pritisak. Oznake se koriste u kombinaciji sa ugrađenim bežičnim senzorima pritiska koji mere pritisak vazduha gumu i onda prenose te podatke brzinom od 433 MHz. Rešenje bežični senzor je poznat kao
sistem za praćenje pritiska u gumama (TPMS).
Danas postoji veliki broj platformi za razvoj mobilnih aplikacija i servisa; Svaka od tih platformi poseduje određene
karakteristike, ograničenja, osobenosti, itd. Zastupljenost i prihvaćenost mobilnih platformi u različitim regionima u svetu prilično se razlikuje . Nove platforme se razvijaju, a neke postojeće prestaju da se isporučuju uz mobilne uređaje Za konkretnu aplikaciju i scenario korišćenja aplikacije, ciljna mobilna platforma mora biti pažljivo izabrana. Uglavnom u Evropi i Japanu. Zatvoren na kraju 2012. godine Pre-emptive multitasking, multithread ing, memory protection Podrška za
C++, Java, Python, … Kompaktni OS zasnovan na Microsoft Win32 API Pre-emptive multitasking, multithreading, memory protection Programski jezici: C#, Visual Basic, C++,… Windows Mobile 5, 6.1, 6.5, Windows Phone 7, 8,… Mobilne platforme i razvojna okruženja - Prednost predstavlja čin privremeno prekida zadatak sprovodi od strane računarskog sistema, a sa namerom da nastavi zadatak u nekom kasnijem trenutku. Takva promena je poznat kao context-switching . Obično se vrši privilegovan zadatak ili deo sistema poznatog kao preemtion planer, koji ima moć da preduhitri, ili prekine, a kasnije nastavili sa drugim poslovima u sistemu. - je način da se kontroliše prava pristupa memorije na računaru, i deo je većine modernih operativnih sistema. Glavni cilj memory protection -a je da se spreči proces da pristupi memoriji koja nije dodeljena njemu. Ovo sprečava bug ili malvar-e u okviru procesa od uticaja na druge procese, ili sam operativni sistem. Pokušaj da se pristupi
tuđim delovima memorije javlja se greška u hardveru, koji se zove segmentantion foult ili storage violation exception, uglavnom izaziva abnormalni prekid procesa koji je okrivljen. Memory protection za kompjutersku bezbednost uključuje dodatne tehnike kao što su address space layout randomizatio i executable space protection. - (ASLR) je Computer Security tehnika
uključeni u zaštitu od buffer overflow napada. U cilju sprečavanja napadača, na primer, ASLR nasumično uređu je Address Space pozicije ključnim oblastima podataka procesa, uključujući i osnove izvršne i stavove steka, heap i biblioteke...
Očekuje se da bude jedan od značajnijih mobilnih OS u budućnosti Pre-emptive multitasking, multithreading, memory protection Podrška za različite programske jezike (C, C++, Java, Python,…) LiMo (Linux Mobile) Foundation. Maemo (Nokia) + Moblin (Intel) -> MeeGo, Bada (Samsung) : Palm OS – dugo bio popularan u SAD; Bez memory protection mehanizma, bez multithreading-a, bez preemptive multitasking-a; Palm OS Cobalt (6.0) podržava multitasking i multithreading; webOS zasnovan na Linux kernel-u (jun 2009) Podrška za C++, Java, Visual Basic, … ; BlackBerry OS (RIM) - BlackBerry API - Blackberry's App World -> BlackBerry 10
Obezbeđuje operativni sistem namenjen mobilnim uređajima; sadrži kernel, sistemske biblioteke, aplikacione okvire, itd. Visok stepen portabilnosti između različitih Symbian uređaja. Različiti UI / aplikacioni okviri: Avkon / S60 (Nokia); Qikon / UIQ (UIQ Technology, danas Sony Ericsson); Symbian Foundation je unifikovala UI zasnovan na S60 platformi.
Aplikacioni servisi: PIM servisi (Agenda, To-Do, Contacts) Servisi razmene poruka (SMS, MMS, email); Servisi upravljanja sadržajem
(HTML) Podrška za Internet i Web aplikacije (HTTP) Servisi sinhronizacije podataka (SyncML) Multimedija & Grafika; Audio, video, API za prepoznavanje govora, API za kamere, ubrzan 2D i 3D (preko OpenGL ES)
Komunikacija: Klijent i server API zasnovan na socket-ima i podrška za različite protokole; Podrška za: Bluetooth, IrDA, OBEX, itd. Umrežavanje: TCP/IP, dial-up (PPP); TLS / SSL; Telefonija : Obezbeđuje pristup telefonskim karakteristikama; Podrška za GSM/ GPRS / EDGE; CDMA IS-95 / CDMA2000; UMTS je Microsoft-ova ključna tehnologija za ulazak na mobilno tržište. Slično kao Symbian OS, Windows Mobile je specijalizovan OS za mobilne uređaje. Ipak, mnoge karakteristike i funkcionalnost su pozajmljene od Windows-a: -Reupotrebljivost postojećih aplikacija ; -
Velika razvojan baza softverskih inženjera koji su familijarni sa Microsoft Win32 API i razvojnim alatima. Za sada najviše zastupljen u segmentu PDA /Pocket PC i polako ulazi u segment smartphone; posebno zastupljen u kompanijama i organizacijama za enterprise primenu. Orijentisani ka podacima: PDA i slični uređaji Uređaji za razmenu poruka; Touch ekran QWERTY tastatura; Vertikalne aplikacije 2) Orijentisani na govor: Mobilni telefoni Mobile
phone Keypad i joystick za unos Optimizovan za korišćenje jednom rukom ; 3) Orijentisani ka multimedijalnom sadržaju ; Okrenuti mutlimediji Visoko optimizovan korisnički interfejs Bez touch ekrana, specijalizovani tasteri za navigaciju i funkcije; Sposobnost slanja video sadržaja Windows CE Kernel; API zasnovan na WIN32 (NT / 2000 / XP / Vista); Bez 16 bit API ; Razvijen ―od nule: -Bez starog (legacy) koda; -Reklamiran kao ―najmanj i i ―najpouzdaniji‖ Windows. Modularan: -Prilagodljiv za male računarsko/komunikacione uređaje; -API-i prilagođeni različitim platformama. Maloj veličini je data prednost u odnosu na komfor i pogodnosti: Redukovan broj API-a Open source; zasnovan na modifikovanoj verziji Linux kernela (oktobar 2008). Java programski jezik - Dalvik virtualna mašina (nestandardna VM), C/C++. Development: Eclipse (3.4 ili noviji) + Android Development Tools (ADT) Plugin, Android Studio. Android Market -> Google Play (Jan 2014 1M+ apps, 57% besplatnih). WebKit layout engine, OpenGL ES 2D/3D graphics API - optimizovana grafika, SQLite relacioni DBMS, OpenCore media framework,... Bluetooth, EDGE, UMTS/3G, WiFi, LTE, WiMAX,... Senzori: kamera, GPS, osvetljenje, kompas, akcelerometar, temp,
vlažnost, barometar, ... iPhone, 3G, 3GS, 4, 4S, 5, 5S, 5C (prvo izdanje jun 2007); iPad 2 (april 2010), iPad 3 (7.3.2012), iPad 4 iPhone OS 3.1.3 iOS 4.3 (izveden iz Mac OS X), 5.X, 6.X, 7. iOS SDK (iPhone SDK), Xcode, Interface Builder Objective-C – OO nadgradnja C (Smalltalk sintaksa) iPhone & Apple developer licenca Multitasking je dostupan samo za Apple aplikacije App Store (jan 2014 više od 1,000,000 iOS ap likacija) Model View Controller : *Cocoa Touch: -Funkcionalnost korisničkog interfejsa, dugmad, pickers (list box), scroll bar-ovi, itd. -Omotači (wrappers) za core services; *Media: -Core Audio, audio recording/mixing Open AL, Open GL; -Video playback PDF, JPG, PNG *Core Services: File Access, Address Book Threading. Core Location, Net Services, URL Utilities. *Core OS: Security, Sockets Power Management Certificates, File System Microsoft Visual Studio 2012/2013 Silverlight & DirectX; XAML for the UI and C# or Visual Basic for the code C/C++ - DirectX/Direct3D Metro -> Modern UI
Dinimačka isporuka sadržaja: nove aplikacije, servisi i sadržaj mogu biti download -ovani dinamički *Sigurnost: verifikacija class file-a, dobro definisan API, sigurnosni
mehanizmi i karakteristike obezbeđuju da aplikacija ne može oštetiti uređaje ili narušiti mrežnu konekciju ; *Cross-platform-ska kompatibilnost: standardizovani jezik i biblioteke omogućuju da se aplikacija izvršava na različitim uređajima (za koje postoji Java VM) ; *Napredni korisnički interfejs i mogućnost korišćenja interaktivnih sadržaja ; *Offline pristup: aplikacije mogu biti korišćene i bez aktivne mrežne konekcije; *Objektnoorijentisan programski jezik; *Široko prihvaćena u razvoju softvera (velika programerska zajednica): više od 3 miliona Java programera širom sveta . Potreba za jednostavnim, standardnim programskim okruženjem za male, mobilne uređaje (PDA, mobilne telefone, set -top box-ove,…). *Write once run everywhere; *Java Standard Edition (J2SE) suviše zahtevan u pogledu resursa za uređaje koji poseduju: -Ograničenu memoriju (JVM samo zahteva oko ~35 MB); -Ekrane male veličine (Swing /
AWT su projektovani za SVGA ili naprednije video standarde); Alternativne metode interakcije sa korisnikom i unos (Swing / AWT su zasnovani na tastaturi i mišu); -Spore procesore (JVM projektovan za desktop CPU). *Sun odlučio da razvije specijalnu ver ziju Jave za male
uređaje: J2ME Konfiguracija – Osnovna Java runtime environment: Java Virtual Machine (JVM); -Osnovne runtime klase (Object, System, …), Bez GUI, U/I, itd. *Konfiguracija sadrži skup minimalnih hardverskih i softverskih (OS) zahteva. Primeri: CDC (Connected Device Configuration): 32bit CPU, > 2 MB memorije, konekcija sa velikim propusnim opsegom, potpuno funkcionalna Java 2 VM; CLDC (Connected Limited Device Configuration): 16/32bit CPU, počev od 128 KB memorije, konekcija sa ograničenim propusnim opsegom mala potrošnja snage. Profil – funkcionalnost specifična za određenu familiju uređaja: -Implementaci ja korisničkog interfejsa, U/I,... *Profil definiše skup minimalnih hardverskih i softverskih (OS) zahteva zasnovan na određenoj konfiguraciji. *Primeri: -MIDP - Mobile Information Device Profile PDAP - Personal Digital Assistant Profile; FP - Foundation Profile (CDC + neke J2SE klase) PBP - Personal Basis Profile (FP + aplikacioni model) PP - Personal Profile (~ Personal Java). Minimalni zahtevi: -256KB ROM, 128KB RAM; Ekran 96x54 pixel-a; Keypad, keyboard ili touch screen; Mrežna konekcija. Preko 700 MIDP 1.0 mobilnih uređaja; Preko 300 MIDP 2.0 mobilnih uređaja . Proširenja se definišu kroz JSR (Java Specification Requests) . Na primer, Java Telephony API (JTAPI); JSR 43
Poboljšan korisnički interfejs za kompleksne aplikacije; Podrška za multimediju (audio, video); Podrška za mobilne igre ; Bolja mrežna povezanost (npr., podrška za socket-e); Push mehanizam (aplikacija može biti aktivirana od strane dolazećih poruka ili neke druge notifikacije ; Over-the-air (OTA) provisioning (specificira kako aplikacija može biti instalirana/ažurirana preko mrežne konekcije) End-to-end sigurnost (HTTPS podrška, infrastruktura ključeva, itd.); Socket komunikacija; Obično se kombinuju sa dodatnim JSR (Multimedia, 3D, Bluetooth, PIM / File system, …) Postoje plugin-ovi za mnoge IDE (npr., Eclipse, Xcode), kao i specifični IDE (npr., VistaMax). Nokia Carbide alati: Eclipse plug- ins (takođe i za Visual Studio) Obezbeđuje emulator mobilnog uređaja Samo za Windows i sa fokusom na S60. Carbide.j, Nokia razvojni alati za J2ME - obustavlja se sa razvojem zbog postojanja kvalitetnih J2ME: Eclipse, NetBeans, itd. Standardni C++ sa Qt SDK (od 2010) - Qt Creator ili Carbide. Programski jezici za razvoj aplikacija: C++, Python, Adobe Flash Lite, Java ME. C++: -Nativne aplikacije se razvijaju u C++; -Nije standardni ANSI C++, već ograničena verzija (bez izuzetaka - exceptions, ograničeno korišćenje template-a, itd) sa mnogim specifičnim konvencijama u pisanju izvornog koda; -Veliki broj interfejsa i klasa; -Posledica: spor i dugačak razvojni ciklus (u poređenju sa J2ME). *Portabilnost: -Portabilnost aplikacija između različitih Symbian verzija je predstavljala problem ; -Portabilnost aplikacija
između različitih familija mobilnih uređaja takođe može biti problematična (npr., Nokia ili Sony Eriksson) . *Budućnost: -Symbian nije postigao cilj da postane standardni mobilni operativni sistem; -Symbian Foundation (Jun 2008) - Symbian^3 open source mobilna platforma; -Standardni C++ sa Qt SDK (Symbian ^4, Nokia Belle). HTML5: -Crtanje po canvasu (2D Drawing API); Touch događaji; -Geolocation API (GPS / Celularna mreža ili WiFi) Aplikacioni keš ; -Lokalno smeštanje podataka: - -Web Store; - -Web SQL Database; - -Indexed Database. (INDEXEDDB); -Multimedia: -Podrška za video i audio tagove. *CSS3; *JavaScript / AJAX
1) Flash Builder, 2) Iliumination Software Creator 3) LiveCode 4) Marmalade 5) MoSync 6) OpenPlug Studio 7) PhoneGap 8) RhoStudio 9) Titanium
Kros-platforms – jezici, SDK, GUI, Debugger, Elulator, Bluetooth
Mobilna strategija – razmatranje parametara u izboru arhitekture i karakteristika mobilnog informacionog sistema/aplikacije/servisa. Korisnici aplikacije; Tip(-ovi) uređaja; Konekcija i integracija sa IT rešenjima kompanije ; Pristup podacima kompanije; Obaveštavanje/notifikacija korisnika ; Sigurnost; Trajanje baterije. *Pravila mobilne strategije: - Ne možete podržati sve ...; Kreirati, a ne konvertovati postojeću aplikaciju; Održavati je jednostavnom.
Prosečan korisnik provede oko 2 sata svakog dana koristeći svoj pametan telefon, a šta radi za to vreme:
64% amrikanaca ima smartphone, 90% ima cell phone, 32% e-reader a 42% tablet, 44% korisnika koji ima cell phone ga ostavlja pored kreveta
dok spava da ne bi propustili neko obaveštenje, 29% ne bi mogli da zamisle život bez njega. Bežični Internet - aplikacije zasnovane na microbrowser-u - mobilni Web sajtovi; *Mobilne Web aplikacije; *Crossplatform-ske mobilne aplikacije; *Pametni klijenti (smart, native, rich) mobilne aplikacije; *Bežična razmena poruka (messaging).
Bežične Internet aplikacije imaju istu arhitekturu kao i klasične Web aplikacije . Osnovne komponen te bežične Internet arhitekture: 1) Microbrowser klijent. 2) Bežični Web server. 3) Izvori podataka i aplikaciona logika.
*Wireless Application Protocol (WAP): Open Mobile Alliance (ranije WAP Forum); *Korisnički aplikacioni servisi, poput mMode razvijen od strane AT&T (SAD) i i-mode razvijen od strane NTT DoCoMo (Japan) zasnovani su na arhitekturi bežičnog Interneta - је технички стандард за приступ
информацијама преко мобилнe бежичне мреже. WAP претраживач је веб browser за мобилне уређаје као што су мобилни телефони који користe ovaj протокол. WAP стандардни описује протокол koji омогућава интероперабилност WAP опреме и софтвера са различитих мрежним технологија, као што су GSM и IS-95 (такође познат као CDMA). U 2013 uveliko nestao kao protokol jer skoro svi mobilni uređaji podržavaju HTML, CSS i sve više Java Script pa nije bilo više potrebe za WAP markup . Bez instalacije softvera; 2) Zasniva se na Internet modelu i arhitekturi 3) Korisnici su familijarni sa korisničkim interfejsom zasnovanim na browser-u 4) Integracija sa IT sistemima kompanije 5) Široka mogućnost isporuke ap likacija jer se celokupna konfiguracija i adaptacija obavlja na serveru 6) Uvek ažurni podaci 7) Sigurnost – svi podaci su na serveru kompanije, nema podataka smeštenih na klijentu Bežična konekcija – pokretanje app u of fline režimu jako slabo podržano ; Jednostavan korisnički interfejs; Performanse aplikacije; Testiranje aplikacije; Dostupnost; Sigurnost (wireless gateway); Web tehnologije kao što su HTML5, CSS3 i sl su još u nastajanju pa se sreću različiti nivoi podržav anja a nama je jako bitno da
što veći broj uređaja podržava našu Web app i korektno otvara. : Pristup sigurnim i ažurnim informacijama; Informacioni servisi; Sadržaji i informacije namenjeni zabavi; m-trgovina.
– na odluku utiče veliki број фактора, укључујући и циљнe групe, расположивог буџета, намјени и потребних карактеристика. Mobilni WebSajt je klasičan sajt samo je pravljen specijalno za mobilne uređaje malih tač ekrana a čak mogu pristupati i specifičnim karaktristikama telefona kao što je click -to-call ili location-base mapping. Mobilne Aplikacije se moraju preuzeti i instlirati,
znači ne renderuje ih browser što znači da Aplikacije mogu da se ponašaju isto kao i web sajtovi i povlače sadržaj sa interneta (B92, Mondo, Rts vesti , Clash of Clans…) ili da preuzmu ceo sadržaj, smesta na internu memoriju ili SD karticu i koriste i u offline režimu (Asphalt, Cut the Rope…). Šta odabrati ? Igrice – app, Sadržaj za što šire mase, specijalna namena – websajt a naravno da je najbolje imati oba. - za marketing ili javnu
komunikaciju, jer ima lakšu dostupnost, veću kompatibilnost i jeftiniji je. 1) Laka dostupnost – odmah dostupan, svi uređaji danas dolaze sa preintaliranim web browser-om… 2) Kompatibilnost – svi ga čitaju a i websajt URLs se lako intergišu sa drugim mobilnim tehnologijama kao što su SMS, QR kod, NFC… 3) Lak upgrade i update – sajt je više dinamičan i fleksibilan, lako se menja dizajn i vidljiv je odmah a kod apliakcije mora se
objaviti update za sve uređaje, da se prilagodi za sve ekrane i onda posle moraju korisnici da povuču taj update. 4) Lako pronalaženje – websajt može svako da nađe na internetu i biće automacki prebačen na vaš mobilni websajt ako ga ima a i lakše se nalazi preko browser -a, dok je apliakcija ograničena na Store određene platforme. 5) Lako deljenje – lako je deliti URL na bilo koju socialnu mrežu ili neki drugi service. 6) Brže se probijaju na internetu i dolaze do šireg auditorijuma 7) Mogu biti pravljeni kao web apliakcije sa bazom 8) WebSajt je lakši za pravljenje, održavanje i
jeftiniji. Mnogi develop-eri znaju web tehniologije a i ako ne znaju mogu se osposobiti za kratko vreme 9) Podrška i održavanje je mnogo jeftinij za WebSajt nego za Aplikaciju. 10) Klijent je oslobođen bilo kakve instalacije,
menage oko aplikacije (da li ima mesta na uređaju, da li mu ga koči…), upravljati update-ovima, app nezavistan od platforme, verzije OS-a,
starosti uređaja... – svi imaju najnoviju verziju i svima radi (sporije ili brže).
- Troškovi razvoja mobilne aplikacije
vremenom će se povećavati, prvenstveno zato jer će biti više platformi za razvoj, više specifičnih uređaja za koje će se trebati aplikacija razvijati. Kao minimum, aplikacija će morati podržavati iOS, Android i Windows Phone. Nadalje, mnoge od tih platformi vjerojatno će se podjeliti na više podplatformi koje zahtijevaju različite aplikacije za pristojnu korisničku upotrebljivost. Izdavanjem Kindle Fire-a, Amazon se zapravo odvojio od
Androida, kao sasvim novo korisničko iskustvo, znači trebala bi i za njega posebna app. S druge strane, izrada web stranice prilagođene web preglednicima mobilnih uređaja je puno jednostavnija i jeftinija, kako danas, tako i u budućnosti. Proizvođačima sadržaja dosta je da im veliki dio prihoda uzimaju posrednici kao što su Google i Apple koji od svake transakcije uzimaju 30%. Ili u slučaju Playboy -a koji niti u snu ne može sanjati da uz oštre Apple-ove cenzure objavi aplikaciju u AppStore-u. Sloboda od cenzurisanja i para-poreznih kompanija odličan su razlog za odlučiti se za mobilne web stranice ispred aplikacije. Na duge staze Internet će pobediti manje, zatvorene ekosisteme kao št o su aplikacije. Mobilne aplikacije mogu preživjeti u nekoliko segmenata kao što su: igre, aplikacije za rekreaciju, različiti readeri i uređivači,it. Pretpostavka je takođe da će se više koristiti mobilne aplikacije koje mogu raditi u offline modu rada, a kada se radi o online modu više će se koristiti web aplikacije. – 1) Interaktivna igrica (Angry Birds), 2) Redovna offline i online upotreba u personalizovanom obliku (EverNote),
3) K0mpleksna izračunavanja i Izveštaji sa korisničkim podacima (bankovni i investicioni proračuni…) 4) Potrebno koristiti Specifične funkcionalnosti telefona kao šti su kamera, cpu managment, mikrofon, notification center… 5) Potreban rad samo u offline modu u punoj funkcionalnosti. 6) Grafički intenzivne app koje zahtevaju visoke performanse korisničkog interfejsa. Moramo dobro razmiliti o isplativnosti, i da li nam je zaista potrebna. Aplikacije sa pametnim klijentom su alternativa bežičnim Internet aplikacijama (Web app); Instalira se softver na mobilnom uređaju, koji sadrži pristup lokalnim podacima i aplikacionu logiku; Komponente arhitekture: pametni klijent, sinhronizacioni server, izvori podataka i aplikacioni servisi kompanije.
Uvek dostupni podaci; Bogat korisnički interfejs ; Performanse; Distribuirana obrada na klijentu i serveru; Sigurnost (end-to-end); Troškovi protokoa interneta. Može se
pristupiti kalendaru i kontaktima, kameri, žiroskopu, kompasu, diagnostici uređaja kao što su status baterije ili mreže…
Integracija na nivou kompanije; Instaliranje (deployment) aplikacije; Mobilni virusi; Kompleksnost razvoja aplikacije; Višestruki razvojni ciklusi za svaki uređaj/platformu/okruž enje što može znatno povečati troškove. Sales Force Automation (SFA); Field Force Automation (FFA); Aplikacije u zaštiti i čuvanju zdravlja (healthcare) ; Aplikacije za prikupljanje podataka na terenu; Aplikacije kojima se
povećava produktivnost korisnika usled primene u mobilnom/bežičnom okruženju. - koristeći web tehnologije unutar nativne app može dati najbolje od oba sveta, nativ prikaz preko celog ekrana sa mogućnošću pritupa nativ funkcionalnos tima uređaja uz fleksibilnost koju donosi web pristup. Mnoge app primarno koriste native platform kontrolu i API a ugrađeni browser igra vrlo malu ulogu, dok kod drugih se nativ platforma može koristiti kao podloga i glavni deo aplikacije biti izgrađen od web tehnologija. Uglavnom hibridne app koriste framework koji wrap-uje neke nativne funkcionalnosti u JavaScript, čineći ih dotupnim u Web Layer -u, takođe može omogućavati pristup nativnom API-ju preko JavaScript-a. Jedna od fleksibilnosti ovog pristupa je ta da možemo odabrati neke
delove koji se retko menjaju i snimiti ih offline što može da ubrza odziv app, a mogu biti update-ovani ili skinuti sa remote server-a po potrebi.
Manji troškovi nego nativ app, brže popravke i update, širi auditorijum. – 1) Troškovi: Veliki, mali, Srednji 2) Dostupnost: Mala, Velika, Srednja 3) Funkcionalnost: Velika, Mala, Velika. - *Razmena poruka korisnikkorisnik: -email, pejdžeri, Short Message Service (SMS), Enhanced Message Service (EMS), Multimedia Message Service (MMS); *Obaveštenja i alarmi: - Poruke poslate korisniku na inicijativu servera (push) pri čemu primalac obavlja akciju zasnovanu na sadržaju poruke ; Tehnologije mobilne mreže: Handheld Device Markup Language (HDML) alarmi, WAP Push. *Slanje poruka preko Cloud-a: Google Cloud Messaging for Android (GCM), Apple Push Notification Service (APNS), Microsoft Push Notification Service (MPNS); *Razmena poruka aplikacija-aplikacija bez interakcije sa mobilnim korisnikom – XMPP/Jabber.
- Extensible Messaging and Presence Protocol (formerly named Jabber) je otvorena platforma za razmenu kratkih poruka i informacija o prisustvu, bazirana na XML-u. Softver baziran na Jabber protokolima se koristi na hiljadama servera širom Interneta, i koristi ga preko deset miliona ljudi. Glavne karakteristike Jabber sistema jesu njegova decentralizovana priroda i korišćenje „protočnog“ XML -a. Google Talk - kombinacija VoIP i IM sistema, koji koristi Jabber/XMPP. - Prva dva tipa razmene poruka ne zahtevaju dodatni softver instaliran na strani klijenta Razmena poruka aplikacija-aplikacija zahteva softver na mobilnom
uređaju koji razume komunikacioni tok između klijenta i servera, kao i način funkcionisanja preko fiksnih i bežičnih mreža. Push karakteristike; Store-and-forward – podrška u slučaju nestalne i prekinute bežične mreže ; Personalizovana isporuka podataka i servisa; Komunikacija preko fiksnih i bežičnih mreža (za razmenu poruka aplikacija-aplikacija) Razmena poruka je opciona komponenta
mnogih mobilnih aplikacija i može biti po potrebi uključena, tako da nema značajnijih nedostataka; Razmena poruka dodaje kompleksnost razvoju mobilnih aplikacija. Za razmenu poruka aplikacija- aplikacija neophodan je
razvoj softvera i na strani mobilnog klijenta/uređaja i na strani servera Korisničke aplikacije: Komunikacija; -Lokaciono-zasnovane igre; -Kolaborativni rad; -Zabava; Distribucija i širenje značajnih informacija ; *Aplikacije na nivou kompanije: -Integracija sistema; -Razmena informacija; -Proširenje aplikacija ; Obaveštavanje o događajima. – 1) Koncept app-a 2) Identifikacija korisnika 3) Content app-a 4) Funkcionlansoti 5) Kontekst u kome će se koristiti 6) Pretraga marketa u vezi sličnih app-a 7) Dizajn User Experiance UX – kako
će korisnik doživeti našu app Mobile User Experience: -Mobilni je personalni uređaj koji i ima drugačiji context; -Upotrebljivost, privlačnost i estetika UI-a su jednako bitne; -Neophodno svakodnevno Pričanje i posmatranje
korisnika. *Testiranje i razvoj: baziran na mobilnim iskustvima sadašnjih i potencijalnih korisnika. *User Experiance se prenosi preko User Interfacea; *Mobilni UI dizajn: - Arhitektura informacija; Interaktivni stil; Upotrebljivost; Layout i visuali dizajn. - Mobine aplikacije ucestvuju na sajmu lepote, koja je najlepsa dobija pažnju. Svaka platf orma ima svoje vodice, sugestije kako treba razviti korisnicki interfesj sa maksimalno korisnicko iskustvo. U Mobilnom svetu je jako bitna upotrebljivost i doživljaj korisničke aplikacije, kolika je ona povoljna za korišć enje. Iterativni proces, prvo razvijemo neku vrstu prototipa, svaka promene koje se može tada uraditi može se lako redizajnirati, najbolje je kad dizajniramo sve da isplaniramo. Nakon što definisemo koji su naši funkcionalni zahtevi, sada definišemo use case ove i scenarije, imamo vise razlicitih mehanizama, koji se razlikuju po nivou detaljnosti i funkcionanosti.
– Klasična arhitektura infromacija na Web-u; Lista View-a u hijerarhiskom obliku prikazuje veze između strana - *Prikazuje ponašanje korisnika; *Kada: 1) Na početku: vizualne putanje; Holistički pogled kao mapa puta; Korišćen da se vide moguće prečice; 2) Na kraju: -Korisničke log informacije; -Procenat klika; Detekcija kretanja kroz arhitekturu infromacija; -Moguće etičke implikacije.
– Sitemap – kako su View strkturirani i njihove veze; Clickstream – Kako se korisnik može kretati između View -a
Što manje hopova do nekog ekrana gde treba da izvši zadatak.
- koje korisnik pokreće samo kada mu treba neka
brzo informacija, i mora da ima sto kraću inteakciju, tok klikova ili klik stream. Tools: 1) Papirni prototip 2) Wireframes, mockups, prototypes 3) GUI Builders (Adobe Photoshop, Microsoft Visio, Omnigraffle, ...) *Pravila Mobilnog Dizajna: 1. Context korišćenja 2) Glavni zadatak app 3) Ergonomics matters: Principles of
ergonomics lie at the heart of every good design. 4) Koristi se OS guidelines (for native app) ili Web guidelines i obavezan Responsive Web Design. 5) Lepota app – današnji dizajn je kao izbor za mis.
modelovanju se koristi izraz žičani model, jer se pomoću njega grubo predstavlja forma nekog objekta pomoću linija koje predstavljaju njegove ivice, pa je sličan nekom objektu napravljenom od žice (otuda naziv). Nema površina, nema tekstura, samo ivice predstavljene linijama. - Naziv je onda pozajmljen za proces skiciranja izgleda
web stranica, pa Nema slika, nema sadržaja, samo linije koje predstavljaju okvire kontejnera na stranici, okvir ili ram. Skica Bilo da je nacrtana ručno ili pomoću softvera, skica pokazuje koji elementi i gdje će se na laziti na web stranici, ali ne prikazuje boje, vrstu fonta, pravu veličinu elemenata i slično.
- je način da se pripreme informacije na stranici, shvata se kao „information design“. Mobilni web Wireframe je „page schemat“(šema) ili „screen blueprint“(plan, sketch) je visualni reprezent skeleta mobilne (web) app. 1) Low-fidelity wireframes: Paper prototyping 2) High-fidelity wireframes: Web, desktop or plug-in based tools. *Prototypes: 1) "clickable" or "functional" wireframe 2) clickable wireframes se mogu razviti u mnogo složenije prototipove u zavisnosti od vernosti wirefram-a. - definisani mockup, makete, svi su klikabilni, klikom postižemo bar na ekranu akciju koja vodi do drugog ekrana, predstavljamo koji ekran vodi do kog ekrana, Interaktivni protitp nema funkcionalnos t već dizajn koji moze da se testira, mi nemamo kod, nema funkcionalnost samo slike ekrana, i možemo da navigiramo kroz ekrane naše aplikacije, formiramo interakciju sa aplikacijama bez prave funkcionalnosti, mogu n aši prijatelji da probaju. – 1) Paper prototypes Prototip intfejsa na papiru Low fidelity prototypes: Quick and cheap to prepare and modify; *Namena: - Reprezentacija idea; Dobiti korisničku reakciju i sugestiju. 2) Interaktivni prorotip - prototip aplikcije, ne sadrži funkcionalnosti, ali je možemo startovati kao da ih poseduje. PhoneGep jako dobro dizajnira interfejs app i može dobro poslužiti da se da kao silver box - na odgraničeni broj ljudi da probaju. : Life is too short for bad software!!!
Postoje GUI aplati, često su web zasnovani, logujemo se online i drag and drop iscrtavamo mockup aplikacije koji pravimo. Imamo papirne protitopove, imamo Wireframe ili prototipove visoke vernosti ili imamo slike ekrana. Prototyper; Fluid; Balsamiq; Pencil, WireframeSketcher, Moqups, RIB, AppInventor. (DS) - Formiramo pdf, moze da taj pdf bude klikabilan, drugi output, omogucava output u vidu HTML-a, jer su obicno namenjenie i za web aplikaciju i posle kodiramo u java script-u. Ovi alati omogucavaju da eksporujemo odredjeni format, imamo Android ili IOS player koji treba da interpretira na mobilnom i prodjemo kroz app koja nema funkcionalnost. - Nema nista programiranja, vec je sve inscrtavanje, ova aplikacija nije nativ-a, on je samo interaktivni prototip jer se vrlo brzo formira, imamo block editor. Kroz dizajner imamo widgete, vezu sa socijalnim mrežama to iscrtavamo po ekranu onda start ujemo,
open the block editor, gde za svkai widget definišemo. Mi smo vizualno dizajnirali cod, i izvrsva se prilikom klika na dugme, dobijemo elementarnu funkcionalnost. - da može da se eksportuje java kod i da se nastavi razvoj, da se dobija na brzinu elementara funkcuiolanos i posle da
se tera dalje, neko da zna toliko a ovaj što zna mnogo da se ne bahće sa ovo prosto nego samo da izdominira posle. - Dizajn korisničkog interfejsa kroz mapu je iz weba kao kad se dobije psd. - Mora se obezbediti da uređaji sa recimo
retina ekranu dobijaju slike visokog kvaliteta, ali to može da uspori aplikaciju ako skida sa neta, i tu mora da se uradi trade off tj neka vrsta kompromisa. - Princip prenosivih uređaja koji ce biti prikačeni na telo, kada korisnik želi vrlo kratku i brzu interakciju, recimo: Za spasilacke ekipe, gde bi imali spasioca sa narukvicom na ruci i tag-ovima po telu, prislanjanjem pametne narukvice odgovarajućim tagove na uniformi slale bi se određene poruke centrali, lociranje gde se obavlja spasavanje, merio kvalitet rada spasilačke ekipe… ---------------------------------------------------------------------------------------------------------------------------------------------------------
Evolicuja u Računastvu ide kao kod Darvila (Prirodna selekcija je proces koji opisuje opstajanje tokom generacija naslednih osobina koje se mogu okarakte risati kao „korisne“ za
reprodukiju ili samo preživljavanje, a gubitak onih osobina koje se mogu okarakterisati kao „štetne“). (DS) - Neke tehnologije delom zaboravljene se prepaukuju i pojavljuju se kao nove , npr ima li smo one „proste“ nokia 3310 telefone i pravili softver za njih a sad imamo moćne telefone, sa jakim cpu, ekran preko celog uređaja, gomilu senzora... ali imamo sat, naocare koji sad koristie softver namenjane kao za novkia 3310, imaju male resurse, jako limitiran hardver... – 1) Tanki klijent – ne instalira se softver na mobilnom uređaju osim Web pretraživača – microbrowser-a 2) Klasična interakcija - browser prihvata sadržaj u određenom markup jeziku, parsira ga, i prikazuje ga korisniku aplikacije. Svaki odgovor ili interakcija korisnika
se šalje serveru, gde se obrađuje i po potrebi novi sadržaj se šalje microbrowser- u 3) Sva aplikaciona logika se izvršava na Web/aplikacionom serveru, tako da se ne zahteva značajna procesorska snaga i količin a memorije da bi se izvršavao klijentski deo aplikacije, zbog čega je ovaj tip aplikacije pogodan za mobilne uređaje sa ograničenim resursima . 4) Bežične Internet
aplikacije nisu ograničene na mobilne telefone: i ostali mobilni i/ili bežični uređaji mogu da predstavljaju klijentske platforme ovih aplikacija: PDA, laptop, pametni telefoni, itd. (DS) - je jako bitan, jer ce putem glasa da se da se komunicira sa telefonom. Tanki klijent – klijent je microbrowser namenjen za prezentaciju određenog markup jezika i interakciju sa korisnikom. To je deo aplikacije koji predstavlja UI i njegovo projektovanje predstavlja odlučujući element uspeha aplikacije 2) Srednji sloj (Middle tier) – Sadrži Web server i aplikacionu logiku organizovanu u
bežični aplikacioni server i i eventualno komponente za integraciju sa ostalim aplikacijama i informacionim sistemima kompanije/organizacije (back-end system). 3) Back-end system – Održava podatke i servise
neophodne kao podrška bežičnoj Internet aplikaciji, uključujući bazu podataka, poslovne aplikacije (ERP, CRM), izvore polustruktuiranih (XML) i nestruktuiranih podataka, stare (legacy) aplikacije, itd. - *Obezbeđuje korisnički interfejs : -Namenjen specifičnoj primeni i cilju; -Značajan za prihvatanje mobilne aplikacije od strane korisnika. Browser i tipovi sadržaja: -Svaki browser razume i interpretira
sadržaj jednog ili više markup jezika (HDML, WML, cHTML, XHTML, itd.). Različiti browser-i mogu na različit način da interpretiraju isti markup jezik; -voice browser – koristi i interpretira VoiceXML kao markup jezik. *Da bi pristupio podacima i servisima na serveru tanki klijent mora imati bežičnu konekciju sa serverom: Najčešće browser obezbeđuje podršku za bežičnu komunikaciju sa serverom *Markup jezici: -Wireless Markup Language (WML) definisan u WAP 1.x; -XHTML-MP, definisanu WAP 2.0; Handheld Device Markup Language (HDML), prethodnik WML; -podskup HTML, poput Compact HTML (cHTML). *Podrška za grafičke podatke : (wireless bitmap (WBMP), JPEG, GIF). *Push tehnologije: Tehnologije za komunikaciju iniciranu sa servera (push): HDML notifications i WAP Push. *Podrška za offline rad : Mogućnost pristupa offline sadržaju u periodima
bez bežične konekcije: podacima u kešu browsera, ili lokalnim
perzistentnim podacima (data store). *Web Clippings: - Palm je razvio Web-clipping arhitekturu za napredne HTML- zasnovane aplikacije kojom se razdvajaju statičke komponente Web strane od dinamičkog sadrž aja
(podataka koji se često menjaju). GoAmerica obezbeđuje sličnu tehnologiju nazvanu MobileClips za Go.Web microbrowser-e. *Sigurnost:
Zavisi od mobilnog uređaja i bežičnog protokola. Za WAP aplikacije je obezbeđena preko WTLS, dok kod HTML aplikacija korišćenjem SSL/TLS. *Podrška u okviru mobilnih uređaja : Svaki mobilni uređaj dolazi sa sopstvenim browser-om, ili se po potrebi može instalirati poseban browser. - Bežični aplikacioni serveri (Wireless Application Servers): - Obezbeđuju osnovnu infrastrukturu i funkcionalnost na kojoj se razvijaju bežične Internet aplikacije. - Zasnivaju se na standardnim aplikacionim serverima (J2EE vs. .NET): - - Web integracija; - -Upravljanje transakcijama i sesijama klijenata; - -Integracija i povezivanje sa aplikacijama i izvorima podataka kompanije. *Wireless Gateways: Wireless gateway-i su linkovi između bežičnog i žičanog ―sveta. - Prevode specifični bežični protokol u IP-zasnovani protokol, poput TCP/IP ili HTTP; Obezbeđuju pristup aplikacijama i podacima kompanije za
mobilne/bežične aplikacije, nezavisno od korišćene bežične tehnologije i protokola (WAP gateway); *Serveri razmene poruka (Messaging Servers): -Short Message Service (SMS), MMS, HDML notifikacije i alarmi, i WAP Push. - *Proxy za redirekciju zahteva (Request-Handling Proxy): - Omogućuju da Web
zahtevi upućeni postojećem Web serveru budu prosleđeni bežičnom aplikacionom serveru; *Transformacija sadržaja (Content Transformation): -Prilagođenje sadržaja konkretnom mobilnom uređaju i microbrowseru koji je uputio zahtev
Indetifikacija mobilnog uređaja/browser-a: - UserAgent (deo zaglavlja HTTP zahteva); - Composite Capabilities/Preferences Profile (CC/PP). *Generisanje dinamičkog sadržaja: Java servlet-i, JSP, ASP.NET, XML/XSL, PHP, itd. Upravljanje sesijom i stanjem u okviru WAS-a; *Integracija sa aplikacijama i podacima kompanije/organizacije; *Integracija sa sistemom za razmenu poruka (Messaging); *Sigurnost (WTLS, SSL/TLS); *Skalabilnost; *Operativni sistem, razvojno okruženje i alati . 1. Uspostavljanje bežične sesije; 2. Slanje zahteva; 3. Prevođenje zahteva; 4. Prijem zahteva; 5. Identifikacija Trans formacija sadržaja bežičnog klijenta; 6. Obrada zahteva; 7. prema karakteristikama klijenta; 8. Vraćanje sadržaja
- je standard za isporuku i
prezentaciju informacija na mobilnim uređajima preko bežične mreže ; WAP Forum je osnovan 1997 - Ericsson, Motorola, Nokia, and Openwave Systems i od tada okupio više od 300 kompanija (www.wapforum.org);
WAP Forum je objavio prvu verziju WAP 1998 godine, i od tada je široko prihvaćen od strane proizvođača mobilnih telefona, mobilnih operatera i inženjera mobilnih aplikaci ja. Juna 2002, WAP Forum je uključen u Open Mobile Alliance - dalji rad na standardizaciji u oblasti razvoja mobilnih aplikacija. (www.openmobilealliance.org); zajedno sa industrijskim forumima: Wireless Village, The SyncML Initiative, Location Interoperability Forum, Mobile Games Interoperability Forum, Mobile Wireless Internet Forum) Osnovne funkcionalnosti: Informacioni servisi (Web pretraživanje) ; Jednostavno script programiranje; Kombinovanje telefonskih funkcionalnosti sa browser-om; Slanje informacija od strane servera (push); *WAP stek protokola uključuje: - Datagrame i transakcije, sigurnosti sesije; -Microbrowser: - -XML zasnovan markup jezik (WML); - Skriptovanje (WMLScript); -WTA / WTAI (Pristup funkcijama telefona); - Različiti formati sadržaja: Wireless Bitmap ( WBMP ); *WAP podržava različite bežične komunikacione sisteme kao prenosioce: GSM, IS-136, CDMA, PDC itd. - WAP Gateway funkcioniše kao proxy između bežične mreže i Interneta, vršeći prevođenje između WAP i HTTP, k ompajliranje WMLScript-a i kodiranje WML u binarni format.
obezbeđuje connection-less, nepouzdan datagram servis, prilagođen je bežičnim mrežama u cilju obezbeđenja generalnog datagram transporta. Osnovni datagram servis je fundamentalan za sve bežične mreže, tako da omogućuje primenu WAP u bilo kojoj bežičnoj infrastrukturi. Menja se sa UDP kada se koristi preko IP mrežnog sloja (npr. GPRS): WDP preko IP je UDP/IP; Nosioci: GSM SMS, USSD, CSD, GPRS, UMTS, i mnogi drugi izvan Evrope.
- Protokol za sigurnu bežičnu
komunikaciju korišćenjem standardnih Internet sigurnosnih protokola poput SSL i TLS. Obezbeđuje sigurnost za komunikaciju između mobilne aplikacija i servera sa sledećim ciljevima: Privatnost (kriptovanje); Integritet podataka; Autentikacija (javni ključ i simetrično kriptovanje) . Mali i efikasan protokol u odnosu na raspoloživi propusni opseg, memoriju i snagu procesora (HTTPS je veoma ―skup‖ u pogledu obima podataka koji se prenose i handshaking-a). Koristi specijalne mehanizme adaptirane za bežični pristup i korišćenje: Dugotrajne sigurne sesije; Optimizovane handshake procedure; Obezbeđuje jednostavnu sigurnost podataka prilikom prenosa preko datagram protokola i različitih prenosilaca. WTLS se prevodi u HTTPS u okviru WAP Gateway-a -> WAPgap Pouzdan prenos podataka zasnovan na request/reply paradigmi, kao bežično unapređenje TCP/IP. Različiti nivoi pouzdanosti transfera WTP-om: Class 0, Class 1, Class 2. Ne sadrži
karakteristike TCP/IP koje ga čine nepodobnim za bežične komunikacije, poput suvišnih handshake-a, kao i dodatne informacije za upravljanje prijemom i greškama u prijemu paketa. Više nego duplo man je paketa u odnosu na TCP/IP. Podržava: -ponovno slanje (retransmisiju) izgubljenih paketa; - selektivno ponovno slanje (pogrešnih) paketa; segmentaciju/ponovno sklapanje paketa; - kompresiju header-a; kontrolu toka Uspostavlja sesije između bežičnog
klijenta i servera Obezbeđuje funkcionalnost sličnu HTTP 1.1 (request/reply, content type negotiation, itd) prilagođenu bežičnim mrežama sa malim propusnim opsegom i velikim kašnjenjem *Poboljšanja u odnosu na HTTP: 1) Binarno kodiranje header-a: - Kompaktno birano kodiranje header-a, identifkator tipa sadržaja, i drugih tekstualnih ili struktuiranih vrednosti; - Redukuje količinu podataka koji se šalju kroz bežičnu mrežu. 2) Definiše svojstva za: - Veličina poruka između klijenta i servera; - Opcije protokola: Confirmed Push Facility, Push Facility, Session Suspend Facility, Acknowledgement headers; - Maksimalan broj neispunjenih zahteva (Maximum Outstanding Requests); - Poziv metoda (Method Invocation); * Suspendovanje i nastavljanje sesija: Omogućava
oslobađanje resursa bežične mreže, održavajući sesiju – koristi WTP: Dugotrajna komunikacija i konekcija; Ostvaruje koristi od čuvanja stanja sesije; Pouzdanost - koristi WDP ili WTLS: Aplikacije koje ne održ avaju stanje između sesija (Stateless applications); Nema troškova kreiranja i održavanja sesija; Nema pouzdanosti, kao ni troškova obezbeđenja pouzdanosti
- Aplikacioni sloj ISO/OSI modela
za bežične mreže. Okruženje za mobilne i bežične aplikacije nezavisno od bežične mreže. Pogodan za mobilne uređaje sa bežičnom konekcijom malog propusnog opsega. Primenjuje Internet/WWW programski model; Obezbeđuje visok stepen interoperabilnosti; Zasniva se na standardnim; Internet tehnologijama; Nezavistan od uređaja; Nezavistan od bežične mreže; Internacionalna podrška WML (Wireless Markup Language): Markup jezik za prikaz sadržaja; *WMLScript: Script jezik koji proširuje funkcionalnost WML-a; *WTA: API i arhitektura za pristup telefonskim servisima poput kontrole poziva, pristupa telefonskom imeniku, tekstualnim porukama, itd. (dostupan iz WML/WMLScript); * Podrška za sadržaj različitog formata:
standardni formati za razmenu sadržaja: vCard, vCalendar, Wireless Bitmap, WML, itd. *User Agent Profiling: Prilagođenje sadržaja karakteristikama mobilnog uređaja ; *Push: Isporuka sadržaja inicirana od strane servera (asinhrona notifikacija) tag-zasnovan jezik za microbrowser: Upravljanje ekranom (tekst, slike); - Unos podataka (tekst, selekcija iz listi, itd.); - Hyperlink-ovi & podrška za navigaciju između sadržaja . W3C XMLzasnovan jezik; Card i deck metafora: - Korisničke interakcije su podeljene u kartice (cards); - WML dokument se sastoji od više kartica grupisanih u deck; deck je sličan HTML stranici, kao jedinica za prenos sadržaja ; Prezentacija zavisi od karakteristika uređaja ; *Eksplicitna navigacija između kartica: - Hyperlink-ovi; - UI Event handling; - History mehanizam. *Upravlja stanjem i promenljivim koje karakterišu stanje : - Redukuje mrežni saobraćaj; - Rezultira u boljem keširanju Script jezik izveden iz JavaScript: - Proceduralna logika, petlje, uslovne naredbe, itd. - Optimizovan za uređaje sa malom količin om memorije i sporim CPU. *Integrisan sa WML: - Predstavlja mehanizam za proširenje WML-a; - Redukuje neophodan saobraćaj preko bežične mreže (kod na strani klijenta smanjuje neophodnu komunikaciju WAP klijenta i servera) *Bytecode-zasnovana virtuelna mašina: - Stack-oriented dizajn; Projektovan za jednostavnu implementaciju. *Kompajlira se na WAP Gateway-u: - Bolje iskorišćenje propusnog opsega mreže ; - Bolje iskorišćenje memorije/CPU mobilnog uređaja . *Primer korišćenja: Validacija unosa: provera formata, opsega vrednosti, itd. - Pirstup API-ju uređaja ili platforme; - Deo aplikacione logike se download-uje na uređaj. WTA Browser: Dodata su proširenja u standardni WML / WML Script browser ; Obezbeđuje dodatni API (WTAI – WTA Interface); *WTAI uključuje: Kontrolu poziva: pozivanje, odgovor na poziv, stavljanje poziva na čekanje, itd. ; Razmenu tekstualnih poruka Interfejs ka telefonskom imeniku Kontrolu indikatora Obradu događaja; WTAI je dostupan u okviru WML & WMLScript
Generalni, ograničeni skup formata sadržaja Obezbeđuje interoperabilnost Podrška za keširanje sadržaja ; *Formati: -Kodirani WML; -Kompajlirani (byte code) WMLScript Poslovne kartice: IMC vCard standard Kalendar: IMC vCalendar standard Slike: WBMP (Wireless BitMaP); -Indikacija da postoji raspoloživ servis (service indication); -Load-ovanje servisa (service loading) Isporuka sadržaja inicirana od strane servera . Ova funkcionalnost je uključena u WAP 1.2, ali je prošir ena u WAP 2.0. Aplikacije koje zahtevaju ažurne informacije su odlični kandidati za WAP push, poput: informacije o akcijama na berzi,
informacije o stanju u saobraćaju, ažuriranje vremena poletanja/sletanja, itd. Jednostavan razvoj aplikacije koji se zasniva na WAP push mehanizmu. XML zasnovan push access protocol se zasniva na HTTP Sakrivena je
kompleksnost bežične mreže Push Access Protocol: - Prenos sadržaja između servera (push initiatora) i push proxy gateway-a (PPG). -Koristi HTTP i XML; *Push OTA (Over The Air) Protocol: - Jednostavan i optimizovan; - Zasniva se na WSP - Omogućuje serveru da dobije informacije o klijentu koji je isporučio zahtev; Obezbeđuje personalizaciju sadržaja isporučenog klijentu na zahtev, zasnovanu na: -Karakteristikama uređaja, preferencama korisnika; -Drugim informacijama koje čine profil korisnika . U okviru WAP 2.0 zasnovan je na CC/PP (Composite Capabilities/Preference Profiles) definisanim od strane W3C: - RDF-
zasnovan format sadržaja; - Opisuje ―capability and profile‖ informacije . *Efikasan transport preko bežičnih linkova, keširanje, itd. - Adaptacija mobilnog Web sadržaja
karakteristikama mobilnog uređaja i pretraživača Wireless Universal Resource File (WURFL). Baza podataka mobilnih uređaja i open-source API (Java, PHP, Perl, Python, Ruby) koji omogućava
pristup bazi podataka mobilnih uređaja i karakteristikama mobilnih pretraživača. Wireless Abstraction Library (WALL) JSP tag-library (JSTL) zasnovan na WURFL. Omogućava univerzalni markup za bežične uređaje generišući WML, XHTML-MP i cHTML. DeviceAtlas – komercijalna baza mobilnih uređaja kojom se omogućava njihovo detektovanje WP-HTTP predstavlja profil HTTP
namenjen za bežično okruženje. Potpuno je interoperabilan sa HTTP/1.1 i omogućuje korišćenje HTTP request/response modela za interakciju između mobilnog/bežičnog uređaja i bežičnog servera. WAP 2.0 uključuje bežični profil TLS protokola, koji omogućuje sigurne transakcije. TLS profil uključuje kriptografske algoritme, formate za sertifikaciju, algoritme za formiranje
digitalnog potpisa, kao i mehanizme za nastavljanje sesije. Takođe postoji i podrška za TLS tunneling, čime se omogućuje end-to-end sigurnost na transportnom sloju. Podrška za TLS uklanja WAP sigurnosni propust (WAP gap) koji je postojao u WAP 1.x. WP-TCP je potpuno interoperabilan sa standardnim Internet TCP implementacijama, a u isto vreme optimizovan
za bežično okruženje. Ovom optimizacijom je postignuto smanjenje troškova u bežičnoj komunikaciji, u pogledu količine podataka koja se prenosi, veličine zauzete memorije i angažovanja CPU.
- Ovim je omogućeno WAP aplikaciji
koja se izvršava u okviru WAE da komunicira sa eksternim aplikacijama, čime je obezbeđeno da takve aplikacije prošire f unkcionalnost WAP aplikacija, slično principu plug -in u desktop browser-ima. - WAP 2.0 uključuje novi servis i interfejs za smeštanje podataka lokalno na mobilnom uređaju. Ovaj interfejs definiše funkcije za organizovanje, pris tup, smeštanje i pretraživanje podataka. Data synchronization. Za sinhronizaciju podataka, WAP 2.0 je usvojio rešenje zasnovano na SyncML. SyncML obezbeđuje XML -zasnovan protokol za sinhronizaciju podataka preko WSP i HTTP. MMS je okvir za razmenu multimedijalnih poruka (rich-content messaging), poput slika i video podataka. MMS može funkcionisati sa mehanizmom WAP Push i UAProf u
cilju slanja poruka koje su adaptirane specijalno za ciljni mobilni uređaj. MMS zasnovan na WAP PUSH. Uobičajeno koristi SMS i GPRS kao nosioce (bearers).
- WAP poseduje podršku i za stare WAP 1.x protokole. WAP obezbeđuje bežične profile standardnih Internet protokola za potpunu interoperabilnost sa Internet aplikacijama, bez potrebe za WAP gateway-em.
WAP omogućuje korisnicima pristup raznolikim sadržajima i servisima preko bežičnih mreža koristeći generalni korisnički interfejs, WAP browser, u okviru koga je sadržaj prezentovan korišćenjem standardn og markup jezika. WAP koristi XML kao osnovni jezik za WML i WML2
(XHTML), kojim se olakšava razvoj bežičnih Internet aplikacija i omogućuje transformisanje sadržaja iz jednog u drugi format korišćenjem XSLT. WAP
poseduje podršku za WTA, čime je omogućeno aplikacijama da pristupe mobinom uređaju i njegovim telefonskim funkcijama i razvoj integrisanih aplikacija koje uključuju govor i podatke. Korišćenjem UAProf, informacije isporučene mobilnom uređaju mogu biti u velikoj meri prilagođene karakteristikama uređaja i profilu korisnika. WAP funkcioniše sa svim glavnim bežičnim prenosnicima, uključujući CDPD, GSM, CDMA, TDMA, FLEX, i iDEN protokole. - Dostupnost – preko klasičnih i mobilnih telefona
Efikasan i poželjan korisnički interfejs dok je korisnikova pažnja usmerena na glavni posao. Jeftine za implementaciju, jer korisnici već imaju pristup telefonu. Nezavisne od uređaja. Ograničenje postojećih korisničkih interfejsa za mobilne telefone (mali ekran, unos preko numeričke tastature) Obično je glasovni interfejs samo jedan od mogućih interfejsa aplikacije i načina pristupa podacima i servisima Primenljive u interaktivnim call centrima. je markup jezik za razvoj glasovnih aplikacija. Opisuje glasovni interfejs za glasovni browser, omogućavajući audio ulaz i izlaz. Ciljevi u definisanju VoiceXML: XML zasnovan jezik. VoiceXML aplikacije su jednostavne za instalaciju i razmeštaj . Serverska (aplikaciona) logika i prezentaciona logika su potpuno razdvojene. VoiceXML aplikacije su nezavisne od platforme. - Osnovna razlika u odnosu na standardne Internet aplikacije je VoiceXML gateway
VoiceXML bira određeni telefonski broj, i nakon toga PSTN ili mobilna mreža počin ju komunikaciju sa gateway-om Gateway prosleđuje zahteve preko HTTP protokola Web serveru na kome se izvršavaju komponente aplikacione logike i koje generišu odgovor u obliku VoiceXML koji se šalje gateway -u. Glasovni browser na gateway-u interpretira VoiceXML dokument i njegov sadržaj saopštava korisniku korišćenjem prethodno snimljenih audio datoteka ili digitalizovanim govorom (generisanim na osnovu teksta). Ukoliko je neophodna interakcija od strane korisnika, ona se obavlja ili glasom ili pritiskom na taster numeričke tastature . Gateway implementira automatsko prepoznavanje govora (ASR – Authomatic Speech Recognition). Kada se korisnik konektuje na VoiceXML
gateway započinje sesija koja traje dok se novi VoiceXML dokumenti učitavaju i završava se na zahtev korisnika, VoiceXML dokumenta ili gateway-a. VoiceXML aplikacija se sastoji od jednog ili više dijaloga. Svaki dijalog predstavlja konverzaciju sa korisnikom. Dva tipa dijaloga: forme za unos i meniji za izbor. VoiceXML aplikacija predstavlja skup VoiceXML dokumenata koji imaju zajednički root dokument. Gramatike omogućuju
validaciju korisnikovog unosa, bilo da su predefinisane ili korisnički definisane. Događaji se koriste kada korisnik ne odgovori na pitanje, kad taj odgovor nije korektan, kada korisnik zahteva pomoć ili hoće da izađe iz aplikacije. Odgovarajućim elementom se specificira reakcija aplikacije na događaj. Linkovi i skriptovi (ECMA Script).
- WebKit vs. iOS/Android; The overall technology market is going to the Web When to make a native app: Games / Location / Sensors / Filesystem / Offline Radically new UEX; Download a big app; More? Nativ Mobile App – IOS: .app; Android: .apk; Windwos Phone: .xap (.appx). Nativ:
Web:
Pravljen za „Best Possible Experience“; Svi korsinici koji imaju web browser mogu da pristupe našoj aplikaciji, ali s ad tablet preko spore internet konekcije može biti problem jer će sporo da mu se učitava sadržaj. Korisnici su navikli na nativni look and feel, a kada razvijamo cross-platform app koja jeste univerzalna ail nikom prilagođena ! Mogu da posluže biltioteke ko je treba da postignu nativni look and feel, treba da liči na natvnu web aplikaciju. To je problem vezan za korisničko iskustvo. Nove web tehnologije idu na to da se obezbedi
ponasanje web applikacija sto više približi nativnim uz pomoć mobilnih web tehnologija. : 1) Ko su korisnici? 2)
Koja su dešavanja? 3) Kada će oni intergaovati? 4) Gde su korisnici? 5) Zašto bi koristila moju aplikaciju? 6) Kako oni koriste svoje mobilne?; Look & Feel; Design layout: Color, Text, Icon; Jedan prozor ili gomila prozora;
Tab Group sadrži puno prozora; Prozori sadrže poglede. Web Standardi: HTML, XHTML, WML, XHTML Basic, XHTML-MP, etc. XHTML (Extensible HyperText Markup Language) is a family of XML markup languages that extend HTML. Cascading Style Sheets (CSS) is a style sheet language. JavaScript (JS) is an open source programming language commonly implemented as part of a web browser in order to create enhanced user interfaces and dynamic websites. JavaScript, DHTML, Ajax. - Razni sajtovi daju Sugestije i savete kako da razvijete mobilnu web aplikaciju u formi najbolje prakse. JQuery mobile je redukovana aplikacija, svakako najpopularniji je. is the new standard for HTML – neka pravila su postavljena: Nove opcije bazirane na HTML, CSS, DOM i JavaScript . Redukovana potražnja za externim plug-ins (like Flash). Bolji handling grešaka; Više markup - a da zameni scripting; HTML5 bi trebalo da bude device independent. Development process bi trebalo da bude javno vidljiv. 1) , element za 2D crtanje: WebGL, SVG, 3D CSS transforms, and SMIL 2) The and , elements for media playback; 3) Podrška za local storage: - Application cache; localStorage & sessionStorage; Web SQL & Indexed database API (not part of HTML5); 4) Geolocation 5) CSS3 6) Novi semantički i contentspecific elementi: , , , , , , , , , , , , , , ; 7) Novia polja za unos i kontrole forme: calendar, date, time, email, tel, url, search, datalist, keygen... The HTML5 element is used to draw graphics via scripting (usually JavaScript). Canvas has several methods for drawing paths, boxes, circles, text, and adding images. - Deo aplikacije sačuvamo offline, specificiramo fajlove u Cach Manisestu koji se čuvaju, morali bi smo u mobilnoj web aplikaciji da definisemo na samomo početku HTML fajla da sve navedemo u manifest fajla i definišemo delove applikacije koji će biti delom n a uređaju, a koji delovi koji ne mogu da budu smešteni offline. NETWORK kad imamo mrežu zovi a FALLBACK ako nemamo mrežu pa ćemu onda alternativno tom fajlu da pristpuimo. Kad imamo mrežu iz aplikacjonog keša koristimo podatke i kada smo offline, tipa nema potrebe da korisnik stalno preuzima css, neka ga ima offline, nećemo ga menjati svaki dan. HTML5 application cache – znači da je web app kreširana i može da joj se pristupa bez internet konekcije. HTML5 App cache daje app 3 prednosti: 1) Offline browsing – korisnik je može koristiti kada je offline 2) Speed – keširani resursi se učitavaju brže nego kada se povlače sa mreže . 3) Reduced server load - browser će samo download-ovati updated/changed resurse sa servera. Cache Manifest file - text file koji kaže browser šta da kešira. 3 sections: CACHE MANIFEST, NETWORK, FALLBACK - watchPosition() - Returns the current position of the user and continues to return updated position as the user moves (like the GPS in a car). clearWatch() - Stops the watchPosition() method.
– (jednosmerna komunikacija) dozvolja web stranici da dobija update-ove sa server-a. Tipa imamo web aplikacije za
praćenje cena na berzi i server može da pošalje update našo app. Examples: Facebook/Twitter updates, stock price updates, news feeds, sport results, etc. (DS)- Ovo su kao background thread-ovi, imamo glavni UI tread koji obavlja interakciju sa korisnikom a bilo koja druga operacija koja pristupa storag-u ili neka vremenski zahtevne operacija, mora da radi u drugom tredu. Web worker is a JavaScript running in the background, without affecting the performance of the page. When executing scripts in an HTML page, the page becomes unresponsive until the script is finished. A web worker is a JavaScript that runs in the background, independently of other scripts, without affecting the performance of the page. You can continue to do whatever you want: clicking, selecting things, etc., while the web worker runs in the background. - Web je sinhroni mehanizam, request - response, kada se nesto desi na serveru treba web pretrazivac da dobije neke podatke o tome. Server sent events (jednosmerna komunikacija) – tipa imamo web aplikacije za praćenje cena na berzi i server može da pristupi našoj web aplikaciji. Drugi način da smo zadali za koje sve događaj e je zainteresovana app i kada se desi događa j od interesa, server šalje podatke o događaju mobilnoj web aplikaciji.
: 1) PhoneGap – Adobe (Cordova – Apache) – lako kreiranje app korišćenjem web tehnologija: HTML, CSS, JavaScript. 2) Titanium – Appcelerator; 3) Worklight – IBM. Enterprise
mobilne i bežične aplikacije i servisi zahtevaju pristup podacima nezavisno od bežične konekcije. Pametni klijent – nativna aplikacija. Poseduje skladište perzistentnih podataka (persistent data storage) . Neophodna sinhronizacija sa podacima na enterprise serverima. Poseduje aplikacionu logiku. Bogatiji korisnički interfejs (multikanalni/multimodalni) ... uz sva ograničenja mobilne i bežične platforme: ograničena snaga CPU, ograničen kapacitet RAM i trajne me morije, ograničena interakcija sa korisnikom (mali ekran, tastatura, stylus pen, itd. ); trajanje baterije, kašnjenje, propusni opseg i nepokrivenost bežične
mreže, itd. - Korisnički interfejs (može iznositi i do 80% koda) sofisticiran, sa svim elementima GUI: meniji, dugmići, text box, listbox, grafika, itd. Multimodalni i multikanalni – interakcija korisnika sa
smart klijentom na različite načine i preko različitih kanala za komunikaciju. Lokalno smeštanje podataka (data storage ). Podaci su dostupni kada su potrebni nezavisno do bežične konekcije . Unapređene performanse u odnosu na bežične Internet aplikacije . Sinhronizacija podataka sa podacima na serveru – deo logike za sinhronizaciju je na klijentu, a ostatak na sinhronizacionom serveru. Bežična razmena poruka (aplikacija-aplikacija sa store-and-forward mehanizmom). Mogućnost mikro plaćanja ili plaćanja unutar aplikacije (In App Purchase) dodatna je mogućnost na koju se nikako ne smije zaboraviti. Istraživanja su pokazala da se korisnici puno lakše i brže snalaze u aplikacijama nego s mobilnim verzijama web stranica.
Između klijenta i sinhronizacionog servera podaci se šalju u različitim formatima (XML zasnovan ili SyncML); Sinhronizaciona logika zna kako treba da obavi
sinhronizaciju podataka koji stignu od klijenta ili koji su upućeni klijentu (ažuriranje podataka, detekcija i rešavanje konflikata, itd.)
1)Analiza i specifikacija zahteva: Cilj aplikacije, Krajnji korisnici, Pristup podacima, Bežična konekcija i pristup , Slučajevi (scenariji) korišćenja; 2) Arhitektura i projektovanje: Korisnički interfejs , Aplikaciona logika. Podaci na pametnom klijentu, Integracija sa enterprise aplikacijama; 3) Implementacija i testiranje: Razvojni alati, okruženja i emulatori; 4) Instalacija (deployment); 5) Raznolikost mobilnih uređaja koje treba podržati. - Promena lokacije i znanje o trenutnoj lokaciji, Bežična mrežna konekcija i QOS (quality of service),
Ograničene karakteristike uređaja (memorija, CPU, ekran), Ograničen izvor napajanja (baterija), Podrška za različite korisničke interfejse, Velika raznolikost mobilnih platformi (uređaja, operativnih sistema, razvojnih okruženja, itd.). Aktivne transakcije inicirane od strane servera.
- Razvoj generičkog (opšteg)
korisničkog interfejsa ; Velika raznolikost mobilnih uređaja i mobilnih platformi tako da je neophodno omogućiti prilagođenje korisničkog interfejsa čak i u realnom vremenu. Laka izmena korisničkog interfejsa usled novih zahteva ; Neophodan pomeraj u paradigmi projektovanja korisničkog interfejsa sa PC desktop paradigme koju karakterišu ekran, miš, tastatura, na mobilnu paradigmu: mali ekran, mala tastatura ili keypad, stylus, glas, itd. (Multichannel ) aplikacije – definišu različite komunikacione kanale za ―komunikaciju korisnika sa mobilnom aplikacijom pri čemu je u jednom trenutku dostupan samo jedan tip kanala za komunikaciju. (Multimodal) – korisnički interfejs koji se prezentuje i omogućuje
interakciju korisnika sa mobilnom aplikacijom na različite načine (npr. glas, GUI, itd.), pri čemu korisnik može da izabere najpogodniji način inte rakcije u datom trenutku i odgovarajući način za interakciju - Mobilni korisnik se kreće, i tako menja lokaciju, uslove i okruženje u kome koristi uređaj i odgovarajuću mobilnu aplikaciju; Mobilni korisnik uglavnom nije fokusiran na aplikaciju, jer je koristi u pokretu radeći više drugih poslova istovremeno (vozi, šeta, razgleda okolinu, itd.); Mobilni korisnik često zahteva visok stepen interaktivnosti i brzi odziv aplikacije; Mobilni korisnik
menja aktivnosti često i/ili iznenadno, tipično to nisu aktivnosti/zadaci koji uključuju veliku količinu podataka i duge transakcije. Mob. korisnik želi da pristupa aplikaciji na svakom mestu u svakom trenutku preko
najpogodnijeg načina (moda) za interakciju; izbor omogućava f leksibilnost i upotrebljivost aplikacije.
- Vreme pristupa aplikaciji i vreme odziva; Jasan i efikasan korisnički interfejs .
Održavanje konzistentnosti između različitih korisničkih interfejsa i različitih tipova uređaja prilikom pristupa aplikaciji . Sposobnosti i ograničenja ljudskih čula (vida, sluha, dodira) . Adaptivnost na lokaciju korisnika i njegovo okruženje . Mogućnost da se definišu prioriteti elemenata korisničkog interfejsa ; Generički korisnički interfejs zbog velike raznolikosti mobilnih uređaja i platformi i različitih modova interakcije korisnika sa mobilnom aplikacijom. 1) Kanal za interakciju/komunikaciju i tipovi kanala medijum za razmenu poruka (komunikaciju) korisnika i postoje ulazni i izlazni kanali.
- Tastature i monitori (unos teksta i GUI prikaz); Štampani papir (izlaz u obliku teksta i grafike) ; Stylus (prepoznavanje pisanih znakova i unos dodirom); Touch-Screen (unos dodirom, multi-touch i GUI prikaz); Prepoznavanje gestova (gesture recognition); Mikrofon-zvučnik (unos na osnovu prepoznavanja govora i glasovni/zvučni odgovor);
Pomeranje uređaja (unos pomeranjem, tresenjem i postavljanjem uređaja u određenu poziciju); Odziv na osnovu dodira (Haptic feedback, vibration); Specijalni uređaji; Specijalna rukavica (dataglove ) - unos putem dodira. – Kanal je način pristupa interfejsu (oklovka, prst, govor, tastatura) i u jednom trenutku može se samo jedan koristiti. primer rezervacije karata. Ista aplikacija može biti prilagođena različitim kanalima. Neophodna je sinhronizacija između različitih kanala . Jedna vrsta interakcije samo preko jednog tipa uređaja: PC unos u formu preko tastaure, Mobilni – pitanje glasom, traženej usluge; WAP – unos preko touch ekrana podatke o željenom letu. Korisnik može izabrati najpogodniji način interakcije; Korisnik nije ograničen tokom interakcije aktivnos tima definisanim za određeni kanal. da obezbedi više načina za brzo dobijanje željenih informacija, obezbediti korisnički interfejs za ekspertske korisnike sa detaljnim podešavanjima a pomoć i uputstva za nove korisnike. Kod mulitmodelnih kanal ili način unosa može da se bira i da se kombinuje po korisnikovoj želji.
Model 1 je unos u tekst polje putem tastaure na pc, Model 2 je unos glasom preko mikrofona, Model 3 je unos preko virtuelne tastature koja
može da se uključi. Jedna mobilna aplikacija više modova prezentacije/interakcije.
Jedna aplikacija, jedna prezentacija
- Komunikacija između korisnika i aplikacije predstavlja interakciju koja se sastoji od poruka koje razmenjuju korisnik i aplikacija; Interakcija može biti atomična (unos teksta u textbox) ili kompozitna, sastavljena od više atomičnih interakcija u formi dijaloga; 1) Elementi interakcije: Kontrolne poruke – upravljaju tokom izvršenja aplikacije ; Prompt-ovi – aplikacija zahteva unos od strane korisnika; Odgovori – od strane korisnika ili aplikacije; 2) Tipovi interakcije: Komande – predefinisana lista tekstualnih komandi; Meniji – selekcija jedne ili više ponuđenih opcija; Forme – GUI kontrole i widget-i; Prirodni jezik; Touch gestovi; Kombinacija različitih tipova interakcije 3) Kontekst:
Sve informacije koje karakterišu korisnika, njegov mobilni uređaj, bežičnu mrežu i okruženje u kome se nalazi značajni za korišćenjr aplikacije - Hijerarhija View & View Group; Layout-i: LinearLayout; - RelativeLayout; - WebView; - ListView; GridView,...; Input control-e: Button, Text field, Checkbox, RadioButton, Picker, Spinner,...; Gestovi: Touch, Long press, Swipe/drag, Long press drag, Double touch, Double touch drag, Pinch open, Pinch close,...; Klase i interfejsi: Android GestureDetector class; Activity/View metod onTouchEvent (MotionEvent ev); GestureDetector.OnGestureListener, .OnDoubleTapListener Zahtevi multimodalne aplikacije za navigaciju: da omogući korisniku da dobije instrukcije za navigaciju od sistema korišćenjem PSTN t elefonskog poziva, browser HTML interfejsa, i WAP interfejsa da obezbedi načine za brzo dobijanje navigacionih instrukcija nezavisno od korisničkog interfejsa za eksperts ke korisnike da obezbedi pomoć i uputstva za nove korisnike . Tri tipa dijaloga korisnika i aplikacije i njihova kombinacija: - Zasnovan na formama i unosu u forme; - Zasnovan na govornom jeziku; - Touch gestovi; - Kombinacija unosa u forme, touch gestova i govornog jezikaka.
široko implementiran u desktop klijent aplikacijama i Web aplikacijama sa tankim klijentom, gde postoji jedan tip kontrolera i jedan tip pogleda; u mobilnim aplikacijama više modova
interakcije zahteva više pogleda i više kontrolera za svaki od tih pogleda (održavanje konzistentnosti između različitih pogleda i kontrolera) . Korisniku mora biti omogućeno da promeni kanal interakcije u svakom trenutku tokom interakcije sa aplikacijom i bez prekida da nastavi sa interakcijom po novom kanalu deli aplikaciju u tri slabo spregnuta agenta, za svaku od aktivnosti (zadataka): apstrakcija podataka i funkcija, prezentacija, i kontrola interakcije između njih ; Pogodniji za projektovanje korisničkog interfejsa mobilnih aplikacija - Arhitekturni obrazac GUI u Windows OS; Podržava event-driven programiranje i zasnovan na Presentation; Model obrascu Martina Fowler-a; Windows Presentation Foundation (WPF) i Silverlig ht na .NET platformi korišćenjem XAML i .NET jezika ; Jasno odvajanje GUI koji je definisan XAML ili GUI kodom, od programske (poslovne) logike. - Korišćenje tehnika za transkodiranje/ transformaciju za
proširenje PAC obrasca u razvoju korisničkog interfejsa mobilne aplikacije (PAC-TG)
- DBMS – obezbeđuje smeštanje
podataka, mehanizme za pristup i alate za administriranje šemom podataka, pristupom i samim podacima. Tipovi perzistentnih podataka: 1) Flat-file baze podataka kao skup slogova iste vrste: Pogodne za jednostavne mobilne aplikacije koje zahtevaju osnovne mehanizme za
perzistenciju podataka sa ograničenim mogućnostima u pogledu složenih tipova podataka, kao i pretraživanja i smeštanja velike količine podataka. Ne obezbeđuju optimizaciju i poboljšanje performansi, povezivanje i spojeve podataka u različitim datotekama i normalizaciju) poput one u RDBMS). U cilju poboljšanja performansi moguće je određena polja sloga definisati kao ključ, koji se indeksira i po kome je pretraživanje brže . Baze podataka (RDBMS, ORDBMS, OODBMS, XDBMS) - Baze podataka su osnovna komponenta enterprise aplikacija i aplikacija e-poslovanja. Sa razvojem aplikacija mposlovanja, baze podataka postaju neizostavne i na mobilnim aplikacijama
(pametnim klijentima) i predstavljaju način da enterprise podaci izađu iz okvira kompanije. Perzistentni podaci ili real- time pristup preko bežične mreže: - Nedostupna ili nepouzdana bežična mreža; - Nedovoljan propusni opseg; - Podaci su uglavnom statički; - Trajanje baterije je ograničeno . Hibridno rešenje – koristiti skladište perzistentnih podataka za pristup većini podataka neophodnih u mobilnoj aplikaciji, a putem bežičnog Interneta pristupati podacima koji su dinamički ili zavisni od drugih aplikacija. - Trajanje baterija uvek ograničenje, pristup bazi može biti kompleksan, možemo da upisujemo veliku količinu podataka i da č itamo... Mora u bacground nit-i da se to izvršava, neće da nam da iz main UI thread-a. Problem je kada koristimo podatke na moblinom uredjaju, podaci izlaze iz okvira kompanije… Kod mobile bussness app pojedinac uzma podatke iz kompanije da obavi posao na terenu, on na terenu priklupjla nove podatke i upisuje sledece, tipa da je antiteroristicke jedinice... Ne postoji koznistentnost podataka na mobilnim uređajima svih na terenu i lokalnog storage... Neka obaveza je koristiti sigurnosne mehanizme, kripovanje podataka i u bazi i na uređajima. Engine baze podataka i mehanizmi i tehnike koje se koriste za smeštanje podataka: velika količina podataka, brz pristup podacima, indeksiranje, referencijalni integritet, transakcije, itd. Podrška u razvojnim i administratorskim alatima: Treba da obezbedi efikasniji razvoj i instaliranje (deployment) mobilne aplikacije Fleksibilna sinhronizacija: Poseduje integrisani sloj za sinhronizaciju. Mali zahtevi za resursima; Podrška za različite mobilne uređaje, operativne sisteme i platforme; Podrška za standarde: SQL, ODBC, JDBC, itd. Sigurnost: Zaštita i kriptovanje podataka koji se prenose tokom
sinhronizacije, kao i podataka koji su smešteni na uređaju ukoliko je on izgubljen ili ukraden. (DS) - Evolucija u računarstvu prati evoluciju živog sveta, imamo osobine koje su sada već naprednije, napredniji vidovi
života, flat file baze podataka u prvim pametnim telefonima i pocket pc koji su bili digitalni asiistenti, sad nam vec nije problem napraviti storage,
imamo komercialne dbms'-ove, imamo sqlLite, nema podtrebe da stavljamo celokupan dmbs na uredjaj jer on nije slab ali se pojavljuju neki novi uredjaji, tipa koji su mali i mogu da prikupljaju podatke iz senzora u stanu na pr…
Ovo se radi ako se app prilgođava za feature phone, proste tabele, skup slogova sa atributima i njihovim vrednostima. Sadrži i aplikacije i korisničke podatke . Dve vrste baza
podataka: baza podataka slogova (record) za smeštanje aplikacionih podataka i resursa (aplikacionog koda i objekata korisničkog interfejsa) ; Baza podataka slogova sadrži zaglavlje baze podataka (header) koji sadrži opis baze podataka (ime, atribute, datume kreiranje/modifikacije),
AppInfo i SortInfo blokove, kao i listu slogova (Record list) koji sadrži ulaz za svaki slog (ID i atribute sloga). Pristup podacima preko PalmOS API Konverzija iz i u PalmOS db format. Sinhronizacija blokova podataka
korišćenjem HotSync - Baza podataka u okviru object store (u okviru koga je i file system i system registry) - CEDB
Podržava baze podataka smeštene na mobilnom uređaju ili na eksternim memorijama (memorijskim karticama) Pristup putem odgovarajućeg API koji nije kompatibilan sa Win32 database API; Sinhronizacija korišćenjem ActiveSync; embedded database (EDB) proširenje CEDB koji uključuje ; Transakcije; Korišćenje šeme za predstavljanje strukture baze podataka ; Pristup od strane više korisnika; Sortiranje, indeksiranje, itd. Poboljšane performanse posebno sa velikim bazama podataka Relaciona baza podataka. Pristup preko podskupa SQL i C++ API. Podrška za transakcije, ali bez mogućnosti spoja tabela. Symbian OS Connect
RMS je skup Java klasa za smeštanje i pristup jednostavnim skupovima podataka organizovanim u slogove. Svaki RecordStore predstavlja kolekciju slogova koji su smešteni u trajnu memoriju i koji predstavljaju kolekciju bajtova. MIDlet suite – grupa MIDlet- a koji pristupaju privatnim ResordStore uz mogućnost pristupa deljenim RecordStore Svaki RecordStore ima jedinstveno ime i svakom slogu dodeljuje jedinstveni ID. API za operacije open, close, insert, delete, move, itd. nad slogovima. Neophodno implementirati sopstvene mehanizme za sinhronizaciju. – Android fajl sistem čine 4 osnovna pristupa za smeštanje i upravljanje podacima. 1) Shared preferences (deljena podešavanja): Uglavnom služe za smeštanje UI podešavanja u obliku para ključ - vrednost 2) Fajlovi: Najlakši, ali ne i najbolji način za trajno čuvanje podataka 3) SQLite baza podataka: Najlakši i najupotrebljiviji način za čuvanje
struktuiranih podataka, svaka aplikacija može da kreira svoju bazu podataka nad kojom ima potpunu kontrolu. 4) Provajderi sadržaja (Content Providers): Omogućavaju pristup
centralnim skladištima podataka u cilju deljenja podataka između više aplikacija i pristup ovim podacima predstavljenim u tabelarnom obliku. – ne mora da se hard corijau sql upite, upite obezbediti kroz metode, a metode se pozivaju izvšenjem upita. Share Preference - jer storage na trajnjoj memoriji, sa osnovnom strukturukom kljuc - vrednost, kao hash tabela, koristi se za čuvanje setovanje aplikacija, izbora koje je koristnik napravio, interfejs kako ga je prošli put podesio… Android je zapravo Linux core, imamo Linux file sistem. Falovi nemaju strkutru osim ako je mi sami ne definisemo. Provajderei sadrzaja – je SQL baza podataka kreirana kako mi ne bi morali da kreiramo našu bazu podataka, nalazi se u folderu koji mi ne vdimo, to su neki pod folderi, možemo da vidimo na elumatoru tu bazu podataka a na uredjaju samo ako ga rootujemo. Sa strane softver developera nije bitno šta je ispod conten prvajdera, kada želimo da našu sql bazu kreiramo, wrap-ujemo je i onda će biti dosputpna preko conten provajeder api-ja. - Osnovni pristupi za smeštanje i upravljanje podatacima: 1) Core Data - Objektno-orijentisani framework koji
omogućava definisanje modela podataka aplikacije i upravljanje životnim ciklusom objekata i grafa objekata. 2) SQLite baza podataka - Koristi se za
sladištanje podataka u relacionoj bazi podataka i pristup korišćenjem proceduralnog SQL API 3) Property List – Uglavnom se koristi za čuvanje specifičnih podešavanja aplikacije u obliku imenovanih vrednosti ili listi vrednosti 4) Arhiviranje – smeštanje kompleksnih objekata u datoteku . - Zanimljiv mehanizam, nešto kao content provajder, mogućnost da mi smestimo naše objekte iz aplikacije trajno na uređaju, mi ne moramo da budemo upoznati sta je u osnovi Core Data, to može da bude i Sql lite. Nije dovoljno wrap-ovanje Core data mehanizmom, to je napredniji mehanizam, jer za SQQLLite-u pristupa preko standardnih sql upita, a ovde imamo oslbodađanje tog low level programiranja, pretražujemo objekte bez poznavanja mehanizma. IsolatedStorage: Omogućava prigodan način za skladištenje korisničkih podataka u obliku key -value parova unutar isolated storage datoteke IsolatedStorageSettings obezbeđuje smeštanje ključ-vrednost parova u isolated storage-u. IsolatedStorageFile & IsolatedStorageFileStream – omogućavaju pristup isolated storage prostoru koji sadrži datoteke i direktorijume. Windows Phone 8 koristi StorageFolder i StreamReader klase. Lokalna baza podataka za Windows Phone
Smeštanje podataka u lokalnu relacionu bazu podataka korišćenjem LINQ to SQL.
(DS) - je google za smestanje podataka na cloud od strane mobilnih apliakcija, znaci ne na SD nego na cloud. Google Cloud Storage nudi developer-ima i IT organizaci jama izdržljiv i uvek dostupan objektni storage. Google je napravio 3 jednostavne opcije produkta kako bi pomogao korisnici u unapređenju performani ap likacija, ali zadržavanjem niskih rashoda. created three simple product options to help you improve the performance of your applications while keeping
your costs low, ta tri produkta koriste isti API, omogućavajući jednostavan i konzistentan pristup. - smeštanje podataka i deljenje podoataka na cloudu, iako su mobilni uređaji sve moćniji, imaju opciju da se sve opcije čuvaju na cloudu, registrovane na cloud servisima. IOS 8 promovisan Swift koji je pojednostavljenje dosadasnjeg programiranja, ide se na sirenje populacije IOS programera. (DS) - Prednost većih komercilanih proizvođača DBS rešenja je ta j što imaju kompletan portoflio softvera, imaju i odgovarajuci backend, tj midlewere server, koji treba da obezbedi odgovarajuće rešenje. Imamo Oracle lite, Oracle baze podataka kompanijie ali imamo i Midlewere podršku. Ako govorimo o IBM ili nekoj drugoj gigantski velikoj kompaniji, znamo da su podaci komanije njena najveća vrednost, oni ne sme ju da budu nadgledani, ostećeni, uništeni ili nedozvoljeno pročitani. Bitno je da kompanija ima ažurne podatke na serveru, da radnik na terenu genereiš e iste te podatke, tj SVI moraju da imaju ažurne podatke, od strane svih ranika. Imali smo fiksnu mrežu, bežičnu mrežu, gde želimo da korisnik često bude konektovan, nešto što korstik beleži na terenu čeka se prilika da ima dobru i pouzdanu konekciju da on to postavi na server. (DS) – 1) Bring Your Own Device (BYOD): Mobile Application Management (MAM) 2) Chose Your Own Device (CYOD) - Mobile Device Management & Security (MDM) policy. Treba se raditi sa velikom količinom podataka, ali ako radimo na mobilnoj app za neku kopaniju moramo biti upoznati sa problemima i reš enjima. Starija metoda „Chose your own device“ – mobilni uređaji radnicka nisu imali neke mogućnosti, instalaijce, deinstalcije... Kao oni uređaji koji nose referenti prodaje po dragstorima, U vojsci, policiji, i u svim specijalnim
službama mora da se koriste specijalizovani uređaji… Sada više preovladava nova metoda „Bring Your Own Devie“ – kako radnik ne bi imao kod sebe više uređaja i kako bi mogao da koristi jedan i poslovno i privatno. U sam uređaj može da bude ugrađen softver gde su podaci i aplikacije kompanije, tako da kompanija koja ovaj način implementira kao svoju mobilnu strategiju mora da obezbedi kripovanje podataka na
uređaju, npr. kriptovanje podataka preko SSL-a. Apliakcija da se disabluje kada korisnik više nije u vlasništu, ali MORA da se obezbedi da može da se upravlja remotely uređajem. Ova metoda se može primenjivati kod rad na terenu, eventory menagment, tu korsinici mogu korsitit svoje uređ aje. - Microsft Intune - obezbediti samo uređaj, remote controla, sve zavisi koliko su podaci dinamičn i, možemo danas imati od 100tak radnika na terenu i on ce podatke suhronizovati kada se vrati u firmu. U Distribuciji, vodovodu, i tim neki Utility kompanijiama, trebalo bi da može da zaposleni mogu istog momenta da šalje informacije, trebalo bi da ima real time konekciju, da centrala š to pre ima prave informacije o zbivanjima na terena. Nešto slično je Izrealska kompanija app princip da korisnici koji su u saobraćaju mogu da registruju stanje na putevima i to šalju centrali, a svi korisnici su i generaltori i konzumenti podataka. - Ključni elementi mobilnih enterprise aplikacija su sinhronizacija podataka i sigurnost. Mobilna aplikacija mora biti osvežena sa relevantnim i ažurnim podacima
sa servera kompanije, a takođe i ažurirani podaci sa mobilnog uređaja treba da budu preneti na server. Ograničenje u prustupu podacima je određeno tipom posla koji obavlja mobilni zaposleni i politikom sigurnosti kompanije. Sinhronizacija podataka mora biti sigurna, pošto su podaci jedna od najvažnijih svojina kompanije. - Bitno je da ovakva platforma treba da obezbedi razvoj aplikacija, generalni princip koji se favorizuje je da se razvijaju hibridbe aplikacije, dosta se zanisvaju na Cordobi, lako se update-uju, velika preporuka za velike apliakcije jeste hibridna platofrma. Sihronizacioni servisi koji su jako bitni, autentifickaciju, kripovanje, sigurnost mobilnih apkikacija i servera, Middlewere servisi, platofrme koje su ugavnom ugrađene u njihove Middlewere servere, aplikacioni centar, run time podrška, serverska podrška, to je taj Middlewere koji mož e da obezbedi servise, psuh notifikacije, imamo pratece elemente, sa dobrom podrškom i za backend. Pega AMP (Application Mobility Platform) Antenna (part of Pegasystems); IBM MobileFirst Platform; Kony KonyOne; SAP Mobile Platform; Spring Mobile Solutions.
predstavlja bidirekcionu razmenu i transformaciju
podataka između dva odvojena skladišta podataka Predstavlja jedan od elemenata integracije enterprise aplikacija. Sinhronizacijom podataka se smanjuje potreba za neprekidnim prenosom podataka preko spore i
nepouzdane bežične mreže, tako što se deo podataka smešta lokalno na mobilnom klijentu i periodično sinhronizuje sa podacima na serveru u pogodnim trenucima. Takođe omogućuje distribuiranje podataka, a samim tim i aplikacione logike na mobilne uređaje, smanjujući opterećenje servera i veliki broj zahteva od strane mobilnih klijenata. Bez sinhronizacije podaci na mobilnom klijentu bi vrlo brzo bili zastareli, a
takođe, ukoliko se mobilna aplikacija koristi za prikupljanje podataka sa terena, podaci na serveru bi bili neažurni. Ostali oblici sinhronizacije podataka: (Personal Information Management) podaci: kalendar, lista obaveza, kontakti, e-mail; - Aplikacije i datoteke – samo jednosmerna od servera do klijenta. - Sve promene koje su nastala na severu treba dase propagiraju ka kilijentu/ma. Sihronizacioni serveri su centralana skladišta podataka, jedan sloj na mobilnom urejdaju je sihronizacioni sloj. Ovo treba da bude neka vrsta wrap-erea, komunikacija ide preko mobiln og sihronzacionog sloja na uređ aju i sihronizaionog servera, moraćemo u budćnosti dosta da razmišljamo o sihronizaciji.
- Prilikom sinhronizacije svaka
promena nad podacima na mobilnom uređaju prenosi se serverskoj bazi podataka, a svaka promena na serverskoj bazi podataka prenosi se
mobilnom klijentu i njegovoj lokalnoj bazi podataka. Na taj način su podaci na klijentu i serveru sinhronizovani. sa pamtenim klijentom. Veliki broj mobilnih operativnih sistema, platformi i mobilnih
baza podataka, veliki broj različitih bežičnih i žičanih mreža, kao i različite enterprise aplikacije i izvori podataka. : Komunicira sa sinhronizacionim serverom; Treba da ima minimalan uticaj na klijentsku
aplikaciju, i da obezbeđuje jednostavan i efikasan API za upravljanje procesom sinhrnoizacije. *Sinhronizacioni server predstavlja middleware koji sadrži sinhronizacionu logiku : Njegove funkcije uključuju: definisanje
podskupa podataka, detekcija i rešavanje konflikata u vrednostima podataka, transformacija podataka, kompresija podataka i sigurnost. Funkcioniše u oba smera (bidirekciono) . Sadrži i sloj za sinhronizaciju sa enterprise aplikacijama i izvorima podataka (RDBMS, CRM, ERP, XML izvori podataka itd.). Svaka moblilna aplikacija ima data store, pretplaćuje se na promene na data serveru i ažurira se u lokalnu bazu podataka. Proces sihronizacije podataka, obuhvata sync server, preko Enterprise Adapter promene se propagiraju u oba smera, šalje se svim mobilnim aplikacijama. Model sinhronizacije podataka (publish/subscribe)
Glavnu kopija podataka održava Izdavač koji definiše koje tabele, kao i podskupovi tabela su dostupni za izdavanje (publikacije) Mobilni klijenti zainteresovani za pristup ovim podacima nazivaju se Pretplatnici koji definišu podatke koje žele da imaju u obliku lokalne kopije . Različiti podskupovi podataka se publikuju različitim Klijentima. Sinhronizacioni
klijent i server održavaju konzistentnim glavnu kopiju podataka i sve njene lokalne kopije. 1.Sinhronicioni proces može biti iniciran od strane korisnika aplikacije ili programiran u okviru aplikacije; 2. Uspostavlja se konekcija sa sinhronizacionim serverom, autentifikuje korisnik i započinje slanje podataka za sinhronizaciju ; 3.Sinhronizacioni server koristi sinhronizacionu logiku da odredi da li podaci treba da budu transformisani pre slanja do enterprise izvora podataka. 4. Enterprise adapter obezbeđuje integraciju sa enterprise izvorom podataka (ODBC, JDBC, ADO.NET, itd.); 5.Korišćenjem enterprise adaptera sinhronizacioni
server vrši autentikaciju korisnika u pristupu enterprise izvoru podataka, nakon čega sinhronizacioni server ažurira izvor podataka promenama dobijenim sa klijenta. Ukoliko postoje konflikti u podacima koji se
ažuriraju, server preduzima odgovarajuće akcije za rešavanje konflikata . 6. Relevantne promene na serveru od poslednje sinhronizacije se pripremaju za slanje klijentu; 7. Sinhronizacioni server preuzima promene i obavlja neophodne transformacije, kao i kompresiju i kriptovanje podataka; 8.
Podatke upućene klijentu preuzima inhronizacioni klijent koji ažurira lokalnu bazu podataka.
– Modovi sinhronizacije: Snapshot – slanje nove verzije svih podataka (npr. cela tabela); Samo promene od poslednje sinhronizacije. Metode za slanje podataka u procesu sinhronizacije: Sinhronizacija zasnovana na sesijama; Sinhronizacija zasnovana na porukama.
- Nece se slati snapshot, tj cela tabela ako je samo nešto malo promenjeno, slaće se samo promenjeni slogovi, neophodno je definisati koji će to biti, napraviti neki cross - platform mehanizam sihronizacije, jer ako nam treba nešto da koristimo što nije vezano za ciljnu platformu, najbolje da razmišljamo koje web tehnologije bi nam odgovarale, za komercijalna rešenja nemamo izbora, to je to što imamo, Middleware komponete koje imamo u platformi određene kompanije, imamo mobile server koji treba da po principu poruke razmeni elemente, promene se sihronizuju u oba smera. Internet web tehnolgoija, koja je sve opšte prisutna je XML, uvek je tu kad a razmišljamo da treba da bude platformski nezavisno... Definisanje podskupa podataka i particionisanje podataka; Kompresija podataka Transformacija podataka Integritet transakcija; Detekcija konflikata; Rešavanje konflikata; Podrška za različite mrežne protokole (bežične i žičane); Višestruki mehanizmi za prenos podataka ; Integracija sa enterprise izvorima podataka i aplikacijama; Sigurnost
Sinhronizacioni softverski alati ugrađeni u mobilne operativne sisteme (Windows Mobile ActiveSync, PalmOS HotSync, Symbian OS Connect, itd.). Komercijalna rešenja za sinhronizaciju: Obično ih implementiraju kompanije koje razvijaju i mobilne baze podataka (Sybase MobiLink i SQL Remote, IBM DB2 Everyplace Sync Server, Oracle Database Mobile Server 11g, MS SQL Server Mobile/Compact Edition, itd.) i vezana su za mobilne baze podataka te kompanije Drugi proizvođači uglavnom razvijaju softver za sinhronizaciju PIM, datoteka i aplikacija, a eventualno i sinhronizaciju mobilnih baza podataka: Nokia Intellisync Mobile Suite. - XML zasnovana specifikacija; Open Mobile Alliance - Data Synchronization Working Group; SyncML Specification; Samsung, Motorola, Nokia, Sony Ericsson, LG, IBM i Siemens AG uključuju SyncML u svoje proizvode . Platformski nezavistan standard za sinhronizaciju informacija. Uglavnom se koristi za sinhronizaciju (Personal Information Management) podataka i datoteka, ali sve više postoje rešenja za sinhronizaciju enterprise podataka.
(DS) - možda neštro što nam nije u prvom planu jer obično razvijamo aplikacije za ljude koji i ne znamo. Postoje kompanije koje sve više imaju svoje mobilne strategije i kompanije koje se bave neki aspektom poslovanja koji iziskuje rad na terenu i imaju sve više potreba da imaju radnike na terenu i da prikupljene podatke pošalju centrali... To su aplikacije koje mi ne vidimo jer se nalaze ili u okviru kompanije ili je to lični softvere kompanije koja ga rezvija, Ili je to paralelni
playstore... kada razvijamo takve app Razmišljamo mnogo više o sigurnosti samiih podataka, kako će biti kripovani, Sihronizovani... Kad nam trebaju ažurni podaci u svakom minutu, kada u svakih 15 sekundi, a za tako nešto ne možemo da imamo lokalnu bazu, ali ako se radi neka kolaboracija, recimo online šah, kada nisu strogo vezani za vreme, Mobilne Enterprise aplikcije su mobilne napredne aplikacije. - Location Based Services – LBS; Lokacija
mobilnih korisnika je jedna od osnovnih dimenzija mobilnog računarstva ; Pokretač ovih servisa je bila potreba lociranja mobilnih korisnika koji su uputili urgentne pozive za pomoć. U isto vreme GPS prijemnici su postali jeftiniji i zahtevali su manju potrošnju. Lokaciono zasnovani servisi danas predstavljaju jednu od osnovnih karakteristika budućih m obilnih aplikacija i servisa. Neophodna je podrška mobilne mreže za obezbeđenje preciznih servisa pozicioniranja problem privatnosti. Neophodna je podrška od strane mobilnih uređaja (hardver/softver) da bi se odredila njegova lokacija na osnovu samog uređaja problem potrošnje snage i cene. - Konvergencija informacionih i komunikacionih tehnologija: Internet/Web-a, žičanih i bežičnih komunikacija, mobilnog
pozicioniranja i GIS-a uticala je na nastanak nove klase mobilnih informacionih servisa i aplikacija, nazvanih lokaciono zasnovani servisi (LBS – Location Based Service). Lokaciono zasnovani servisi su mobilni informacioni servisi koji se putem bežičnog/žičanog Web -a isporučuju korisniku informaciju u zavisnosti od njegove lokacije, ili lokacija mobilnih i/ili stacionarnih objekata od njegovog interesa. Osnovne karakteristike lokaciono zasnovanih servisa su raspoloživost i dostupnost na svakom mestu, u svakom trenutku, kad god je to potrebno, putem mobilnih
(mobilni telefon, PDA, PocketPC, laptop i ručni kompjuteri) ili stacionarnih kompjuterskih uređaja (personalni računari, radne stanice, WebTV). - *Urgentni servis: Lociranje lokacije urgentnog događaja i upućivanje pomoćia; *Informacije o saobraćaju: Detektovanje i izbegavanje zastoja u saobraćaju ; *Navigacija: Rutiranje i praćenje korisnika od mesta A do B; *Upravljanje radom i servisima na terenu (Field Service Management): Nalaženje i upućivanje najbližeg osoblja na terenu; *Upravljanje flotom vozila (Fleet Management):
Lociranje i praćenje vozila u floti, procena vremena isporuke i transporta ljudi i tereta; *Praćenje robe: Lociranj e i praćenje kretanja robe ; *Bežično oglašavanje i reklamiranje: Reklamiranje u zavisnosti od lokacije (npr. priliko prolaska pored tržnog centra); *Servisi nalaženja: Pronalaženje i lociranje servisa (npr. restorana, benzinske stanice, prijatelja, itd) u određenom opsegu ili rastojanju; *Mapiranje: Prikaz trenutne lokacije na mapi (često u kombinaciji sa servisima nalaženja) Informacije o vremenu; Prognoza vremena zasnovana na lokaciji: Lokaciono zasnovani servisi. Primena GPS-a u komercijalne i naučne svrhe: navigacija na moru, zemlji i u vazduhu,
mapiranju zemljišta, pravljenju karata, određivanju tačnog vremena, otkrivanju zemljotresa.
Pozicioniranje predstavlja određivanje lokacije objekta, tačnije njegove pozicije u prostoru i vremenu u odnosu na određeni prostorni i vremenski referentni sistem; Postoji veliki broj tehnoloških rešenja za mobilno pozicioniranje koja se mogu podeliti u četiri grupe: 1) pozicioniranje zasnovano na mobilnom uređaju (GPS) – (terminal based positioning), 2) pozicioniranje zasnovano na mobilnoj
komunikacionoj (celularnoj) mreži (network based positioning), 3) hibridno pozicioniranje zasnovano i na mobilnom uređaju i na mobilnoj (celularnoj) mreži, 4) pozicioniranje na osnovu posebno razvijene infrastrukture (obično u zatvorenim prostorima) – Badge, Radar….
- Kontrolisan od Ministarstva Odbrane SAD, sistem započet 1970 -ih, potpuno operativan od 1995. 3 segmenta: Svemirski segment; Upravljački
segment, Korisnički segment. - sateliti; Upravljački (kontrolni) segment; Korisnički segment: svi GPS korisnici, vojni i civilni, sa odgovarajućim GPS prijemnicima. Svemirski segment: Kompletna konstelacija Navstar GPS satelita u Zemljinim orbitama (24 operativna, 7 rezervna) U 6 orbita (po 4 satelita u svakoj) nagnutih 55° u odnosu na Ekvatorsku ravan na udaljenosti od 20200 km , koji šalju radio signal na
površinu Zemlje. GPS prijemnici na osnovu ovih radio signala mogu da odrede svoju tačnu poziciju - nadmorsku visinu, geografsku šir inu i geografsku dužinu - na bilo kom mestu na planeti danju i noću, pri svim vremenskim uslovima. Jedan obilazak satelita oko Zemlje po orbiti traje 11 časova 58 minuta (brzina oko 11000 km/h - Prečnik orbita je oko četiri puta veći od prečnika Zemlje ). Napajaju se solarnom energijom, Planiran životni vek iznosi 7.5 godina. Proizvođač: Rockwell International. U
početku je korišćen isključivo u vojne svrhe da bi kasnije bio besplatno stavljen na raspolaganje svima kao javno dobro. Godišnji troškovi održavanja sistema su oko 750 miliona američkih dolara . - Ovaj segment se nalazi na površini Zemlje i zadužen je za nadgledanje GPS satelita, proveru njihove funkcionalnosti i tačne
pozicije u svemiru. Sastoji se od: Glavne upravljačke stanice koja šalje satelitima korekcije njihovih pozicionih podataka ( ), kao i
korekciju sata na satelitu. Sateliti prihvataju ove korekcije i ažuriraju signal koji se šalje GPS prijemnicima. Nalazi se u Flacon AFB Colorado Springs, Colorado, 5 monitoring stanica koje prate satelite i ažuriraju podatke o njihovoj lokaciji i vremenu koje šalju glavnoj upravljačkoj stanici . - GPS prijemnik; Prijemnici obično zahtevaju liniju vidljivosti do 4 satelita; komponente GPS prijemnika su antena pod ešena na frekvenciju GPS satelita, kristalni oscilator koji služi kao časovnik i mikroprocesor koji obrađuje signale. Prijemnici se često opisuju prema tome koliko kanala imaju. Svaki kanal prati po jedan satelit. Stariji modeli
su imali četiri do pet kanala, a današnji uglavnom 12 do 20 kanala. Orbitalni podaci o satelitima se prenose relativno sporo, obično u trajanju od 20sec – 45sec do dobijanja prvih pozicionih informacija; Vojne aplikacije: Koriste L1 & L2 kanale; Civilne aplikacije: Koriste L1 kanal; Lociranje, navigacija, praćenje,… Frekvencije signala nosioca su: L1 (1.575,42 MHz): nosilac za kombinaciju navigacione poruke, C/A koda i Pkoda. L2 (1.227,60 MHz): nosilac za P-kod, plus novi L2C kod Blok IIR-M generacije i novijih satelita. L3 (1.381,0 5 MHz): nosilac korišćen za vojni program detekcije lansiranja projektila i nuklearnih detonacija. L4 (1.379,913 MHz): nosilac koji se razmatra za dodatne jonosferske
ispravke. L5 (1.176,45 MHz): nosilac predložen za dodatne primene, prva primena se prognozira na satelitima koji će bii lansirani 2008. godine . je oscilator koji koristi mehaničku rezonancu vibrirajućeg kristala piezoelektričnog materijala da stvori električni signal sa vrlo preciznom frekvencijom. Ova frekvencija se obično koristi za praćenje vremena (kao u kvarcnim ručnim satovima), da obezbedi stabilan signal sata za digitalna integrisana kola, kao i da stabilizuje frekvencije za radio predajnike i prijemnike. Kvarcni kristali su proizvedeni za frekvencije od nekoliko desetina kiloherca do nekoliko desetina megaherca. Više od dve
milijarde kristala se godišnje proizvede. Najviše se koristi za potrošačke uređaje kao što su ručni satovi, satovi, radio aparati, računari i mobilni telefoni. Kvarcni kristali se takođe mogu naći unutar testne i mjerne opreme, kao što su brojači, generatori signala i osciloskopi. - Kodovi su dodati na noseće radio talase. Dve noseće frekvencije; L1 noseća frekvencija: 1575.42 MHz (C/A i P -kod); L2 noseća frekvencija: 1227.60 MH z (P- kod); Kodovi predstavljaju serije binarnih signala (0 i 1) i nazivaju se PRN kodovi (Pseudo Random Noise Codes); C/A Code ili “Civilni kod” nosi manje informacija. P-Code (Protected Code) – zaštićeni (kriptovani) kod namenjen armiji USA. Navigaciona poruka: signal na frekvenciji 50 Hz kodira se ovim kodovima, nosi informacije o lokaciji satelita,vremenu, itd. - GPS Prijemnik je uređaj koji proračunava svoju poziciju na osnovu merenja udaljenosti od tri ili više GPS satelita. * Sateliti emituju jedinstveni signal koji uključuje i vremenske informacije ;
Rastojanje od satelita se određuje merenjem vremena prenosa ovog signala (koji se kreće brzinom svetlosti) Usled grešaka u časovniku, i drugih mogućih grešaka, dobija se tzv. pseudo rastojanje. *Triangulacija: Lokacija prijemnika se nalazi u preseku tri sfere, čiji su poluprečnici rastojanja do satelita; Triangulacija se bazira na činjenici da se tri sfere seku u najviše dve tačke (od kojih jedna obično nema smisla). Ovaj princip rada podrazumeva sa su časovnici na svim satelitima, kao i na prijemniku potpuno sinhronizovani, da bi se vremenski razmak između poznate sekvence signala sa satelita i na prijemniku tačno izmerio. Na satelitima se nalaze atomski časovnici, veoma precizni i skupi. Međutim, prijemnik ima daleko manje precizan časovnik, kristalni oscilator. Nedostatak preciznosti se rešava uvođenjem merenja udaljenosti od još jednog satelita. Sat na prijemniku uvodi istu vremensku i prostornu grešku kada proračunava udaljenost od sva četiri satelita. Može se izračunati za koliko treba korigovati sat da bi se četiri sfere sekle u jednoj istoj tački. Na taj način se sat na prijemniku neprekidno koriguje pa se stoga Četvrti satelit se koristi zbog problema sa sinhronizacijom clock-a i određivanja tačne pozicija. *Denial Of Accuracy (DOA) : Vojska SAD koristi dve metode da omete potpunu funkcionalnost sistema: - Selective Availability (SA) – šum koji je dodat signclock signalu i tako smanjio kvalitet signala za potrebe lociranja SA je isključen od Maja 2000. Anti-Spoofing (AS) - P-code je kriptovan; Ponekad su obe tehnike aktivirane, a ponekad ne. - Da bi se odredila pozicija GPS prijemnika na osnovu podataka o udaljenosti do satelita neophodno je poznavanje veoma precizne pozicije satelita. Sateliti se kreću po veoma visokim (20200km) i
predvidljivim orbitama, i gravitacioni efekti Sunca i Meseca ih veoma malo menjaju ali GPS upravljački segment nadgleda i konstantno ažurira njihove tačne pozicije. Ove informacije o poz iciji i orbitama po kojima se kreću ) sateliti se šalju GPS prijemnicima kao deo navigacione poruke (
svakih 30 sekundi na osnovu kojih je moguće da GPS prijemnik odredi poziciju satelita (ažurira se svaka 2 sata i validan do 4 sata). Informacije o orbitama i statusu svih satelita su dostupne i kao deo navigacione poruke okviru satelitskog signala svakog od satelita ( ) koji se u potpunosti emituje svakih 12.5 minuta, ažurira se svakih 24 sata i validan je od 30 180 dana. - *Greška u časovniku satelita/prijemnika ; Greška u poziciji satelita (ephemeris); *Uticaj atmosfere na prostiranje satelitskih signala: - Refrakcija u jonosferi; - Refrakcija u troposferi; - Ugao položaja satelita. *Šumovi; *Višestruki putevi do prijemnika (Multipath); *Smanjivanje preciznosti usled opstrukcije signala; *Selektivna raspoloživost (S/A).
Tačnost može biti poboljšana korišćenjem diferencijalnog GPS (D-GPS): Dodavanjem prijemnika sa tačno određenom pozicijom; Mobilni uređaji: Sve veći broj mobilnih (pametnih) telefona poseduje ugrađeni GPS prijemnik, i očekuje se da će u budućnosti to biti standardna karakteristika; GPS prijemnici se mogu priključiti preko Bluetooth interfejsa. *Prednosti: Pozicioniranje zasnovano isključivo na mobilnom uređaju; Globalna dostupnost; Dobra preciznost. *Nedostaci: Veliko kašnjenje do dobijanja prvih informacija o poziciji; Nemogućnost pozicioniranja u zatvorenim prostorima i prirodnim i urbanim kanjonima; Neophodan dodatan hardver (cena + potrošnja snage). Koriste se dva GPS prijemnika. Osnovni GPS prijemnik visoke preciznosti u okviru bazne stanice postavljen je na
poznatoj referentnoj tački poput National Geodetic Survey markera. Ovaj prijemnik prikuplja GPS signale i poredi izračunatu poziciju sa sopstvenim poznatim koordinatama. Mobilni GPS prijemnik prikuplja autonomne informacije na terenu. U okviru bazne stanice izračunava se korekcija (razlika) između poznate pozicije i GPS pozicije. Ova razlika je efektivna
mera greške u pozicioniranju i može se koristiti u korekciji pozicionih grešaka u realnom vremenu ili nakon postupka merenja pozicija (post processing). Bazna stanica i GPS prijemnik moraju da mere poziciju u isto vreme i da budu na udaljenosti do 300 - 500 km da bi se obezbedilo da primaju signale sa istih satelita (što manje to bolje). Sistem koji se sastoji od satelita i
zemaljskih stanica koji obezbeđuju korekciju GPS signala, dajući još bolju preciznost pozicioniranja u odnosu na DGPS. Originalno projektovan za
korišćenje u aero navigaciji Mnogi novi GPS prijemnici imaju mogućnost korišćenja WAAS signala u određivanju pozicije . WAAS-osposobljen prijemnik daje pozicionu preciznost bolju od 3 metra, 95% vremena, bez
potrebe nabavke dodatne opreme ili plaćanja pretplate za korišćenje WAAS servisa. EGNOS (Evropa), MFSAS (Asia, Japan) - SSSR ekvivalent GPS-u. Sateliti lansirani u periodu 1992 - 1996 Funkcionalnu konstelaciju čine 24 satelita Arhitekturno sličan GPS. Upravljački segment je u granicama bivšeg SSSR . Počev od 2001 Rusija je
započela njegovo ponovno uspostavljanje i u saradnji sa vladom Indije, kao partnerom, postigla punu funkcionalnost i globalnu pokrivenost 2011 godine. - Projekat EU započet 1999 godine, onteroperabilan sa GPS i GLONASS 30 (27 operativnih satelita i 3 rezervna satelita, na tri cirkularne orbite (Medium Earth Orbits – MEOs) na visini 23 222 km i inklinaciji od
56º u odnosu na Ekvator. Prva dva operativna satelita lansirana u oktobru 2011, inicijalni
navigacioni servisi očekuju se 2014, dok se puna funkcionalnost i globalna pokrivenost sistema Galileo očekuje do 2019 godine.
- Izvorna ćelija (Cell of origin) ili ćelijski identitet (Cell-ID) predstavlja metodu za mobilno pozicioniranje u potpunosti
zasnovanu na mobilnoj mreži. Ova metoda za pozicioniranje kao lokaciju uzima koordinate bazne stanice koja u tom trenutku opslužuje mobilni uređaj korisnika (putem koje mobilni uređaj obavlja komunikaciju) Preciznost u velikoj meri zavisi od veličine ćelija mobilne mreže. Tipična veličina u urbanim segmentima mreže je oko stotinu metara, dok u ruralnim područjima može iznositi i više kilometara, što predstavlja aproksimativnu preciznost ove metode.
Tipično vreme odziva u određivanju lokacije je od 2 - 5 sekundi (2.5 sekundi je uobičajeno). *Prednosti: Brzina i cena; Minimalna ili nikakva modifikacija mrežne infrastrukture ; *Nedostaci: Promenljiva i loša preciznost (pošto veličina ćelija varira); Ćelija preko koje komuniciramo ne mora da bude najbliža ćelija . - Metoda ćelijskog identiteta je često dopunjena i tehnikom nazvanom Vremensko napredovanje (TA - Timing Advance). GSM Timing Advance parametar koristi se za sinhronizaciju vremenskih slotova može bit definisan kao vremensko kašnjenje između uređaja i bazne stanice, Preciznost oko 550 metara, Takođe dostupan na uređaju. Ukoliko sistem za pozicioniranje registruje i usmerenu antenu bazne stanice preko koje je mobilni uređaj povezan na mobilnu mrežu, može se
odrediti i sektor u okviru ćelije u kome se nalazi mobilni uređaj. *Prednost: brzina i cena; minimalna ili nikakva modifikacija mrežne infrastrukture. *Nedostaci: Preciznost; Mora biti kombinovana sa drugim metodom da bi se dobila veća preciznost. - Slično principu sa GPS tehnikom. Zasniva se na
vremenima pristizanja poznatog signala poslatog sa mobilnog uređaja i primljenog od strane tri ili više baznih stanica . Signal predstavlja pristupni burst kreiran od strane mobilnog uređaja obavljanjem asinhronog handover-a. Takvi signali sa mobilnog uređaja se detektuju na prijemnicima u okviru baznih stanica gde se vrši merenje kašnjenja prostiranja signala od mobilnog uređaja do prijemnika. *Prednosti: brzina i cena; minimalna ili nikakva modifikacija mrežne infrastrukture . *Nedostaci: Precizan clock je neophodan na svakoj baznoj stanici Osetljiv na greške u urbanom okruženju zbog promenljivih uslova propagacije signala ; U ruralnim područjima može biti nemoguće pristupiti dovoljnom broju baznih stanica (3+). metod meri vremensku razliku u
prostiranju signala upućenih sa mobilnog uređaja do dve referentne bazne stanice. Ovim se određuje lokacija mobilnog uređaja na krivoj liniji između dve bazne stanice Treća bazna stanica je neophodna u cilju triangulacije pozicije mobilnog uređaja. Preciznost TDOA (OTDOA, U- TDOA) metode je između 50 i 120 m u ruralnim područjima, dok se očekuje između 40 i 50 m u urbanim područjima. - Koristi se metoda triangulacije korišćenjem pravca stizanja signala. Signal sa mobilnog uređaja prima se sa više baznih stanica. Bazne stanice poseduju dodatnu opremu (LMU) kojom određuju pravac (ugao) iz kog stižu signali sa mobilnog uređaja. Izmereni podaci sa svake bazne stanice se šalju SMLC-u, gde se analiziraju i koriste za određivanje aproksimativne pozicije mobilnog uređaja. Retko korišćen jer merenja ugla i pravca stizanja signala često nisu moguća. * Prednosti: može funkcionisati u ruralnim područjima. *Nedostaci: Osetljiv na interferenciju i slabljenje signala; Line-of-Sight (LOS) je obavezan; ne funkcioniše dobro u urbanim područjima .
Neophodan dodatni uređaj, LMU (Location Measurement Unit), čija je lokacija poznata (npr. od strane GPS). E-OTD metoda na osnovu signala primljenih sa baznih stanica u
okruženju mobilnog uređaja, meri razliku u vremenu neophodnom da signal stigne do mobilnog uređaja. Vremenska razlika se koristi za izračunavanje udaljenosti uređaja u odnosu na bazne stanice. Mobilni uređaj mora da poseduje informacije o baznim stanicama iz okruženja, njihove tačne lokacije, kao i vremenske informacije. Alternativno, mobilni uređaj može da pošalje mobilnoj mreži izmerene vrednosti razlike pristiglih signala, tako da se neophodna izračunavanja obave u okviru GMLC. *Prednosti: Dobra preciznost; Može biti implementirana na postojećoj infrastrukturi. *Nedostaci: Zahteva dodatni softver i procesorsku snagu na mobilnom uređaju; Zahteva dodatni hardver (LMU).
- GPS prijemnik ne može da odredi svoju poziciju u
slučaju slabog prijema signala sa satelita, usled zaklonjenosti od zgrade, drveća, i sl., i imaju problem da prime almanac i ephemeris podatke iz navigacione poruke (što može da potraje izvesno vreme). A-GPS se zasniva na postavljanju diferencijalne GPS mreže na širokom prostoru koja je povezana sa mobilnom mrežom čiji su čvorovi opremljeni GPS prijemnicima koji kontinualno funkcionišu i imaju čist i jasan pregled neba (AGPS Server-i ). AGPS server putem komunikacione mreže šalje GPS prijemniku podatke neophodne za podršku GPS pozicioniranju u cilju unapređenja njegovih performansi pozicioniranja (brzine, tačnosti). *Prednosti: Tačnosti i brzina; Jednostavno integrisanje sa DGPS (Differential GPS); Može se koristiti i slabi signali (u zatvorenom prostoru) . *Nedostaci: Skupoća (nova oprema); Podrška od strane mobilnog uređaja. A-GPS obezbeđuje unapređenja u: Time to First Fix; Trajanju baterije; Smanjenju osetljivosti na izvore grešaka GPS signala; Ceni. Pomoćni podaci: Pozicije satelita ( ); Vremenske informacije; Base Station. A-GPS tehnologija, koju koriste svi savremeni telefoni, korisna je za brzo
nalaženje pozicije po uključivanjju jer podatke o satelitima pruža mobilni operater i telefon ih ima odmah na raspolaganju, ali A-GPS i oslanjanje na pozicioniranje korišćenjem GMS mreža ili Wi -Fi signala sa poznatih lokacija ne daje tako dobre rezultate u praksi kao “čist” GPS, tako da
uređaji koji se što manje oslanjaju na GSM mrežu u praksi daju najbolje rezultate. - Za praćenje dece koriste se najčešće uređaji u obliku sata, narukvice ili priveska, a ovi specijalizovani uređaji za decu i mlade imaju razne dodatne funkcije poput upozoravanja ako je nosilac
došao u blizinu stana registrovanog seksualnog prestupnika ili ako je tokom vožnje probio dozvoljenu brzinu. Deca se obično opremaju uređajima sa dvosmernom zvučnom komunikacijom, tako da roditelji mogu uvek da čuju na računaru šta se dešava u sredini u kojoj je njihovo dete (što je verovatno malo neprijatno deci), kao i da im se obrate iz uređaja bez ikakve najave (što je sigurno već veoma neprijatno iskustvo). Sa druge strane, deca mogu da se obrate roditelju korišćenjem narukvice samo pritiskom na dugme, što je zgodno jer dete ne mora da nosi mobilni telefon.
Lokacija u zatvorenom - Wireless LAN (WiFi) – metoda zasnovana na triangulaciji poput pozicioniranja u mobilnim mrežama; WiFi fingerprinting; Ultrawideband (UWB); Bluetooth; Infracrveni signali (IrDA); RFID; Ultrazvučna identifikacija; *Specijalizovana infrastruktura, predajnici/odašiljači i prijemnici koji se koriste isključivo za pozicioniranje: Active Badge (XeroxParc); Active Bat (AT&T); RADAR - Microsoft Research RF zasnovano rešenje za lociranje i Praćenje.
– se koristi kada GPS nije moguće tokom različith uzroka kao štu su „multipath“ (radio signal se reflaktuje od terena koji ga okružuje: zgrade, kanjoni, zemljište… Kašnjenje signala uzrokuje greške u merenju za svaki tip GPS signala u zavisnosti od dužine talasa) i blokiranje signala unutar objekata. WiFI postio n je doživeo rapidni raast u 21. veku sa pojavom wireless access point-a u urbanim sredinama. Fingerprinting tehnika se zasniva na tome da
distribucija radio signala pokazuje jedinstvene šablone u diskretnim pozicijama nekog prostora (referentne tačke). Snimanjem i pamćenjem podataka koji opisuju šablone i njihovim asociranjem sa diskretnim lokacijama u kojima su podaci snimljeni, omogućavaju poređenje tih podataka sa podacima koji će biti snimljeni u budućnosti. Kada se u budućnosti, na nekoj lokaciji, snime odgovarajući podaci o radio signalima, ti novi podaci se mogu uporediti sa prethodno snimljenim podacima. Kada se pronađe najbolje poklapanje novih podataka sa starim snimljenim podacima, lokacija koja je asocirana sa starim podacima je najverovatnije i lokacija na kojoj su snimljeni novi podaci. Pomenuti
šabloni, odnosno podaci o signalima snimljeni na nekoj lokaciji se nazivaju “otisci” (eng. Fingerprint). Jedan otisak na nekoj lokaciji predstavlja skup
informacija (MAC adresa, jačina signala, ime mreže, kanal i dr.) o signalima svih access point- a čiji se signal može registrovati na datoj lokaciji. Na osnovu otisaka za veliki broj diskretnih lokacija na nekom prostoru, kreira se takozvana “radio mapa” tog prostora . *Dve faze: Faza obuke (Training phase); Faza pozicioniranja (Realtime phase). Sličnost
između otisaka iz radio mape i trenutno snimljenog otisaka, najčešće se određuje primenom Euklidovog algoritma rastojanja. NMEA 0183 (NMEA) je kombinovana
električna i specifikacija podataka za komunikaciju između pomorske elektronske opreme (npr. GPS prijemnika); NMEA 0183 standard koristi ASCII i definiše protokol za serijsku komunikac iju. Definisan je i kontrolisan od strane SAD, National Marine Electronics Association. NMEA 0183 standard koristi jednostavnu ASCII sentencu od jednog predajnika prema jednom ili više prijemnika. Standard definiše sadržaj svake sentence.
Početni znak svake sentence je “$”. Sledećih pet znakova identifikuje tip poruke. Sva polja sa podacima koja slede su razdvojena zarezima. Prvi
znak koji sledi odmah nakon poslednjeg polja sa podatkom je “*” iza koga sledi checksum-a izražena kao dvocifreni hex broj. Ova čeksuma je XOR svih znaka između $ i * Primer sentence: $GPRMC, , V, , N, , E, , ,, , *0F; $GPRMC,061524.108,V,4722.8087,N, 00832.6547, E,0.000000, ,240 506, , *0F Deo Google Play Services, obezbe đuje
mnogo bolju podršku za rad sa lokacionim podacima višeg niova u odnosu na Location API. Integrisani Location Provider upravlja različitim tehnologijama za pozicioniranje dostupnim na mobilnom uređaju i isporučuje lokaciju u skladu sa zahtevima (tačnost, potrošnja baterije, privatnost, itd) – klase: LocationClient, LocationRequest, LocationStatusCodes. GeoFencing API (Geofence interfejs, klasa
Geofence.Builder) Omogućuje da se u okviru aplikacije specificira granica oko određene lokacije i dobijanje notifikacije kada se ta granična linija pređe Prepoznavanje aktivnosti (ActivityRecognitionClient, ActivityRecognitionResult). API za osnovne funkcije u prepoznavanju aktivnosti korisnika mobilnog telefona: stajanje, hodanje, vožnja biciklom, vozilom, itd. - Paket com.google.android.gms.maps; Klasa GoogleMap predstavlja map objekat u aplikaciji: Konektuje se na Google Maps servis; Download-uje map tile-ove (kvadratni delovi mape obično 256x256px); Prikazuje tile-ove na ekranu urađaja; Prikazuje: različite kontrole za manipulaciju mapom, poput panovanja i zumiranja; Odgivara na gestove kojima se definiše panovanje i zumiranje. U okviru UI mapa je predstavljena objektima klasa: MapView klasa; MapFragment klasa. Ugrađene kontrole za manipulaciju mapom: Klasa UiSettings. - Mobile Location Protocol (MLP) - Version 3.1 – 20 Sep 2011. Zasnovan na elementu mobilne mreže, Mobile Positioning Center (MPC) – (GMLC – Gateway Mobile Location Center). HTTP / XML zasnovan protokol za dobijanje pozicija korisnika. Mobile Location Protocol (MLP, OMA) – servisi. Standardni trenutni lokacioni servis (Standard Location Immediate Service) Urgentni trenutni lokacioni servis (Emergency Location Immediate Service) Standardni lokacioni izveštavajući servis (Standard Location Reporting Service). Urgentni
lokacioni izveštavajući servis (Emergency Location Reporting Service) Trigerovani lokacioni izveštavajući servis (Triggered Location Reporting Service). Vlasnički protokoli: Mobile Positioning Protocol (MPP, Ericsson); mPosition (Nokia). MLP /MPP Emulator + SDK dostupan od strane Ericsson-a. - *Lokaciono zasnovani servisi daju “odgovor” na tri pitanja: Gde sam ja (objekti koji me interesuju)?; Šta se nalazi oko mene (njih)?; Kakao da stignem(-u) do određenog mesta? *Ovi zahtevi (upiti) mogu biti: Trenutni; Kontinualni
(odgovor treba da bude kontinualno ažuriran u skladu sa promenom lokacije korisnika (objekata od interesa). LIF (Location Interoperability Forum)- OMA (Open Mobile Alliance); WAP Forum IETF; W3C – Open Geospatial Consortium (OGC):
Lokaciono zasnovani servisi su servisi bežičnog IP koji koriste geografske
informacije u cilju pružanja usluga mobilnim korisnicima. Generalno, to su svi aplikacioni servisi koji koriste poziciju mobilnog uređaja [OpenLS] : Lokaciono zasnovani servis je servis čiji su odziv ili neka druga karakteristika zavisni od lokacije klijenta koji je zahtevao servis ili od lokacije nekih drugih stvari, objekata ili osoba (generalno nazvanih ciljevi) [ISO/TC 211].
- U prvu kategoriju spadaju servisi orijentisani ka pojedinačnim mobilnim korisnicima koji se zasnivaju na lokacionim podacima tih
korisnika za selekciju informacija koje treba isporučiti korisniku. Primeri takvih servisa su: 1) Navigacioni i saobraćajni servisi u realnom vremenu za obradu zahteva poput: "Kako stići do mesta/adrese najbržim/najkraćim putem preko ...", ili "Obavestiti o postojanju saobraćajnog zastoja i načinu na koji ga izbeći". 2) Urgentni servisi za obradu zahteva poput: "Pokvaren automobil, neophodna pomoć na putu", "Neophodna medicinska pomoć zbog srčanih smetnji!", "Da li postoje zapaljive ili eksplozivne materije u rejonu akcije gašenja požara?". 3) Turistički servisi poput: "Najbliže pozorište ili bioskop koji prikazuje određenu predstavu/film", "Gde se u blizini može kupiti/ručati/videti/posetiti...". 4) Marketinška obaveštenja zasnovana na lokaciji potencijalnih klijenata, poput: "Popust sportske
garderobe u prodavnici 50 m udaljenoj od vas". Nalaženje najbližih prijatelja (dece), poput: "Da li je dete napustilo školu i gde se trenutno nalazi?". 5) Lokaciono zasnovane igre, gde se igrač u proširen oj stvarnosti takmiči sa drugim igračima. - Drugu kategoriju lokaciono zasnovanih servisa čine aplikacije za praćenje i upravljanje mobilnim resursima, ljudima, vozilima, ili objektima koji se kreću nesamostalno (paketi, pošiljke, itd.). Takv e aplikacije su pretežno namenjene organizacijama u poslovnom i vladinom sektoru. Servisi ovog tipa uključuju: 1) Praćenje i upravljanje flotom vozila/brodova/aviona, 2) Automatsko lociranje vozila, 3) Logistika i upravljanje transportom robe i optimizacija rute za isporuku, 4) Sigurnost i zaštita od krađe mobilnih ili stacionarnih objekata, 5) Praćenje dece ili ljudi, 6) Praćenje životinja (npr. pripadnika ugroženih vrsta), 7) Upravljanje i koordiniranje akcijama u slučaju incidenata policijske/vojne/civil ne prirode, 8) Upravljanje saobraćajem, 9) Komandovanje, kontrola i
komunikacija korišćenjem digitalnog bojišta. Geokodiranje – dobijanje geografskih
koordinata na osnovu simboličke lokacije (adrese), Reverzno geokodiranje – dobijanje simboličke lokacije (adrese) na osnovu geografskih koordinata, Rutiranje i navigacija – određivanje rute i navigacionih informacija između dve lokacije, Direktorijum - pretraživanje tačaka od interesa iz odgovarajućih direktorijuma, Prezentacija – kreiranje informacija prikaza mapa, ruta, POI- a, navigacionih instrukcija, itd. na mobilnim uređajima, Gateway za pozicioniranje – dobijanje lokacije mobilnog terminala iz mobilne mreže. - GIS je specijalizovani informacioni sistem čija je osnovna namena upravljanje i manipulacija geo informacijama, tj. informacijama koje su referencirane u geografskom prostoru. GIS je skup komponenti i funkcija za prikupljanje, čuvanje, pretraživanje, obradu, analizu i vizuelni prikaz geografski/prostorno referenciranih podataka. GIS predstavlja sistem za podršku u odlučivanju
koji integriše prostorno referencirane podatke u okruženje za rešavanje problema koji su referencirani u prostoru. Da bi se postigla
suština ove vizije u kojoj je računarsko okruženje integrisano sa korisnicima/ljudima, nudeći računarske i informacione servise u svakom trenutku i na svakom mestu, svepristuni (ubiquitous) sistemi moraju da budu kontekstno-svesni. Budući da su računarski resursi integrisani sa se neprekidno i brzo menja, okruženjem i ljudima, čiji kontekst
računarski i informacioni servisi moraju da se efikasno adaptiraju na nove situacije u kojima se nalazi korisnik koji ih koristi i okruženje u kome se nalazi. Usled toga kontekstna-svesnost postaje ključni zahtev sveprisutnih računarskih sistema i aplikacija.
– Контролишите оно ш то се свакодневно дешава у вашем животу, укључујући ствари које треба да урадите, места на која треба да идете и путање којима се крећете. Prati vašu internet pretragu, pretragu po uređaju i daje predloge, vesti, infromacije koje bi vas možda interesovale na osnovu pretraga, podseća na izlaske serija, filmova čije ste stranice posećivali, prati vaše dnevne rute, javlja Vam koliko vam treba od kuće do posla kada ste kući i obrnuto kada ste na poslu, ako imate Smart TV koji je prikačen na istu mrežu kao i Google Now on može da nađe dodatne infromacije o tome šta se trenutno gleda… Konstantno menja sadržaj u zavisnosti od promene konteksta.
Obezbeđuju podatke za definisanje konteksta korisnika u korišćenju mobilnog informacionog sistema/aplikacije . - Postoje softverski i hardverski senzori.
Softverski senzori (za razliku od hardverskih) nisu fizički uređaji, oni koriste postojeće hardverske senzore i preuzimaju neke od njihovih podataka. Možemo zamisliti da senzori predstavljaju mobilnom uređaju isto što i organi čovjeku. SenzorI: * Mikrofon; *Kamera; *Senzori pozicije: GPS - senzor lokacije i brzine; Magnetometar – digitalni kompas; *Senzori pokreta i orijentacije: Akcelerometar; Gravitacioni senzor; Žiroskop; *Senzor blizine (Proximity); *Ambijentalno osvetljenje; *Bežični mrežni interfejsi: WiFi; Bluetooth; NFC. Ostali senzori: temperatura, vlažnost vazduha, pritisak, ...
je elektromehanička komponenta koja mjeri sile ubrzanja. Unutar akcelerometa se nalaze mikro-strukture koje se savijaju usled
kretanja i same gravitacije. Kada dođe do ubrzanja objekta na koji je akcelerometar postavljen, mikro-strukture se savijaju proporcionalno
ubrzanju koje je prouzrokovalo savijanje. Jednostavnije rečeno, akcelerometar nam omogućava detektovanje kretanja telefona (nagiba, potresanja).
r je mehanički senzor za mjerenje atmosferskog pritiska (na trenutnoj lokaciji uređaja). Sa ovim senzorom i uz pomoć akcelerometra, moguće je izračunati količinu potrošenih kalorija na osnovu trenutnog atmosferskog pritiska, brzine kretanja i načina kretanja (koji se unosi ručno). - Ovaj senzor prepoznaje kretnje ruke tako što detektuje infracrvene zrake koje se reflektuju. Omogućuje nam djelimično upravljanje telefonom bez doticanja ekrana.
je uređaj koji se koristi za navigaciju i merenje ugaone brzine. U telefonima se koristi vibrirajući žiroskop jer je komercijalno lako dostupan, pristupačan i malih dimenzija. Funkcioniše na osnovu principa ugaonog momenta. Uređaj se sastoji od točka ili diska čija se osovina može slobodno okrenuti u bilo koji položaj prostora. - Ovaj senzor mjeri okolno geomagnetno polje za sve
tri fizičke ose i služi kao kompas na mobilnim uređajima. - Magnetni senzor zadužen za prepoznavanje da li je maska telefona zatvorena ili otvorena. Ukoliko je zatvorena, telefon se
automatski zaključava i obratno. Senzor se aktivira prilikom kontakta sa maskom za telefon, koja sadrži magnet. Mobilne aplikacije i servise karakteriše neprekidno menjanje: okruženja korisnika koji upotrebljava aplikaciju ; računarskih/komunikacionih karakteristika njegovog uređaja ; njegova aktivnost, njegov profil i preference; vreme u kome koristi aplikaciju. Sve ove informacije čine kontekst, a aplikacije koje mogu autonomno da detektuju kontekst i prilagode se tom kontekstu se nazivaju kontekstnosvesne aplikacije. Lokaciono-zasnovani servisi predstavljaju osnovne kontekstno-svesne aplikacije u kojima je kontekst definisan samo lokacijom korisnika i vremenskim trenutkom interakcije sa servisom.
Kontekst je svaka informacija koja se može iskoristiti za karakterizaciju situacije u kojoj se neki entitet nalazi. Pod entitetom se podrazumeva osoba, objekat ili geografska lokacija koja se smatra
relevantnom za interakciju između korisnika i aplikacije. Pod entitetima se takođe smatraju i sam korisnik i aplikacija. Kontekst čini mjesto, spoljno okruženje, lični kontekst koji donosi individua, kontekst uređaja i li alata, informacioni kontekst i konačno kontekst koji je kreiran sa alatom ili
uređajem pri izvođenju same aktivnosti. Kontekst je dinamičan jer sekvence akcija koje se sprovode u datom kontekstu su fluidne i reaktivne su na promene u društvenom i materi jalnom okruženju, promene u aktivnostima menjaju i kontekst. ako koristi kontekst da obezbedi relevantne
informacije i/ili servise korisnicima, gde relevantnost takođe zavisi od korisnikove aktivnosti i zadatka, a takođe i da prilagodi isporučeni sadržaj, funkcionalnost servisa i način prikaza informacija na mobilnom uređaju. – obuhvata tehničke karakteristike računarskih uređaja koje korisnik koristi, ili su u njegovoj blizini, karakt eristike dostupnih mrežnih konekcija: tip mreže, cena prenosa podataka, brzina prenosa, kao i računarske uređaje u blizini korisnika, kao što su štampači, displeji, desktop radne stanice i serveri. – podrazumeva preference korisnika, profil, lokaciju
korisnika kao i prisustvo drugih osoba u blizini. Korisnički kontekst obuhvata čak i socijalnu situaciju u kojoj se korisnik nalazi. – obuhvata fizičke karakteristike prostora (okruženja) u kome se korisnik nalazi: nivo osvetljenja i buke, temperaturu, stanje u
saobraćaju i slično. – trenutno doba dana, dan u nedelji, mesecu, godišnje doba i slično. je posebno bitan kada se formira profil korisnika analizom i mining-om korisnikovih akcija i promena konteksta u vremenu. Geografski kontekst: podaci na mapama Ulice, zgrade, restorani, tačke od interesa, itd. Izvor podataka: geografski informacioni sistemi (GIS). Stacionarni objekti, retko se menjaju. Dinamički kontekst: kretanje i promene: Osobe, vozila, situacija u saobraćaju, vremenske prilike, ... Izvor podataka: senzori. Informacioni kontekst: digitalni svet, "cyberspace“ web sajtovi, dokumenti, objekti, ... Tehnički kontekst: infrastruktura pristupne mreže, topologija, računarski resursi (sopstveni i u okruženju) (printeri, projektori, ...). obuhvata funkcionalnosti koje korisniku direktno prikazuju informacije o kontekstu u neo brađenom obliku ili na osnovu podataka o kontekstu sistem nudi funkcionalnosti za koje smatra da su relevantne u trenutnom kontekstu. Primer: korisniku se na mapi prikazuje njegova trenutna pozicija, pravac i brzina kretanja, na osnovu brzine kretanja korisniku se nude opcije koje imaju smisla samo ako se korisnik nalazi u vozilu (velika brzina kretanja) ili
ako je statičan (brzina kretanja bliska nuli).
na osnovu podataka o kontekstu korisnika ili
promene konteksta. vrši se izbor servisa iz grupe ponuđenih servisa (primer: štampanje na najbližem štampaču), ili servisi menjaju svoje karakteristike i način izvršenja u skladu sa kontekstom korisnika bez potrebe za njegovom intervencijom. Primer: servis za navigaciju u slučaju da je korisnik promašio skretanje automatski računa sledeću najoptimalniju putanju i korisniku prikazuje instrukcije za navigaciju po toj novoj putanji. (tagging) za druge informacije radi pretraživanja informa cija.
Aplikacije skladište i kasnije koriste podatke o istoriji akcija korisnika obogaćenih kontekstnim informacijama. Na taj način je omogućena automatizovana ekstrakcija informacija o korisnikovim navikama i preferencama.
Primer: aplikacija koja “zna” da korisnik svakog petka počevši od 21:00 večera u restoranu na datoj geografskoj lokaciji i da ne želi da bude uznemiravan, pa u skladu sa time ne želi da bude informisan audio signalima o pristiglim porukama (E-Mail, SMS...). 1) Generisanje: Kontekstne
informacije se dobijaju preko korisničkog interfejsa ili putem senzora, fizičkih, virtuelnih i socijalnih ; 2) Procesiranje: transformacija sirovih podataka u informacije koje nose značenje o kontekstu (aktivnostima i o kruženju korisnika); 3) Korišćenje: Korišćenje kontekstnih informacija za adaptaciju ponašanja i karakteristika aplikacije, kao i generisanje eventualne reakcije kao izlaz na promenu konteksta.
Sloj senzora se sastoji od kolekcije različitih senzora. Pri tome se ne misli
samo na fizičke (hardverske) senzore već na sve izvore informacija koje mogu da obezbede korisne kontekstne informacije, virtuelne, logičke i socijalne “senzore”. Sloj adaptera senzora je odgovoran za prikupljanje sirovih kontekstnih podataka sa senzora (retrieval of raw context data). Ovaj sloj koristi odgovarajuće drajvere za fizičke senzore i API -e za virtuelne i logičke senzore. Sloj preprocesiranja je odgovoran za zaključivanje (reasoning) i interpretiranje kontekstnih informacija. Na osnovu kontekstnih podataka
dobijenih od senzora ovaj sloj generiše kontekstne informacije na višem nivou apstrakcije.
Sloj za smeštanje i upravljanje kontekstom (Storage and Management), organizuje kontekstne podatke i obezbeđuje pristup njima od strane klijenta preko javnih interfejsa. Klijenti mogu pristupati ovim podacima na
dva načina: sinhroni i asinhroni. Aplikacioni sloj predstavlja implementaciju klijenta. U okviru ovog sloja se implementira reakcija na različite događaje koji utiču na promene
vrednosti konteksta i obezbeđuje podrška za adaptiranje aplikacije u skladu sa kontekstom.
Fizički senzori: Osvetljenje - Fotodiode, IC i UV senzori, detektori boje Vizuelni kontekst – kamere; Audio – Mikrofoni; Pokret, ubrzanje - akcelerometri, detektori pokreta, žiroskop, kompas,... ; Lokacija (GPS, WiFi-zasnovana, itd.); Dodir detektori dodira prsta na mobilnim uređajima ; Senzori temperature, vlažnosti vazduha, atmosferskog pritiska, zagađenja, itd. Fizički atributi biometrijski senzori (krvni pritisak, puls, otpor kože itd.) . Virtuelni (logički) senzori - kontekstne informacije se mogu dobiti na osnovu kroisnikove interakcije sa aplikacijama ili servisima. Na primer, lokacija korisnika se
može detektovati pretraživanjem njegovog elektronskog kalendara/rokovnika, dok se korisnikova aktivnost može odrediti putem akcelerometra, ili na osnovu trenutno aktivne aplikacije. Socijalni senzori – komunikacija interakcija sa “prijateljima” iz okruženja, razmena poruka, telefonski pozivi, itd. Kombinujući ove informacije sa eksternim podacima
iz dostupnih izvora sistem može da generiše kontekstne informacije višeg nivoa koje opisuju situaciju, ponašanje, navike i osobine ko risnika. - *Modeli ključ – vrednost (Key-Value); *Modeli koji koriste markup scheme (XML) - hijerarhijsko uređenje vrednosti kroz tagove za obeležavanje. Tagovi su najčešće rekurzivno definisani drugim tagovima (primeri, CC/PP, User Agent Profile – UAProf, zasnovani na RDF); *Grafički modeli - Modeli konteksta iz ove grupe uglavnom vode poreklo od danas široko korišćenog jezika UML (Unified Modelling Language) – primer Context Modeling Language (proširenje ORM). *Objektno orijentisani modeli; *Logički modeli - zasnovani na definisanju skupa činjenica i pravila za izvođenje. Kontekstne informacije dobijene direktno od senzora se dodaju direktno u sistem kao činjenice, kontekstne informacije višeg nivoa se dobijaju primenom pravila na skup činjenica . *Modeli zasnovani na ontologijama – ontologije omogućavaju specificiranje semantike koncepata iz domena problema i njihovih međusobnih odnosa.
Podaci (dobijeni od senzora), kontekst (informacije koje se odnose na korisnika i njegovo okruženje; kontekst niskog nivoa), situacija (informacije koje se direktno koriste od kontekstno svesne aplikacije; kontekst visokog nivoa)
Context reasoning (inference). Izvođenje i generisanje konteksta višeg nivoa apstrakcije (korisnik je na sastanku) na
osnovu konteksta nižeg nivoa i kontekstnih podataka dobijenih sa senzora (nalazi se u Sali za sastanke, radno vreme, silent mod na mobilnom telefonu, ...). Pristupi: Logika za zaključivanje implementirana direktno u okviru aplikacije ("hard-kodirana", ili neki specifičan model zaklučivanja) ; Sistemi zasnovani na pravilima (rule engine, deskriptivna logika): kontekst je definisan u obliku činjenica, izraza i pravila ; Teorija verovatnoće: npr., Bayes-ove mreže (Bayesian network) Jedan od najranijih pokušaja razvoja kontekstno-svesnog aplikacionog okvira. Context Toolkit komponente: Widgets - enkapsuliraju informacije o pojedinačnim elementima
konteksta, skrivajući detalje o mehanizmu za otkrivanje i opažanje konteksta; Aggregators - agregiraju kontekste informacije i tako doprinose
dodatnoj apstrakciji mehanizma za opažanje konteksta u odnosu na aplikaciju (koordinate prevode u korisnikovu lokaciju); Interpreters koriste se za apstrakciju i interpretaciju konteksta niskog nivoa u kontekst visokog nivoa - npr. identitet, lokacija i buka mogu značiti da je korisnik na sastanku
- *Navigacija: vozila, pešaci, mulitmodalni transport; *Mobilni informacioni servisi: Turistički vodiči, podrška osoblju na terenu, …; *Komunikacioni servisi: GeoCast, best network, ...; *Edutainment: socijalno okupljanje, "mixed reality games"; *Pametna okruženja (Smart Environments): pametne sobe, kuće, zgrade, kancelarije, fabrike; *Servisi za podsećanje : Do not forget; lifelog; *Kolaborativni servisi: timovi za spašavanje, mobilne medicinske (health care) aplikacije koji se prilagođava promenama konteksta: Osvetljeniji ekran u tamnom prostoru; Jednostavniji tekst i veća slova ukoliko se korisnik kreće . Prikazuje samo važan deo video snimka u slučaju
malog propusnog opsega bežične mreže, ili u slučaju malog ekrana korisnikovog mobilnog uređaja. Različiti meniji za različite mesta na kojima se korisnik nalazi. Sortira se lista osoba iz liste kontakata prema udalejnosti od korisnika, ili se prikazuju na mapi. Zavisi od preferenci korisnika. - *Obaveštavanje o događajima Obaveštavaju o korisnim informacijama (triggering) relevantnim u odnosu na tekući kontekst korisnika : Navigacioni sistemi; Objašnjenja i upozorenja u vezi mesta na koja korisnik putuje ili gde se trenutno nalazi. *Pretraživanje informacija: Čuvanje konteksta svakog događaja i
pretraživanje događaja po Kontekstu: Koja je bila tema i dokumenti sastanka održanog 15. maja prošle godine u ovoj konferencijskoj sali, na kome su bili i Mika i Pera ; Objekti su definisani kontekstom u kome su generisani; Ne znam ime datoteke ali znam kontekst u kome sam je formirao; *Deljenje iskustva: Dobijanje konteksta drugih korisnika i slanje sopstvenog konteksta Sniženje cena u prodavnici/pozorištu u kome se nalazim . - Optimizuje pristup računarsko/komunikacionim resursima u skladu sa kont ekstom Izbor
najbrže konekcije sa serverom; Korišćenje memorije najbližeg besposlenog (idle) računara pre nego swap-ovanje na disk Štampanje na najbliži štampač.
Odnos pošiljaoca i primaoca poruke: Sinhrona – pošiljalac poruke se blokira i čeka odgovor na poruku pre nego što nastavi sa radom (RPC, CORBA, RMI, DCOM, HTTP request/response, itd.); Asinhrona - pošiljalac poruke nakon slanja nastavlja sa radom, a kad odgovor stigne vrši njegovu obradu. * Inicijator razmene poruka: Pull –
Klijent periodično ispituje da li postoji raspoloživa informacija na serveru, i ako postoji zahteva slanje od servera; Push – Server inicira komunikaciju šaljući informaciju klijentu bez njegove eksplicitne interakcije ili zahteva (HDML notification, WAP Push, application-to-application messaging).
E-mail; Paging i pager sistemi; Short Message Servise (SMS): 160 znakova teksta; Enhanced Message Service (EMS): tekst, slike, animacije, zvuk i formatiran tekst; Multimedia Message Service (MMS): Pored formatiranog teksta, slike i zvuka, podrška za prenos audio i video sadržaja i glasa veličine do 300KB ; Standardizovan od strane Open Mobile Alliance (OMA) i 3rd Generation Partnership Project (3GPP); Mobile Instant Messaging: Po funkcionalnosti odgovara tehnologiji dvosmerne razmene tekstualnih, slikovnih i video poruka uz informaciju o prisustvu – Skype, Viber, WhatsApp; HDML notifikacija; WAP Push; Razmena poruka između aplikacija (Application -to-Application Messaging); Push notification service (APNS, GCM, MPNS) Karakteristike: Garantovana isporuka poruke korišćenjem store-and-forward principa; Lak za korišćenje bez dodatnog softvera i hardvera; Mala cena razmene informacija: Značajan izvor prihoda za provajdere servisa;
80% SMS poruka je korisnički orijentisano, a ostale su rezultat informacionih servisa (stanje na berzi, vremenska prognoza, stanje na putevima, reklamiranje, itd.). Slanje SMS iz aplikacije: Iz aplikacije korisnikovog mobilnog telefona (Java WMA), ili iz serverske aplikacije
preko mobilnog telefona priključenog na server (USB, Bluetooth) u vidu bežičnog modema korišćenjem AT komandi Sa aplikacionog servera: Neophodno je koristiti odgovarajući API operatera za interfejs prema SMSC; Preko mail interfejsa (SMTP pristupa SMSC):
[email protected]
su SMS poruke koje su upućene specifičnom portu (broju porta) na mobilnom telefonu. Ove poruke se mogu koristiti
za pokretanje aplikacije, ili izvršenje određenih akcija u okviru aplikacije bez eksplicitne korisnikove akcije ili unosa. PushRegistry klasa je u osnovi lookup tablica u okviru Java Application
Management System (AMS) na mobilnom uređaju. MIDlet koji podržava ovu funkcionalnost može dodati u laz u ovu tablicu ili u vreme instaliranja, ili u vreme izvršenja, koji sadrži naziv MIDleta, broj pridruženog porta i tip konekcije (SMS, socket, itd.). Ukoliko se MIDlet aplikacija ne izvršava, startuje se, a ukoliko se izvršava omogućava se prijem SMS p oruke, obrada i odgovor na poruku. Ne koristi standardni klijentski
softver već su slanje i prijem poruka integrisani u konkretnu aplikaciju, klijentski i serverski deo; Deo aplikacije na mobilnom uređaju je pametni klijent. Ovaj klijent komunicra direktno sa messaging serverom, bez potrebe za gateway-om u okviru mobilnog operatera (SMSC, MMSC, itd.).
Aplikacioni inženjer može izabrati protokol, kompresione tehnike i sigurnosne mehanizme za komunikaciju mobilnog klijenta sa messaging serverom. Preko messaging servera, serverska komponenta aplikacije
može poslati poruku klijentskom delu aplikacije da ažurira lokalne podatke u skladu sa tekućim promenama - sinhronizacija (npr. radnik ili prodavac na terenu dobijaju ažurne podatke) – push mehanizam u obliku serverski inicirane sinhronizacije. Različite tehnologije za razmenu poruka između
aplikacija – Message- Oriented Middleware (MOM) – IBM MQSeries, MSMQ, Tibco Rendezvous; Java Messaging Service (JMS) u okviru J2EE predstavlja API za pristup različitim MOM proizvodima - GCM za Android, APNS za iOS, MPNS za
Windows Phone Veličina poruke koja može biti poslata uređaju se razlikuje: 4KB - Android, 256 B - iOS, 4096 B- Windows Phone. Broj poruka koje mogu biti poslate jednom mobilnom uređaju 200,000 za GCM, 500 za MPNS bez autentifikacije. Održavanje specifične infrastrukture za slanje poruka (nor. aplikacioni server, mobilni klijent) koji se zasnivaju na karakteristikama mobilne platforme (npr. Broadcast receivers for Android, URI-channels for Windows Phone, itd); Zasnovane
na cloud tehnologijama odgovarajuće kompanije (npr. autentifikacioni mehanizam, komunikacioni protokoli, itd). - je servis koji omogućava slanje podataka sa našeg servera na korisnički Android mobilni uređaj, a takođe i primanjer poruka sa uređaja prek o iste konekcije. GCM servis
upravlja svim aspektima formiranja i održavanja redova poruka (queueing of messages) i njihove isporuke ciljnoj Android aplikaciji koja se izvršava na mobilnom uređaju. - je efikasan servis za slanje
podataka u formi push notifikacija iOS i OS X uređajima. Svaki uređaj uspostavlja akreditovanu i enkriptovanu IP konekciju sa servisom i prima notifikacije preko te perzistentne konekcije. Ako stigne notifikacija za aplikaciju koja trenutno nije aktivna, mobilni
uređaj šalje upozorenje korisniku da postoje podaci koji su upućeni toj aplikaciji.
- Da bi se napravila push notifikacija za aplikaciju potrebno je uraditi sledeće: 1. Aplikacija mora da omogući tj. podržava push notifikaciju. Korisnik mora da potvrdi da želi da prima notifikacije za tu aplikaciju. 2. Aplikacija prima “device token“. 3. Aplikacija šalje device token serveru. 4. Kada se desi dogadjaj od interesa za za aplikaciju, server šalje push notifikaciju Apple Push Notification Service -u (APNS). 5. APNS prosledjuje push notifikaciju korisnikovom uredjaju. Kada korisnikov uredjaj primi notifikaciju, može prikazati upozorenje, emitovati neki zvuk,
itd. Korisnik može pokrenuti aplikaciju sa upozorenja, tada se aplikaciji prosledjuje sadržaj push notifikacije i ona može da je obradi na odgovarajući način. - Push notifikacija je kratka poruka koja se sastoji
od device tokena, sadržaja tj. payloada. Payload sadrži podatke koji će biti poslati i koji su od interesa mobilnoj aplikaciji. Server treba da payload
šalje kao JSON dictionary, koji, na primer izgleda ovako: Kada se ovakva push notifikacija primi, prikazaće se
alert view sa tekstom “Hello, world!” i oglasiće se standardni zvučni signal. je asinhroni servis
koji obezbeđuje third-party developer-ima mogućnost slanja podataka Windows Phone aplikaciji preko Microsoft Azure cloud servisa na efikasan
način. Push notifications obezbeđuje način da Web servis/server, desktop PC-a, ili drugi Windows Phone uređaj pošalje podatke klijentu po push principu bez potrebe da klijent izda web zahtev. 1. Mobilna aplikacija zahteva push notification URI od strane Push client service. 2. Push client service kontaktira Microsoft Push Notification Service (MPNS), i MPNS vraća notification URI za Push client service. 3. Push client service vraća notification URI vašoj mobilnoj aplikaciji. 4. Vaša aplikacija tada šalje notification URI odgovarajućem cloud servisu. 5. Kada cloud servis ima podatke/informacije koje treba asinhrno da pošalje vašoj aplikaciji, koristi notification URI da poša lje push notifikaciju MPNS - u. 6. MPNS preusmerava i šalje push notifikaciju mobilnoj aplikaciji. - Aplikacija može imati samo jedan komunikacioni kanal. Komunikacioni kanal se vezuje za jedan tip notifikacija. Ovo je moguće men jati u toku rada aplikacije. U zavisnosti od
tipa notifikacija za koji je vezan, komunikacioni kanal može ostati otvoren i nakon gašenja aplikacije koja ga je otvorila. Tri tipa: Toast notifikacije; Tile notifikacije; Raw data notifikacije. Osnovne razlike leže u načinu prikaza primljenih
notifikacija i u načinu njihovog primanja od strane aplikacije. - Jednostavne notifikacije koje se sastoje od naslova i sadržaja poruke. Prikazuju se u posebnom i izdvojenom panelu na gornjoj
strani ekrana telefona. Sadrže ikonicu aplikacije na koju se odnosi notifikacija. Klikom na notifikaciju, otvara se njena aplikacija. U trenutku primanja toast notifikacije, aplikacija na koju se odnosi ne treba biti pokrenuta. U suprotnom će notifikacija biti odbačena. Ove notifikacije se koriste za prikaz hitnih informacija i informacija promenljivih u vremenu – vremenska prognoza, podaci o vrednostima akcija itd. : Naslov (Title): Boldface string koji se prikazuje odmah nakon ikonice aplikacije; Sadržaj (Content): Non-boldface string koji se prikazuje odmah nakon naslova. Parameter: Vrednost koja se ne prikazuje, ali koja se prenosi aplikaciji ukoliko korisnik pristupi aplikaciji preko toast notifikacije. “Application tile” – “pločica”, odnosno ikonica većih
razmera koja predstavlja prečicu do date aplikacije u “Quick launch” odeljku telefona. “Secondary tile” je vizuelna reprezentacija aplikacije i njene specifične sadržine ili funkcionalnost i. Ovaj tip notifikacija vrši promenu izgleda “tile”-a aplikacije na koju se odnosi. koji se mogu menjati tile notifikacijama: 1) Naslov (Title): String koji određuje naslov aplikacije. 2) Pozadinska slika (Background image); 3) Brojač (Count): Celobrojna vrednost u opsegu od 0 do 99; Ukoliko je vrednost veća od 99, neće se prikazati; Uglavnom se koristi da prikaže broj novih nepročitanih poruka aplikacije. koji se mogu menjati “tile” notifikacijama:
Naslov (BackTitle) Pozadinska slika (Back Background image) Sadržaj poleđine (Back Content). Ukoliko tile notifikacija podešava Back Title, Back Background Image ili Back Content, ili pak zamenjuje trenutni tile nekim
drugim, čiji se ID nalazi u njenoj sadržini, takva notifikacija se može poslati samo uređaju koji pokreće Windows Phone 7.1 ili noviji. U protivnom se generiše greška tipa PushErrorTypePayloadFormatInvalid i komunikacioni kanal se zatvara. - Notifikacije kojima se šalju “sirovi podaci” direktno aplikaciji. Podaci su od značaja jedino aplikaciji, zbog čega se i ne vrši njihov eksplicitni prikaz, poput toast notifikacija. U trenutku njihovog
dospeća, aplikacija mora biti aktivna. U protivnom će notifikacije biti odbačene. Primer najčešće upotrebe: chat aplikacije. - Web servis može poslati notifikacije samo onim aplikacijama koje su, preko svojih URI-a, registrovane za njihov prijem. Slanje se odvija u sledećim koracima: Kreira se POST poruka za svaki Windows Phone uređaj kome je potrebno poslati odgovarajuću notifikaciju. Formatira se poruka u skladu sa tipom notifikacije. Pripremljena poruka se šalje MPNS -u. MPNS prima i prosleđuje poruku, a web servisu šalje odgovor o tome da li je poruka poslata. Web servis prima odgovor i u zavisnosti od njega,
preuzima odgovarajuće dalje akcije. Mobilne tehnologije i standardi - *
Bežične komunikacione mreže: Mobilni sistemi i servisi - *
Mobilne i bežične aplikacije - Mobilni – Bežični – Mobilne aplikacije i servisi - *M-trgovina (m-commerce) – M-poslovanje
Navigacioni i saobraćajni servisi: UMTS WLAN DAB DVB HSDPA EDGE GSM – CDMA2000 ( Evolucija – PDA Mobilni telefoni Pametni telefoni
Zašto su značajni mobilni sistemi, aplikacije, servisi? PC - Mobilni telefon: Bežiĉne mreže – istorijat:
Funkcije slojeva u bežiĉnoj mreži
Bežiĉne mreže vs. Žičane mreže Bežiĉne mreže – Fiksne mreže: * Osnove bežiĉnih komunikacija Klasifikacija bežiĉnih mreža - 5 tipova bežiĉnih mreža WPAN: ZigBee Bluetooth (IEEE 802.15.1) Bluetooth karakteristike Bluetooth aplikacije Bluetooth Low Energy v.4.0 Uporedni pregled WPAN ZigBee – ZigBee vs. Bluetooth Ultra Wide Band - UWB karakteristike: Ultra Wide Band Aplikacije: Mobilne ad-hoc mreže (MANET) - Bez infrastrukture: Wireless LAN - Opseg/pokrivenost WLAN konfiguracije -
WWAN (Celularne mreže) – Ćelijska struktura WWAN: Arhitektura GSM sistema – 2.5G aplikacije 3G -
Dve glavne karakteristike karakterišu 3G mreže: 3G aplikacije 4G WiMAX ( RFID
RFID tehniĉke karakteristike: * RFID aplikacije: RFID u gumama – Mobilne platforme -. Mobilni operativni sistemi Symbian – Windows Mobile -> Windows Phone Pre-emptive multitasking – Memory protection Adresa space layout Randomization – Mobile Linux – Palm OS -> HP webOS: Symbian OS: motivacija i istorijat – Symbian OS arhitektura Symbian servisi Windows Mobile
Kategorije Windows Mobile uređaja: Windows Mobile Arhitektura – Android iOS iOS (slojevi): Windows Phone 8 -
Java na mobilnim uređajima J2ME- motivacija J2ME konfiguracije – J2ME profili: J2ME MIDP – J2ME MIDP 2.0 karakteristike Symbian OS Razvojni alati Symbian OS problemi - * Mobilne Web aplikacije - * Kros-platformski razvoj mobilnih aplikacija – Kros-platforms Podrška za različite operativne sisteme: Android, Blackbarry, IOS, Symbian, WP7 Izbor arhitekture i tipa mobilne aplikacije - Upotreba Smartphone-ova kod ljudi Dnevna upotreba smartphone Arhitekture mobilnih aplikacija - * Arhitektura Mobilnih Web sajtova WAP (Wireless Application Protocol ) – Prednosti Mobilne Web arhitekture – Nedostaci Mobilne Web arhitekture –
Primeri Bežičnih Internet aplikacija: Mobilni WebSajt ili Mobilna Aplikacija Prednosti Mobilnih WebSajtova nad Nativ App Budućnost: Mobilna web stranica Kad praviti Mobilnu Aplikaciju –. Pametni (nativni) klijent Prednosti pametnih klijent aplikacija – Nedostaci pametnih klijent aplikacija Primeri pametnih klijent aplikacija – Hibridna aplikacija Nativ, Web, Hibrid - poređenje Bežična razmena poruka (Messaging) XMPP (Jabber) – Razmena poruka aplikacija Prednosti razmene poruka Nedostaci razmene poruka – Primer aplikacija za razmenu poruka – Start pravljenja UI-a Mobile UX – Mobilno korisničko iskustvo (DS) Razvoj mobilne apliakcije – (DS Mapa Sajta (Site Map) Clickstream Site maps vs. Clickstream SiteMap primer
Content navigation (navigacija kroz sadržaj) Tok klik -ova Clickstream Task orjentisane app Mobile (Web) Development Tools Wireframes (/Mocap) U 3D Wireframe u Web Wireframes u Mobilnom WEB Wireframe (DS) Prototip (Papir i Interaktivni) (DS) – Wireframe i prototype alati (DS): Pencil GUI prototyping tool (DS) AppInventor prototyper (DS) – Prototyper Bilo bi pozeljno (DS) Mobilni UI dizajn (DS) –
Podržati sve veličine ekrana (DS) – Kratke interakcije sa interfejsom (DS) Mobilne Web aplikacije (DS) – Technology reborn (DS)
Bežične Internet aplikacije – Vocie XML (DS
Arhitektura bežičnih Internet aplikacija – Tanki klijent - * Microbrowser – karakteristike Srednji sloj (Middle tier) –
Bežični aplikacioni serveri (Funkcije i karakteristike) - * Procesiranje bežičnog zahteva Wireless Application Protocol (WAP) – WAP WAP Arhitektura – WAP 1.x WAP 2.X Wireless Datagram Protocol – WDP Wireless Transaction Layer Security (WTLS) Wireless Transaction Protocol – WTP – Wireless Session Protocol – WSP – WSP sa konekcijom – WSP bez konekcije Wireless Application Environment – WAE WAE komponente - * Wireless Markup Language – WML – WML Script - * Wireless Telephony Application – WTA WAE formati sadržaja WAP Push WAP push arhitektura -
User Agent Profile – UAPROF –
Detektovanje mobilnih uređaja WAP 2.0 protokoli Wireless Profiled HTTP (WP-HTTP) Transport Layer Security (TLS) Wireless Profiled TCP (WP-TCP) External Functionality Interface (EFI) Persistent storage interface Multimedia Messaging Service (MMS) WAP 2.0 – podržava i koristi protokole Glasovne aplikacije. VoiceXML - Voice eXtensible Markup Language (VoiceXML) Arhitektura VoiceXML aplikacije Koncepti VoiceXML jezika Mobile Web Apps vs. Native Applications Mobile Web design (DS)
Potpuno razumevanje mobilnog „user experience“: JQuery Mobile (DS) HTML5 HTML5 - New features: HTML5 – Canvas HTML5 Application Cache HTML5 – Geolocation – HTML5 Server-Sent Events –. HTML5 Web Workers (DS)HTML5 Web Socket Hybrid Mobile Application Hibridna Mobilna App – frameworks & platforms: Mobilne aplikacije sa pametnim klijentom – nativne aplikacije Nativna mobilna aplikacija Mobilni aplikacioni server - Sinhronizacija podataka Razvoj nativnih mobilnih aplikacija Aspekti mobilnog računarstva Korisnički interfejs mobilne aplikacije Interakcija korisnika sa mobilnom aplikacijom – Mobilni korisnički interfejs - značajni aspekti -
Elementi mobilnog korisničkog interfejsa – Tipovi mobilnih kanala -
Multikanalni korisnički interfejs – Multimodelni korisnički interfejs Interakcija između korisn ika i mobilne aplikacije – Android UI i touch gestovi Primer: Navigacija vozila (Multimodelni UI) Arhitekturni obrasci: MVC (Model-View-Controller) – PAC (Presentation-Abstraction-Control) Model - View – ViewModel UI mobilne aplikacije PAC obrazac Multimodalni UI Perzistentni podaci u mobilnoj aplikaciji – Mobilne baze podataka -
Problemi interakcije baze podataka i Mobilnih uređaja (DS) - Osnovne karakteristike mobilnih baza podataka Flat File deprecated (DS) PalmOS flat-file baza podataka Windows CE baza podataka Symbian OS baza podataka J2ME Record Management System – Android - smeštanje podataka – Android i baze podataka (DS) – iOS - smeštanje podataka IOS Core Data (DS) – Windows Phone – smeštanje podataka – Google Cloud Save (DS) – ICloud (DS) – DBMS za mobilne uređaje - SQLLite vs. Oracle Database Lite Mobilne enteprise strategije (DS) – Cloud Enterpise System (DS) Mobilne enterpise aplikacione platforme IBM mobile first (Eterprise) platofrma (DS)
Mobilne enterpise platforme Sinhronizacija podataka
Sihronizacioni Sloj na Mobilnom uređaju (DS) Arhitektura za sinhronizaciju podataka – Sinhnronizacija je najsloženija komponenta arhitekture sa Sinhronizacioni sloj na mobilnom klijentu (DS): Model Izdavač/Pretplatnik Proces sinhronizacije podataka Tehnike sinhronizacije – Preporuke Sihronizacije (DS) – Osnovne karakteristike sinhronizacije Sinhronizaciona rešenja SyncML (Synchronization Markup Language) MOblie Enterprise aplikacie (DS) – Lokaciono zasnovani servisi Lokacioni servisi Lokacione aplikacije - * Mobilno pozicioniranje GPS Svemiriski segment – komponente u vasioni Upravljački segment -
Korisnički segment – Kristalni oscilator. Struktura GPS signala – GPS Funkcionisanje Ephemeris i Almanac Izvori GPS grešaka - * GPS – prednosti i nedostaci - * Diferencijalni GPS – DGPS WAAS Wide Area Augmentation System – GLONASS – Galileo -
Pozicioniranje zasnovano na mobilnoj mreži Identitet ćelije - Cell-ID Timing Advance (TA) – Time of Arrival (TOA) – Time Difference of Arrival (TDOA) Angle of Arrival (AOA) Hibridne tehnologije pozicioniranja Enhanced Observed Time Difference (E-OTD) – Assited GPS (A-GPS) Bezbednost Dece & GPS – Uporedni pregled metoda pozicioniranja
Pozicioniranje u ograničenim i zatvorenim prostorima – WiFi Position System WFPS – WiFi fingerprinting Pristup lokacionim podacima u mobilnoj aplikaciji JavaME Location API – NMEA 0183 Google Location Services API Google Maps API v2 Location API – MLP Osnovne funkcije LBS (Location Base Service) LBS standardi: OpenLS (Open Location Services) – ISO TC 211 i TC 204: Kategorije LBS servisa I kategorija II kategorija OpenLS – GeoMobility Servisi GIS – Geografski Informacioni Sistem Kontekstno-svesne mobilne aplikacije
Svepristutno računarstvo (koje prožima) aplikacije i servisi: Da Google Now – verovatno „najsvesnija“ – Mobilni računarski uređaji Senzori na mobilnim uređajima Akcelerometar Barometar Senzor gestikulacije –
Žiroskop Geomagnetni senzor –
“Hall effect” senzor – Kontekst – Definicija konteksta – Sistem je kontektsno-svestan Klasifikacija konteksta
Računarski kontekst Korisnički kontekst Fizički kontekst – Vremenski kontekst – Istorijat konteksta Klasifikacija konteksta – prema tipu podataka Adaptacija aplikacija na kontekst Prikaz informacija i servisa
Automatsko izvršenje servisa Korišćenje kontekstnih informacija i vezivanje Generalni model kontekstne – svesnosti – 1 Model kontekstno-svesnih aplikacija - slika
Klasifikacija senzora i način opažanja konteksta - * Modeliranje konteksta - * Primer obrade konteksta Zaključivanje konteksta Context Toolkit Tipične kontekstno-svesne aplikacije Efikasniji korisnički interfe js Konteksno svesne aplikacije Primeri Primer aplikacije – Rekonfiguracija Osnove razmene poruka Tipovi razmene poruka Short Message Servise (SMS) Arhitektura SMS Application Trigger poruke Razmena poruka između aplikacija Push notification service Google Cloud Messaging for Android (GCM) Apple Push Notification service (APNS) Apple Push notifikacije – Izgled push notifikacije Microsoft Push Notification Service za Windows Phone MPNS – princip rada: Mehanizam komunikacije Tipovi push notifikacija Toast notifikacija Elementi toast notifikacije: Tile notifikacija Parametri “application tile” -a Parametri “secondary tile”-a Raw notifikacija Slanje notifikacija -
1 ) Objasniti pojam samo mobilne aplikacije, samo
bežične aplikacije i mobilne i bežične aplikacije i dati primere. Mobilna aplikacija je app koja ne zahteva bežičnu
mrežu, inače to je апликацијски софтвери направљен да радi на паметним телефонима, tablet računarima i drugim mobilnim uređajima koji se lako mogu prenositi sa jedne na drugu lokaciju i koristiti u kretanju. Mnoge mobilne aplikacije već dolaze
instalirane na samim uređajima, a mogu se preuzeti i/ili aktualizovati kod distributivnih platformi od njihovih proizvođača, kao što su: App Store, Blekberi App World i druge, beslatno ili uz naplaćivanje. Obuhvataju puno oblasti kao što su igre za mobilne telefone i GPS, razgovori, gledanje video sa držaja i pretraga interneta.
Tržište mobilnih aplikacija danas je veoma razvijeno i nalazi se u stalnom porastu. “Samo” mobilne aplikacije rade u offline režimu bez potrebe za bežinom konekcijom.
Bežična aplikacija je aplikacija na računaru koja koristi bežičnu mrežu, koja omogućava bežični pristup podacima i servisima. Bežična aplikacija ima mogućnost konektovanja na drugi računar putem određene komunikacione mreže (npr. IP mreže) bez komunikacionih kablova. Najstarije bežične aplikacije su
one koje
koriste radio talase za potrebe emisije svima (broadcast), sa jedne strane, i individualnog prijema, sa druge strane. Danas su radio-frekventne zasnovane tehnologije evoluirale od analognih sistema do digitalnih, tj., od onih koje su prenosile samo govor i sliku, do onih koje danas prenose i podatke. Primer je aplikacije Bump, koja predstavlja pouzdanu
alternative NFC bežičnoj komunikaciji. Ove aplikacije korsite neki od bežičnih prenosa. Mobilna i bežična aplikacija je aplikacija na pametnom telefonu ili ta bletu koja bežično pristupa podacima i servisima preko bežične mreže. Korisnici danas žele pristup podacima, aplikacijama i servisima u svakom trenutku, sa svakog mesta, kad i gde je potrebno,
putem različitih mobilnih računarsko/komunikacionih uređaja. Ove mobilne aplikacije ili mogu delom ili ne
mogu uopšte raditi bez bežične mreže: Vesti, Vremenska prognoza… --------------------------------------------------------Mobilni uređaji - PDA - Prvi “istinski” mobilni uređaji;
Fokus na menadžment personalnih informacija - PIM (konakti, kalendar, …); Kasnije dodavanje bežičnih komunikacija: Bluetooth; WLAN; GSM; Unapređene metode ulaza
Bežični uređaji - Mobilni telefoni - Prvi “istinski” bežični uređaji; Fokus na komunikaciji ; UI zasnovan na ograničenoj tastaturi; Zatvoren API / vlasnički operativni sistemi. Evoluiraju prema PDA; Proširivanjem računarske i komunikacione karakteristike (multimedia, prenos podataka).
Bežični mobilni uređaji - Pametni telefoni - *Prvi “istinski” bežični mobilni uređaji; *Šir ok opseg: operativnih sistema, U/I metoda, komunikacionih karakteristika, aplikacija, … Trendovi: Nastavljaju da evoluiraju i dobijaju nove karakteristike.
2) Koje su osnovne karakteristike koje poseduju mobilni/bežični sistemi koje ih čine različitim u
odnosu na klasične ( npr Web ) informacione sisteme?
Mobilni/bežični sistemi korisnicima pružaju bežični pristup podacima, aplikacijama i servisima u svakom trenutku, sa svakog mesta, kad i gde je potrebno, putem različitih mobilnih, računarsko/komunikacionih
uređaja, a kompanijama pružaju mogućnost da povećaju produktivnost zaposlenih, ubrzaju vreme odgovora na dinamičke situacije i poslovne aktivnosti i povećaju zadovoljstvo korisnika/kupaca. Sve više poslovnih aplikacija će koristiti mobilne uređaje za mobilni
Mодерне корпорације зависе од рачунарских информационих система да би процесовале своје финансијске рачуне и пословне трансакције, управљале људским ресурсима; Oпштинске управе зависе од информационих система за понуду основних услуга својим грађанима; Информације и знање, данас представљају витални економски ресурс. (klijentski) deo aplikacije. Na primer:
Klasični informacioni sistemi dostupni su sa uređaja koji nisu mobilni već su statični - desktop računar i preko žičanih mreža kao što je Ethernet.
--------------------------------------------------------------3)
a)Koje su osnovne razlike bežičnih u odnosu na žičane mreže što doprinosi specifičnim karakteristikama u projektovanju i implementaciji
mobilnih/bežičnih informacionih sistema? b)Koji tip bežične mreže bi ste upotrebili za mobilni i bežični informacioni sistem kada komponente aplikacije treba da se izvršavaju na računar skokomunikacionim uređajima koji su na udaljenosti do 10-ak metara sa brzinom prenosa reda nekoliko Mbps, a koji ako je njihova udaljenost region ili
cela država i zašto? a) Osnovna razlika između bežičnih i žičanih (fiksnih) mreže je u fizičkom sloju i sloju veze (data link); Tehnologija
žičanih mreža se zasniva na kablovima (optičkim ili bakarnim); Prenos podataka u bežiĉnim mrežama obavlja se korišćenjem elektromagnetnih talasa koji se prenose kroz prostor (i pri tome su podložni rasejanju, refleksiji i slabljenju): Podaci se modulišu na noseću frekvenciju (amplitudna, frekventna, fazna modulacija,…); Data link sloj (pristup medijumu, multipleksiranje, korekcija grešaka,
sinhronizacija) zahteva mnogo složenije mehanizme nego kod žiĉanih mreža m reža.. Viši stepen gubitaka kvaliteta signala zbog interferencije sa drugim izvorima EM zraĉenja: -elektriĉni uređaji, mašine, itd. *Restriktivne *Restriktivne regulacije regulacije korišćenja korišćenja frekvenc f rekvencija: ija: -Korišćenje frekvencija i frekventnih opsega mora biti koordinisano; korisne frekvencije su skoro potpuno zauzete. *Male brzina prenosa: -U lokalu reda Mbit/s, u regionalnom podruĉju,
npr., 50 Kbit/s sa sa GSM/GPRS. *Veće kašnjenje i veći jitter: uspostavljanje konekcije sa GSM je reda sekunde, dok je za ostale bežiĉne sisteme nekoliko stotina milisekundi. *Smanjena sigurnost i jednostavni aktivni napadi na komunikaciju: -Radio interfejs je dostupan svakom; bazne stanice mogu biti simulirane i tako privuku pozive sa mobilnih telefona obezbeđenje *Deljeni medijum: - Veoma važni mehanizmi za obezbeđenje sigurnosti pristupa
Bežične mreže ne koriste kabal pa je sav prenos preko elektromagnetih talasa. što omogućava mobilnost i slobodnu kretanja, ali manju brzinu, bezbednost (slaba
ekripcija) i pouzdanost mreže. Žičane mreže su brže i do 10 puta i sigurnije, jeftinije, imaju bolje performanse. Odabir zavisi od korisnika i njihovi
zahteva u vezi ve zi mreže! b)U slučaju udaljenosti od 10tak metara mogli bismo koristiti Wireless LAN jer on omogućava opseg od 50m 50 m do 150m i poseduj po seduje e propusni opseg od 1Mbps do 54 Mbps (čak i do 600 Mbps), drugo rešenje bi bilo bilo Bluetooth ukoliko prenos ne bi morao da prelazi 2
Mbps a opseg koji omogućava Bluetooth je od 10m do 100m. U slučaju da imamo udaljenost na ceo region ili državu moramo koristiti GSM i to najmanje 3G i to u slučaju Ograničene mobilnosti jer on omogućava do 2 Mbps za korisnike koji se kreću brzinama manjim od 10 km/h a poželjno je 4G tj LTE koji obezbeđuje od 100 Mbps do 1 Gbps a kao još jedno rešenje može biti WiMAX koji obezbeđuje domete iste kao GSM i brzine koje liče na ADSL ili kablovski internet. 4) Ukoliko se zahteva razvoj mobilnog i bežičnog informacionog sistema sa mobilnim komponentama
aplikacije na Android i Windows Phone 7 uređajima, koje razvo razvojno jno okruženje i programske jezike bi ste koristili? Ob razložiti. Koristili bi Xamarin ili Qt razvojno okruženje zato što pružaju mogućnost cross platform-e. U tom slučaju programski jezici bi bili: C# i VBNET za Xamarin, i C++ i QML za Qt. U koliko
se pravi igrica ili aplikacija sa interaktivnim sadržajem Uniti iti i progra programski mski jezik C#. poželjan je Un
5) Којe su prednosti, a koji nedastaci razvoja mobilne aplikacije u Symbian/C++ razvojnom okruzenju u odlnosu na J2ME, na istoj hardverskoj platformi (po
vašem mišljenju)? Objasniti.
Symbian razvojno okruženje je ograničeno i specijalizovano na Symbian OS. Symbian aplikacije se
razvijaju u C++ koji nije standardni ANSI C++, već ograničena verzija (bez izuzetaka - exceptions, ograničeno korišćenje template-a, itd) sa mnogim specifičnim konvencijama u pisanju izvornog koda, ima Veliki broj
interfejsa i klasa a kao Posledica je spor i dugačak razvojni ciklus (u poređenju sa J2ME). Portabilnost aplikacija između različitih Symbian verzija je predstavljala problem kao i između različitih familija familija mobilnih m obilnih uređaja kao i između marki npr., Nokia ili Sony Eriksson. Koristio se Standardni C++ sa Qt SDK u verziji 4. C++, danas, cross platformama,
omogućuje razvoj aplikacija za više platformi i približava se funkcionalnostima J2ME. J2ME pruža mogućnost generisanja aplikacija za skoro sve platforme, ali je cena u performansama (ista aplikacija
pisana pomoću J2ME na symbian OS biće sigurno sporija od aplikacije pisana u Symbian okruženju).
6) Ukoliko se zahteva razvoj mobilnog i bežičn og informacionog sistema sistema sa mobilnim komponentama
aplikacije na PocketPC uređaju, na koji operativni sistem bi morali da
računate i koje bi razvojno okruženje koristili? Obrazložiti. Mogli bi da računamo na Windows Mobile OS jer je najpogodniji za ovak av tip uređaja, što znači da bi za razvojno okruženje koristili Microsoft VIsual Studio sa neophodnim SDK.Pocket PC imaju od 16 MB do 128 MB memorije i sve informacije se čuvaju u memoriji ili RAM -u jer
nema ništa što liči na HDD. 7) Ukoliko se zahteva razvoj mobilnog i bežičnog
informacionog sistema pri čemu želite da mobilna aplikacija bude raspoloživa na svim mobilnim platformama koju bi ste arhitekturu izabrali i koje tehnologije na strani klijenta bi ste koristili
za razvoj aplikacije? Obrazložiti. Phonegap ili Cordova, jer pružaju razvoj na više vi še platformi platformi za mobilno/bežične sisteme. U pitanju bi bila klijent -server arhitektura (server u php-u, ADO.Net, ASP.Net, Java). Odgovor:
Ako želimo da mobilna aplikacija aplikacija bude raspoloživa raspoloživa na svim mobilnnim platformama treba izabrati hibridnu arhitekturu. Hibridna aplikacija je mobilna aplikacija koja se izvrsava u kontroli Web browsera i koja u sebi ima elemente nativne aplikacije. Na strani klijenta se mogu koristiti tehnologije
HTML5, CSS3, JavaScript. Hibridnu aplikaciju je moguće postaviti na AppStore za razliku od čiste mobilne web aplikacije. Hibridna aplikacija predstavlja kopromis izmedju visokih troškova razvoja posebne nativne aplikacije za svaku
platformu i nemogućn nemogućnoosti oosti pristupa karakteristikama mobilnog uredjaja (npr pristup kameri, mikrofonu,
žiroskopu...) od strane mobilne web aplikacije. Dopuna: Hibridna aplikacija aplikacija - koristeći web tehnologije unutar nativne app može dati najbolje od oba sveta, nativ prikaz
preko celog ekrana sa mogućnošću pritupa nativ
funkcionalnostima uređaja uz fleksibilnost koju donosi web pristup. Mnoge app primarno koriste native platform kontrolu
i API a ugrađeni browser igra vrlo malu ulogu, dok kod drugih se nativ platforma može koristiti kao podloga i glavni deo aplikacije biti izgrađen od web tehnologija. Uglavnom hibridne app koriste framework koji wrap-uje neke nativne
funkcionalnosti u JavaScript, čineći ih dotupnim u Web Layer-u, takođe može omogućavati pristup nativnom API-ju preko JavaScript-a. Jedna od fleksibilnosti ovog pristupa je
ta da možemo odabrati neke delove koji se retko menjaju i snimiti ih offline što može da ubrza odziv app, a mogu biti update-ovani ili skinuti sa remote server-a po potrebi. Manji
troškovi nego nativ app, brže popravke i update, širi auditorijum. Nativ, Web, Hibrid - poređenje – 1) Troškovi: Veliki, mali, Srednji 2) Dostupnost: Mala, Velika, Srednja 3) Funkcionalnost: Velika, Mala, Velika.
8) Ukoliko se zahteva razvoj mobilnog i bežičnog
informacionog sistema pri čemu se ne instalira softver na strani klijenta, koju bi ste arhitekturu izabrali i koje koje tehnologije na strani klijenta bi ste koristili za razvoj
aplikacije? Obrazložiti Obrazložiti.. Odgovor: Pravili bi web sajt koji bi se pokretao preko browser-a instaliranog na uredjaju.
Prednostiti Mobilne Web arhitekture je ta što imamo Prednos Minimalnu instalaciju instalaciju ili ili bez instalacij instalacije e so softv ftvera, era, Zasniva se na Internet modelu i arhitekturi, arhitekturi, Korisnici su su familijarni sa korisničkim korisnički m interfejsom zasnovanim na browser-u.
Omogućava Integracija sa IT sistemima kompanije i Široka mogućnost isporuke aplikacija jer se celokupna konfiguracija i adaptacija obavlja na serveru. Imamo Uvek ažurne podatke. Što se tiče Sigurnosti, svi podaci su na serveru kompanije, nema podataka smeštenih na klijentu tj. imamo tanke klijente. Dopuna: Prednosti Mobilne Web arhitekture – 1) Bez instalacije softvera; 2) Zasniva se na Internet modelu i arhitekturi 3)
Korisnici su familijarni sa korisničkim interfejsom zasnovanim na browser-u 4) Integracija sa IT sistemima
kompanije 5) Široka mogućnost mogućnost isporu i sporuke ke aplikaci apli kacija ja jer j er se celokupna konfiguracija i adaptacija obavlja na serveru 6) Uvek ažurni podaci 7) Sigurnost – svi podaci su na serveru kompanije, nema podataka smeštenih na klijentu. Prednosti Mobilnih WebSajtova nad Nativ App - za
marketing ili javnu komun komunikaciju, ikaciju, jer ima lakšu l akšu dostupnost, dostupnost, veću kompatibilnost kompatibilnost i jeftiniji je. 1) Laka dostupnost – odmah dostupan, svi uređaji danas dolaze sa preintaliranim web browser- om… 2) Kompatibilnost – svi ga čitaju a i websajt URLs se lako intergišu sa drugim mobilnim tehnologijama kao što su SMS, QR kod, NFC… 3) Lak upgrade i update – sajt je više vi še dinamičan i fleksibilan, lako se menja dizajn i vidljiv je odmah a kod apliakcije mora se objaviti update za
sve uređaje, da se prilagodi za sve ekrane i onda posle moraju korisnici da povuču taj update. 4) Lako pronalaženje – websajt može svako da nađe na internetu i biće automacki prebačen na vaš mobilni websajt websajt ako ga ima a i lakše se nalazi preko browser- a, dok je apliakcija ograničena na Store određene platforme. 5) Lako deljenje – lako je deliti URL na bilo koju socialnu mrežu ili neki drugi service. 6) Brže se probijaju na internetu i dolaze do šireg auditorijuma
7) Mogu biti pravljeni kao web apliakcije sa bazom 8) WebSajt je lakši za pravljenje, održavanje i jeftiniji. Mnogi develop-eri znaju web tehniologije a i ako ne znaju mogu se
osposobiti za kratko vreme 9) Podrška i održavanje je mnogo jeftinij za WebSajt nego za Aplikaciju. 10) Klijent je
oslobođen bilo kakve instalacije, menage oko aplikacije (da li ima mesta na uređaju, da li mu ga koči…), upravljati update-ovima, app nezavistan od platforme, verzije OS-a, star osti uređaja... – svi imaju najnoviju verziju i svima radi
(sporije ili brže).
9) Ukoliko se zahteva razvoj mobilnog i bežičnog informacionog sistema gde korisnik preko mobilne
klijentske aplikacije treba da dobije obaveštenje o nastalim događajima na serveru (npr. promena
podataka ili stizanje novih podataka sa senzora koji ispunjavaju zadati uslov), koje bi ste tehnologije koristili za implementaciju ovakvog informacionog sistema i na
koji način? Obrazložiti.
Kod Informacionih servisia pristup informacijama poput vremenske prognoze, stanja na putevima, rezultata
utakmica, rezervacija restorana, multimedijalnom sadržaju, i svih ostalih promena podataka koji mogu biti isporučeni na zahtev korisnika ili inicirani od strane servera u formi notifikacije. Klijent i server API zasnovan na socket- ima i podrška za
različite protokole; Podrška za: Bluetooth, IrDA, OBEX, itd. Umrežavanje: TCP/IP, dial-up (PPP); TLS / SSL; Telefonija: Obezbeđuje pristup telefonskim karakteristikama; Podrška za GSM/ GPRS / EDGE; CDMA IS-95 / CDMA2000; UMTS Odgovor:
Prvo, može se koristiti opcija u okviru HTML5, a to je Server-Sent Events. Ovo je jednosmerna komunikacija od
servera ka klijentu. Prvi način je da serveru omogućimo pristup našo web app a Drugi način da smo zadali za koje sve događaje je zainteresovana app i kada se desi događaj od interesa, server šalje podatke o događaju mobilnoj web aplikaciji. Primer korišćenja: obavestenje o trenutnoj lokaciji korisnika na svakih 30 minuta; promena rezultata na fudbalskoj utakmici, Facebook/Twitter updates, stock price
updates, news feeds, sport results… Dalje, može se implementirari Web socket, dvosmerna komunikacija izmedju klijenta i servera. Primer: da se korisniku, u zavisnosti od njegove trenutne lokacije i zadatog radijusa, na mapi prikazu svi objekti od interesa koji se nalaze u okviru zadatog radijusa. Prilikom promene lokacije korisnika mapa se azurira. Kod nativnih mobilnih aplikacija - Sinhronizacija podataka sa podacima na serveru, deo logike za sinhronizaciju je na klijentu, a ostatak na sinhronizacionom serveru.
10) Ukoliko se zahteva razvoj mobilnog i bežičnog informacionog sistema gde korisnik mobilni deo
aplikacije koristi u vožnji (npr. za navigaciju i navigacione instrukcije) koje tehnike korisničkog interfejsa i interakcije korisnika sa aplikacijom bi ste
implementirali, imajući u vidu sve karakteristike i uslove korišćenja aplikacije? Obrazložiti. Interakcija aplikacije sa korisnikom i korisnika sa aplikacijom bi idealno trebala da bude glasovna (da aplikacija glasovno
obaveštava korisnika o stanju na putu i pravcu, a da korisnik zadaje komande glasom). Tehnika k orisničkog interfejsa bi bila centralna pozornica na kojoj bi bila prikazana mapa. Od
dodatnih komponenti bi postojale prečice za najvažnije dodatne opcije, kako ne bi smetale vozaču i oduzimale mu vreme pri vožnji. Odgovor: Implementirao bih multimodalni korsinicki interferjs, to je
interfejs kod koga korisnik moze da izabere način za interakciju sa aplikacijom kako mu odgovara u trenutnoj situaciji (za razliku od multikanalnog korisnickog intreferja kod koga postoji vise kanala za komunikaciju ali je u jednom trenutku dostupan samo jedan kanal). Dakle, kod multimodalnog interfejsa moguci su razliciti nacini za interakciju korisnika sa aplikacijom u okviru istog korisnickog interfejsa.Za UI se kaze da se adaptira kontekstu upotrebe aplikacije. Primer za navigaciju: vozac pre nego da krene na put, moze da putem forme unese destinaciju na koju zeli da stigne, a da u toku voznje koristi glasovne komande u interakciji sa mobilnim uredjajem jer su mu ruke zauzete.
11) Koje osnovne karakteristike intcrakcijc k orisnika sa mobilnom/bežičnom aaplikacijom koje ih razlikuju u odnosu na statičke (desktop) aplikacije? Dati primere i obrazložiti.
Jednostavnost interfejsa. Komunikacija sa aplikacijom obavlja se na dodir ekrana (prevlačenje, tipkanje,...), ili glasovnim putem, dok se komunikacija na desktopu obavlja preko miša i tastature.
12) Ukoliko se zahteva razvoj mobilnog i bežičnog informacionog sistema za rad na terenu
(npr.antiterorističke jedinice) pri čemu se na klijentu koriste podaci sa servera i nakon diskonekcije, kao i po potrebi menjaju ili prikupljaju novi, koje bi ste tehnike za
upravljanje podacima u ovakvom okruženju koristili? Obrazložiti. Mobilne ad-hoc mreže (MANET) - Bez infrastrukture: U
sluĉaju katastrofa i nepogoda, u ruralnim podruĉjima, senzorskim Mrežama; Redukovani troškovi (nije neophodan provajder servisa). Komunikacija: Neophodni su multi-hop
protokoli; Konekcije između mobilnih uređaja se mogu brzo menjati, sa kretanjem mobilnih korisnika; Neophodni su
odgovarajući protokoli za rutiranje.
Koristio bih HTML5 aplikacioni kes, postoji datoteka Cache Manifest u kojoj se navode datoteke koje ce biti kesirane u okviru aplikacije, i ciji ce sadrzaj biti dostupan i prilikom diskonekcije. Dodatno ovako se postizu bolje performanse, jer kad klijent zahteva podatke sa servera on jednostavno pristupi kesu sto je brze. Takodje svaki put kad dodje do promene na serveru ili do dodavanja novih podataka, kes se automatkski azurira. (W-T politika azuriranja) Davitko:
Nisam zadovoljan baš najviše gornjim odgovorima, iako je ovo ad-hoc moj predlog. Naime ad-hoc i jeste prva
asocijacija na uregnte situacije i ruralna područja i je ok, ali
na klijentskoj strani iz pitanj se jasno vidi da nama NE TREBA tanki klijen, već nam je potreban PAMETAN klijent
odnsno nativ mobilna aplikacija koja će koristiti neko Enterprise rešenje u pogledu Sihronizacije. Mobilne aplikacije sa pametnim klijentom – nativne aplikacije - Enterprise mobilne i bežične aplikacije i servisi
zahtevaju pristup podacima nezavisno od bežične konekcije. Pametni klijent – nativna aplikacija. Poseduje skladište perzistentnih podataka a to je ono što nama treba u ovom slučaju na terenu.. Neophodna sinhronizacija sa podacima na enterprise serverima kada se za to ukaže pogodna situacija. Poseduje aplikacionu logiku što je jako bitno za adekvatno skupljanje noih podataka i menjanje postojećih. Bogatiji korisnički interfejs (multikanalni/multimodalni) sada nam nešto multikanalni sistem možda nije na prvom emstu ali multimodelni svakako da jeste, unos preko ekrana, glasam, pokreta, tag- a.. jer imamo ograničena interakcija sa korisnikom (mali ekran, tastatura, stylus pen,itd. ); trajanje baterije, kašnjenje, propusni opseg i nepokrivenost bežične
mreže, itd. Ovde mogu da prođu i Hibridne app, zasnovane na Cordobi, ali Web nikako. Potreban nam je Sihronizacioni servisi koji su jako bitni, autentifickaciju, kripovanje, sigurnost mobilnih apkikacija i servera, Middlewere servisi.
Sihronizacioni Sloj na Molbinom uređaju (DS) - Sve promene koje su nastala na severu treba dase propagiraju ka kilijentu/ma. Sihronizacioni serveri su centralana
skladišta podataka, jedan sloj na mobilnom urejdaju je sihronizacioni sloj. Ovo treba da bude neka vrsta wrap-erea, komunikacija ide preko mobilnog sihronzacionog sloja na
uređaju i sihronizaionog servera, moraćemo u budćnosti dosta da razmišljamo o sihronizaciji. Arhitektura za sinhronizaciju podataka - Prilikom sinhronizacije svaka promena nad podacima na mobilnom
uređaju prenosi se serverskoj bazi podataka, a svaka promena na serverskoj bazi podataka prenosi se mobilnom
klijentu i njegovoj lokalnoj bazi podataka. Na taj način su podaci na klijentu i serveru sinhronizovani. Sinhnronizacija je najsloženija komponenta arhitekture sa pamtenim klijentom. Veliki broj mobilnih operativnih sistema, platformi i mobilnih baza podataka, veliki broj
različitih bežičnih i žičanih mreža, kao i različite enterprise aplikacije i izvori podataka. Sinhronizacioni sloj na mobilnom klijentu (DS): Komunicira sa sinhronizacionim serverom; Treba da ima
minimalan uticaj na klijentsku aplikaciju, i da obezbeđuje jednostavan i efikasan API za upravljanje procesom sinhrnoizacije. *Sinhronizacioni server predstavlja middlewar e koji sadrži sinhronizacionu logiku: Njegove
funkcije uključuju: definisanje podskupa podataka, detekcija i rešavanje konflikata u vrednostima podataka, transformacija podataka, kompresija podataka i sigurnost.
Funkcioniše u oba smera (bidirekciono). Sadrži i sloj za sinhronizaciju sa enterprise aplikacijama i izvorima podataka (RDBMS, CRM, ERP, XML izvori podataka itd.). Svaka
moblilna aplikacija ima data store, pretplaćuje se na promene na data serveru i ažurira se u lokalnu bazu podataka. Proces sihronizacije podataka, obuhvata sync server, preko Enterprise Adapter promene se propagiraju u
oba smera, šalje se svim mobilnim aplikacijama.
13) Opisati princip sinhronizacije podataka u mobilnim i distribuiranim informacionim sistemima i softverske komponente koje se pri tome koriste. Opisati postupak sinhronizacije mobilnog klijenta i centralnog servera, pri cemu i na klijentu i na serveru postoje promene u podacima. Mobilne baze podataka, slajd 25, pa kaze: Sinhronizacija podataka predstavlja bidirekcionu razmenu podataka i trasnformaciju podataka izmedju dva odvojena skladista podataka. Sinhronizacijom podataka se smanjuje potreba za neprekidnim prenosom podataka preko spore i nepouzdane bezicne mreze, tako sto se deo podataka smesta lokalno u mobinom klijentu i periodicno se sinhronizuje sa podacima na serveru u pogodnim trenucima. Takodje omogucuje distribuiranje podataka, a samim tim i aplikacione logike na mobilne uredjaje, smanjujuci opterecenje servera i veliki broj zahteva od strane mobilnih klijeneata. Da nema sinhronizacije podaci na mobilnom klijentu brzo bi zastareli a takodje, ako bi se mobilna app koristila za prikupljanje podataka na terenu, podaci na serveru bi bili neazurni. SW komponenete: sinhronizacioni sloj na mobilnom klijentu i sinhronizacioni server. Postupak prilikom promene na klijentu: sinhronizacioni proces je iniciran od strane korisnika app ili je programiran u okviru app. Sledi povezivanje sa sinhronizacionim serverom pri cemu se korisnik autentikuje nakon cega pocinje slanje. Server, nakon prijema odredjuje da li podaci treba da budu transformisani pre slanja u bazu. Bazni adapter obezbedjuje integraciju sa bazom. Azurirani podaci na klijentu se prosledjuju do baze(ako nastane neki konflikt prilikom azuriranja, server je zaduzen da ga razresi). Postupak prilikom promene na serveru: server preuzima promene iz baze, obavlja evetualne transformacije, vrsi kompresiju i kriptovanje podataka. Podaci se salju ka klijentu, gde ih preuzima sinhronizacioni sloj i azurira se lokalna baza klijenta.
14) Koju tehnologiju lociranja bi ste upotrebili za razvoj
mobilnog i bežičnog informacionog sistema ukoliko se mobilni objekat kreće tačno predefinisanim putanjama u zatvorenom
prostoru (npr. po obeleženim stazama unutar muzeja), a koju ako ako se u sistemu zahteva visoka preciznost i mobilna aplikacija bi se koristila na
otvorenom prostoru? Obrazložiti. Wireless LAN - Opseg/pokrivenost – Opseg WLAN je od 50 do 150 metara. Propusni opseg – Brzina prenosa podataka je u opsegu od 1 Mbps - 54 Mbps - 600Mbps. Interferencija
– Neki od WLAN standarda podložni su interferenciji sa elektromagnetnim signalima kućne elektronike ili drugih tehnologija bežiĉnih mreža.; Potrošnja snage – Potrošnja snage od strane bežiĉnog adaptera se razlikuje od proizvoda do proizvoda, u zavisnosti od standarda koji implementiraju; Troškovi – Cena WLAN infrastrukture zavisi u velikoj meri od zahteva i primene mreže, kao i od standarda koji je implementiran WLAN konfiguracije - Najjednostavnija WLAN je peer-to-
peer konfiguracija dva ili više uređaja opremljenih bežiĉnim
adapterima. Ove mreže mogu biti proširene dodavanjem wireless access point –a (wireless router). Access point funkcioniše kao repetitor između uređaja, povećavajući opseg mreže. Takođe, access point može da obezbedi i konekciju na fiksnu mrežu, omogućavajući bežiĉnim korisnicima pristup i deljenje resursa u fiksnoj mreži. WWAN (Celularne mreže) - 1 generacija: Analogna, komutacija kola (circuit-switched) (AMPS, TACS); 2G: Digitalna, komutacija kola (GSM) 10 Kbps; Napredna 2G: Digitalna, komutacija kola (HSCSD High-Speed Circuit Switched Data), Internet (WAP) 10 Kbps; 2.5: Digitalna, komutacija paketa (packetswitched), TDMA (GPRS, EDGE) 40 - 400 Kbps; 3G: Digitalna, komutacija paketa, W-CDMA (UMTS), HSDPA 2 Mbps – 14 Mbps; 4G (100 Mbit/s - 1 Gbit/s); Long Term Evolution (LTE), LTE Advanced WiMAX (IEEE 802.16), WiMAX rel2
Ćelijska struktura: Prostor je podeljen u ćelije; Koristi nekoliko nosećih frekvencija, pri čemu te frekvencije nisu iste u susednim ćelijama; Veliĉina ćelija varira od 100 m do 35 km u zavisnosti od gustine naseljenosti, karakteristika podruĉja, snage tranciver-a, itd. Ukoliko mobilni korisnik promeni ćeliju - handover (hand- off); Ukoliko korisnik pređe u ćeliju koju pokriva drugi operater – roaming. Davitko:
Treba nam nešto od lokaciono zavisnih servisa - Lokaciono zasnovani servisi su mobilni informacioni servisi koji se putem bežičnog/žičanog Web-a isporučuju inforomaciju korisniku u zavisnosti od njegove lokacije, ili lokacija mobilnih i/ili stacionarnih objekata od njegovog interesa. Osnovne karakteristike lokaciono zasnovanih servisa su raspoloživost i dostupnost na svakom mestu, u svakom trenutku, kad god je to potrebno, putem mobilnih
(mobilni telefon, PDA, PocketPC, laptop i ručni kompjuteri) ili stacionarnih kompjuterskih uređaja (personalni računari, radne stanice, WebTV).
Naša aplikacije mora da bude: Lokacione aplikacije - *Mapiranje: Prikaz trenutne lokacije na
mapi (često u kombinaciji sa servisima nalaženja)
Način na koji će aplikacija da radi: Mobilno pozicioniranje - Pozicioniranje predstavlja određivanje lokacije objekta, tačnije njeg ove pozicije u prostoru i vremenu u odnosu na određeni prostorni i vremenski referentni sistem; Postoji veliki broj tehnoloških rešenja za mobilno pozicioniranje koja se mogu podeliti u četiri grupe: 1) pozicioniranje zasnovano na mobilnom uređaju (GPS) – (terminal based positioning), 2) pozicioniranje zasnovano na mobilnoj komunikacionoj
(celularnoj) mreži (network based positioning), 3) hibridno pozicioniranje zasnovano i na mobilnom uređaju i na mobilnoj (celularnoj) mreži, 4) pozicioniranje na osnovu posebno razvijene infrastrukture
(obično u zatvorenim prostorima).
ako pričamo o zatvoorenom prostoru to je pod broj 4) . ako pričamo o otvorenom prostoru onda je Hibridan model najbolje, koji bi objedinjavao GPS, WiFi i Cellular network, tada se može postići najbolje moguća preciznost. Za pobošljanje preciznosti može se koristit podrška za DGPS i naravno WAAS. DGPS se Koriste dva GPS prijemnika.. WAAS-osposobljen prijemnik daje pozicionu preciznost bolju od 3 metra, 95% vremena, bez potrebe nabavke dodatne opreme ili
plaćanja pretplate za korišćenje WAAS servisa. EGNOS (Evropa), MFSAS (Asia, Japan)
Pera nabavio PDF: I (2011, 2008) Objasniti pojam samo mobilne samo bezicne I mobilne I bezicne aplikacije I dati primene. Mobilne aplikacije namenjene su mobilnim uredjajima odnosno onim uredjajima koji se mogu lako prenositi sa jedne na drugu lokaciju I koristii u kretanju. Primeri:
kalendar, kontakti, notes, igrice… Bezicne su namenjene bezicnim uredjajima, odnosno uredjajima koji imaju mogucnost konektovanja na drugi racunar/uredjaj putem odredjene komunikacione mreze (npr. IP) bez komunikacionih kablova. Primeri: AirDroid (razmena podataka izmedju telefona i PC-ja), aplikacije za razmenu
poruka, aplikacije za poziv… Mobilni – bezicni uredjaji obuhvataju karakteristike prethodno navedenih uredjaja I u njih se ubrajaju smartphone- ovi, tablet, pocketPC… Primeri: M -trgovina, Mbankarstvo, Informacioni servisi(vremenska prognoza, rezultati utakmica… ), M-reklamiranje. (2009, 2013) Koje su osnovne karakteristike koje poseduju mobilni/bezicni informacioni sistemi koji ih cine razlicitim u odnosu na klasicne informacione sisteme? Mobilni/bezicni informacioni sistemi omogucavaju pristup aplikacijama i servisima u svakom trenutku, sa svakog mesta, kad i gde je potrebno, putem razlicitih mobilnih racunarsko/komunikacionih uredaja. Kompanije zele mobilne aplikacije za poslovne aktivnosti i procese koji su distribuirani u prostoru da: povecaju produktivnost zaposlenih, ubrzaju vreme odgovora na dinamicke situacije i poslovne aktivnosti i povecaju zadovoljstvo korisnika/kupaca i ovakvi informacioni sistemi su zbog ovih karakteristika u prednosti nad klasicnim. II
(2011, 2008) Koje su osnovne razlike bežičnih u odnosu na žičane mreže što doprinosi specifičnim karakteristikama u projektovanju i implementaciji mobilnih/bežičnih informacionih sistema? Koji tip bežične mreže bi ste upotrebili za mobilni i bežični informacioni sistem kada komponente aplikacije treba da se izvršavaju na računarsko-komunikacionim ur eđajima koji su na udaljenosti do 10-ak metara sa brzinom prenosa reda nekoliko Mbps, a
koji ako je njihova udaljenost region ili cela država i zašto? Osnovna razlika bezicne I zicane mreze je u fizickom sloju I sloju veze (data link sloju). Tehnologija zicanih mreza se zasniva na kablovima (optickim ili bakarnim). Prenos podataka u bezicnim mrezama obavlja se koriscenjem elektromagnetnih talasa koji se prenose kroz prostor (pri tome su podlozni rasejanju, refleksiji I slabljenju). Prilikom prenosa kroz proctor podaci se modulisu na nosecu frekvenciju (amplitudna, frekventna I fazna modulacija). Data link sloj kod bezicnih mreza zahteva mnogo slozenije mehanizme nego kod zicanih mreza. Ti mehanizmi se odnose na pristup medijumu, multipleksiranje, korekcija
gresaka, sinhronizacija… Kod bezicnih mreza kvalitet signala je narusen zbog interferencije sa drugim izvorima elektromagnetnog zracenja. Takodje, neophodna je regulacija koriscenja frekvencija jer su korisne frekvencije najcesce skoro potpuno zauzete. Manje su brzine prenosa, vece kasnjenje,
smanjena je sigurnost jer je radio interface dostupan gotovo svakome. Kada imamo racunarsko komunikacione uredjaje na udaljenosti od 10ak metara najbolje je koristiti WPAN (Wireless personal area network) jer zadovoljava oblast pokrivenosti I propusni opseg(0.1 - 4Mbps), a takodje ne zahteva dodatne troskove. Kada je udaljenost region ili drzava, potrebno je koristi WWAN (Wireless wide area network) jer pokriva prostor regiona ili drzave. (2009) 100ak merara u peer-to-peer Koristi se WLAN (Wireless local area network). Ukoliko je potrebno mogu se konfigurisati access points koji ce prosiriti opseg WLAN-a. Kao I Bluetooth kao I 802.15, ali bi signal bio oslabljen jer je gornja granica 100ak metara. III ( 2011) Ukoliko se zahteva razvoj mobilnog i bežičnog informacionog sistema sa mobilnim komponentama
aplikacije na Android i Windows Phone 7 uređajima, koje razvojno okruženje i programske jezike bi ste koristili? Obrazložiti. Ukoliko se razivija aplikacija za Android OS, koristili bismo Eclipse razvojno okruzenje(od verzije 3.4 ili vise) u kombinaciji sa ADT-om (android developer tools). Programski jezik koji se koristi u ovom okruzenju je Java. Postoji mogucnost koriscenja Android Studio-a, medjutim opredelila bih se za Eclipse zbog pouzdanosti s obzirom da se jos uvek radi na poboljsanju Android Studio-a. Na raspolaganju je samo beta verzija. Ukoliko se razvija aplikacija za Windows Phone korsitili bismo VS 2010/2012 Express for Windows Phone jer je okruzenje poznato kao i programski jezik C#. (Mogli bi da se koriste I jezici poput VB, C, C++ ali bih se najkomotnije osecala C#).
(2008) Ukoliko se zahteva razvoj mobilnog i bežicnog informacionog sistema sa mobilnim komponentama aplikacije na PocketPC uredjaju, na koji operativni sistem bi
morali da racunate i koje bi razvojno okruženje koristili? Obrazložiti. Morali bismo da racunamo na Windows Mobile OS jer je najvise zastupljen u segmentu PDA-ova i PocketPC-ova, a cak polako ulazi u segment Smartphone-ova. Razvojno okruzenje je VS sa integrisanim okruzenjima poput Resco MobileForms Toolkit. (2009) Koje su prednosti, a koji nedostaci razvoja mobilne aplikacije u Symbian/C++ razvojnom okruzenju u odnosu na J2ME na istoj hardverskoj platformi (po vasem misljenju). Objasniti. Razvoj mobilne aplikacije u Symbian/ C++ razvojnom okruzenju zbog velikog broja interfejsa i klasa ima spor i dugacak razvojni ciklus sto predstavlja nedostatak u poredenju sa J2ME. Posto razmatramo slucaj razvoja na istoj hardverskoj platformi, ako je ta platform npr. Nokia, svakako je bolje koristiti Symbian razvojno okruzenje .
Symbian je nepogodan jer aplikacije pisane za jednu verziju telefona, nisu kompatibilne za druge. Tesko se prevode. J2ME je bolje za aplikacije sa manjim preformansama I uredjajima sa slabijim performansama. (2013) Okruzenje I programski jezik za Android i iPhone uredjajima. Koje su prednosti, a koji koji nedostaci razvijanja aplikacija na jednoj u odnosu na drugu. Ukoliko se razivija aplikacija za Android OS, koristili bismo Eclipse razvojno okruzenje(od verzije 3.4 ili vise) u kombinaciji sa ADT-om (android developer tools). Programski jezik koji se koristi u ovom okruzenju je Java. Postoji mogucnost koriscenja Android Studio-a, medjutim opredelila bih se za Eclipse zbog pouzdanosti s obzirom da se jos uvek radi na poboljsanju Android Studio-a. Ukoliko se razvija aplikacija za iPhone uredjaj koristi se razvojno okruzenje XCode, a programski jezik je Objective C. Ovaj programski jezik bi se koristio iz tog razloga sto danas Apple inzenjeri preporucuju ovu varijantu C-a kao najbolju kreiranu dosad. IV (U skladu sa svim) Ukoliko se zahteva razvoj mobilnog i
bežičnog informacionog sistema pri čemu želite da mobilna aplikacija bude raspoloživa na svim mobilnim platformama koju bi ste arhitekturu izabrali i koje tehnologije na strani klijenta bi ste koristili za r azvoj aplikacije? Obrazložiti. Najbolje je koristiti bezicni Internet, jer bi za koriscenje neke aplikacije bio potreban samo microbrowser I ne bi zavisila od konkretne platforme mobilnog uredjaja. Tehnologija na strain klijenta je tanki klijent odnosno klijent koji samo pristupa pretrazivacu I salje sahteve server na kome se obavlja sva obrada I logika. V
(2011) Ukoliko se zahteva razvoj mobilnog i bežičnog informacionog sistema gde korisnik preko mobilne klijentske aplikacije treba da dobije obavešten je o nastalim
događajima na serveru (npr. promena podataka ili stizanje novih podataka sa senzora koji ispunjavaju zadati uslov), koje bi ste tehnologije koristili za implementaciju ovakvog
informacionog sistema i na koji način? Obrazložiti. U ovom slucaju bi se koristila arhitektura Bezicne razmene poruke koje se odnose na obavestenja i alarme, sa tehnologijama mobilnih mreza poput HDML (Handled Device Markup Language) alarma i WAP Push-a (Wireless Application Protocool). Ove tehnologije se odnose na razmenu poruke koju inicira server nakon cega se na strani klijenta vrsi predvidjena aktivnost zasnovana na sadrzaju poruke. HDML alarmi predstavljaju Markup Language koji je slican HTML-u sa razlikom sto se koristi za Wireless I mobilne uredjaje sa malim display-evima. WAP Push koristi WAP protocol kako bi podatke koje su poslati sa server modifikovao za prikaz podogan za mobilne uredjaje. Neke od aplikacije koje koriste WAP Push sun pr. aplikacije za azuriranje vremena poletanja/sletanja aviona u avio kompanijama, aplikacije zasnovane na informacijama o
akcijama na berzi… Kada bi klijent zahtevao komunikaciju:
Kada korisnik zahteva komunikaciju sa serverom koristio bi se smart client koji bi zahteve slao preko HTTP protokola. One stavke za slanje zahteva. Samo WAP 1 preko proxyja koji prevodi u HTTP, a 2 nema proksija nego direktna komunikacija sa serverom.
VI
(2011, 2008) Ukoliko se zahteva razvoj mobilnog i bežičnog informacionog sistema gde korisnik mobilni deo aplikacije
koristi u vožnji (npr. za navigaciju i navigacione instrukcije) koje tehnike korisničkog interfejsa i interakcije korisnika sa aplikacij om bi ste implementirali, imajući u vidu sve karakteristike i uslove korišćenja aplikacije? Obrazložiti. Kod ovakve aplikacije pogodno je koristiti interfejse zasnovane na formama sa minimalnim unosom u forme, interfejse zasnovane na govornom jeziku I one zasnovane na touch gestovima. Interakcija sa korisnikom treba da bude minimalna, a da daje sto bolju funkcionalnost. Moguce je koristiti I kombinaciju unosa u forme, touch gestova i govornog jezika. Bitno je da ovakve aplikacije imaju sto brzi odziv kako ne bi ometale uslove koriscenja. (2009, 2013) Koje su osnovne karakteristike interakcije korisnika sa mobilnom/bezicnom aplikacijom koje ih razlikuju u odnosu na staticke (desktop) aplikacije. Mobilni korisnik se krece, i tako menja lokaciju, uslove i okruzenje u kome koristi uredaj i odgovarajucu mobilnu aplikaciju. Mobilni korisnik uglavnom nije fokusiran na aplikaciju, jer je koristi u pokretu radeci vise drugih poslova istovremeno (vozi, seta, razgleda okolinu, itd.) Mobilni korisnik cesto zahteva visok stepen interaktivnosti i brzi odziv aplikacije. Mobilni korisnik menja aktivnosti cesto i/ili iznenadno, tipicno to nisu aktivnosti/zadaci koji ukljucuju veliku kolicinu podataka i duge transakcije. Mobilni korisnik zeli da pristupa aplikaciji na svakom mestu u svakom trenutku preko najpogodnijeg nacina (moda) za interakciju; izbor omogucava fleksibilnost i upotrebljivost aplikacije VII
Ukoliko se zahteva razvoj mobilnog i bežičnog informacionog sistema za rad na terenu (npr. antiterorističke jedinice) pri čemu se na klijentu koriste podaci sa servera i nakon diskonekcije, kao i po potrebi menjaju ili prikupljaju novi, koje bi ste tehnike za upravljanje podacima u ovakvom
okruženju koristili? Obrazložiti. Koristile bi se aplikacije sa pametnim klijentom odnosno aplikacije sa instaliranim softverom na mobilnom uredjaju koji ima mogucnost pristupa lokalnim podacima I aplikacionoj logici. Pametni klijenti su izbor iz tog razloga sto su podaci uvek dostupni, interfejs ovakvih aplikacija je bogat pa je iz tog razloga vrlo pogodan za koriscenje, perforamnse su poboljsane, postoji visok stepen sigurnosti sto je izuzetno vazno jer su podaci koji se prikupljaju na terenu od sustinske vaznosti a I troskovi nisu previsoki. Opisati princip sinhronizacije podataka u moblnim I distribuiranim informacionim sistemima I softverske komponente koje se pri tome koriste. Opisati princip
sinhronizacije mobilnog klijenta sa centralnim serverom pri cemu I na klijentu I na serveru postoje promene u podacima. Baze podataka 26. Tehnike 30. slajd VIII (2011,2008) Koju tehnologiju lociranja bi ste upotrebili za
razvoj mobilnog i bežičnog informacionog sistema ukoliko se mobilni objekat kreće tačno predefinisanim putanjama u zatvorenom prostoru (npr. po obeleženim stazama unutar muzeja), a koju ako ako se u sistemu zahteva visoka preciznost i mobilna aplikacija bi se koristila na otvorenom
prostoru? Obrazložiti. Ukoliko se mobilni objekat krece tacno predefinisanim putanjama u zatvorenom prostoru koristi se WIFI fingerprinting. Tehnika se zasniva na tome da distribucija radio signala pokazuje jedinstvene sablone tj. referentne tacke u diskretnim pozicijama nekog prostora. Snimanjem i pamcenjem podataka koji opisuju sablone I njihovim asociranjem sa diskretnim lokacijama u kojima su podaci snimljeni, omogucavaju poredenje tih podataka sa podacima koji ce biti snimljeni u buducnosti. Kada se u buducnosti, na nekoj lokaciji, snime odgovarajuci podaci o radio signalima, ti novi podaci se mogu uporediti sa prethodno snimljenim podacima. Kada se pronade najbolje poklapanje novih podataka sa starim snimljenim podacima, lokacija koja je asocirana sa starim podacima je najverovatnije i lokacija na kojoj su snimljeni novi podaci. Pomenuti sabloni, odnosno podaci o signalima snimljeni na nekoj lokaciji se nazivaju
“otisci” (eng. Fingerprint). Jedan otisak na nekoj lokaciji predstavlja skup informacija (MAC adresa, jacina signala, ime mreze, kanal i dr.) o signalima svih access point-a ciji se signal moze registrovati na datoj lokaciji. Na osnovu otisaka za veliki broj diskretnih lokacija na nekom prostoru, kreira se
takozvana “radio mapa” tog prostora. Dve faze: Faza obuke (Training phase) i Faza pozicioniranja (Realtime phase) Slicnost izmedu otisaka iz radio mape i trenutno snimljenog otisaka, najcesce se odreduje primenom Euklidovog algoritma rastojanja. U drugom slucaju koristi se GPS (kad nema prepreka). Sateliti emituju jedinstveni signal koji ukljucuje i vremenske informacije. Rastojanje od satelita se odreduje merenjem vremena prenosa ovog signala (koji se krece brzinom svetlosti). Usled gresaka u casovniku, i drugih mogucih gresaka, dobija se tzv. pseudo rastojanje. Triangulacija: Lokacija prijemnika se nalazi u preseku tri sfere, ciji su poluprecnici rastojanja do satelita. Cetvrti satelit se koristi zbog problema sa sinhronizacijom clock-a i odredivanja tacne pozicija Celularne mreze bi se koristile u urbanism podrucjima. (One koriste bazne stanice I celularnih mreza se vrsi pozicioniranje korisnika.) (2009, 2013) Koju tehnologiju lociranja biste upotrebili za razvoj mobilnog I bezicnog informacionog sistema ukoliko se ne zahteva velika preciznost (reda oko 300 metara) ali neophodno lociranje I u zatvorenim I u polu zatvorenim urbanim podrucijima. Kako biste unapredili metodu pozicioniranja ako se zahteva veca preciznost (100-ak metara). Objasniti. AGPS treba. Mada mozda moze I Cell-ID
Cell-ID se moze smatrati pogodnom metodom za lociranje u ovom slucaju. Ova metoda za pozicioniranje kao lokaciju uzima coordinate bazne stanica koja u tom trenutku opslizuje mobilni uredjaj korisnika (putem koje on I obavlja komunikaciju). Preciznost u veilkoj meri zavisi od velicine celija mobilne mreze. Tipicna velicina je oko stotinak metara u urbanim segmentima mreze dok je u ruralnim podrucjima vise kilometara sto predstavlja aproksimativnu preciznost ove metode. Vreme odziva prilikom odredjivanja lokacije je 2 – 5 sekundi (obicno 2.5s). Da bi se omogucila preciznost na oko 100ak metara neophodan je dodatni uredjaj, LMU(Location Measurement Unit), cija je lokacija poznata (od strane GPS-a). Radi se o E-ODT (Enhanced Observed Time Difference) metodi. Ona na osnovu signala primljenih sa baznih stanica u okruzenju mobilnog uredjaja meri razliku u vremenu neophodnom da signal stigne do mobilnog uredjaja. Vremenska razlika se koristi za izracunavanje udaljenosti uredjaja u odnosu na bazne stanice. Mobilni uredjaj mora da poseduje informacije o baznim stanicama iz okruzenja, njihove tacne lokacije, kao I vremenske informacije. Alternativno, mobilni uredjaj moze da posalje svojoj mobilnoj mrezi izmerene vrednosti razlike pristiglih signala, tako da se neophodna izracunavanja obave u okviru GMLC.
IX
(2008,2011)Šta je kontekst i zašto je on znacajan u mobilnim i bežicnim informacionim sistemima? Kontekst kod mobilnih I bezicnih informacionih Sistema je od izuzetne vaznosti iz tog razloga sto uz pomoc promena koje se desavaju u spoljasnjoj sredini, mobilni uredjaj je u stanju da na osnovu tih promena definise ponasanje svojih procesa. Pojam konteksta posebno je interesantan danas jer unosi dosta fleksibilnosti kod korisnika mobilnih uredjaja, posebno kod korisnika smartphone-ova. Sve informacije o korisniku, njegovom uredjaju, bezicnu mrezu I okruzenje u kome se nalazi su znacaje za koriscenje mobilne aplikacije. (2009,2013)Sta se sve moze unaprediti u mobilnoj aplikaciji ukoliko postoje mogucnosti za odredjivanje lokacije mobilnih korisnika? Kako biste u informacionom sistemu koristili podatke o lokaciji? Obrazloziti. X (2011)Navesti i ukratko opisati probleme u vezi privatnosti u lokaciono-zasnovanim i kontekstno-svesnim servisima i
predložite rešenje kojim bi se izbegli/smanjili ovi problemi. Medju korisnicima mobilnih uredjaja postoji strah od povrede privatnosti u tom smislu sto se u svakom trenutku zna njihov polozaj kao I putanja kojom su se kretali sto mnogima predstavlja zastrasujucu cinjenicu. Lokacija I kretanje korisnika se registruju I bez njihovog znanja I to cesto u cilju njihove sopstvene bezbednosti. U Evropi na primer, postoji direktiva iz 2000. Godine prema kojoj korisnik mora da bude obavesten o koriscenju lokacionih podataka. Pretplatnici