Appi valmimisel toimus murrang - kood sai piisavalt täiendust ning nüüdeks on rakendus suuteline üles salvestama asukoha, sünkroniseerima selle andmebaasi, võtma andmebaasist salvestatud teekonna punktid ning kuvama need joonena kaardile.
Veider on aga see, et meie rakenduse valmimisel on ettetulnud mitmeid, meist mitte olenevaid takistusi. Tänaseks probleemiks võib pidada liiga pakse majaseinu, mille tõttu LastNight esialgu elumärke taaskord ei näidanud. Kuid peale mitmekordset õues käiku, läks rakendus lõpuks tööle.
Loo moraaliks on see, et ärge arendage oma koodi Eesti Rahvusraamatukogu paksude müüride vahel..muidugi juhul kui GPSi on vaja ?!
Saturday, November 23, 2013
Friday, November 22, 2013
Retsentsioon
Retsentseerisime meeskonna "!" projekti analüüsi.
Retsenseeritavasse meeskonda kuuluvad Jander Lapmaa, Mihkel Ehrlich ja Fred Moritz.
Meeskonna projekti põhieesmärgiks on luua IT firmale lao- ja remondihaldussüsteem.
Analüüs on koostatud vastavalt etteantud kirjeldusele, tänu millele on alapunkte lihtne jälgida ning kergelt arusaada, mis/milleks/kellele projekti luuakse. Kuigi sõnade arv ei ole vastavuses etteantud 700 sõnaga, on tegu siiski sisuka analüüsiga, millel, nagu eelpool mainitud, on nõuetekohane ülesehitus.
Analüüsis kirjeldatakse, millist rakendust kasutatakse projekti elluviimiseks. Lihtsa näite abil kirjeldatakse, miks üldiselt võiks mõni tehnika müügiga ja remontimisega tegelev firma nende loodavat rakendust oma igapäevasesse töösse siduda.
Vastavalt ülesande püstitusele on meeskond oma analüüsi käigus välja toonud punktidena eesmärgid, mida projekti käigus loodav rakendus kindlasti teha võiks.
Miinusena analüüsi kohta võiks välja tuua võimalike probleemide nimekirja puudumine. Kuigi paljud tõrked tekivad alles töö käigus, kujunevad eesmärkide püstitamisel siiski välja mingid aspektid, millesse tuleks rohkem süveneda. Lisaks aitaks ülesannete lahterdamine võimalike probleemide tekkimise järgi kaasa ajaplaneerimisele.
Analüüsis on hästi välja toodud ka need funktsioonid, mida võiks rakendusele tulevikus juurde lisada.
Retsenseeritavasse meeskonda kuuluvad Jander Lapmaa, Mihkel Ehrlich ja Fred Moritz.
Meeskonna projekti põhieesmärgiks on luua IT firmale lao- ja remondihaldussüsteem.
Analüüs on koostatud vastavalt etteantud kirjeldusele, tänu millele on alapunkte lihtne jälgida ning kergelt arusaada, mis/milleks/kellele projekti luuakse. Kuigi sõnade arv ei ole vastavuses etteantud 700 sõnaga, on tegu siiski sisuka analüüsiga, millel, nagu eelpool mainitud, on nõuetekohane ülesehitus.
Analüüsis kirjeldatakse, millist rakendust kasutatakse projekti elluviimiseks. Lihtsa näite abil kirjeldatakse, miks üldiselt võiks mõni tehnika müügiga ja remontimisega tegelev firma nende loodavat rakendust oma igapäevasesse töösse siduda.
Vastavalt ülesande püstitusele on meeskond oma analüüsi käigus välja toonud punktidena eesmärgid, mida projekti käigus loodav rakendus kindlasti teha võiks.
Miinusena analüüsi kohta võiks välja tuua võimalike probleemide nimekirja puudumine. Kuigi paljud tõrked tekivad alles töö käigus, kujunevad eesmärkide püstitamisel siiski välja mingid aspektid, millesse tuleks rohkem süveneda. Lisaks aitaks ülesannete lahterdamine võimalike probleemide tekkimise järgi kaasa ajaplaneerimisele.
Analüüsis on hästi välja toodud ka need funktsioonid, mida võiks rakendusele tulevikus juurde lisada.
Loobusime pushpinidest, sest nädalaid kestnud ikaldus ei tasunud end ära. Tõepoolest, ühtlase joone kuvamine vastavalt koordinaatide muutusele on kahjuks mitmeid kordi lihtsam.
Üleüldiselt on käes taaskordne ühine nädalavahetus projekti kirjutamiseks. App töötab, saates andmebaasi koordinaate, esialgu esineseid viperused, sest koordinaatide saatmine toimus liiga harva, olenemata et intervalliks oli seatud 5sekundit. Õnneks vastav probleem lahenese kiiresti, sest Margus vahetas ajaintervalli välja asukoha muutuse vastu, mis tagas ühtlase koordinaatide saatmise andmebaasi.
Homne päev peaks tooma koordinaatide andmebaasist võtmise ning nende abil ühtlase joone moodustamise kaardil, hetkel toimub joone moodustamine vastavalt käsitsi kirjutatud suvalistel koordinaatidel. Samuti tuleb veel andmebaasis mõningaid muudatusi läbi viia.
Üleüldiselt on käes taaskordne ühine nädalavahetus projekti kirjutamiseks. App töötab, saates andmebaasi koordinaate, esialgu esineseid viperused, sest koordinaatide saatmine toimus liiga harva, olenemata et intervalliks oli seatud 5sekundit. Õnneks vastav probleem lahenese kiiresti, sest Margus vahetas ajaintervalli välja asukoha muutuse vastu, mis tagas ühtlase koordinaatide saatmise andmebaasi.
Homne päev peaks tooma koordinaatide andmebaasist võtmise ning nende abil ühtlase joone moodustamise kaardil, hetkel toimub joone moodustamine vastavalt käsitsi kirjutatud suvalistel koordinaatidel. Samuti tuleb veel andmebaasis mõningaid muudatusi läbi viia.
Tuesday, November 19, 2013
Pushpinid
Pushpinid võtavad lõpuks ilmet ning asukohtade kuvamine kaardil liikus suure sammu edasi.
Samal ajal on küsimusi, mis vajavad arutamist - kas meie rakendus peaks ka ilma internetiühenduseta töötama või ainult internetiga ? Kuidas sünkroniseerida andmed korralikult localhostist andmebaasi?
Samal ajal on küsimusi, mis vajavad arutamist - kas meie rakendus peaks ka ilma internetiühenduseta töötama või ainult internetiga ? Kuidas sünkroniseerida andmed korralikult localhostist andmebaasi?
Friday, November 15, 2013
Analüüs rakendusele Last Night App
LastNight
App (edasipidi LNA ) on rakendus, mis aitab kasutajal salvestada enda
asukohta. Rakendus salvestab asukohad IsolatedStorage-sse, soovi
korral on kasutajal võimalus oma asukohad ka meie andmebaasi
salvestada. Salvestamise mõte on selles, et telefoni vahetades saab
vanad asukohad uuesti alla laadida ning võimaluse korral loome ka
sõpradega asukohtade jagamise võimaluse. Rakendus LNA koosneb
WebApi-st ja Windows Phone 8 rakendusest. WebApi puhul on tegemist
raamistiku laiendusega, mille ideeks on muuta lihtsamaks veebipõhiste
API-de loomine, meie rakenduse puhul on WebApi põhiülesandeks
andmete jagamine kasutajate vahel, samuti salvestusfunktsioon, sest
sinna talletatakse kasutajate Live Connect id-d, koordinaadid ja
sõbralisti.
Lahenduse
eesmärk on pakkuda kasutajale võimalust jälgida enda ja/või
nõusoleku andnud sõprade asukohta. Siinkohal oleme mõelnud paari
võimaluse peale, mida meie rakendus kindlasti täita võiks:
1) “Kus ma eile olin?“ - kasutaja asukoht saadetakse apisse perioodiliselt iga n minuti tagant, säästmaks kasutaja telefoniakut, mis tühjeneks järjepideval asukohtade saatmisel märgatavalt kiiremini.
2) Enda ja sõprade asukoha kuvamine kaardil pushpinide abil. Pushpinidel on märgitud ka kellaaeg, millal selles asukohas oldi, lisavõimalusena võimalus lisada kommentaar või info vastavalt pushpinile.
1) “Kus ma eile olin?“ - kasutaja asukoht saadetakse apisse perioodiliselt iga n minuti tagant, säästmaks kasutaja telefoniakut, mis tühjeneks järjepideval asukohtade saatmisel märgatavalt kiiremini.
2) Enda ja sõprade asukoha kuvamine kaardil pushpinide abil. Pushpinidel on märgitud ka kellaaeg, millal selles asukohas oldi, lisavõimalusena võimalus lisada kommentaar või info vastavalt pushpinile.
Võimalused,
mida proovime rakendada, kuid esialgu on nice-to-have kategoorias:
1)
Asukoha sõpradega jagamine – kõige pealt määrata kellega
asukohta jagada, ning siis võimalik kas manuaalselt update-da
asukohta või lasta iga n minuti järel oma andmed WebApi-sse saata
2)
Sõbralisti toimimisel saaksime kasutajate vahelisi koordinaate
sorteerida kasutajale huvi pakkuval moel. Järgnevad parameetrid
võivad olla kasutaja poolt defineeritud ükskõik millisteks.
Näiteks saaksime kuvada kasutajale kõik tema sõbrad, kes on olnud
temast 50m/500m/2km/100km raadiuses viimase minuti/tunni/päeva
jooksul.
Usume,
et meie rakendus oleks tavakasutajale huvipakkuv, sest hilisema
edasiarenduse käigus võib lisada näiteks võimaluse vaadata, kus
asub laps, kes kasutab LNAd. Lisaks reisimiseks mõeldud
funktsionaalsus, salvestades oma teekond, et hilisem tagasiliikumine
ei valmistaks probleeme.
Kasutajalt
registreerimist ei nõuta, küll aga on vajalik MS Account olemasolu,
sest autentimine toimub läbi Live Connecti. Live Connectist küsime
andmeid basic ja email scope ulatuses. Emaili alusel hakkab toimuma
sõprade lisamine kasutajatelisti.
Turvalisuse
tagamiseks suhtleb rakendus WebApi-ga ainult üle HTTPS. Azure
keskkonnas hostides on HTTPS kohe olemas, piisab sellest, kui
päringud saata https://lastnight.windowsazure.com/api.
Sellisel kujul saadetud päringud on krüpteeritud ning kõrvalisel
isikul on nende lugemine raskendatud. Kasutades Live Connect-i, saame
iga kasutaja jaoks unikaalse id, mille alusel hakkame kasutajat enda
andmebaasis tuvastama. Kuna Live Connectist saadud token on püsiv,
tasub mõelda süsteemile, mis teeks perioodiliselt uue
autoriseerimistokeni ning saadaks lisaks Live Connectist saadud
tokenile ka tolle ajutise tokeni WebApi-sse autoriseerimiseks.
Problemaatiliseks
võib osutuda rakenduse töötamine taustal.
Samuti cutom pushpinide kuvamine, sest tegu on uuendusega, mis tuleneb wp8ga ning abimaterjale küll on, kuid neid pole siiski väga palju.
Sõbralisti kujutamine c#s läbi entity frameworki.
Samuti cutom pushpinide kuvamine, sest tegu on uuendusega, mis tuleneb wp8ga ning abimaterjale küll on, kuid neid pole siiski väga palju.
Sõbralisti kujutamine c#s läbi entity frameworki.
Tööjaotus:
Andmebaasi
kujundamisel osalevad kõik grupiliikmed. Funktsionaalsusest ühte
moodi arusaamiseks on vajalik, et kõik oleksid teadlikud ka
kasutusel olevast andmemudelist. Mudeli loomisel kasutame omandatud
teadmisi ainest Andmebaaside alused, mis on andnud põhjalikud
alusteadmised andmebaasi loomiseks.
WP8
rakenduse arenduses osalevad kõik grupiliikmed võrdselt. Arenduse
sujuvaks toimimiseks on vajalik, et kõik liikmed oleks
arendustegevusse kaasatud ja annaks oma panuse. Tähtsamad küsimused
ala andmete flow ning ühendumine WebApi-ga lahendame ühiselt, et
kõigil oleks samasugune arusaam Appi toimimisest. Disain ja
kasutajaliides on punktid, millega saame tegeleda ka eraldi, ning ei
ole vajalik koos töötamine. Üldises plaanis üritame teha vähemalt
6-10 intensiivset koostöötamispäeva, mis tagaks info ühtlase
ülekande, samal ajal kasutame ka fleep.io-d ning Team
Foundation Service'it http://tfs.visualstudio.com/
tähtsamate punktide arutamiseks.
WebApi
arendusega on seotud Margus ja Andres.
Telefoniga
seotud tegevused – kaardiga seotu/ pushpinide ( windows phone 8
toolkiti abil ) kuvamine jääb Piia ja Dorise õlule. Tänu WP8
uuendustele tegeleme ka rakenduse tööle saamisega taustal, et juhul
kui kasutaja kasutab muid rakendusi või on telefon lukustatud,
saadaks meie telefon siiski asukohti andmebaasi.
Blogipostitustega
tegeleb Piia ning Doris, hoides silma peal kirjalikel ülesannetel
ning ülevaate andmisele projekti käekäigust.
API-st
info saamine:
//GET
1) “eilsete õhtute list“ api/locations/gettracking/userid
2) eile õhtu koordinaadid api/locations/getlocations/userid/trackingid
3) minuga jagatud asukohad api/locations/sharedwithme/userid
//GET
1) “eilsete õhtute list“ api/locations/gettracking/userid
2) eile õhtu koordinaadid api/locations/getlocations/userid/trackingid
3) minuga jagatud asukohad api/locations/sharedwithme/userid
APIsse
info saatmine:
//POST
– Andmed
saadame üle võrgu serialiseeritud
objektidena, osadel juhtudel saadame andmed POST meetodiga
kontrolleri aadressile, lisades valikulisi parameetreid näiteks
/api/locations/savelocation?security=true
1)
Uue kasutaja registreerimine: api/users/registeruser
2)
Tracking objekti salvestamine api/locations/createtracking
3)
Asukoha salvestamine api/locations/savelocation?trackingid=42
Andmebaasi
ja Api hostime Windows Azure keskkonda, mis kujutab endast paindlikku
pilve platvormi, mis lubab kiiresti ehitada, paigaldada ning hallata
appe üle globaalse Microsofti võrgu.
Must
have
LNA
rakendus peaks kindlasti olema suuteline edastama rakendust kasutava
inimese asukohti andmebaasi, salvestama need ning vajadusel pakkuma
võimalust neid uuesti hilisemalt pärida. Teekond peaks olema
märgitud kas pushpinide või joone abil. Samuti on oluline, et meie
rakendus oleks võimeline töötama ka taustal s.o. Segamatult
teistest rakendustest ning ka juhul kui telefoni ekraan on lukus.
Nice
to have
1)Meie
rakenduse lisavõimalusena võiks olla suutlikus jagada meie teekondi
valitud kasutajatega ning võimalus vaadata ka teiste kasutajate
teekondi, juhul kui nad neid meiega jagavad.
2)
WebApi turvaprotokoll, mis jagab kasutajale sisselogides uue tokeni,
mida hakatakse hilisemate päringute puhul kontrollima. See muudaks
Api oluliselt turvalisemaks.
Thursday, November 14, 2013
2.nädal (4.11-10.11)
Esimene koosviibimine projekti teostamiseks.
Projektijuht Margus annab ülesanded vastavaks päevaks:
Doris ja Piia tegelevad kaardile pinide kuvamisega.
Andrese ülesandeks leida võimalus asukoha perioodiliseks salvestamiseks. ( Uurida kas selleks on vajalik background service või on selleks mingisugune teine võimalus ? )
Margus ise tegeleb sisselogimise arendamisega( Live Connect) ning testib asukohtade sisestamise toimimist.
Samas leiame end juba esimeste probleemide küüsist, mis peamiselt seisnevad selles, et windows 8 pro asemel on nii Piial kui ka Andresel windows 8, selle ümber installeerimine võtab põhimõtteliselt ära kõik reedese päeva ning tööga saab hoogsalt pihta hakata alles laupäeval.
Projektijuht Margus annab ülesanded vastavaks päevaks:
Doris ja Piia tegelevad kaardile pinide kuvamisega.
Andrese ülesandeks leida võimalus asukoha perioodiliseks salvestamiseks. ( Uurida kas selleks on vajalik background service või on selleks mingisugune teine võimalus ? )
Margus ise tegeleb sisselogimise arendamisega( Live Connect) ning testib asukohtade sisestamise toimimist.
Samas leiame end juba esimeste probleemide küüsist, mis peamiselt seisnevad selles, et windows 8 pro asemel on nii Piial kui ka Andresel windows 8, selle ümber installeerimine võtab põhimõtteliselt ära kõik reedese päeva ning tööga saab hoogsalt pihta hakata alles laupäeval.
Tuesday, November 5, 2013
1.nädal ( 28.10 - 3.11)
Projekti algus.
Paika saab pandud tööjaotus ning üldine konseptsioon, mis oleks vaja teha ja milliseks ajahetkeks.
Loodud saab ka wikileht meeskonnale ning blogi, et kajastada projekti kulgu.
Paika saab pandud tööjaotus ning üldine konseptsioon, mis oleks vaja teha ja milliseks ajahetkeks.
Loodud saab ka wikileht meeskonnale ning blogi, et kajastada projekti kulgu.
Subscribe to:
Posts (Atom)