Innehållsförteckning

Relevanta dokument
Projektpresentation Wapspel

1 Kravspecifikation Snake App

Webbserverprogrammering

Projektet. TNMK30 - Elektronisk publicering

WEBBSERVERPROGRAMMERING

Webservice & ERP-Integration Rapport

Godkännande av kundapplikationer

SGH-A400 WAP Browser Användarhandbok

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document

Nulägesanalys & Kravspecifikation

Webbservrar, severskript & webbproduktion

Mobilt Efos och ny metod för stark autentisering

Undervisningen i ämnet mobila applikationer ska ge eleverna förutsättningar att utveckla följande:

KUNDREGISTER Sid 2(7) Teknisk specifikation

PROJEKT- PRESENTATION

URVAL AV UTFÖRDA HOBBYPROJEKT

Mobilt Efos och ny metod för stark autentisering

Sakfrågan Preliminär specifikation

Projektuppgift.

SLUTRAPPORT WEBBPROJEKT 1

Web Services. Cognitude 1

Användning av handdatorer och trådlösa nät på föreläsningar och i labsalar. Preliminär specifikation

Kort-kort om utdelade användarkonton och datormiljön på NADA

Uppdragsbeskrivning. Paddel-appen Utmärkta kanotleder. Version 1.0 Mats Persson. Distributionslista. Namn Åtgärd Info.

Mobilt Efos och ny metod för stark autentisering

Utredningsrapport Gemensam bokningsplattform och anläggningsregister för Umeå regionen.

Introduktion Schenker-BTL AB, Stab IT Beskrivning över informationsintegreringmed Schenker, metodbeskrivning version 1.

Kravspecifikation. Sammanfattning. Fyra i rad Javaprojekt inom TDDC32. Version 2.0. Datum Dokumentnummer

Lathund Blanketthotell Komma igång

Klient/server. Översikt. Lektion 1: Webbtekniker från Microsoft. Webbteknik från Microsoft. Klient/server. Designmönster. Utrullning.

Snake App Rapport - Snake App Rapport Utskriven/PDF Export: Copyright Version 1.2 Sidan 1 av 9.

Lite mer om CGI-programmering

Slutrapport Diagnos. Resultat. Projektmål. Projektstruktur

Microsoft Operations Manager 2005

ADITRO LÖSNINGAR FÖR EN ENKLARE JOBBVARDAG SUMMIT 2014 PER JOHANSSON & JOEL KÖHL ADITRO L FRÅN WINDOWS TILL WEB

KTH Programutvecklingsprojekt med mjukvarukonstruktion 2D1362. Projektpresentation

Projektdirektiv Oskar Ljungqvist Sida 1. Kund/Examinator: Daniel Axehill, Reglerteknik/LiU

Javautvecklare. Utbildningsfakta. 400 YH-poäng, 2 år

Projektplan. LiTH Segmentering av MR-bilder med ITK Anders Eklund. Version 1.0. Status. Bilder och grafik projektkurs, CDIO MCIV LIPs

Kristoffer Eriksson Christer Oscarsson Andreas Dahlberg Martin Bengtsson

Uppdragsbeskrivning. Google Glass. Version 1.0 Mats Persson. Distributionslista. Namn Åtgärd Info.

1 Systemkrav avantraupphandling

Inlämningsarbete Case. Innehåll Bakgrund bedömning inlämningsarbete... 2 Inlämnade arbeten... 4

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2015.Q1

Systembeskrivning Tjoho Maj 2003

Objektorienterad Programkonstruktion. Föreläsning 3 9 nov 2015

JavaRats. Kravspecifikation. Version 1.1. Gustav Skoglund Marcus Widblom Senast ändrad: 13 / 05 / 08

12 juni 2009 Projektplan Webb-baserat bokningssystem för flyg Kurs: Applikationsutveckling för internet, TFE

Installationsanvisningar för GSMlarmmodul för IVT värmepump C- och E- modell med reglercentral Rego600

PKS5000PC hjälpmedel uppföljning

TDDC74 - Projektspecifikation

LIPs Daniel Axehill ChrKr Projektdirektiv_Saab_v3 CKr

Calligra. En allmän inledning. Raphael Langerhorst Jost Schenck Översättare: Stefan Asserhäll

Installation och konfiguration av klientprogramvara 2c8 Modeling Tool

Bilaga 9 Säkerhet Dnr: /2015 Förfrågningsunderlag

