Kort%Reloaded! Studienarbeit%
|
|
- Carl Gärtner
- vor 8 Jahren
- Abrufe
Transkript
1 Kort%Reloaded Studienarbeit% AbteilungInformatik HochschulefürTechnikRapperswil Frühjahrssemester2013 Autoren: CarmeloSchumacher,AnnritaEgli Betreuer: ProfessorStefanKeller Projektpartner: bitforgeagzürich Experte: ProfessorStefanKeller Gegenleser: ProfessorAndreasRinkel
2 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Erklärung Icherklärehiermit, dassichdievorliegendearbeitselberundohnefremdehilfedurchgeführthabe, ausserderjenigen,welcheexplizitinderaufgabenstellungerwähntistodermit dembetreuerschriftlichvereinbartwurde, dassichsämtlicheverwendetenquellenerwähntundgemässgängigen wissenschaftlichenzitierregelnkorrektangegebenhabe. Ort,Datum: Ort,Datum: Name,Unterschrift: Name,Unterschrift: 2
3 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Abstract Ausgangslage) Kort isteininnovatives,locationnbasedwebappfüriphone,androidundtabletszur VerbesserungfehlenderDateninOpenStreetMap.EingereifterPrototypdavonwurde alsbachelorarbeitimhs2012anderhsrentwickelt(vgl.website: Aufgabe) ZieldieserArbeitwares,diedurchschnittlicheAnzahlInteraktionenderUsermitder KortNAppzuerhöhensowiedenaktivenSpielerstammauszuweiten.Diessolltemittels einemerweitertenfunktionsumfang,derintegrationneuerfehlerquellenundeiner verbessertenspielprozessführungerreichtwerden. Ergebnis) DerFunktionsumfangderKortNAppwurdeumzeitlichbeschränkte,ortsbasierteKortN Aktionensowieeininternes,aufeinemAtomNFeedbasiertesNewssystemerweitert. DamitstehendenKortNAdministratorenneuWerkzeugezurVerfügung,umdas SpielverhaltengezieltanzuregenunddasGefühlderCommunityNZugehörigkeitzu stärken.dielogikzureinbindungvonfehlernalsspielmissionenwurdeüberarbeitet undeinezusätzlichedatennquelleintegriert(datenbankeosmdboneaminstitut). DamitkönnenneueFehlertypenaufgenerischeArtundWeiseerstelltundfürdasSpiel nutzbargemachtwerden,wasdieattraktivitätfürdenspielerunddennutzenfürdas OpenStreetMapNProjekterhöht.Überprüfungen,diefürdieGütederbeantworteten Missionenverantwortlichsind,werdennunzusammenmitdenMissionenaufder Spielkarteangezeigt,wasdenAnreizzurBearbeitungdurchdieNutzererhöhensoll. ZudemwurdenweitereVerbesserungenundFehlerbereinigungenumgesetzt. 3
4 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Management(Summary Ausgangslage) Kort isteininnovatives,locationnbasedwebappfüriphone,androidundtabletszur VerbesserungfehlenderDateninOpenStreetMap.EingereifterPrototypdavonwurde alsbachelorarbeitimhs2012anderhsrentwickelt. ZieldieserFortsetzungsarbeitwares,diedurchschnittlicheAnzahlInteraktionender UsermitderKortNAppzuerhöhensowiedenaktivenSpielerstammauszuweiten.Dies sollteübereinenerweitertenfunktionsumfang,neuenfehlerquellenundeiner verbessertenspielprozessführungerreichtwerden. DieursprünglicheAufgabenbeschreibungsahlediglichdieImplementationder Clientseitevor.DieServerseitesollteeinMasterstudentalsProjektarbeitdurchführen undunsviaapizurverfügungstellen.dieserbrachjedochseinearbeitab.umdaskortn Projektdennochabschliessenzukönnen,übernahmenwirauchdieImplementationder Serverseite. Vorgehen)/)Technologien) UmStörungenimlaufendenBetriebderKortNApplikationzuvermeiden,wurde entschieden,eintestsettinganalogzurliveversionaufzubauenundaufdiesemzu entwickeln.dazuwurdedieba_hunzikeroderbolzernversiongeforktundeine EntwicklungsversionderDatenbankaufeinemeigenenvServerderHSRaufgesetzt. NachProjektabschlusswurdedieEntwicklungsversionviaPullNRequestmitder produktivenversiongemergt. BeidenvonunsverwendetenTechnologienlegtenwirdenFokusaufOpenSourceN Produkte.AnzuschaffengabeslediglichdieWebstormIDEvonJetBrains. Ergebnisse) DerFunktionsumfangderKortNAppwurdeumzeitlichbeschränkte,ortsbasierteKortN Aktionensowieeininternes,aufeinemAtomNFeedbasiertesNewssystemerweitert. DamitstehendenKortNAdministratorenneuWerkzeugezurVerfügung,umdas SpielverhaltengezieltanzuregenunddasGefühlderCommunityNZugehörigkeitzu stärken.dielogikzureinbindungvonfehlernalsspielmissionenwurdeüberarbeitet undeinezusätzlichedatennquelleintegriert(datenbankeosmdboneaminstitut). DamitkönnenneueFehlertypenaufgenerischeArtundWeiseerstelltundfürdasSpiel nutzbargemachtwerden,wasdieattraktivitätfürdenspielerunddennutzenfürdas OpenStreetMapNProjekterhöht.Überprüfungen,diefürdieGütederbeantworteten Missionenverantwortlichsind,werdennunzusammenmitdenMissionenaufder Spielkarteangezeigt,wasdenAnreizzurBearbeitungdurchdieNutzererhöhensoll. ZudemwurdenweitereVerbesserungenundFehlerbereinigungenumgesetzt. ) 4
5 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Ausblick) WährendunsererStudienarbeithabenwirvieleIdeenfürdieVerbesserungvonKort umsetzenkönnen.essindabernachwievorideenvorhanden,wasnochgetanwerden könnteumdiekortnappnochspannenderzugestalten. EinwichtigerFortschrittwäredasautomatischeuploadendervondenKortNUsern vollständiggelöstenaufgabenaufopenstreetmap.zurzeitwerdendielösungenauf derwebsitevonkortaufgelistetundkönnenvondortausvonhandaufopenstreet Mapübertragenwerden.DadieseLösungenvondenKortNUsernbereitsüberprüft wurden,istdiesemanuelleübertragungeinaufwand,derautomatisierbarwäre. DieKortWebsite 1 wurdevonba_hunzikeroderbolzaufdeutscherstellt.damittlerweile sehrvielekortnuserdieappinenglischnutzen,wäreeineübersetzungderwebsite zumindestaufenglischwünschenswert. DieStatistikenaufderWebsitekönntenerweitertwerdenmitStatistiken,dieausKortN Aktionenhervorgehen.DadiebestehendenStatistikenzumTeilverwirrenddargestellt werden,wäreeinegenerellerevisionderstatistikseiteangebracht. MitdieserRevisionwärenauchzusätzlicheHighscoresdenkbar.MankönnteTabellen fürdiefleissigstenkortnuserinverschiedenenzeitabschnittenerstellen,wiezum BeispielwerletztenMonatammeistenPunktegesammelthatoderwerdiemeisten Badgesgesammelthat. 5 1http://
6 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Inhaltsverzeichnis) ITechnischerBerichtderArbeit 1. EinleitungundÜbersicht AufbauderArbeit Ergebnisse Schlussfolgerungen Begriffsdefinition...12 IIProjektdokumentation 5. Szenarios Szenario1,KortNAktion Szenario2,MissionennichtnurausUmkreisanzeigen Szenario3,AufträgeundÜberprüfungenaufeinerKarte/News KortNFrontend Dokumentation Design ControllerNPackage ModelNPackagemitremoteStores ModelNPackagemitlocalStores ModelNPackageohneStores ÜbersichtLibraries ErweitertesMapNKonzept ÜbersichtArchitektur MapMarkerNStates IconNKonzept LayersNControl NeueMasken/Workflows KortNAktion DefinitionenundRestriktionen Restriktionen NeueMasken/Workflows NeueKortNAktionerstellen SneakyPeak Highscore AbsoluteHighscore
7 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS RelativeHighscore News AtomNFeed Notifikation Permalink FacebookNLogin KortNBackend Webservices Übersicht Antworten/answer Highscore/highscore Auftrag/mission OpenStreetMap/osm KortNAktion/promotion Benutzer/user Überprüfung/validation Datenbank/db Fehlerquellen AnforderungenanFehlerquellen ÜbersichtFehlerquellen UpdateFehlerquellen ÜbersichtFehlertypen NeuerFehlertyphinzufügen Architektur Infrastruktur Datenbankserver DatenbankNWebservice Webserver(Heroku) Deployment TravisCI Konfigurationüber.travis.yml...70 IIIProjektmanagement 9. Sprints Sprint Ziele
8 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS Hauptaufgaben/FokussierungimSprint Termine ErledigteArbeiten Probleme Sprint Sprint Ziele Sprint Ziele Sprint Ziele SprintplanÄnderung Sprint Ziele Anforderungsspezifikation Rahmenbedingungen Sitzungsprotokolle KickoffNMeeting InputsvonStefanKeller: VorgehenbiszumnächstenMeilenstein/Sprint: Projektmeeting ProjektmeetingmitBANTeam ÜbergabedesProjekts Projektmeeting ProjektmeetingmitMichaelWolski Beschlüsse: Projektmeeting InputsvonSKE Projektmeeting Aufgabenstellungfestlegenundausdrucken Projektmeeting Traktanden Projektmeeting Protokoll Projektmeeting Traktanden
9 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS Protokoll Projektmeeting Traktanden Protokoll Projektmeeting Traktanden Protokoll Projektmeeting Traktanden Protokoll Projektmeeting Traktanden Protokoll Projektmeeting Traktanden Protokoll Projektabgabe...84 Tabellenverzeichnis Abbildungsverzeichnis 9
10 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 ITechnischer)Bericht)der)Arbeit 1. Einleitung)und)Übersicht) ZurVerbesserungvonOpenStreetMapgibtesdiverseAnsätze 2.EinerdavonistdieKortN App,welchewiralsFortsetzungsarbeitweiterentwickelnwerden. DieKortNAppwarimHerbstsemester2012alsBachelorarbeitvonJürgHunzikerund StefanOderbolz(imFolgendenBA_HunzikerOderbolzgenannt)erstelltworden.Das ganzeprojektistaufgithubverfügbar 3 :AufderLiveversionderKortNApp 4 sindbereits übertausenduserregistriertunddiemeistenvonihnenhabenschonmissionenaufder KortNAppdurchgeführt.DieKortNApphateineneigenenTwitterAccount 5 miteinpaar DuzendFollowernwomitNeuigkeitenüberdieAppverbreitetwerdenkönnen.Das ProjektderKortNAppwurdeanderDiplomfeiervomMärz2013alsbesteBachelorarbeit ausgezeichnet. 6 ZielunsererArbeitwares,diedurchschnittlicheAnzahlInteraktionenderUsermitder KortNAppzuerhöhensowiedenaktivenSpielerstammauszuweiten.Diessollteüber einenerweitertenfunktionsumfang,neuenfehlerquellenundeinerverbesserten Spielprozessführungerreichtwerden.DarauswurdendiefolgendenZieleabgeleitet: ZeitlichundräumlichbegrenzteKortNAktionen NewsaufbauendaufAtomNFeed MissionundÜberprüfungzusammenlegenN>erweitertesMapNKonzept (optional)sneakypeaknfunktion(erweiterungenwiez.b.anzeigevonmissionen ausserhalbdereigenenrayonsoderbugsbeheben) (optional)facebooknlogin (optional)relativehighscore DieursprünglicheAufgabenbeschreibungsahlediglichdieImplementationder Clientseitevor.DieServerseitesollteeinMasterstudentalsProjektarbeitdurchführen undunsviaapizurverfügungstellen.dieserbrachjedochseinearbeitab.umdaskortn Projektdennochabschliessenzukönnen,übernahmenwirauchdieImplementationder Serverseite.DarausergabensichzusätzlichdiefolgendenoptionaleZiele: (optional)webservicesanpassen (optional)neuefehlerquellen(eosmdbone) (optional)neuefehlertypen 10 2http://wiki.openstreetmap.org/wiki/Qualitätssicherung 3https://github.com/kort/kort 4http://play.kort.ch 5https://twitter.com/KortGame 6https://
11 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS Aufbau)der)Arbeit) DieseArbeitistindreiTeilegegliedert.ImerstenTeilistdertechnischeBerichtunserer Arbeit.DieseristinvierKapitelgegliedert:1.EinleitungundÜbersicht(diesesKapitel), 2.ErgebnisseunsererArbeit,3.DieSchlussfolgerungenund4.Begriffsdefinitionendes gesamtenprojekts. ImzweitenTeilbefindetsichdieProjektdokumentation.NachdenUserSzenarienin Kapitel5werdenim6.KapiteldieÄnderungendesKortFrontendsbeschrieben.Das7. KapitelenthältdieUmsetzungdeserweitertenMapNKonzeptsmitdenneuenFeatures. Im8.KapitelistdasBackendderAppbeschrieben. DerdritteTeilbeinhaltetdasProjektmanagment,im9.KapiteldieSprints,im10.Kapitel dieanforderungsspezifikationen,im11.kapiteldierahmenbedingungenund schliesslichim12.kapiteldieprotokolleunsererprojektmeetings. DerAnhangbestehtausdemLiteraturverzeichnis,Tabellenverzeichnisund Abbildungsverzeichnis. NebendiesemDokumentumfasstdieArbeitdieimplementierteWebNAppKort.Der dazugehörigesourcecodeistfreiiminternetzugänglichundaufderbeigelegtencd. Arbeitsresultat% Kort%(Web6App)% Repository% URL% % Ergebnisse)) TrotzTurbulenzenwährenddesSemestersaufgrundderabgebrochenenProjektarbeit desmasterstudenten,istesunsgelungen,alledefiniertenzieleumzusetzen.dazugehört dieimplementationderclientnsowiederserverseite.zuerwähnenistauchdas umfangreicherefactoringwelcheswiraufgrundderglossaränderungundunseren Erweiterungendurchführten. 3. Schlussfolgerungen) DerFunktionsumfangderKortNAppwurdeumzeitlichbeschränkte,ortsbasierteKortN Aktionensowieeininternes,aufeinemAtomNFeedbasiertesNewssystemerweitert. DamitstehendenKortNAdministratorenneuWerkzeugezurVerfügung,umdas SpielverhaltengezieltanzuregenunddasGefühlderCommunityNZugehörigkeitzu stärken.dielogikzureinbindungvonfehlernalsspielmissionenwurdeüberarbeitet 11
12 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 undeosmdbonealszusätzlichequelleintegriert.damitkönnenneuefehlertypenauf generischeartundweiseerstelltundfürdasspielnutzbargemachtwerden,wasdie AttraktivitätfürdenSpielerunddenNutzenfürdasOpenStreetMapNProjekterhöht. Überprüfungen,diefürdieGütederbeantwortetenMissionenverantwortlichsind, werdennunzusammenmitdenmissionenaufderspielkarteangezeigt,wasdenanreiz zurbearbeitungdurchdienutzererhöhensoll.zudemwurdenweitereverbesserungen undfehlerbereinigungenumgesetzt.hierzugehörtdasrefactoring,welcheszueiner sauberen,übersichtlichencodestrukturmiteinheitlichenbenennungenführte. 4. Begriffsdefinition) Tabelle%1%Begriffsdefinition% Term% Begriff% Kategorie% Beschreibung% % Badge% Badge Auszeichnungen Auszeichnung,dieeinSpieler gewinnenkann. Error%DB% FehlerNDB SWNKomponente Datenbankmanagementsystem mitfehlerndatenalsteilsw( KomponentedesKort(Systems (z.b.keepright). Highscore% Highscore Rangliste RanglistedererreichtenKoins, z.b.listederanzahlkoins allerspielerseitspielbeginn (absteigendgeordnet). Koin% Koin Belohnung Punkte,dieeinSpieler gewinnenkann.daswortist von'coin'(engl.münze) abgeleitet.das'k'isteine AnlehnunganKort. Kort%(mob.% Web%App% Kort(mobiles WebApp) SWNKomponente JavaScriptNApplikationals ClientzurKort0Website, realisiertinhtml5. Kort%Admin% KortNAdmin Persona,Rolle (kurzfürkortnadministrator) Nutzer,derdieKort0Website mitverwaltet. Kort%API% KortAPI SWNKomponente RESTAPIalsSchnittstelle zwischendemmobilen0web0 AppunddemServer, angebotenvoneinemserver. 12
13 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Kort% Promotion% KortNAktion Belohnung erhöhtdiekoinseines Fehlertypsodermehrerer Fehlertypen.EineK.A.hat einentitel,einelebensdauer undeventuelleinebenannte räumlichebegrenzung. Kort%System% KortNSystem SWNKomponente GesamtheitallerSWN KomponentenvonKort. Kort%Website% KortWebsite SWNKomponente WebauftrittalsTeilNSWN KomponentedesKort(Systems, realisiertalscontent ManagementSystem(CMS). Mission% Auftrag Spieleinheit FehleroderfehlendeDatenin deropenstreetmapn Datenbank,dievoneinem Spielerkorrigiertwerden. Object% Objekt PunktaufKarte Spezielles"ObjektNvonN Interesse"(engl."PointNofN Interest",abgekürzt'POI'). Player% Spieler Persona,Rolle SynonymfürBenutzer/User. Solution% Lösung Spieleinheit Auftrag,dergelöstundmit genügenderanzahl Überprüfungengeprüftwurde. User% Benutzer Persona,Rolle Benutzer,derhauptsächlich dasmobile0web0appkortnutzt undeventuelldiekort0website. Validation% Überprüfung Spieleinheit Auftrag,derzuprüfenist (unabhängigvomspieler,der denauftraggelösthat).siehe auchlösung. DieTabelleistsortiertnachBegriff.AllemännlichenBegriffe,wiez.B.Spieler,gelten auchfürdieweiblicheform. 13
14 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 IIProjektdokumentation 5. Szenarios) 5.1 Szenario)1,)KortDAktion) NachdemAndydieKortAppentdeckthatte,benützteersieöftersundlösteeinige Missionen.SeiteinigerZeithaterabernichtmehranKortgedachtundöffnetedieApp schonlängernichtmehr.heuteistererneutmitdemzugzurarbeitunterwegswoer aufseinemhandyeinenotifikationentdeckt,welcheihmmitteilt,dassaufderkortnapp absoforteinekortnaktionstattfindet,beiwelcheresfürallegebäude,derennamen eingetragenwerden,fürdreitagendiedoppelteanzahlankoinsgibt.alsandyausdem ZugsteigtöffneterdieKortNAppundsiehtdort,dasseszweiGebäudeinseinerNähe gibt,welchebenanntwerdensollten.daandyandenbeidengebäudenvorbeiläuftum zurarbeitzukommen,kannerdienamendergebäudeindieappeingebenundfreut sichüberdiedoppelteanzahlkoinsdieerdafürerhält.ernimmtsichvor,wenner wiederzuhauseisterneutdiekortnappzuöffnenundnachnamenlosengebäuden Ausschauzuhalten. Ziele: WiederentdeckungvonKort MitKortNAktionmehrKoinsverdienen 5.2 Szenario)2,)Missionen)nicht)nur)aus)Umkreis)anzeigen) EdibenütztdieKortNAppoftundDankseinenvielenAktivitätenhältersichgutinden TopTenderHighscoreliste.MittlerweilegibtesinwederbeiihmzuHausenochan seinemarbeitsortoffenemissionenaufderkortnapp.alseraufderkarteetwashinund herscrollt,siehterinaktivemissionenwelcheeinigekilometervonseinemstandort entferntsind.nunweisser,dassimdorfwoseineschwesterwohnteinigemissionen mitderkortnappzulösensind.sobeschliesster,amwochenendeseineschwesterzu besuchenundimdorfherumzuschauen,umauchdiesemissionenerfüllenzukönnen.so wirderseineschönepositionaufderhighscorelistebeibehaltenkönnen. Ziele: WeiterentfernteMissionenentdecken. Highscoreverbessern 5.3 Szenario)3,)Aufträge)und)Überprüfungen)auf)einer)Karte)/)News) SeitMonikadieKortNAppzumletztenMalgebrauchthat,habensichÄnderungen ergeben.sieentdeckt,dassesaufderkartemehriconshatalsbeiihremletztenbesuch unddasseinigeiconsspeziellgekennzeichnetsind.dadernewsntabeinerote Notifikationaufweist,öffnetsiedieseundliest,dassneuAufträgeundÜberprüfungen 14
15 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 zusammengelegtwurden.alsowechseltsiewiederzurückzurkarte,wosiejetztalle offenenpunkteinihrerumgebungaufeinenblicksieht. Ziele: Newslesen AufträgeundÜberprüfungenerledigen 6. KortDFrontend) IndiesemKapitelsinddiewichtigstenElementedesFrontendsdokumentiert. DasKapitel2.10DokumentationbildetdiewichtigsteBasisfürdieDokumentationdes Codes. DerAbschnitt2.20DesignhatdieselbeStrukturwiedasKapitel4.20Designder BA_HunzikerOderbolz(S.16ff)undsolldiewesentlichenstrukturellenZusammenhänge descodesinformvondiagrammenzeigen.dieslässteinendirektenvergleichder beidenarbeitenzu,wodurchdieänderungenanderarchitekturschnellersichtlich werden. DiedarauffolgendenKapitelbieteneinevertiefteEinsichtindiewichtigstenneuen Features. 6.1 Dokumentation) WiebereitsbeiderVersionBA_HunzikerOderbolzwurdedaraufgeachtet,dassderCode konsequentmitdersenchaneigenendokumentationssprachejsduck 7 annotiertist.das damitautomatischerzeugteapifindetsichunter: Design) DiegrundlegendeArchitekturderApplikationwirddurchdasMVCNPatterndesSencha Touch2NFrameworksunddiegetroffenenArchitekturentscheideinderVersion BA_HunzikerOderbolzvorgegeben.ImFolgendensinddiestrukturellen ZusammenhängezwischendenControllerneinerseitsundModelundStores andererseitsinformvonklassendiagrammendokumentiert. 15 7https://github.com/senchalabs/jsduck
16 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS ControllerDPackage)) Abbildung%1%Controller%Package% ModelDPackage)mit)remote)Stores) Abbildung%2%Model6Package%mit%remote%Stores%I% 16
17 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Abbildung%3%Model6Package%mit%remote%Stores%II% 17
18 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS ModelDPackage)mit)local)Stores) Abbildung%4%Model%Package%mit%local%Stores% ModelDPackage)ohne)Stores) Abbildung%5%Model%Package%ohne%Stores% 18
19 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS Übersicht)Libraries) [BA_HunzikerOderbolzS.33] Tabelle%2%Übersicht%Libraries% Library% Version% Verwendung% Sencha%Touch%2% FrameworkzurErstellungvonmobilenWebNApps Sencha%Cmd%2% BuildNToolvonSencha Leaflet% AnzeigevonOpenStreetMapNDatenaufderKarte leaflet6osm% GitRevision 38665cc6c0 LeafletNPluginzurAnzeigevonOpenStreetMapN ObjektenaufderKarte Ext.ux.LeafletMap% SenchaTouchNPluginzurEinbindungeinerLeafletN KarteinSenchaTouch Ext.i18n.Bundle6% touch% GitRevision b4a0beaeb8 SenchaTouchNPluginzurInternationalisierungder Oberfläche 7. Erweitertes)MapDKonzept) InderKortNVersionBA_HunzikerOderbolzwurdenlediglichMissionenaufderLeafletN Karte(Tab'Map')dargestellt.ValidierungenwurdenineinemseparatenTabmittels Listenansichtpräsentiert.ImRahmendieserErweiterungsarbeitwurdendiesezwei Tabszusammengelegt,sodassnunsowohlMissionenalsauchValidierungen gemeinsamaufderleafletnkartedargestelltwerden.derursprünglichetab'check' wurdedadurchobsolet.zusätzlichkannneueinermissionundeinervalidierungauch nocheinekortnaktionzugeordnetwerden(siehekapitel4.kortnaktion).damitdie unterschiedlichenelementeninderleafletnterminologiemarkersgenanntn voneinanderunterscheidbarsind,musstedasmapnkonzeptvollständigüberarbeitet werden.dienotwendigenanpassungenbetrafensowohldengrafischen,wieauchden logischenteilderapplikation. 19
20 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS Übersicht)Architektur)) DieGrundideederangepasstenMapNLogikkannambestenanhandderBeziehungender neuenkontrollerklassenbeschriebenwerden: Kort.controller.Map Kort.controller.MapValidation Kort.controller.Map AbstractType Kort.controller.MapMission Abbildung%6%Beziehungen%der%Kontrollerklassen% DerKort.controller.MapfungiertdabeialsMasterNController.Erkapseltüber entsprechendeapinfunktionendieinteraktionmitdemleafletnpluginundverarbeitet dieeventsderhauptnavigationselementedesmapntabs. Klassen,diesogenannteMarkersaufdieLeafletNKarteplatzierenmöchten,erbenvon demalsabstrakteklassekonzipiertenkort.controller.mapabstracttype.diesestelltdie GrundfunktionfürdasZeichnenvonLeafletNMarkerszurVerfügungunddefiniertden grundlegendenupdateprozessderabstraktdeklariertendatenstoresunddie BenachrichtigungdesMainkontrollersüberdengegenwärtigenUpdatestatus.Auchhat erdiefürdieinteraktionzwischendembenutzerunddenmarkersaufderkartenötigen ListenerregistriertunddelegiertdieEventsandiekonkretenKinderklassen. Kort.controller.MapValidationundKort.controller.MapMissiondefinierenlediglichdie konkretelogik,wasbeieinemklickaufdenentsprechendenmarkertypgeschehensoll unddefiniereneinenkonkretenstore,überdenmissionsnbzw.validierungsdaten geladenwerdensollen. UmdieLatenzderApplikationmöglichstkurzzuhalten,wurdedaraufgeachtet,dass jeglichekommunikationmitdemserverasynchronundparallelausgeführtwird.eine blockierendelademaskewurdelediglichbeimapplikationsstartimplementiert,umzu verhindern,dassderbenutzerzubeginnaufeineleeremaptrifft.weitere Ladevorgänge,wiesiez.B.inZusammenhangmitderSneakyNPeakNFunktion(siehe Kapitel07.70Sneaky(Peak)auftreten,werdennichtblockierendausgeführtundlediglich eindiskreterladeindikatorinderrechtenobereneckederapplikationinformiertden BenutzerüberdenaktuellenLadestatus. DasZusammenspielzwischendeneinzelnenKomponenten,diefürdieMapzuständig sind,funktioniertübereinerelativkomplexeeventlogik.imanhangdieserarbeitfinden sichausführlichesequenzdiagramme,diedieinteraktionzwischendenbeteiligten Instanzenzeigen. 7.2 MapMarkerDStates) GrundsätzlichkanneinFehlertypneuindenfolgendenvierverschiedeneStates auftreten: 20
21 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Tabelle%3%Die%vier%States%der%Fehlertypen% State% Bedeutung% % missionstate% missionpromotionstate% validationstate% EinMissionsobjekteinesFehlertyps EinMissionsobjekteinesFehlertyps,fürdaszudemeine KortNAktiondefiniertist EinValidierungsobjekteinesFehlertyps validationpromotionstate% EinValidierungsobjekteinesFehlertyps,fürdaszudem einekortnaktiondefiniertist ZusätzlichgibtesnochdenStateinactive,derzusätzlichzueinembestehendenStatus gesetztwerdenkann.dieserzeigtan,dasssichdasbetreffendemapnobjektausserhalb desdefiniertenbearbeitungsradiusbefindetundsomitnurbetrachtet,nichtabergelöst werdenkann. DieStateswerdenüberdaspseudoNEnum'mapMarkerState'imConfigFile (Kort.util.Config)definiert. 7.3 IconDKonzept) FürdieKortNAktionIconsfertigtenwirzuerstverschiedeneEntwürfean.Dabeimussten wirauchandenübernächstensprintdenken,beiwelchemwirdiemissionenund ÜberprüfungenineinenReiterzusammenlegen.AuchdortwirdeinIcongebraucht, welchesspeziellgekennzeichnetist,nämlichalsüberprüfung.isteineüberprüfung gleichzeitigeinekortnaktion,somüssenbeidezeichenaufdemiconersichtlichsein.die ErstellungdieserIconsforderteunsereganzeKreativitätundDesignkünste. DieDarstellungderIconsstellteunsauchindiesemSprintvoreineHerausforderung. DieIconssolltenkonsistentsein,alsojederFehlertypsollteimmerdasselbeIconhaben, esmussjedochzwischenaufgabeundüberprüfungunterschiedenwerdenkönnenund ersichtlichsein,wennessichumeinekortnaktionhandelt(aussprint2).wichtigist auchdiegenerischeeinbindungindiekarte.schlussendlichistunsabereinevisuell ansprechendeundfunktionalegestaltungdericonsgelungen. InaktiveItemswelchedurchdieSneakyPeakFunktionangezeigtwerden,sind schwarzweiss. 21
22 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Mission% Kort6Aktion% Überprüfung% Kort6Aktion%und% Überprüfung% Abbildung%7%Icons%mit%Kennzeichnung%der%verschiedenen%Status% 22
23 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS LayersDControl) DurchdieZusammenlegungvonAuftragundÜberprüfungwerdendemUserunter UmständensehrvieleoffeneAufgabenangezeigt.DamitderUsertrotzdemdie Möglichkeithat,sichnurÜberprüfungenodernurAufträgeanzuzeigen,erstelltenwir zweiverschiedenelayer,welchederusermittelscheckboxeseinnoderausblenden kann.dazufügtenwirdenleafletnmarkerndertypenauftragundüberprüfung einzelnelayerhinzu,derensichtbarkeitübereinlayerncontrolgesteuertwerdenkann. DamitkönnennunwahlweisenurAufträge,ÜberprüfungenoderbeideTypenaufder Karteangezeigtwerden. Abbildung%8%Checkboxes%oben%rechts%um%einzelne%Layer%ein6%oder%auszublenden% Wirdachtendarübernach,einzusätzlichesFeatureeinzubauen,beiwelchemalle unterschiedlichetypenvonaufträgenaufdemlayerncontrolzunundweggeschaltet werdenkönnten.vondieservariantesahenwiraberausplatzgründenab.dieanzeige derauswahldieserlayerwürdeeinengrossenteilvonkleinenbildschirmen verdecken. 7.5 Neue)Masken/Workflows) AufderbisherigenKortNAppwarendieÜberprüfungenineinemseparatenTab,dieUser musstenalsoaktivdorthinwechselnumüberprüfungenzutätigen.wirändertenden 23
24 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 WorkflowbeieinerÜberprüfungsoab,dassernunähnlichwiebeieinemAuftrag abläuft. Workflow%bis%anhin:%% TabPrüfenauswählenN>ListemitÜberprüfungenwirdangezeigt. KartenansichtauswählenN>KartemitÜberprüfungenwirdangezeigt. IconanklickenN>Antwortscreenerscheint,womanja/neinauswählenkannN>Frage beantworten. NachdemBeantwortensiehtderUserwievieleKoinsersoebenfürdieseÜberprüfung erhaltenhat. Workflow%neu%mit%ValidationMessageBox.js:% KortNAppstartenNKartemitAufträgenundÜberprüfungenwirdangezeigt. AufÜberprüfungsiconklickenN>ValidationMessageBox.jserscheintmitderInformation überdieanzahlkoins,diederuserfürdiebeantwortungerhält. AufBeantwortenklickenN>Antwortscreenerscheint,womanja/neinauswählenkannN >Fragebeantworten. 7.6 KortDAktion) DasZieleinerKortNAktionistes,dieUserdurchzeitlichundörtlichbeschränkte besonderebelohnungenzumgebrauchderkortnappzuanimieren.inder BA_HunzikerOderbolzwurdediesesFeaturefolgendermassenbeschrieben: Als zusätzlichemotivationkönntenzeitlichbegrenzteaktionendurchgeführtwerden.dies sollbenutzerdazuanimieren,dieappimmerwiederzuverwenden.möglicheaktionen wärenbeispielsweisediekonzentrationaufeinenfehlertyp( Gib0allen0Restaurants0in0 deiner0umgebung0einen0namen0und0erhalte0diese0woche0die0spezielle0restaurant( Auszeichnung )oderaufeineregion( Korrigiere0jeden0Tag0im0Dezember0Fehler0in0Zürich0 und0erhalte0die0zürich(silvester(auszeichnung ) Definitionen)und)Restriktionen) EineKortNAktionbestehtausdenfolgendenAttributen: Tabelle%4%Attribute%der%Kort6Aktionen% Attribut-Name Beschreibung Titel Start 24 Jede Kort-Aktion hat einen Titel. Dieser darf aufgrund des beschränkten Platzes der Designvorgabe nicht länger als 40 Zeichen lang sein. Eine Kort-Aktion hat einen definierten Startzeitpunkt (Datum und Uhrzeit).
25 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Ende Zugeordnete/er Fehlertyp/en Regionale Beschränkung Eine Kort-Aktion hat einen definierten Endzeitpunkt (Datum und Uhrzeit). Eine Kort-Aktion wird einem oder mehreren Fehlertypen zugeordnet. Eine Kort-Aktion ist räumlich beschränkt. Die Beschränkung wird über ein Multipolygon definiert. EineMissionodereineValidierungwirddemnacheinerKortNAktionzugeordnet,wenn a. derzeitpunktderclientseitigenabfrageimzeitlichenintervall[start,ende]der Aktionliegtund b. derfehlertypdermission/validierungmiteineminderaktiondefinierten Fehlertypübereinstimmtund c. dergeometrischepunktdermission/validierunginnerhalbdesfürdieaktion definiertenmultipolygonsliegt InderBeziehungeinerKortNAktionmiteinemFehlertypwirddiezusätzlicheAnzahl KoinsderMissionenundValidierungenfestgelegt,diefürdieseKortNAktiongelten: Abbildung%9%Beziehung%Kort6Aktion%zu%Fehlertyp% Restriktionen) DurchdieimvorherigenAbschnittdefiniertenEigenschaftenfürKortNAktionenistes prinzipiellmöglich,dassaufeinekonkretemission/validierungzweikortnaktionen kommen.diesistaufgrunddergewähltenarchitekturlösungnichtzulässigundführt zuundefiniertemverhaltenderapplikation.eswurdedefiniert,dassderadministrator fürdieeinhaltungdieserbeschränkungzuständigist Neue)Masken/Workflows) BeimAuswähleneinesIconseinerKortAktion,erscheintdiePromotionMessageBox.js. Dortwirdangezeigt,wievieleextraPunktefürdasLösendieserAufgabevergeben werden.danebenbefindetsicheininfonbutton.imhintergrundbefindetsichein orangenerkreis.wenneinuserdeninfonbuttondrückt,rücktderkreisinden 25
26 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 VordergrundundzeigtdieInformationenwieZusatzpunkteundZeitdauerderKortN Aktionan. ImKortNAktionNKreiswirdderTitelderKortNAktionangezeigt.DieserTitelsollte eigentlichinverschiedenensprachenvorhandensein,fürdieverschiedenen EinstellungenderBrowser.Wirbeschlossenjedoch,dassdenKortNAktionenfixeTitel vergebenwerdensolltenundzwarindersprache,welcheinderregiongesprochen wird,wodieaktionstattfindet. Abbildung%10%MissionMessageBox%einer%Kort6Aktion%mit%Infobutton% Abbildung%11%ValidationMessageBox%mit%einer%Kort6Aktion%mit%Infobutton% 26
27 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Abbildung%12%Information%über%die%Kort6Aktion% Neue)KortDAktion)erstellen) SolangenochkeinWebinterfacefürdieAndiminstrationderKortNAktionenzur Verfügungsteht,könnenneueKortNAktionendirektüberdieDatenbankerstelltwerden. DazuwirdzuersteineneueKortNAktiondefiniertunddanacheinemodermehreren Fehlertyp/enzugeordnet: 1.%Neue%Kort6Promotion%in%Tabelle%kort.promotion%einfügen:% INSERT INTO kort.promotion(title,lang,startdate,enddate,region,geom) VALUES ( ); 'FOSSGIS-Promotion', 'de_de', TIMESTAMPTZ ' :00:00+02, TIMESTAMPTZ ' :00:00+02', 'Deutschschweizer Grenze', public.st_geomfromtext('multipolygon((( , , , , )))', 4326) 2.%Bestehende%Kort6Promotionen%mit%Fehlertyp/en%verknüpfen:% UmeineKortNAktionmiteinemFehlertypzuverknüpfen,wirddazueinentsprechender EintraginderHilfstabellekort.promo2mission0eingefügt.DieseTabellebildetdien:m BeziehungzwischenAktionundFehlertypabundstelltdieBeziehungüberdie FremdschlüsselaufdieidderTabellekort.Promotionunddenerror_typderTabelle 27
28 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 kort.error_typeher.zudemwerdenaufdieserstufedieausderbeziehungabgeleiteten Attributemission_extra_coinsundvalidation_extra_coinsdefiniert.Umbeispielseweise eineaktionmitderangenommenenid=22mitdemfehlertyp'missing_cuisine'zu verknüpfen,wirdderfolgendeeintraggemacht: INSERT INTO kort.promo2mission(promo_id, error_type, mission_extra_coins, validation_extra_coins) VALUES ( ); 22, 'missing_cuisine', 10, Sneaky)Peak) Dawirannehmen,dassdieSituationwieinSzenario2inKapitel5.2beschriebenöfters vorkommenwird,setztenwirunsdieimplementationdersneakypeakfunktionzum Ziel.UnsereIdeewar,demUserdieMöglichzeitzugeben,dassersehenkannwo AufträgeundÜberprüfungenoffensind,auchausserhalbseinesRayons. WirentschlossenunseinLimitzusetzen,sodassimmernurhöchstensje25inaktive MissionenundÜberprüfungenangezeigtwerden.DiesesindaufdemZentrumderKarte woderuserhingescrollthat.damitdieseiconsnichtdieganzezeitvomservergeladen werdenmüssen,habenwireingestellt,dassdieiconserstzuladenbeginnenwennder UserzweiSekundenohnezuScrollenaufeinemAusschnittderKartewar.Im Aktualisierungsbuttonwirdangezeigt,wenndieFunktionamLadenist.Diese inaktiven MissionenundÜberprüfungenwerdenmiteinemschwarzNweissenIcon gekennzeichnet.dasiconzeigtebenfallsan,obessichumeinemissionoder ÜberprüfunghandeltundobeszueinerKortNAktiongehört.DieSneakyPeakFunktion kannmitdementsprechendenbuttoneinnundausgeschaltetwerden.tipptderuserein inaktivesiconan,sowirdihmeinemessageboxangezeigtmitderoffenenfragezu diesemicon.deruserbekommthieraberkeinemöglichkeitdiesefragezu beantworten,erkannnurdiemessageboxwiederschliessen. 28
29 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Abbildung%13%Inaktive%Icons%Dank%der%Sneaky%Peak%Funktion% Abbildung%14%Messagebox%einer%inaktiven%Missing6Cuisine6Mission% 7.8 Highscore) NeustehenzweiArtenfürdieAnzeigederHighscoreszurVerfügung. 29
30 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS Absolute)Highscore) DiesistdieAnsichtwiesieauchinderbisherigenAppbekanntwar.Diebesten10User werdendortaufgelistet,anelfterstellestehtderrangdesaktuellenbenutzersmit seinerpunktzahl Relative)Highscore) WirvomUserderTab Relativ ausgewählt,siehterseineumgebungderhighscoreliste, dortkannersehenwievielepunkteerbenötigtuminderranglisteemporzuklettern. 7.9 News) WirbauteneinenneuenTabindieApp: News.IndiesemTabgibteszwei verschiedeneviews:öffnetderuserdentabsosiehtereineliste,woallenews aufgelistetsind.beimauswähleneinesnewseintragserscheintdiedetailviewmittitel, ErscheinungsdatumundBeschreibung. Abbildung%15%News%List% % % % Abbildung%16%News%Detailview% DieNachrichtenerscheinenaufderNewslistsortiertnachPublikationsdatum,die ungelesenennachrichteninfetterschriftundmiteinemsterngekennzeichnet.sobald dernewseintraginderdetailnviewangeschautwurde,erscheinterimnormalenfont. FürdiePräsentationderNewswurdeeinminimalerRSSNAtomNReaderimplementiert. DieLösungberuhtaufzweiStores,demNewsRemoteNStore,dermittelsXMLNReaderden 30
31 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 AtomNFeedparst,unddemNewsLocalNStore,derdieNewsausdemRemoteStore synchronisiertundeinenpersistentenlokalenstatedavonanlegt.dieanzeigealsliste basiertaufdendatendesnewslocalnstores.ausgehendvommodelnfeld'unread' werdendiezweistates'unread'=trueund'unread'=falseunterschieden.wirdaufder news.listeinlistenelementangeklickt,sowirdüberdennewsncontrollerdiedarin definiertefunktiononnewslistitemtapaufgerufen,diedenstatedesbetroffenen Recordsauf'unread'=falsesetzt,denStoresynchronisiertunddanachneulädt.Die DetailViewwirdzumentsprechendenRecordgepusht.InderFolgewirddieList aktualisiertundderbadgetextdynamischangepasst.mitdembacknbuttonkannwieder zurnews.listzurückgekehrtwerden. DieDatenhoheitwurdeandenAtomNFeedübertragen.Dasheisst,wenneinAdmindie AtomNFeedEntrieslöscht,werdendieseauchausdemNewsLocalNStoreentfernt. PerDefaultwerdendemUseralleNewsinallenSprachenangezeigt.Diesistmomentan sinnvoll,damomentanallenewsinenglischabgefasstseinwerden.imnewsntabgibtes einensettingsnbutton,mitwelchemderuserdaseinstellungspanelöffnet,wo ausgewähltwerdenkann,vonwelchensprachenerdienewsangezeigtbekommen möchte.dieseeinstellungenwerdenimlocalstorageimuserlocalnmodelgespeichert, wasalsfilteraufdennewslocalnstorewirkt. 31
32 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Abbildung%17SettingsPanel%für%Sprachauswahl% AtomDFeed) DieAtomNFeedNURLkanninKort.util.Configdefiniertwerden: newsatomfeedurl: './resources/stores/news_default.xml' DasSprachattributxml:langwirdimTitelderEntrydefiniert. Beispiel von zwei Newseinträgen in verschiedenen Sprachen: <?xml version="1.0" encoding="utf-8"?> <feed xmlns=" 32 <title>kort Newstitle></title> <link href=" <updated> t18:30:02z</updated> <author> <name>kort Team</name> </author>
33 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 <id>urn:uuid:60a76c80-d399-11d9-b93c e0af6</id> <entry> <title xml:lang="en">new Promotion In Rheintal</title> <link href=" <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa7a</id> <updated> t18:30:02z</updated> <content type="html">different english text</content> </entry> <entry> <title xml:lang="fr">nouvelle promotion dans la Romandie</title> <link href=" <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa8a</id> <updated> t18:30:02z</updated> <content type="html">un texte en français</content> </entry> </feed> Notifikation) DamitdenUserndasLeseneinerNewsnachrichtnichtaufgezwungenwird,habenwir unsdazuentschlossen,demnewstabeinenbadgetextalsnotifikationhinzuzufügen.so siehtderuserobesneuenewshatundesstehtihmfrei,oberdienewsindernewsliste anschauenwill. Abbildung%18%:%Notifikation%neuer%News%durch%einen%Badgetext% DieNotifikationhabenwirmitderFunktion 33
34 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 updatenewsbadgetext: function() { this.gettabpanel().gettabbar().getcomponent(3).setbadgetext(ext.getstore('newslocal').getamountofunreadnews()); } imnotificationncontrollereingefügt. DerBadgeTextfürdenNewsNTabNButtonwirddynamischanhandderungelesenen NewsimNewsLocalNStoremitderFunktiongetAmountOfUnreadNewsbestimmt. WerdenimNewsLocalNStoreModelstatesverändertoderkommenneueNewsNItemsaus demnewsremotenstorehinzu,wirdsystemweitderevent'newsupdated'gesendet.der ControllerNotifications.jshörtaufdiesesEventundsetztdenBadgeTextaufden aktuellenwert(überdiehilfsfunktion'getamountofunreadnews',diedirekt innerhalbdesnewslocalnstoreimplementiertist).sobaldderuserdiesesneueitemin derdetailansichtangeschauthat,wirdderbadgetextentsprechendangepasst.sosieht deruserimmer,wievieleungelesenenewsnochvorhandensind.dienewswerden nachdatumsortiert.dienewsmüssenundkönnenvomusernichtgelöschtwerden.da wirdermeinungsind,dassveraltetenewsschlechtenewssind,stellenwirdemadmin dieanforderung,nichtmehraktuellenewszulöschen Permalink) WirdeinUsermittelseinerNewsübereineKortNAktioninformiert,wirdinder DetailansichteinLinksein,welcherdenUseraufdieMapführtundzwarzum MittelpunktderKortNAktion.SokannderUserdieGegendaufderKarteerkundengehen undsieht,sofernerdiesneakypeakfunktion(siehekapitelfehler%verweisquelle% konnte%nicht%gefunden%werden.sneakypeak)aktiviert,anhandderinaktivenicons mitsternwosichdiekortnaktionenbefinden.dazumusstenwireinenpermalink implementieren.einbeispielfüreinenpermalinkstehthier: lat und lng werdendiekoordinatendespunktsangegeben.derlinkkannauchum einenzoomlevelergänztwerden.derdefaultzoomlevelist15.willderusereinen anderenzoomlevel,kannerdemlinkein&z=[zoomlevel]anfügen.zumbeispiel: )FacebookDLogin) AlszusätzlichesFeatureerledigtenwirwährenddiesemSprintdieImplementationdes FacebookoAuth.DieswareinWunschvonKortNUsern 8 undwurdebereitsinder Bachelorarbeit 9 alswünschenswertesfeatureerwähnt.dazupasstenwirzuerstaufdem StartscreendasGUIan,indemwirunterdenGoogleNLoginbuttondenFacebookN Loginbuttonhinzugefügten.DanachkonntenwirderAnleitungaufFacebook 10 folgen 34 8https://github.com/kort/kort/issues 9https://github.com/kort/kortNdocu/blob/master/_DOCUMENTATION/baNkortN jhunzike_soderbol.pdf 10https://developers.facebook.com
35 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 umfacebookalsweiterenoauth2.0provideraufzunehmen.nunkönnensichdie KortuserauchmittelsihresFacebookNAccountbeiderKortNAppanmelden. 35
36 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS KortDBackend) 8.1 Webservices) AlsplattformunabhängigesKommunikationsparadigmazwischendenverteilten InstanzenwurdeRESTeingesetzt.DieRESTNWebserviceswurdenmitdemPHP MicroframeworkSlimerstellt. DieStrukturderWebservicesmusstegegenüberderVersionBA_HunzikerOderbolznur leichterweitertwerden(siehenachfolgendeskapitel8.1.1übersicht).alsbasisfürdie AuflistungderWebserviceswurdewomöglichdieAusführungenausderBachelorarbeit BA_HunzikerOderbolz'10.2RESTNSchnittstellen'übernommen. KomplexereAnpassungenergabensichjedochinZusammenhangmitdenKortNAktionen andenhilfsmethodenderklassenbughandler,validationhandler,fixhandlerund VoteHandler,überdieDatenmittelsDatenbankaufrufeabgerufenundaufbereitet werden.umfangreichekommentarezudenverändertensqlnqueriessinddirekt innerhalbderentsprechendenklassenimverzeichnisserver/php/webservice/zu finden Übersicht) Client%<66>%Webserver%(Heroku)%% Tabelle%5%Übersicht%Kommunikation%von%Client%und%Webserver% Typ% Pfad% Zweck% Δ%BA_HunzikerOderbolz% GET% answers/<type> AlleAntworteneines Fehlertyps<type> GET%% highscore/absolute Benutzersortiertnach AnzahlKoinsplusNfalls nochnichtim AntwortsetenthaltenN deraufrufendebenutzer GET% highscore/relative Benutzersortiertnach AnzahlKoins GET% 36 mission/position/ <lat>,<lng> Limitierte#Missionen nearestneighborn Sortiertnachdem Punkt(<lat>,<lng>) VORHER highscore/ NEU VORHER/bug/position/ <lat>,<lng>+ergänzte RÜCKGABE POST% mission/fix Lösungsenden VORHER/bug/fix GET% osm/<type>/<id> OSMObjektvomTyp {node,line}undid GET% promotion/ AlleKortNAktionen NEU N
37 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 GET%% user/<secret> BenutzerdatenvonUser mit<secret>laden,falls MatchmitDatenbank (<secret>optional) N GET% user/<id>/badges BadgedesUsersmit <id>laden GET%% user/<id>/logout Usermit<id>ausloggen N N PUT%% user/<id> BenutzerdatenvonUser mit<id>modifizieren GET% validation/position/ <lat>,<lng> Limitierte# Überprüfungen neighbornsortiertnach dempunkt(<lat>,<lng>) POST% validation/vote Überprüfungsenden N ERGÄNZTERÜCKGABE N Webserver%(Heroku)%<66>%Datenbankserver%(sinv edu.hsr.ch)% Tabelle%6%Übersicht%Kommunikation%von%Webserver%und%Datenbankserver% Typ% Pfad% Zweck% Δ%BA_HunzikerOderbolz% GET% % db/<table>/<fields> DatenvonPostgresN Datenbankabrufen POST% db/<table>/<fields> DateninPostgresN Datenbankeinfügen PUT% db/<table>/<fields> DateninPostgresN Datenbankmodifizieren POST% db/transaction GenerischeTransaktion aufpostgresndatenbank ausführen N N N N Antworten)/answer)) [BA_HunzikerOderbolzS.59] BeieinigenFehlertypenwirdeineAuswahlanmöglichenAntwortenvorgegeben.Um dieseantwortenvorzuladen,wirdder/answernwebserviceverwendet.dieserliefert alleantwortenderverschiedenenfehlertypenzurück. Antworten%laden% Tabelle%7%Webservice%Antworten%(GET%/answer)% URL 37
38 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 <type> (optional) Antworten auf Typ beschränken Methode GET Parameter - Antwort 200 OK Daten konnten erfolgreich geladen werden. Antworttyp JSON Beispiel:% GET missing_track_type Antwort:% { } "return":[ ] { }, "id":"1", "value":"grade1", "title":"asphalt, Beton oder Pflastersteine", "sorting":"110", "type":"missing_track_type" {... } } Highscore)/highscore) [nachba_hunzikeroderbolzs.62] ÜberdenHighscoreNWebservicekönnendieBenutzernachAnzahlKoinsgeladen werden.beimabsolutenhighscorewirdnimunterschiedzumrelativenhighscorender aufrufendebenutzerzusätzlichangefügt(fallsdiesernichtbereitsimantwortset enthaltenist). 38
39 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Absoluter%Highscore%laden% Tabelle%8%Webserver%Highscore%(GET%/highscore/absolute)% URL Methode GET Parameter limitmaximaleanzahlderbenutzer Antwort 200 OK Daten konnten erfolgreich geladen werden. Antworttyp JSON Relativer%Highscore%laden% Tabelle%9%Webserver%Highscore%(GET%/highscore/relative)% URL Methode Parameter GET limitmaximaleanzahlderbenutzer Antwort 200 OK Daten konnten erfolgreich geladen werden. Antworttyp JSON Beispiele:% GET absolute?limit=10 GET relative?limit=10 Antwort:% { 39 "return":[ { "user_id":"3",
40 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 } ] }, "username":"tschortsch", "koin_count":"140", "fix_count":"12", "vote_count":"4", "ranking":"1", "you":true {... }... } Auftrag)/mission) [nachba_hunzikeroderbolzs.59ff] DerWebservice/missionlieferteinelimitierteAnzahlMissionen,nearestNneighborN SortiertinBezugaufeinenmitgegebenPositionspunktzurück. ZusätzlichkannüberdiesenWebserviceeineLösungzueinemFehlereingetragen werden. Missionen%laden% Tabelle%10%Webservice%Auftrag%(GET%/mission/position/<lat>,<lng>)% URL Methode Parameter <lat>,<lng> <lat>latitudederaktuellenposition <lng>longitudederaktuellenposition GET limitmaximaleanzahlderzuladendenfehler radiusradiusindemsichdiefehlerbefindenmüssen Antwort 200 OK Daten konnten erfolgreich geladen werden. Antworttyp JSON Beispiel:% GET position/47.1,8.1?limit=1&radius=
41 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Antwort:% { "return":[ { "id":" ", "schema":"95", "type":"missing_track_type", "osm_id":" ", "osm_type":"way", "title":"typ des Wegs unbekannt", "description":"um welchen... "latitude":" ", "longitude":" ", "view_type":"select", "answer_placeholder":"typ", "fix_koin_count":"5", "txt1":"", "txt2":"", "txt3":"", "txt4":"", "txt5":"", "promo_id":"22", "extra_coins":"6", }, } ] {... }.. 41
42 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 Lösung%senden% Tabelle%11%Webservice%Auftrag%(POST%/mission/%fix)% URL Methode POST Parameter DiezusendendeAntwortmussalsJSONNObjektimBodygesendetwerden. Antwort 200 OK DieLösungkonnteerfolgreichgesendetwerden.Als AntwortwerdendieerspieltenPunkteund Auszeichnungenzurückgeliefert. 403Forbidden 400Badrequest DerBenutzeristnichtkorrekteingeloggtundkann somitkeinedatenandenserversenden. DasgesendeteJSONistnichtvalideoderesgab einenfehlerbeimschreibenderdatenindie Datenbank. Antworttyp JSON Beispiel:% POST { "id":"ext-record -230", "user_id":3, "error_id":" ", "schema":"95", "osm_id": , "message":"mcdonalds" } Antwort:% { "badges":[ { "name":"highscore_place_1" } 42
43 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 } ], "koin_count_new":"15", "koin_count_total":"55" OpenStreetMap)/osm) [BA_HunzikerOderbolzS.59] UmOpenStreetMapNObjekteaufderKarteanzuzeigen,werdenüberden/osmN WebservicedieentsprechendenOSMNDatengeladen.DerWebserviceleitetdenRequest andasosmapi 11 weiterundsendetdasresultatandiewebapplikationzurück. OpenStreetMap%Objekt%laden% Tabelle%12%Webservice%OpenStreetMap%(GET%/osm/<type>/<id>)% URL <type>osmnobjekttyp <id>iddesosmnobjekts Methode GET Parameter N Antwort 200 OK Datenkonntenerfolgreichgeladenwerden. Antworttyp XML Beispiel:% GET Antwort:% <?xml version="1.0" encoding="utf-8"?> <osm version="0.6" generator="openstreetmap server" copyright="openstreetmap and contributors" attribution=" org/copyright" license="
44 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 <node id=" " version="1" changeset=" " lat=" " lon=" " user="pfrauenf" uid="479871" visible="true" timestamp=" t20:05:48z"> </osm> <tag k="amenity" v="fast_food" /> </node> KortDAktion)/promotion) DerWebservice/promotionwirdverwendet,umalleKortNAktionenabzurufen. Kort6Promotionen%laden% Tabelle%13%Webservice%Kort6Aktion%(GET%/promotion)% URL Methode GET Parameter N Antwort 200 OK Datenkonntenerfolgreichgeladenwerden. Antworttyp JSON Beispiel:% GET Antwort:% { "return":[ { "id":"22", "title":"neue Kortpromotion22", "startdate":" ", "enddate":" " }, {... }... } ] 44
45 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 } Benutzer)/user) [BA_HunzikerOderbolzS.64ff] Der/userNWebservicedientzurAuthentifizierungdesBenutzers.Überihnkönnensich diebenutzerannundabmelden.zudemwerdendiebenutzerdatendarübergeladen. Benutzerdaten%laden% Tabelle%14%Webservice%Benutzer%(GET%/user/<secret>)% URL Methode Parameter <secret>(optional)usersecretwirdgesendetfallsderbenutzerbereits eingeloggtist. GET N Antwort 200 OK Datenkonntenerfolgreichgeladenwerden.Der WebserviceliefertdieBenutzerdatenzurück. Antworttyp JSON Beispiel:% GET Antwort:% { "return":{ "id":"3", "name":"j\u00fcrg Hunziker", "username":"tschortsch", "oauth_user_id":" @host.com", "oauth_provider":"google", "token":null, "fix_count":"2", "vote_count":"4", 45
46 Studienarbeit"KortReloaded"NAnnritaEgli,CarmeloSchumacherNFS2013 "koin_count":"40", "secret":"secret", "pic_url":" "logged_in":true } } Badges%eines%Benutzers%laden% Tabelle%15%Webservice%Benutzer%(GET%/%user/<id>/badges%)% URL Methode <id>iddesbenutzers GET Parameter N Antwort 200 OK Datenkonntenerfolgreichgeladenwerden.Der WebserviceliefertalleBadgeszurückmitder Angabe,obderBenutzerihngewonnenhatoder nicht. Antworttyp JSON Beispiel:% GET Antwort:% { "return":[ { "id":"1", "name":"highscore_place_1", "title":"1. Rang", "description":"erster Rang in der Highscore...", 46
Update Spezifikation MOA-ID 1.5. Update Spezifikation Module für Online Applikationen - ID
www.egiz.gv.at E-Mail: post@egiz.gv.at Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Update Spezifikation MOA-ID 1.5 Update Spezifikation Module für Online
MehrACCOUNTINFO 1.01 VERWENDEN DER ACCOUNTINFO-SCHNITTSTELLE ABFARGE VON ACCOUNT-INFORMATIONEN IN ECHTZEIT 02. MÄRZ 2010
VERWENDEN DER ACCOUNTINFO-SCHNITTSTELLE ABFARGE VON ACCOUNT-INFORMATIONEN IN ECHTZEIT 02. MÄRZ 2010 VERTRIEBLICHE FRAGEN ZUM FITSMS-GATEWAY mpc networks GmbH Abteilung FitSMS Vertrieb tel +49 (0) 7154-17
MehrKonzept und Spezifikation MOA-ID 1.5. Update Spezifikation Module für Online Applikationen - ID
www.egiz.gv.at E-Mail: post@egiz.gv.at Telefon: ++43 (316) 873 5514 Fax: ++43 (316) 873 5520 Inffeldgasse 16a / 8010 Graz / Austria Konzept und Spezifikation MOA-ID 1.5 Update Spezifikation Module für
MehrArchitektur des agimatec-validation Frameworks
Development : Implementierung Validierungskonzept (Dokumentation) This page last changed on Apr 03, 2008 by roman.stumm. Architektur des agimatec-validation Frameworks Generierung der Metainformationen
MehrVVA Webservice Online Lieferbarkeits-Abfrage
Version 1.0 Dateiname VVA_OLA_Schnittstellenbeschreibung_2012.docx Erstellt am 30.05.2010 Seitenanzahl 5 arvato media GmbH Historie der Dokumentversionen Version Datum Autor Änderungsgrund / Bemerkungen
Mehrwww.horoskop-server.de Programmers Manual Geodaten Ver. 2.0
www.horoskop-server.de Programmers Manual Geodaten Ver. 2.0 Inhaltsverzeichnis Intro...3 Quick Start...3 Request...4 Parameter...4 Response...5 XML Format...5 Header...5 Liste der Orte...6 Stand: 28.12.2005
MehrSoftwareentwicklungspraktikum Sommersemester 2007. Feinentwurf
Softwareentwicklungspraktikum Sommersemester 2007 Feinentwurf Auftraggeber Technische Universität Braunschweig
Mehropenk platform Dokumentation Setup Liferay Version 0.9.1
openk platform Dokumentation Setup Liferay Version 0.9.1 Inhaltsverzeichnis 1 Allgemeines... 3 1.1 Änderungsnachweis... 3 2 Einleitung... 4 3 Setup Pages in Liferay... 5 3.1 Erstellung Startseite... 5
MehrEs gibt zwei Wege die elektronischen Daten aus Navision zu exportieren.
Elektronische Daten aus Navision (Infoma) exportieren Es gibt zwei Wege die elektronischen Daten aus Navision zu exportieren. 1. GDPdU 1.1 Manuelle Einrichtung der GDPdU-Definitionsgruppe und Ausführung
MehrDie aktuelle Version des SPIEGEL-Bestseller-Widgets können Sie auf unserer Website unter Entwicklertools herunterladen.
Technische Dokumentation Hier finden Sie die technische Dokumentation für die Einbindung des Bestseller-Widgets. Die Dokumentation soll als Hilfestellung dienen und kann keinen Anspruch auf Vollständigkeit
MehrBereitstellung eines RSS Feeds mit tt_news
Bereitstellung eines RSS Feeds mit tt_news von Marcel Raner & Torsten Klaiber Seite 1 Einführung: In dieser Dokumentation wird erklärt wie Ihr mit der tt_news Extension relativ schnell einen RSS Feed zur
Mehr4D Server v12 64-bit Version BETA VERSION
4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und
Mehrgoalio Documentation Release 1.0.0 goalio UG
goalio Documentation Release 1.0.0 goalio UG 18.11.2014 Inhaltsverzeichnis 1 Erste Schritte mit goalio 1 1.1 Benutzeroberfläche............................................ 1 1.2 Suche...................................................
Mehrphp Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...
php Hier soll ein Überblick über das Erstellen von php Programmen gegeben werden. Inhaltsverzeichnis 1.Überblick...2 2.Parameterübergabe...7 3.Zugriff auf mysql Daten...11 Verteilte Systeme: php.sxw Prof.
MehrDatenaustauschformate. Datenaustauschformate - FLV
Datenaustauschformate FLV-Dateien CSV-Dateien XML-Dateien Excel-Dateien Access- Backupdateien Günter M. Goetz 108 Datenaustauschformate - FLV Fixed Length Values Repräsentation einer Tabelle als 'Flat-File'
MehrMobilkommunikation. REST-basierte Dienste für verteilte, mobile Anwendungen. A. Gillert, A. Grebe, M. Hüffmeyer, C. Vogt
Mobilkommunikation REST-basierte Dienste für verteilte, mobile Anwendungen A. Gillert, A. Grebe, M. Hüffmeyer, C. Vogt Fachhochschule Köln, Institut für Nachrichtentechnik Fachhochschule Köln Anton Gillert,
MehrXML-Austauschformat für Sicherheitsdatenblätter
XML-Austauschformat für Sicherheitsdatenblätter Version 2.0 / 15. Dezember 2008 www.edas.org 1 XML-Austauschformat für Sicherheitsdatenblätter Der Austausch der Sicherheitsdatenblätter erfolgt als XML-Datei.
MehrFileMaker Go 13 ohne Connects
Themen im Vortrag Gründe für diesen Vortrag Zwei Methoden werden vorgestellt Besprechung der verwendeten Techniken: - Netzwerkprotokolle - FileMaker CWP / XML - FileMaker URL Protokoll - XML parsen - E-Mail
MehrOnline Kataloge. Wie binde ich einen SGVSB-Online-Katalog in eine Webseite ein. Versionsnummer: 1.0 Änderungsdatum: 26.06.12.
Online Kataloge Wie binde ich einen SGVSB-Online-Katalog in eine Webseite ein. Versionsnummer: 1.0 Änderungsdatum: 26.06.12 Autor: Manuel Ginesta Kontakt: m.ginesta@ncag.ch Versionsliste Version Datum
MehrREST Services To-Go Einfacher Einstieg in die REST Programmierung
REST Services To-Go Einfacher Einstieg in die REST Programmierung 04.07.2017 Version 1.0 Seite 1 Zur Person Marcus Blum Oracle Forms seit 1994 (Forms 3 / Oracle 6 aufwärts) Fokus auf Oracle APEX seit 2007
MehrBOSNotifier.de Gateway API Dokumentation. Inhaltsverzeichnis... 1 Gateway API BOSNotifier.de... 2 Schnittstellen... 2 Protokolle...
Inhaltsverzeichnis Inhaltsverzeichnis... 1 Gateway API... 2 Schnittstellen... 2 Protokolle... 2 Eingabe... 3 Parameter... 3 Antwort... 3... 4 Hinweise... 4 Ausgabe... 5 Gruppen abfragen... 5... 5... 5...
MehrInformation über die WebServices der Parlamentsdienste
Parlamentsdienste Services du Parlement Servizi del Parlamento Servetschs dal parlament Information über die WebServices der Parlamentsdienste Version 4 Verlauf Version Datum Kommentar Person 0.1 25.03.11
MehrSoftwareentwicklungspraktikum Sommersemester 2007. Grobentwurf
Softwareentwicklungspraktikum Sommersemester 2007 Grobentwurf Auftraggeber Technische Universität Braunschweig
MehrITG RKSVNet - Webservice Signierung von Belegen via Internet
ITG RKSVNet - Webservice Signierung von Belegen via Internet Dieser Signierdienst via Internet ist für Kassensoftwarehersteller gedacht, die Ihre Kassensoftware über das Internet Ihren Kunden zugänglich
MehrDokumentation Goobi-Plugin
Dokumentation Goobi-Plugin für einen Import mittels SRU 1 Dokumentation Goobi-Plugin Technische Dokumentation für ein Goobi-Plugin zum Import von Katalogdaten via SRU für die Humboldt- Universität zu Berlin
Mehrpr[sms] MMS-MM7/SOAP Schnittstelle Version: 1.1 Stand: 29.05.2006 Autor: Gollob Florian
pr[sms] MMS-MM7/SOAP Schnittstelle Version: 1.1 Stand: 29.05.2006 Autor: Gollob Florian Einleitung pr[sms] MMS-MM7/SOAP - Schnittstelle Einleitung Schema MT MMS als Kommunikationsmittel wird immer wichtiger
MehrErfolgsgeschichten phion airlock ICAP Module
Erfolgsgeschichten phion airlock ICAP Module Complex Content Rewriting & Identity Mapping V1.3 2009 by keyon. About keyon 1 Agenda Internet Content Adaptation Protocol (ICAP) airlock & ICAP 1 Complex Content
Mehra.sign Client Lotus Notes Konfiguration
a.sign Client Lotus Notes Konfiguration Version: 1.0 Datum: 02.03.05 Autor: Franz Brandl, a.trust GmbH Inhalt 1. Allgemeines... 3 2. Dokumentänderungen... 3 3. Vorbedingungen... 4 3.1. Lotus Notes... 4
MehrGemeinden-Datenexport. Kt LU BAGE. Version 1.0 18. September 2012
Version 1.0 18. September 2012 Projekt: Autor: Richard Wegier Status: Final Version: 1.0 Datum: 18. September 2012 Versionen Datum Version Autor Beschreibung 30.01.2012 1.0 Richard Wegier Initiale Version
MehrSIMP 1.01 Protokollspezifikation (Mindestanforderung)
SIMP 1.01 Protokollspezifikation (Mindestanforderung) Autor: Harald Pittesser, Dokumentversion: 0.5 beta Eigenschaften SIMP (Simple Instant Message Protocol) ist ein Instant Message Protokol welches folgende
MehrAblaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der IBOConsole
Lavid-F.I.S. Ablaufbeschreibung für das neu Aufsetzen von Firebird und Interbase Datenbanken mit der Lavid Software GmbH Dauner Straße 12, D-41236 Mönchengladbach http://www.lavid-software.net Support:
MehrKonfigurationsanleitung Fax over IP (T.38) und CAPI Fax Server (T.30) Graphical User Interface (GUI) Seite - 1 -
Konfigurationsanleitung Fax over IP (T.38) und CAPI Fax Server (T.30) Graphical User Interface (GUI) Copyright Stefan Dahler 22. Oktober 2013 Version 1.0 www.neo-one.de Seite - 1 - 1. Fax over IP (T.38)
MehrZustandsgebundene Webservices
Zustandsgebundene Webservices Präsentation ausgewählter Problemstellungen der Informatik Markus Oertel oer@uni-paderborn.de Universität Paderborn 25. September 2005 Zustandsgebundene Webservices Seite
MehrAnleitung Registrierung Öffentlicher Benutzer und Bearbeitung Vereins-, Unternehmensverzeichnis, Veranstaltungskalender und Marktplatz
Anleitung Registrierung Öffentlicher Benutzer und Bearbeitung Vereins-, Unternehmensverzeichnis, Veranstaltungskalender und Marktplatz Erstellt durch: format webagentur Stückirain 0 CH- Wiler bei Seedorf
MehrA-Trust REGISTRIERKASSE mobile Developer Manual
A-Trust Gesellschaft für Sicherheitssysteme im elektronischen Datenverkehr GmbH Landstraÿer Hauptstraÿe 5 A-1030 Wien https://www.a-trust.at E-Mail: oce@a-trust.at A-Trust REGISTRIERKASSE mobile Developer
MehrHardware- und Softwareanforderungen für die Installation von California.pro
Hardware- und anforderungen für die Installation von California.pro In diesem Dokument werden die Anforderungen an die Hardware und zum Ausführen von California.pro aufgeführt. Arbeitsplatz mit SQL Server
MehrSoftware- Handbuch www.magicrest.de
Der magisch einfache WebService. Software- Handbuch www.magicrest.de Von Jonathan Werner www.designfire.de Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis... 2 2 Einleitung... 3 3... 4 3.1
MehrECLIPSE PLUG-IN. Redwood Anwendertage 2015
ECLIPSE PLUG-IN Redwood Anwendertage 2015 Übersicht Was ist Eclipse? Welche Voraussetzungen benötige ich? Wie wird das Plug-In installiert Welche Konfigurationen sind sinnvoll? Tipps & Tricks Was ist Eclipse
MehrSkriptenverkauf Datenmodell. Lars Trebing, 4. Juli 2008
Skriptenverkauf Datenmodell Lars Trebing, 4. Juli 2008 Überblick Verkaufsvorgang Verkaufter Bestand Ärger Nummer Verkaufsvorgang Nummer Lagerplatz Abschlußzeitpunkt primär (ja, nein) Text Verkäufer Kunde
MehrWPF Bindung. Dr. Beatrice Amrhein
WPF Bindung Element- und Daten-Bindung Dr. Beatrice Amrhein Überblick Element-Bindung via Eigenschaften-Editor Grenzen des Eigenschaften Editors Die C# Klasse Binding Bindung an C# Objekte 2 Einführung
MehrSchnittstellenspezifikation: ZEUS Web Services
Schnittstellenspezifikation: ZEUS Web Services Version: 1.0.3 Datum: 2009-10-12 Autor: Bernd Ennsfellner, Michael Gruber gizmocraft, design and technology GmbH Landstraßer Hauptstraße 21/6a, 1030 Wien
MehrÄnderungen in der Burweb-Version 2.2.1 (xml- Schnittstelle 1.2)
Eidgenössisches Departement des Innern EDI Bundesamt für Statistik BFS Sektion Betriebs- und Unternehmensregister BUR 00 Grundlagen und Übersichten November 2012 Release Änderungen in der Burweb-Version
MehrFinishWeb 3 Kurzanleitung Forum
FinishWeb 3 Kurzanleitung Forum rhone.ch GmbH FinishWeb 3 Kurzanleitung_Forum 1 Informationen zum Dokument 1.1 Versionierung Version Datum Status Änderungen und Bemerkungen Autor 5.8.2009 Erste Version
MehrContainerformat Spezifikation
Containerformat Spezifikation Version 1.1-21.02.2014 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...
MehrDokumentation Externe Anzeige von Evento Web Dialogen
Dokumentation Externe Anzeige von Evento Web Dialogen Autor: Roger Guillet Telefon 058 404 83 57 E-Mail roger.guillet@crealogix.com CREALOGIX Evento Postfach 112, Baslerstrasse 60 CH-8066 Zürich Telefon
MehrInhaltsverzeichnis. Beschreibung. Hintergrund
SiGS Web SGD Online Produktinformation Inhaltsverzeichnis Beschreibung... 1 Hintergrund... 1 Voraussetzungen... 2 Benutzung... 2 Startmaske... 2 Ansicht SGD... 3 Ansicht Kurzinfo... 3 Ansicht Baum... 4
MehrTYPO3 Super Admin Handbuch
TYPO3 Super Admin Handbuch Erweiterung News Für das System der Maria Hilf Gruppe Version 02 09.03.10 Erstellt durch: NCC Design Florian Kesselring Zeltnerstraße 9 90443 Nürnberg 1 Inhaltsverzeichnis Inhalt
MehrMyTimeSoft Zeiterfassung Benutzerhandbuch
MyTimeSoft Zeiterfassung Benutzerhandbuch Version 4 Stand: August 2015 Ausführliche Beschreibung für Mitarbeiter Seite 0 von 5 Inhaltsverzeichnis 1.) Login... 2 1.1. Anmeldebildschirm... 2 2.1 Erklärungen...
Mehrplazz entertainment AG Fussball WM 2014 Marketing über Facebook Tippspiel
Fussball WM 2014 Marketing über Facebook Tippspiel Mehrwert für Ihr Unternehmen 2014 steht die Fußball WM 2014 als mediales Großereignis ins Haus. Alle Teile der Bevölkerung tauschen sich gern über den
MehrDokumentation Data Dictionary (SIP)
Eidgenössisches Departement des Innern EDI Schweizerisches Bundesarchiv BAR Ressort Innovation und Erhaltung Dienst Digitale Archivierung (DDA) Dokumentation Data Dictionary (SIP) Datum: September 2009
MehrFlash, Network und Facebook. Steven Mohr steven@stevenmohr.de
Flash, Network und Facebook Steven Mohr steven@stevenmohr.de Gliederung 1. Wie ist eine Facebook-App aufgebaut 2. Basics 3. Erste Demo einer kleinen Flash-Facebook-App 4. Friends, Achievements und Invites
MehrBERNcity-App Anleitung
BERNcity-App Anleitung Inhalt 1. Der Home Screen... 2 1.1. Die Home -Taste... 2 1.2.1. Das Telefon Symbol... 3 1.2.2. Das Kontakt-Hinzufügen Symbol... 3 1.2.3. Fussabdruck Symbol... 3 1.2.4. Das Strassenschild
MehrOP-LOG www.op-log.de
Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server
MehrFastBill Automatic. Dokumentation Notifications. FastBill GmbH. Holteyer Straße 30 45289 Essen Telefon 0201 470915057 Telefax 0201 54502360
FastBill GmbH Holteyer Straße 30 45289 Essen Telefon 0201 470915057 Telefax 0201 54502360 FastBill Automatic Dokumentation Notifications 1 Inhalt 1. Grundlegendes 1.1 Was sind Notifications? 1.2 Wie wird
MehrWie mache ich eine Datensicherung vom SQL Server Express
Inhaltsverzeichnis Wie mache ich eine Datensicherung vom SQL Server Express... 1 Datensicherung mit dem Taskmanager von Windows... 2 Taskmanager unter Windows 7... 2 Taskmanager unter Windows XP... 10
Mehr1 Software Engineering 1
1 Software Engineering 1 XML 1.1 XML Extensible Markup Language Auszeichnungssprache zur Darstellung hierarchisch strukturierter Daten in Form von Textdaten Wird für den Datenaustausch/Speicherung benutzt
MehrVersion 1.0 [Wiederherstellung der Active Directory] Stand: 11.01.10. Professionelle Datensicherung mit SafeUndSave.com. Beschreibung.
Version 1.0 [] Stand: 11.01.10 Beschreibung Safe und Save WWS2000 durch den Verzeichniswiederherstellungsmodus Seite 1 von 9 Version 1.0 [] Stand: 11.01.10 1. HISTORIE... 3 2. EINLEITUNG... 4 3. VORAUSSETZUNGEN...
MehrSQL für Trolle. mag.e. Dienstag, 10.2.2009. Qt-Seminar
Qt-Seminar Dienstag, 10.2.2009 SQL ist......die Abkürzung für Structured Query Language (früher sequel für Structured English Query Language )...ein ISO und ANSI Standard (aktuell SQL:2008)...eine Befehls-
MehrAlwinPro Care Modul Schnittstelle TV-Steuerung
AlwinPro Care Modul Schnittstelle TV-Steuerung Beschreibung AlwinPro Care bietet die Möglichkeit TV für tageweise abzurechnen und stellt für die Freischaltung der Leistung einen Authentifizierungsserver
MehrCollaboration Manager
Collaboration Manager Inhalt Installationsanleitung... 2 Installation mit Setup.exe... 2 Security Requirements... 3 Farmadministrator hinzufügen... 3 Secure Store Service... 3 Feature-Aktivierung... 5
MehrEclipse Plugins für die komfortablere Verwendung von ibatis SQLMaps
Projekt: Intern Softwareprojekt FH Furtwangen Status: Draft Ersteller: Kai Grabfelder Datum: 11.02.2007 Eclipse Plugins für die komfortablere Verwendung von ibatis SQLMaps 1 Beschreibung... 2 Semesterprojekt...
MehrDokumentation Typo3. tt - news - Nachrichtenmodul
Dokumentation Typo3 tt - news - Nachrichtenmodul 2 Inhaltsverzeichnis 1.1 Erstellen neuer News Beiträge... 3 1.2 Bearbeiten des Textes... 4 1.3 Einstellen Datum, Archivdatum, Sprache... 5 1.4 Einfügen
MehrContainerformat Spezifikation
Containerformat Spezifikation Version 1.0-09.05.2011 Inhaltsverzeichnis 0 Einführung... 4 0.1 Referenzierte Dokumente... 4 0.2 Abkürzungen... 4 1 Containerformat... 5 1.1 Aufbau des Container-Headers...
MehrMobiles SAP für Entscheider. Permanente Verfügbarkeit der aktuellen Unternehmenskennzahlen durch den mobilen Zugriff auf SAP ERP.
Beschreibung Betriebliche Kennzahlen sind für die Unternehmensführung von zentraler Bedeutung. Die Geschäftsführer oder Manager von erfolgreichen Unternehmen müssen sich deshalb ständig auf dem Laufenden
MehrSecuring SOAP e-services
Securing SOAP e-services Nilson Reyes Sommersemester 2004 aus: E. Damiani, S. De Capitani di Vermercati, S. Paraboschi, P. Samarati, Securing SOAP e-sservices, IJIS, Ausgabe 1 (2002), S.110-115. Gliederung
MehrEffiziente Administration Ihrer Netzwerkumgebung
Admin Anwender Aufträge, Freigaben Verwaltet Benutzer, Mailboxen, Ordner und vergibt Berechtigungen Anbindung von Fremdsystemen Erzeugt und pflegt Mailboxen und Datenbanken Benutzerinformationen und Konventionen
MehrInhalt. Installationshinweise Projektzeitenmanager Version 4 Firebird Datenbank Installationshinweise Projektzeitenmanager Version 4 MS-SQL Datenbank
Installationshinweise Projektzeitenmanager Version 4 s.a.d gmbh mm 19.5.2014 Y:\projekte\orgasoftware\projektzeitenmanager\projektzeitenmanager_v4\handbuch\installations_hinweise_pzm4_v100.docx Inhalt
Mehr2. XML 2.1 XML 1.0 und XML Schema. Jörg Schwenk Lehrstuhl für Netz- und Datensicherheit
XML- und Webservice- Sicherheit 2. XML 2.1 XML 1.0 und XML Schema Gliederung 1. XML 1.0 2. XML Namespaces: URI, URL und URN 3. XML Schema Literatur: A. Tanenbaum, Computer Networks. E. R. Harold and W.
MehrDokumentieren mit Eclipse und Doxygen
Dokumentieren mit Eclipse und Doxygen Boris Budweg, 28.11.2009 Version 0.2 Abstract: Kurze Anleitung für die Benutzung von Doxygen und Eclox in Eclipse. Doxygen-Kommentare / Schlüsselwörter...2 Beispiel...2
MehrSybase Central Dokumentation Aktivierung der Monitoringfunktion
Sybase Central Dokumentation Aktivierung der Monitoringfunktion Version 1.0 14. Dezember 2012 Inhaltsverzeichnis 1 EINLEITUNG... 3 2 ZIELSETZUNG... 3 3 VORGEHENSWEISE... 3 4 ANHANG... 7 4.1 DOKUMENTHISTORIE...
Mehr(B) Regelmäßige Löschung über Task im SQL-Server Agent
Alt-Falllöschung (B) Regelmäßige Löschung über Task im SQL-Server Agent Im Folgenden geben wir eine technische Möglichkeit an, einen automatisierten Aufruf zur regelmäßigen Löschung von alten Fällen in
MehrInstallationsanleitung
Installationsanleitung Installationsanleitung 2 VERSIONSVERWALTUNG Version Autor Beschreibung Datum 1.0 Benjamin Hestler Erstellen des Dokuments 12.01.2010 1.1 Benjamin Hestler Erweitern und anpassen der
MehrSeite - 1 - 8. Out-Of-Band-Authentifizierung (OOBA) 8.1 Einleitung
8. Out-Of-Band-Authentifizierung (OOBA) 8.1 Einleitung Sie konfigurieren den OOBA, um die Webzugriffe mit HTTP ins Internet zu kontrollieren. Das Aufrufen von Webseiten ist nur authentifizierten Benutzern
MehrSMS-INBOUND 1.02 EMPFANG VON SMS (INBOUND) ZUSTELLUNG PER EMAIL ODER HTTP-REQUEST 15. OKTOBER 2014 VERTRIEBLICHE FRAGEN ZUM FITSMS-GATEWAY
EMPFANG VON SMS (INBOUND) ZUSTELLUNG PER EMAIL ODER HTTP-REQUEST 15. OKTOBER 2014 VERTRIEBLICHE FRAGEN ZUM FITSMS-GATEWAY Abteilung FitSMS2 Vertrieb tel +49 (0) 7154-17 86-0 fax +49 (0) 7154-17 86-56 TECHNISCHE
MehrSchwacke Schnittstelle
Schwacke Schnittstelle procar informatik AG 1 Stand: FS 08/2011 Inhaltsverzeichnis 1 Aktivieren der Plugins...3 2 Einrichten der Plugins...5 3 SchwackeNetInterface...6 4 Übergabe eines Fahrzeuges an Schwacke...7
MehrOperationsaufklärung!mit! Windows!8! Bachelorarbeit!
Operationsaufklärungmit Windows8 Bachelorarbeit AbteilungInformatik HochschulefürTechnikRapperswil Herbstsemester2013/2014 Autor(en): OskarKnobel RetoLämmler Betreuer: SimonGubler Verantwortlicher: Prof.HansjörgHuser
MehrZugriff auf die Modul-EEPROMs
MAX-P- und P-Bibliotheken EEPROM-Zugriff 1 Zugriff auf die Modul-EEPROMs Jedes X-Bus-Modul verfügt über ein EEPROM, in dem modulspezifische Daten gespeichert werden. Neben einigen Bereichen, die vom Betriebssystem
Mehr3 Wie bekommen Sie Passwortlevel 3 und einen Installateurscode?
Kurzanleitung Passwortlevel 3, Erhalt und Handhabung Inhaltsverzeichnis 1 Warum Passwortlevel 3...1 2 Gültigkeitsbereich...1 3 Wie bekommen Sie Passwortlevel 3 und einen Installateurscode?...1 4 Eingabe
MehrBackup der Progress Datenbank
Backup der Progress Datenbank Zeitplandienst (AT): Beachten Sie bitte: Die folgenden Aktionen können nur direkt am Server, vollzogen werden. Mit Progress 9.1 gibt es keine Möglichkeit über die Clients,
MehrApartment App. Web Style Guide
Apartment App Web Style Guide Login Zum Anmelden müssen Sie zu der App URL noch /typo3 hinzufügen. Sie sollten dann dieses Anmeldeformular sehen: Geben Sie hier Ihren Benutzernamen und das Passwort ein
MehrUpload auf den Server. MegaZine3 MZ3-Tool3. Training: Server Upload Video 1-4
Upload auf den Server MegaZine3 MZ3-Tool3 Training: Server Upload Video 1-4 Vorbereitung: Erzeugen einer Online Version Soll statt einer Offline Version, welche lokal mit Hilfe des Flash- Projektors angezeigt
Mehretutor Benutzerhandbuch XQuery Benutzerhandbuch Georg Nitsche
etutor Benutzerhandbuch Benutzerhandbuch XQuery Georg Nitsche Version 1.0 Stand März 2006 Versionsverlauf: Version Autor Datum Änderungen 1.0 gn 06.03.2006 Fertigstellung der ersten Version Inhaltsverzeichnis:
MehrReferenzen Typo3. Blog der Internetagentur Irma Berscheid-Kimeridze Stand: Juni 2015
der Internetagentur Irma Berscheid-Kimeridze Stand: Juni 2015 Aktuelle Entwicklungen der Internetagentur Irma Berscheid-Kimeridze sollten auf der Webseite der Agentur dargestellt werden. Werkzeug der Wahl
MehrIT-Zertifikat: Daten- und Metadatenstandards
IT-Zertifikat: Daten- und Metadatenstandards DTD - Document Type Definition / Dokumenttypdefinition Das (bislang) Wichtigste auf einen Blick Externe DTD einbinden:
MehrHSR git und subversion HowTo
HSR git und subversion HowTo An der HSR steht den Studierenden ein git Server für die Versionskontrolle zur Verfügung. Dieses HowTo fasst die notwendigen Informationen zur Verwendung dieses Dienstes zusammen.
MehrDigital signierte Rechnungen mit ProSaldo.net
Digital signierte Rechnungen mit ProSaldo.net Digitale Signatur der PDF-Rechnungen Hier finden Sie eine Anleitung, wie beim erstmaligen Öffnen von digital signierten PDF- Rechnungen, die mit ProSaldo.net
MehrJava Kurs für Anfänger Einheit 5 Methoden
Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden
MehrSnippets - das Erstellen von "Code- Fragmenten" - 1
Snippets - das Erstellen von "Code- Fragmenten" Das Erstellen von "Code- Fragmenten", welche mit dem TinyMCE ausgewählt werden können. Grundlegendes: Die Datei, welche die in Folge erklärten Daten und
MehrObjektorientierte Programmierung für Anfänger am Beispiel PHP
Objektorientierte Programmierung für Anfänger am Beispiel PHP Johannes Mittendorfer http://jmittendorfer.hostingsociety.com 19. August 2012 Abstract Dieses Dokument soll die Vorteile der objektorientierten
MehrArtikel Schnittstelle über CSV
Artikel Schnittstelle über CSV Sie können Artikeldaten aus Ihrem EDV System in das NCFOX importieren, dies geschieht durch eine CSV Schnittstelle. Dies hat mehrere Vorteile: Zeitersparnis, die Karteikarte
MehrInfoPoint vom 9. November 2011
InfoPoint vom 9. November 2011 Was ist Joomla? Theorie Installation Extensions Administration Demo Joomla ist ein modulares content management system (CMS) Es ermöglicht eine Website zu erstellen und online
MehrKurzeinführung Excel2App. Version 1.0.0
Kurzeinführung Excel2App Version 1.0.0 Inhalt Einleitung Das Ausgangs-Excel Excel-Datei hochladen Excel-Datei konvertieren und importieren Ergebnis des Imports Spalten einfügen Fehleranalyse Import rückgängig
MehrMobile-Szenario in der Integrationskomponente einrichten
SAP Business One Konfigurationsleitfaden PUBLIC Mobile-Szenario in der Integrationskomponente einrichten Zutreffendes Release: SAP Business One 8.81 Alle Länder Deutsch November 2010 Inhalt Einleitung...
MehrMultimedia Engineering II - Übung 2
Multimedia Engineering II - Übung 2 Zielstellung der Übungsaufgabe Das Login-Panel der ersten Übung erhält nun die Funktion, auf eine zweite View zu wechseln. Auf dieser werden Sie nun das erste Mal einen
MehrEMU Bill & Report 1/33
EMU Bill & Report 1/33 Inhaltsverzeichnis Schnellstart... 3 1. Datenlogger hinzufügen... 3 2. Kostenstelle erstellen... 5 3. Zähler zu Kostenstelle hinzufügen... 6 4. Rechnungsposition erstellen... 7 5.
MehrSicherheit in Webanwendungen CrossSite, Session und SQL
Sicherheit in Webanwendungen CrossSite, Session und SQL Angriffstechniken und Abwehrmaßnahmen Mario Klump Die Cross-Site -Familie Die Cross-Site-Arten Cross-Site-Scripting (CSS/XSS) Cross-Site-Request-Forgery
MehrTYPO3-Suchmaschinenoptimierung für Redakteure
TYPO3-Suchmaschinenoptimierung für Redakteure TYPO3 Version 7.6 LTS Allgemeines Dieses Dokument beschreibt redaktionelle Maßnahmen zur Verbesserung des Suchmaschinen- Rankings. Diese Maßnahmen sind Teil
MehrDas Compare-, Merge- und Versionierungstool für Microsoft Dynamics NAV. NAVObjectEditor RECY CLE
Das Compare-, Merge- und Versionierungstool für Microsoft Dynamics NAV NAVObjectEditor RECY CLE NAV Object Editor by tegos Das Compare-, Merge- und Versionierungstool für Microsoft Dynamics NAV NAVObjectEditor
Mehr