Kravspecifikation. LiTH Segmentering av MR-bilder med ITK Anders Eklund Version 1.0. Status

PHP - Fortsättning. PHP och MySQL

Nätverksprogrammering, EDA095

Idrottsapen. 1. Inledning. 2. Mål och syfte. 3. Projektbeskrivning

Installationsbeskrivning

Introduktion till integrering av Schenkers e-tjänster. Version 2.0

Fyra i rad Javaprojekt inom TDDC32

Programvara på Nada. Johan Berglund Systemgruppen, Nada

Gränssnitt för FakeGranska. Lars Mattsson

Objektorienterad programmering med Java Swing: Händelser, lyssnare och applets

Datacentertjänster PaaS

Innehåll. MySQL Grundkurs

Beskrivning av gesällprov RMI Chat Mikael Rydmark

Federerad Roll Administration ÄR GROUPER EN MEDSPELARE? OVE OLANDER MITTUNIVERSITETET

GroupWise. Novell. Snabbstart. SNABBSTART

Myndigheten för samhällsskydd och beredskap 1 (10) Datum Installationsguide ROPA

Snake. Digitala Projekt (EITF11) Fredrik Jansson, I-12 Lunds Tekniska Högskola,

Sustainable engineering and design

FLEX Personalsystem. Uppdateringsanvisning

Projektuppgift - Gymmet

WHITE PAPER. Open End TM Funktionell översikt

Systembeskrivning.

HexaFlip. Kravspecifikation

Joakim Jonsson jj222kc. Minesweeper. Individuellt Mjukvaruprojekt Joakim Jonsson

Praktikum i programmering

PM 01 En jämförelse av två analysmodeller för val av komponentteknik

Instruktioner för uppdatering från Ethiris 5.x till 6.0

Din leverantör av hissautomater, pallställ, grenställ och utdragsenheter.

Brädspelet Mulan. Håkan Berggren, Magnus Ellisson, Lars Kristiansson, Cheng-Huei Kuo, Eva Ljunggren, Joakim Viker. Göteborg 1999.

Tjänstebeskrivning Extern Åtkomst COSMIC LINK. Version 1.0

SLUTRAPPORT RUNE TENNESMED WEBBSHOP

Det här dokumentet är till för att ge en översikt över ASP.NET MVC samt hur WCF Services används från.net applikationer.

Enhetstester på.netplattformen

Systemskiss. Självetablerande sensornätverk med 3G och GPS. Version 0.2. Christian Östman Datum: 15 maj 2008

Kom igång med TIS-Office

Utveckling av webbapplikationer med.net, DVA213 (1 av 5)

Systembeskrivning. Inklusive beskrivning av klienterna. Juni Författare: Ted Björling, Accedo Broadband AB

Edlund, Louise Ekdahl, Johan Fernström, Jesper Jansson, Fredrik Larsson, Helene Malmén, Per Sölen, Baran Wiksten, Oskar

Projektuppgift- Mashup- Applikation

E tjänstplattformen och e tjänstakuten. Referensgruppsmöte

Vad är molnet? Vad är NAV i molnet? Vem passar NAV i molnet för? Fördelar med NAV i molnet Kom igång snabbt...

Voice over IP / SIP. Switching Costs SIP. Motivation for VoIP. Internet Telephony as PBX replacement. Internet Telephony Modes.

INNEHÅLL. Konfigurering av SQL Server. Egenskaper Kommunikationsprotokoll

TMP Consulting - tjänster för företag

LiTH Autonom styrning av mobil robot Projektplan. Martin Elfstadius & Fredrik Danielsson. Version 1.0

Transkript:

Innehållsförteckning Projektbeskrivning... 2 Projektgruppen... 2 Gruppindelning... 2 Parallellt arbete... 2 Samarbete... 2 Projektets målsättning... 3 Bakgrund... 3 Mål... 3 Målgrupp... 3 Kontakt med målgrupp... 3 Datormiljö och Programvara... 3 Hårdvara... 3 Mjukvara... 4 Allmänt om produkten... 4 Funktioner... 4 Systemet... 4 Spelet... 4 Tekniska delar... 4 Klientsidan... 4 Serversidan... 5 Sammankopplingen... 5 Riskanalys... 5 Körexempel... 6 Resultat... 7 Referenser... 8 Bilagor: Användarhandledning Systembeskrivning

2 Projektbeskrivning Projektuppgiften består i att utveckla ett textbaserat äventyrsspel med WML-gränssnitt för mobiltelefon enligt önskemål från företaget Smarttrust. Spelet ska fungera på Smarttrusts WIB/WIG-plattform (se nedan). För att möjliggöra detta har projektgruppen även tagit fram en generell plattform för att spela olika typer av textbaserade spel för mobiltelefoner. Syftet med projektet är att ta fram ett äventyrsspel som kan köras på plattformen och som kan användas av Smarttrust för att demonstrera denna. Spelet skall kunna spelas från en mobiltelefon utrustad med SIM-toolkit och det av Smarttrust specificerade WIB- SIM-kortet. Spelet skall vara anpassat till telefondisplayens storlek och begränsningar, samt SMS-teknikens datakapacitet. Det skall inte kräva någon regelbunden interaktivitet av användaren. Projektgruppen Projektet genomförs av Lykke Silfwerbrand, Mikael Svensson, Anna Söderström, Andreas Wennlund och Per Wilhelmsson. Projektets ansvarsområden är uppdelade inom gruppen. Projektledare Mikael Kontaktperson Lykke Tekniken, övergripande Andreas Dokumentationen Anna Spelhistorien Per Webbadressen till projektplatsen, där information om projektet finns är: www.nada.kth.se/projects/proj01/pamal Gruppindelning Gruppen är indelad i två delar med olika inriktningar; en grupp är inriktad på historien och den andra på tekniken bakom en realisering av denna. Den tekniska gruppen är i sin tur uppdelad i tre undergrupper varav en koncentrerar sig på serverdelen, en annan på databasen och en tredje på WML-koden. Parallellt arbete Grupperna arbetar hela tiden parallellt eftersom de olika delarna genom gränssnitten till stor del är beroende av varandra. Grupperna har ständig kontakt och samarbetar när komplikationer uppstår. En fördel med detta är att alla är överens och införstådda vid förändringar och alla är hela tiden delaktiga i projektets fortlöpande. Gruppen har täta möten med rapporteringar, där bedömningar och beslut om resursfördelningar och prioriteringar görs. Samarbete Vi har haft ett bra fungerande samarbete inom projektgruppen som byggt på att alla tagit ansvar för olika delar och att vi har arbetat tillsammans för att varje deltagare skulle nå sina mål. Pamal Historien Tekniken Bild 1.Projekt gruppens indelning. Databsen Severn WML

3 Projektets målsättning Bakgrund Bakgrund till projektuppgiften är en önskan från Smarttrust att undersöka möjligheten att göra ett textbaserat äventyrsspel på WIB/WIG-plattformen. Mål Smarttrust har specificerat en Wireless Internet Browser, WIB. Denna implementeras på SIM-kort av SIM-kortstillverkare. I kombination med en Wireless Internet Gateway, WIG, ger WIB användaren möjlighet att komma åt WML-baserat innehåll även på mobi ltelefoner som inte stöder WAP. Kombinationen WIB/WIG använder SM (Short Message) som databärare. Tanken med projektet är att implementera ett spel av äventyrskaraktär som kan spelas på en mobiltelefon över WIB/WIGplattformen. Eftersom spelet spelas på en mobiltelefon begränsas möjligheterna till grafisk presentation, mängd överförd data per drag mm. till skillnad från spel av samma typ som spelas på en dator. Hänsyn till dessa aspekter måste tas vid utformningen av spelet. WIG orsakar ytterligare begränsningar då den bara tillåter en delmängd WML vid svar till mobiltelefonen. Spelet skall trots dessa tekniska begränsningar ha underhållningsvärde och kvalitet. Fokus hamnar därför på att spelhistorien är intressant och händelserna väl genomtänkta samt att detta inte kräver avancerad teknik för att presenteras. Situationer och platser som spelaren själv kan lätt föreställa sig är att föredra framför fiktiva fantasivärldar. Målgrupp Projektets målgrupp är användare mellan 10 och 30 år. Spelet ska vara unde rhållande och lättförståeligt för alla i målgruppen. Kontakt med målgrupp Projektgruppen har testat konceptet för äventyrsspelet på flertalet jämnåriga och det har mottagits positivt. En del har erbjudit sig att testa produkten och uppgett att de gärna skulle vilja ha ett liknande spel. Datormiljö och Programvara Projektet utvecklas i UNIX- och Windowsmiljö och med hjälp av olika mjukvara. För att konstruera systemet används; SQL Structured Query Language - som används för att bl.a. söka och ändra i databasen, JAVA, ett objektorienterat programmeringsspråk och WML Wireless Markup Language - som beskriver hur information presenteras i bl.a. mobiltelefoner. Hårdvara Vid utvecklingen av WML-gränssnittet används ett SIM-kort och en kortläsare som tillhandahålls av Smarttrust. För testning av

4 produkten används ett WIB-SIM-kort och en mobiltelefon vilka Smarttrust också ombesörjer. Mjukvara Vid implementering används olika utvecklingsverktyg; Jbuilder och emacs för Javaprogrammering, Cloudview för databasen Cloudscape och G&D STARSIM Browser Suite för utveckling av WML. En javaserver används för att köra applikationer på serversidan. Allmänt om produkten Produkten består av flera delar, moduler, som tillsammans erbjuder möjlighet att spela ett spel av äventyrskaraktär från mobiltelefonen. Flera av dessa moduler är redan färdiga komponenter till vilka nya, av projektgruppen konstruerade, komponenter kopplas för att erbjuda önskad funktionalitet. Funktioner Systemet Genom ett menysystem på mobiltelefonens display väljer användaren bland alternativa drag. Resultatet av draget presenteras i mobiltelefonens display i form av ett kort textmeddelande följt av nya menyer med nya val. Händelseförloppet presenteras i text på displayen och användaren kommunicerar med ett fåtal kommandon i form av knapptryckningar för att meddela sitt val av drag. Systemet hanterar all kommunikation till och från mobiltelefonen och håller reda på alla användare samt deras respektive drag och placering. Flera spelare kan samtidigt spela samma spel och en spelare kan under samma period, dock inte samtidigt, vara delaktig i flera olika spel. Spelet Användaren kan med hjälp av menyerna ta sig runt i spelvärlden bland rum och fiktiva rollpersoner. Användaren kan leta efter saker och plocka med sig dem eller använda dem. Användaren kan också ställa frågor till de personer som denne möter i spelet för att på så sätt skaffa sig mer kunskap om hur det är möjligt att ta sig vidare i spelet. Olika drag resulterar i olika händelser; nya rum och rollpersoner dyker upp, saker och personer förflyttar sig till andra platser i spelvärlden mm. Tekniska delar Klientsidan Mobiltelefonen,WIB Med hjälp av en WIB (Wireless Internet Browser) som sitter på särskilda SIM-kort för mobiltelefoner erbjuds möjlighete n att via SM skicka information till och från telefonen. Information når mobiltelefonen inpackad i SM och innehåller instruktioner till WIB hur data skall presenteras i menyer på telefonens display. Information som går från telefonen packas in i SM och kan, via en WIG (se nedan), skickas vidare vart som helst på Internet. Wireless Internet Gateway, WIG För att möjliggöra kommunikation mellan mobiltelefonen och en server används en WIG som en portal för att konvertera informationen

5 mellan data inpackat i SM och data inpackad i http-paket. En WIG har alltså på ena sidan kontakt med Internet, där servern finns, och på den andra sidan kontakt med mobiltelefonen. Med hjälp av en WIG möjliggörs produkter av den här typen. Serversidan Servlet En servlet är ett program skrivet i programmeringsspråket JAVA som kan hantera information som skickas över Internet t.ex. information paketerad i http-paket. Servletapplikationen tar emot en förfrågan (eng. request) och skickar tillbaka ett svar (eng. response). Servletapplikationen skickar ett svar till den som ställt förfrågan, i det här fallet en WIG. Spelmotor För att hålla reda på alla regler för ett visst spel tar servletapplikationen hjälp av en spelmotor som hanterar alla drag som användaren kan välja i spelet. Det behövs en separat spelmotor för varje spel. Spelmotorn använder sig av informationen i en databas för att kunna skicka tillbaka rätt information. Den ändrar och letar upp all information den behöver i databasen. Databas Alla rollpersoner, rum, saker och även användare lagras i en databas. Denna uppdateras och ändras i takt med att användaren gör olika drag. Databasen håller reda på alla spelare, rollpersoner, rum, saker mm. och på var allt och alla befinner sig vid varje tidpunkt. Sammankopplingen Systemets delar kopplas samman nästan som en kedja. En del i kedjan känner bara till de delar som är dess grannar. Mobiltelefonen, som sitter i kedjans ena ände, behöver bara veta om var en WIG finns för att kunna kommunicera. Den WIG som mobiltelefonen kontaktar måste känna till mobiltelefonen. I informationen från mobiltelefonen finns uppgifter om var på Internet den server som servletapplikationen ligger på finns. På så sätt känner WIG:en till servletapplikationen. Applikationen måste känna till den spelmotor som skall anropas för att hantera draget som spelaren valt. Spelmotorn känner till databasen och servletten. Ett meddelande går från kedjans ena ände genom alla delar till den andra änden. Sedan kommer ett svar tillbaka samma väg. [Mobiltelefon WIG WML-server] [Konverterare Spelmotor (DB)] Riskanalys Under projektets gång uppstår problem som kan förhindra eller begränsa resultat i utvecklingen. Även med en färdig produkt finns vissa risker: Generalitet och Skalbarhet Programmet är inte helt och hållet generellt och/eller skalbart för att klara av olika parallella spel eller många användare. Det har dock beretts plats för skalning och för utvidgade spelregler. Logik Brister i spelets logik kan inte uteslutas eftersom det finns små möjligheter att testa spelet skarpt och systemet har en komplicerad logik som kan skapa problem. Risken bedöms dock inte vara

6 överhängande då en särskild testapplikation utvecklats för att upptäcka och eliminera brister i logiken. Körexempel För att spela spelet krävs det att användaren har en WIB Wireless Internet Browser på sitt SIM-kort. Dessutom måste användarens operatör erbjuda och ladda ner en speltjänst på SIM-kortet. För att registreras som spelare anmäler användaren sig via en sida på Internet som då lägger in användaren i databasen och kopplar densamme till önskat spel. När spelet börjar är spelaren i en hotellobby. Följande text kommer upp på mobiltelefonens display: Hotellobbyn Portiern halvslumrar över en tidning, allt är tyst. Till vänster står ett bord med en uppslagen tidning. Efter detta kommer en meny upp med en lista på möjliga drag: Bild 2 Händelsemeny Väljer spelaren att undersöka tidningen, som i detta skede i spelet är det enda valbara alternativet i den undermeny som visas om när spelaren väljer undersök, visas texten: Undersök tidning Huvudrubriker: Maffian misstänks för inblandning i läkemedelsskandal med Transgenic inc. Kraftig snöstorm väntas drabba landet inom kort. Allmänheten uppmanas stanna inomhus Carola och robinson-kalle i het romans på hotell. Därpå visas huvudmenyn igen och spelaren väljer denna gång använd. Bild 3 Händelsmeny I nästa meny har spelaren valt att använda klockan som står på disken. Denna text kommer då upp: Använd Klocka Portiern tittar sömnigt upp från tidningen Spelaren kan nu välja mellan: Bild 4 Frågemeny

7 På detta sätt går spelet vidare så att spelaren genom att göra olika val kommer vidare i spelet. Beroende på vad spelaren har gjort hittills och vad denna har tagit reda på så kommer olika öppningar längre fram i spelet. Resultat Projektgruppen hade som mål att implementera ett spel av äventyrskaraktär som kan spelas på en mobiltelefon över WIB/WIG-plattformen. Målet var även att spelet, trots tekniska begränsningar, skulle ha underhållningsvärde och kvalitet. Fokus hamnade därför på att spelhistorien skulle vara intressant och händelserna väl genomtänkta samt att det inte skulle krävas avancerad teknik för att presentera händelserna på en mobiltelefondisplay. Resultatet av själva spelet stämde väl överens med de krav som gruppen ställde på det i form av enkel men ändå underhållande handling, anpassad för mobiltelefonen. Målet med tekniken och utformningen av den plattform som spelet bygger på var att den skulle vara så generell som möjligt. Den skulle alltså kunna hantera flera spel och flera användare. Resultatet blev en generell databas, spelmotor och server som klarar de krav på generalitet som ställdes upp i början av projektet.

8 Referenser Java API www.java.sun.com Cloudscape 3.6 dokumentation www.cloudscape.com Resin dokumentation www.caucho.com Smarttrust WML-utvecklardokumentation www.smarttrust.com WML Specification Wireless Internet Gateway Browser Request Protocol Specification WIG Application Guidelines Push Request Protocol Specification