Click4Alert System för Felanmälan

Storlek: px
Starta visningen från sidan:

Download "Click4Alert System för Felanmälan"

Transkript

1 Kandidat examensarbete 15 poäng, Kurs CDT307 Datavetenskapliga programmet Allmän inriktning HT 2012 Click4Alert System för Felanmälan Student: Andrzej Wojtczak MDH handledare: Afshin Ameri MDH examinator: Dag Nyström Saab Dynamics AB - Karlskoga handledare: Per-Olof Persson

2 Sammanfattning Click4Alert är en tjänst för hantering av felanmälningar. Det finns olika feltyper som kan felanmälas, exempelvis: klotter eller potthål. Framför allt möjliggör tjänsten en interaktiv kommunikation mellan invånare och kommunens tjänstemän oavsett användarnas ålder eller skicklighet att hantera datorer och mobila enheter. Med mobila enheter avses här smarttelefoner och läsplattor. Användargränssnitt är medvetet utformat så att det är enkelt och intuitivt att använda. Tjänsten baseras på öppna programvaror och fria utvecklingsmiljöer, vilket medför att inga licensavgifter tillkommer. Inga extra arbeten eller kostnader är nödvändiga under integreringsprocessen med kommunens nuvarande nätverk, eftersom Click4Alert levereras som en molntjänst. Vissa delar av Click4Alert applikationen kräver ytterligare arbete, när det gäller tester och feedback. Den verkliga feedbacken får man först när man gjort en installation och provkör applikation i ett skarpt läge. Trots att ett stort arbete har lagts ned kring säkerhetsfrågorna måste man genomföra omfattande tester för att påstå att tjänsten inte är behäftad med fel eller har potentiella säkerhetsluckor. Det finns även en del starka önskemål runt funktionaliteten. Framförallt handlar det om implementering av redan existerande funktioner i versionen för stationera/bärbara datorer till mobila enheter. Tjänsten i sin nuvarande form garanterar den grundläggande funktionaliteten, men den har goda möjligheter att vidareutvecklas. En inriktning för vidareutveckling kan vara applikationer för andra mobila operativsystem, exempelvis: ios och Windows Phone. Det är svårt att bedöma om hur mycket merarbete som gjorts jämfört med de ursprungliga planerna. Trots det omfattande merarbetet så återstår mycket att förbättra och förfina. Det har varit en stor glädje att arbeta med tjänsten eftersom den innehåller delar där de sociala hänsynstagandena måste beaktas. Sist och inte minst så ser man en möjlighet att tjänsten har en potential att slutligen kan används som ett skarpt verktyg för kommuner och ge de mätbara vinsterna.

3 Innehållsförteckning 1 Inledning Bakgrund Grundläggande idé Strategi för innehållshantering PACT Extrem Programmering Syfte Problemställning Relaterade Arbeten Existerande tjänster Förbättringspotential Projektets specifikation Utvalda teknologier Utvalda frågor angående säkerhet och datapresentation Säkerhet datainmatning Säker datapresentation Design Övergripande programarkitektur Click4Alert och Kommun synkronisering Programvara säkerhet Resultat Generella mekanismer Säkerhet och datarepresentation Säkerhet Datarepresentation Gemensamma egenskaper Administratör - detaljerad beskrivning Gränssnitt vid inloggning Gränssnitt efter inloggning Handläggare detaljerad beskrivning Gränssnitt vid inloggning Gränssnitt efter inloggning Extern användare detaljerad beskrivning Diskussion Analys av projektets specifikation Organisation, effektivitet och interaktion Extrem programmering (XP) PACT Slutsatser Rekommendationer Listor Bilagor Figurer Förkortningslista Referenser av 45

4 Förord Denna rapport är en redovisning av sex månaders arbete kring utveckling av en tjänst för felanmälan där Sabb Dynamics AB har varit en uppdragsgivare. Tack vare mycket ett bra samarbete med uppdragsgivaren, har examensarbetets mål uppnåtts på ett smidigt sätt. Handledarens anvisningar har gett betydande bidrag till projektet. Speciellt var anvisningar, som berör strukturen i rapporten mycket värdefulla. Sist, men inte minst, skulle programskrivandet varit mycket svårare och mindre effektivt utan hjälp från det anonyma e-samhället.

5 1 Inledning 1.1 Bakgrund Grundläggande idé Den snabba utvecklingen av teknologier inom dataöverföring och kommunikation har gett oss nya möjligheter. Vi kan idag kommunicera via mobiler, bärbara datorer, läsplattor osv., på ett helt annat sätt än för 10 år sedan. Denna utveckling ger möjligheter att effektivisera och förbättra befintliga tjänster. Konceptets grundidé är att invånarna skall kunna anmäla fel till kommunen via sin dator eller mobil enhet och sedan ha möjlighet att kontinuerligt följa processen ända tills dess att felet är åtgärdat. På så sätt blir kommunikationen dubbelriktad. Hitintills har den enbart varit enkelriktad dvs., anmälaren ringer eller skickar ett brev till kommunen och i bästa fall så bekräftar kommunen att ha tagit emot anmälan. Att upprätthålla en dubbelriktad kommunikation genom att skicka ett brev eller ringa skulle bli alldeles för arbetskrävande. De nya teknologierna som finns idag möjliggör en dubbelriktad kommunikation utan att detta medför en större arbetsbelastning på kommunens handläggare. Snarare är det så att belastningen blir lägre eftersom det mesta går att automatisera. I de flesta fall kräver administrationen av en felanmälan ett fåtal knapptryckningar samt några textrader av kommentarer. Detta examensarbete utvecklar en metod som minskar arbetsbelastning Strategi för innehållshantering En content management strategi 1 är en strategi som bevakar över innehållet som publiceras på en webbplats. Huvudsyftet är att en användare utan programmeringskunskaper skapar, uppdaterar eller sköter webbplatsens innehåll genom att använda en godtycklig webbläsare och enhet. Förutom redigering av innehållet formaterar användaren innehållets utseende på ett enkelt sätt med typsnitt, färg, storlek och mm. Enligt Rockley och Cooper Only adaptive content design can give customers what they want, in the form they want it, and in the right context. 2 Detta kommer att vara en grundläggande princip i mitt projektarbete. Idén yttrar sig även i det att innehållet på webbplatser kan presenters i andra format än HTML PACT PACT 3 är en akronym som står för People, Activities, Contexts, Technologies och är ett begrepp som används för att undersöka sambanden mellan människor, miljöer där de befinner sig och även deras samspel med ett användargränssnitt. Med användargränssnittet i detta fall menas en förbindelse mellan användaren och det som syns på skärmen i webbaserad eller en nativ mobil applikation. Inom interaktionsutformning har PACT en stor betydelse, på grund av dess grundläggande principer. En god användbarhet är ett krav som ställs av interaktionsutformning när det gäller utformningen av produkter eller tjänster. 5 av 45

6 1.1.4 Extrem Programmering Processen extrem programmering 4, (XP) är ett programmeringsparadigm för att på ett lätt sätt skapa och slutföra små och medelstora högriskprojekt. Med högriskprojekt menas i detta fall ett projekt som inte har klara antaganden utan bara övergripande önskemål. För att lyckas med ett projekt som administreras enligt XP metodik studerar man andra projekt som har varit framgångsrika och liknande projektet. XP tillåter att man använder olika programmerings- och designmetoder och möjliggör därmed att man kan utnyttja de som passar bäst; man blir flexibel i sitt utvecklingsarbete. Formellt, tillhör XP gruppen lättviktsprocesser - detaljer se figur 1 - som karaktäriseras av: Små grupper av utvecklare; Enkelhet i design och kod; Minimalt onödigt arbete (vare sig det gäller dokumentation eller kod); Korta cykler; Kontinuerlig feedback; Lät omstrukturering av kod eller refaktorisering. Figur 1 Extrem Programmering 6 av 45

7 1.2 Syfte Syftet med detta examensarbete är att utveckla en tjänst som möjliggör för kommuninvånare att skicka in en felanmälan till kommunen via Internet samt få en kontinuerlig feedback om ärendets hantering. Vidare skall tjänsten innehålla ett ärendehanteringssystem med tillhörande databas så att den kommunala handläggaren har möjlighet att planera och tilldela uppgifter inom kommunen, notera uppgifter i databasen som rör felanmälan och vid behov vidarebefordra ärendet till annan myndighet eller företag. Den samlade informationen i databasen skall kunna utgöra en grund för kvalitetsbedömningar av kommunens arbetssätt. Oavsett i vilket stadium ärendet befinner sig i, skall det finnas möjligheter att publikt följa dess status. Den som har anmält felet skall också kunna prenumerera på ärendets status så att han/hon får ett e- postmeddelande om någon förändring har skett. Det är viktigt att få ett smidigt interaktivt meningsutbyte mellan invånarna och kommunen. Hela arbetsprocessen inklusive förvaltningen skall följa gängse rutiner inom kommunen. Om ett ärende inte faller under kommunens ansvar skall det finnas möjlighet att överföra anmälan till en lämplig myndighet eller ett företag med en notering till anmälaren att detta har skett. Övergripande konceptet illustreras i figur 2. Figur 2 Övergripande koncept 7 av 45

8 1.3 Problemställning Trots att felanmälningar är offentliga handlingar, har såväl kommunanställda som kommuninvånarna svårt att kommunicera med varandra. Kommuninvånarna upplever missnöje på grund av brist på en personlig återkoppling efter att felanmälan gjordes. Kommunanställda i sin tur, upplever att deras ansträngningar är underskattade samt att deras förmågor inte är fullt utnyttjade. Anmälaren är inte övertygad att hans eller hennes felanmälan kommer att bearbetas inom en rimlig tid eller kan misstänka att den till och med blev bortglömd. I sådana oklara situationer kommer upp olika frågor. Ska man felanmäla igen eller försöka följa upp det gamla ärendet? Felanmälans handläggare måste vara redo att svara på anmälarens frågor vid varje tidpunkt. Om det inte finns något stödsystem för kommunanställda, blir deras jobb stressigt, oorganiserat och mindre effektivt. På grund av bristen på dubbelriktad kommunikation riskerar bägge sidor att hamna i onödiga frågor. Frågor som kan leda till missnöje mellan kommunanställda och kommuninvånarna. Brist på kommunikation resulterar många gånger i en besvikelse eller en irritation. Lösningen kan vara att implementera ett genomtänkt och förnuftigt system, som tillfredsställer alla. Kommuninvånarna får ständig återkoppling och insyn i varje ärende utan att engagera kommunanställda. De sistnämnda i sin tur, har en organiserad databas med alla nödvändiga funktioner, med andra ord en tjänst som kompletterar och organiserar deras arbete med felanmälningar. 8 av 45

9 1.4 Relaterade Arbeten Existerande tjänster Infracontrol är ett svenskt företag som specialiserar sig inom IT för infrastruktur. Företaget verkar försöka fånga in ett mycket stort verksamhetsområde. 25 personer täcker ett stort område vilket betyder att deras tjänster är standardiserade och kan inte anpassas till varje kommun önskemål. Det saknas såväl en tydlig feedback till medborgare, som en presentation i form av en karta, där kommunens samlade ärenden finns. Att felanmäla på detta sätt tyder på avsaknad av kommunikation, eftersom att en anmälare eller andra medborgare inte får någon gemensam information om felet. Man kan tänka sig olika scenarion, exempelvis: felet är redan anmält och arbetet pågår, eller ansvaret att åtgärda felet hör till något annat myndighet. Från medborgarens synvinkel är det oviktigt vem som bär ansvaret. Allt som behovs är en snabb feedback. SeeClickFix får anses som den mest alerta och offensiva konkurrent. Företagets filosofi går ut på en standardiserad lösning för alla aktörer. Det i sin tur utesluter anpassningar till varje kommun önskemål. Trots att det finns en karta där samlade ärenden finns, så måste anmälaren själv övervaka felanmälan och se till att avsluta den på kartan. I praktiken betyder det att det inte finns någon kommunikation mellan medborgarna och myndigheten. Viktigt är att bolaget inte verkar vara intresserad av de svenska kommunerna Förbättringspotential Projektet anses lyckat om designen kommer att vara flexibelt eller snarare sagt anpassar sig på ett enkelt och icke-tidskrävande sätt. Anpassningsbarhet av den här tjänsten till varje potentiell kund är a och o. Nedan finns angivna positiva effekter av tjänstens flexibilitet eller anpassningsbarhet. De effekterna skulle också kallas för kundnytta. Kommunikation mellan kommunen, andra myndigheten eller externa bolag, och medborgarna skulle vara transparent och mätbar enligt angivna kriterier. Smartare resursstyrning genom att den inbyggda och genomtänkta arbetsprocessen styr upp arbetet. Medborgarna påpekar felen; tid för inspektioner reduceras. Administration att ta emot fel är till stor del automatiserad. Ärenden styrs av ett väl genomtänkt processflöde som enkelt kan justeras vid behov. Alla ärenden har färgade markörer i kartan beroende på status; inget går att dölja. Alla medborgare och tjänstemän/politiker har insyn i ärendenas aktuella status. Insynen medför att alla känner sig delaktiga, kan ge synpunkter och därmed bidra ständiga förbättringar. Omedelbar översikt om ett område är överrepresenterat av exempelvis skadegörelse; kan ge anledning till riktade åtgärder. Ökad goodwill, en åtgärd kan få dröja om man vet orsaken. Medborgarna får en insyn i allt arbete 9 av 45

10 som kommunen gör. Om ovan nämnda implementeras, kommer det att fylla tomrum hos de relaterade projekten och på så sätt förbättra tjänsten. Genom djupintervjuer med användare skapar man sig en klar bild hur ärende hanteras samt vilka moment som är viktiga för att anpassa tjänsten till kundens önskemål. Det handlar inte enbart om att ha en övergripande insyn i hanteringen av ärenden utan det krävs att man även känner till detaljerna. Detta ger en försäkring om att kunden blir nöjd samt upplever att tjänsten har hög kvalitet. I nuläge har de relaterade projekten sina konceptuella brister som kan förbättras och omvandlas till ett succé projekt. Projektet som visar en mätbar kundnytta och har ett klart koncept vinner kundernas förtroende. Av denna anledning Click4alert har stora chanser att finna intresse hos kommuner. 10 av 45

11 1.5 Projektets specifikation Följande lista över antaganden och riktlinjer utgör projekts specifikation: Nuvarande arbetsprocesser och regelverk inom kommunen skall vara intakta; Lagen om diarieföring av inkomna handlingar skall uppfyllas; Den administrativa hanteringen skall utformas så att den är generisk och på så sätt är det enkelt att ändra organisationsformer och arbetsrutiner; Tjänsten skall vara säkrad mot hackerattacker; Tjänsten skall vara fristående från kommunens egna datanät; Rutiner för automatiska säkerhetskopior skall finnas; Alla plattformar för kommunikation via Internet skall kunna användas; Medborgare utan Internetanslutning skall kunna nyttja tjänsten (Uppgifter från telefonsamtal eller brev matas in manuellt); Tjänsten skall ha ett enkelt och intuitivt användargränssnitt; De olika felanmälningarnas status skall vara publik; Examensarbetet skall kunna utgöra en grund för eventuell vidareutveckling; I syfte att minimera kostnaderna skall öppen källkod miljö användas; Möjlighet skall finnas att vidarebefordra ett ärende till annan myndighet eller företag; Möjlighet skall finnas att överföra och lagra bilder på felet. 11 av 45

12 1.6 Utvalda teknologier När det gäller val av programmeringsspråk och servrar kan man konstatera att en del antogs innan examensarbetet startades. Bland dessa antaganden finns: PHP ett skriptspråk som exekveras på webbservrar. Javascript ett skriptspråk som exekveras på klientsidan i en webbläsare Javascriptmotor. Google Maps Javascript API v3 kartbilds- och satellitfototjänst. Java ett objektorienterat språk samt Android ett öppet operativsystem för mobila enheter. Ett svenskt webbhotell. För att få en enhetlig arbetsmiljö för såväl stationera som mobila enheter samt för att möta framtida trender valdes HTML5 som märkspråk och CSS3 som stilmall. Alla ovan nämnda val tvingar fram ett beslut angående val av webbserver och databashanterare. Resultatet blev Apache som en fri webbserver under Linux operativsystem och MySQL databashanterare. Utifrån ovanstående kan man sammanfattningsvis konstatera att PHP + Javascript + Google Maps API + Java + Android OS + HTML5 + CSS3 + Apache + MySQL bildar ett paket. Detta paket implementeras i klient-server modellen på så sätt som visas i figur nr 3. Figur 3 Klient server modell 1. Kunden skickar förfrågan till webbservern med information om vilken fil skall skickas tillbaka. 2. Om filen som skall skickas till kunden innehåller PHP-koden, exekverar webbservern denna kod med hjälp av PHP-interpretator. 3. Om PHP-koden innehåller SQL förfrågan, skickar PHP-interpretator vidare förfrågan till databasservern. 4. Databasservern väljer en lämplig databas, kollar om kunden, som skickade förfrågan, är behörig och skickar förfrågan till den. 5. Den utvalda databasen exekverar SQL förfrågan och returnerar resultaten till databasservern. 6. Databasservern i sin tur returnerar resultaten till PHP-interpretator. 12 av 45

13 7. PHP-interpretatorn inkluderar svaret i filen och returnerar den till webbservern. 8. Webbservern returnerar den förfrågade filen med datamängden till kunden. PHP. Det är ett skriptspråk som exekveras på serversidan. På webbplatsen kan man bädda in PHP-koden som exekveras varje gång en sida besöks. PHP-koden tolkas av en PHP-interpretator som returnerar resultatet som besökarna kan se. PHP som programmeringsspråk är såväl strukturellt som objektorienterat språk. PHP som introducerades 1994, är ett verk av en man, som heter Rasmus Lerdorf. PHP språket har vid senare tidpunkter genomgått tre stora förändringar. Den första tidpunkten var när PHP3 version var färdig att användas Den andra tidpunkten var när PHP4 version var färdig att användas år PHP4 versionen fick stöd för objektorienterad programmering och en bättre modulär struktur. Och den nyaste PHP5 versionen släpptes För närvarande är version 5 den mest använda versionen av PHP. Några av dem fördelar enligt 5 som följer av användningen av PHP: 1. PHP är mycket effektiv. Med hjälp av en billig server kan flera besök hanteras per dag. Om man använder flera servrar, blir PHP prestanda i praktiskt taget obegränsad. 2. PHP ger direkt stöd för anslutningar till flera databassystem. 3. PHP är gratis. 4. PHP syntax är baserad på andra programmeringsspråk, framför allt C och Perl. Personer som tidigare har arbetat med något av dessa språk eller besläktade språk, har inga stora svårigheter med att börja arbeta nästan omedelbart. 5. PHP är tillgängligt för de flesta operativsystemen. MySQL. SQL är ett standardiserat programspråk, som används för att skapa, modifiera, lagra och hantera data i databasen. Att använda SQL betyder att ställa frågor till databashanteraren/databasservern. Att fastställa en SQL-standard är relativt svårt. Detta beror på att man upphörde att genomföra tester av oberoende organisationer. Det resulterade i att de stora databasleverantörerna började gradvis implementera sina egna standarder. En av dem är Oracle som äger MySQL idag. Bland de många databasleverantörer, är MySQL, som nu är flaggskeppet hos Oracle lättillgänglig databashanteraren. Det beror på att varje viktig Internet-leverantör erbjuder MySQL. MySQL och PHP har ett flerårigt samarbete bakom sig. Från den dagen, när MySQL blev uppköpt av Oracle, avslutade PHP att inkludera MySQL databashanteraren som standard och började ett samarbete med SQLite istället. SQLite är en annan databashanterare. I praktiken ändrar det ingenting just för att webbhotelltjänsteleverantörer fortfarande har i sitt standardpaket MySQL databashanteraren. 13 av 45

14 Webbserver. Linux server är ett naturligt val i den här konfigurationen. Hos firman som valdes som webbhotell leverantör, finns det två Linux servrar, LiteSpeed server och Apache server. Trots att LiteSpeed enligt många källor är snabbare än Apache, föll valet på Apache. Anledningen var att LiteSpeed inte stödjer de nyaste versionerna av PHP och inställningarna förhindrar datautbyte mellan subdomäner. Hos webbutvecklare är Apache en mycket välkänd webbserver. Den har en lång och väldokumenterad utveckling. Det finns en hel del Apache-böcker som har ett avsnitt med titel Historien om Apache där kan man hitta en noggrann tidslinje av Apaches historia från tiden den släpptes fram till idag. HTTP-klient. Denna förkortning innehåller två viktiga begrepp, nämligen HTTP och klient. Hypertext Transfer Protocol (HTTP) är ett kommunikationsprotokoll med huvudsyfte att tillhandahålla kommunikation mellan en klient och webbserver. Klienten betyder i de flesta fall en webbläsare. Med en webbläsare menas alla webbläsarna som installerades såväl på dem stationera och mobila enheterna. Webbläsarna är mycket välkända verktyg för att presentera webbsidors innehållet. Flera viktiga teknologier är relaterade till dessa verktyg. De teknologierna används främst för att ange en dokumentstruktur och hur dokumentet skall visas. Förenklat diagram kan se ut som i figur nr 4. Figur 4 Exempel på teknologier för webbkund HTML. Det är ett märkspråk för hypertext. Med märkspråk menas ett format för ett dokument, i detta fall textkoder i form av taggar. För en läsare är de taggarna osynliga. HTML-taggarna används för att strukturera HTML-dokumenten. Det som struktureras är texter, bilder och mediefiler. I praktiken betyder det att man bestämmer ordningen över element i HTML-dokument. En hypertext är en text eller en grafisk symbol som hjälper att vandra mellan olika HTML-dokument eller dess element. HTML har en lång historia, som resulterar i ett antal versioner av standarder, så som HTML4, XHTML1, XHTML2 eller HTML5. Med tanke på behovet av att skapa ett teknologiskt enhetligt projekt, blir HTML5 ett naturligt val. För projektet resonemanget bakom valet baseras på de praktiska övervägandena. Standarderna för HTML4 och XHTML1 är gamla samt instängda, dvs., utvecklas inte vidare. XHTML2 är i grunden ett nytt språk, inte helt kompatibel med sin föregångare och arbetet med denna standard har stoppats 14 av 45

15 helt. HTML5 är inte bara den senaste versionen av HTML-specifikationen. Det är också en övergripande term som beskriver en uppsättning av relaterade teknologier som används tillsammans med denna specifikation. Teknologierna, som vi kommer att använda i det här projektet nämns mer i detaljer i senare kapitel. Den avgörande faktorn som talar för att välja HTML5 är kompatibilitet med HTML4 som föregångare. Bakåtkompatibiliteten kan uppnås under vissa villkor. Huruvida något är HTML5 standard eller ej, definieras av deklaration av dokument. Det är väldigt lätt att deklarera ett dokument som HTML5-dokument, det görs så här: <!doctype html> och det är allt. Deklarationen av dokumentet är det enda villkoret som krävs i det här fallet. HTML-taggarna kan delas in i tre grupper. Första gruppen av html-taggar är de föråldrade, som inte kommer att användas, eller de html-taggarna som beter sig annorlunda i HTML4 och HTML5. Den andra gruppen är de HTML-taggar gemensamma för båda två standarder. Tredje och sista gruppen innehåller html-taggar som är nya och användbara bara i HTML5 standarden. Hela listan av skillnader finns i bilagan www_w3_org_tr_2013_wd-html5-diff CSS. Medan HTML-taggarna strukturerar HTML-dokument, är CSS som ett språk mycket involverad i dokumentets utseende, i det grafiska sammanhanget. CSS-koden bestämmer över typsnitt, textstorlek, färg och andra egenskaper såsom marginaler. Vanligtvis grupperar CSS-koden HTML-taggarnas egenskaper i form av en klass eller identifierare. Grupperingen är ett mycket effektivt sätt att minska kodens storlek genom att återanvända samma klass eller identifierare i flera HTML-dokument. Idag är det svårt att föreställa sig att arbeta med HTML-taggar utan att använda CSS-koden. De två teknologierna är nästan lika gamla så CSS har också flera standarder. Det finns många anledningar till varför man bör allvarligt överväga att använda CSS3 istället för CSS2. Det är inget fel på att fortsätta dra nytta av CSS2. Speciellt, när vi vet om att våra kunder fortfarande använder Microsoft Internet Explorer 8 (IE8), som standardwebbläsare. Det bör nämnas att om valet föll på HTML5, då är CSS3 en oskiljaktig del. HTML5 kan inte användas fullt ut om inte CSS3 används som en kompletterande teknologi. Förvisso, kan det sägas att CSS3 är bakåtkompatibel med CSS2. CSS2 standarden var och är ett enda dokument, medan CSS3 är en standard uppdelade i moduler. Olika arbete med olika moduler är inte beroende av varandra. Dessutom är modulerna i olika utvecklingsstadier. Några av dem är klara, stabila och fullt implementerade av de välkända webbläsarna medan andra befinner sig i designfasen. Det finns också moduler där arbetet inte ens har påbörjats. Det är sant att CSS3 inte är en standard i den fulla bemärkelsen. Om vi antar att en utvecklare har en restriktion att bara använda helt färdiga standarder, så kan han inte använda CSS3. En utvecklare med uppgift att skapa en webbaserad tjänst står inför en mycket svår arbetsuppgift. Frågan är, om man ska hålla sig till de beprövade standarderna eller kliva fram och implementera nya lösningar. Med tanke på komplexiteten i många projekt samt vanliga mänskliga vanor, är bättre, tycker jag, att hålla sig till 15 av 45

16 den beprövade sidan. Bara om förutsättningar tillåter är det värt att med försiktighet införa de nya ännu inte helt beprövade standarderna. Så är det med CSS3 fallet. De mest uppenbara fördelarna av CSS3 syns vid implementering av jquery Mobile biblioteket. Detta bibliotek är uppbyggt, bland annat, med CSS3. Mer om detta bibliotek senare. JavaScript. Efter nedladdning från webbserver presenteras en HTML-sida i en webbläsare som ett statiskt HTML-dokument. JavaScript gör användning av HTML-sidor enklare och mer attraktivt för användarna. Att kontrollera formulärfälten innan det skickas till webbserver är en av de fördelarna som gör HTML-sidor enklare att använda. Den statiska formen av HTML-dokument är inte särskilt attraktiv för användaren om den inte tillåter henne eller honom att göra ändringar på klientsidan. JavaScript möjliggör att lägga till eller ta bort HTML-taggar och CSS-koden. JavaScript är ett av de mest använda skriptspråk idag. Språket är intuitivt, enkelt, gratis och tillgängligt på alla moderna webbläsare. Allt jobb som Javascript är designad för är beroende av webbläsarens tjänster. Det betyder att Javascript har inga externa gränssnitt. Enligt författarna 6 av Professional Javascript 2nd Edition har språket följande egenskaper: 1. Det tolkas och har svaga datatyper, så det inte behövs en kompilator. 2. JavaScript kan fungera både som ett procedurellt och objektorienterat språk. 3. Det är oberoende av hårdvara. 4. Det är ett språk i den tredje generationen, 3GL såsom C. 5. Det är inbäddat i andra program, till exempel i webbläsaren. JavaScript gavs första gången ut år Sedan dess det har mycket förändrats inom webbläsarnas utveckling. Internetanvändarna överlevde kriget mellan webbläsarleverantörer och den totala dominansen av en webbläsarleverantör. Webbutvecklarna kämpade för att lösa problem relaterade till brister i kompatibilitet mellan webbläsarnas JavaScript-motorer. För att övervinna alla dessa hinder, utvecklades och introducerades jquery ett nytt JavaScript-bibliotek år Figur nr 5 visar hur elementen strukturellt konstruktion av jquery och dess gränssnitt. Figur 5 jquery och dess gränssnitt 16 av 45

17 jquery. Biblioteket är mycket bra beskrivet i boken Pro jquery av Adam Freeman 7. Genom att använda biblioteket kan man komma åt, uppdatera, addera eller ta bort HTML-taggar. På samma sätt kan man göra med HTML-attributen. Förutom detta, går det också bra att lägga till, modifiera och ta bort innehållet i en webbsida. Med andra ord, används jquery för att manipulera DOM-elementen. jquery är en fri programvara med öppen källkod. Den öppna källkoden tillåter att man kan studera den för att förstå principerna och för att berika sin egen verkstad. Biblioteket är effektivt eftersom man med några rader kod utför ett stort arbete. Det förenar många kända webbläsare dvs., ett anrop av en metod ger samma resultat. Det kan kallas för webbläsarkompatibilitet. Eftersom arbetet med det här biblioteket växer ganska snabbt, finns det också mycket intressanta och användbara gränssnitt. Det är värt att nämna två av dem, nämligen: jquery UI och jquery Mobile. jquery UI. Installationsprocessen för jquery UI gränssnitt är lite svårare jämfört med jquery, men det går att installera med ett visst mått av tålamod. Arbetet vid installation återbetalas med stora möjligheter med det fortsatta programmering som till exempel: förloppsindikator, reglaget widget, autokomplettering widget, datumväljare widget och dialog widget. Med en widget menas ett litet program med sin grafiska representation i form av ett fönster. jquery Mobile. jquery Mobile är en HTML5 och CSS3 baserat användargränssnitt som utformats för att göra responsiva webbplatser och applikationer som är tillgängliga för alla smartphone och läsplattor. Användargränssnittet är byggd på jquery och jquery UI. Tillgänglighet, allmän tillgång och Responsive Web Design (RWD) gör att jquery Mobile är ett attraktivt verktyg att arbeta med. Med RWD menar man en teknik som tillåter att layouten på skärmen av mobilaenheter förändras, beroende på vilken skärmupplösning har användaren. Detta görs genom att använda relativa värden på storleken istället för de statiska. Mer om definition av RWD kan läsas i boken Responsive Web Design with HTML5 and CSS3 av Ben Frain 8. För en detaljerad diskussion hur ett gränssnitt fungerar hänvisas till ovan nämnd referens. DOM. Document Object Model DOM är ett plattform-och ett språkneutralt gränssnitt. Via gränssnittet kan man komma åt och uppdatera innehållet i ett dokumentobjekt. Förutom det, kan man komma åt och ändra dokumentets struktur och stil. Ett dokumentobjekt är, i vårt fall, en webbsida som laddas ner av webbläsaren. I DOM betraktas dokumentobjektet som en nod. Dokumentobjektet i sig är rotnoden och äger alla andra noder. Med alla andra noder menas: html-taggar, html-attribut och innehållet inom html-taggar. En mer detaljerad förklaring angående DOM kan hittas i Adam Freeman bok The Definitive Guide To HTML5 9. Ajax 10. Det är en teknik som används för: 1. utbyte av data mellan en webbklient och en webbserver, 2. och uppdatering av delar av en webbsida - utan att ladda om hela webbsidan. 17 av 45

18 I det här projektet kommer AJAX tekniken användas genom att anropa vissa metoder från jquerybiblioteket. I figur nr 6 visas ett förenklat diagram som handlar om AJAX teknik. Figur 6 DOM och Ajax teknik Google Maps Javascript API v3. Webbplatsen som är kombinationen av data eller funktionalitet från två eller flera källor kallas vanligen för en mashup. Mer om detta kan läsas i 11. Mashuper är mycket populära och har ett stort inflytande på hur information används och presenteras. Utnyttjande av kartor är ett av de viktigaste elementen i många av mashuper. Genom att använda Google Maps API kan man utnyttja Google Maps för att presentera sina egna applikationer på ett effektivt och illustrativt sätt. Det finns tre sorter av Google Maps API: 1. Google Maps JavaScript API. 2. Google Maps Flash API. 3. Google Static Maps API. I detta projektarbete kommer jag att använda den första ovanför nämnda versionen. I boken Beginning Google Maps API 3 av Gabriel Svennerberg 12 kan vi läsa att Google Maps ursprungligen utvecklades av två danska bröder Lars och Jens Rasmussen. De grundade Where 2 Technologies, ett företag med uppdrag att skapa kartlösning. Företaget köptes av Google i oktober Bröderna fick jobba för Google. Google Maps API V1 introducerades av Google i februari Den 3 april 2006, släpptes Google Maps API V2. Google Maps API V3 som introducerades i maj 2010 är den version som kommer att används i Click4Alert. 18 av 45

19 De flesta biblioteken är tillgängliga genom huvudlänken. För vissa behöver man specificera sökfrågan. Följande bibliotek kräver detta: 1. adsense, skapar och visar en kontextberoende reklam baserad på kartor av aktuella visningsområdet. 2. drawing, tillhandahåller ett grafiskt gränssnitt för användare som används för att rita polygoner, rektanglar, polylinjer, cirklar, och markörer på kartan. 3. geometry, inkluderar hjälpmedel för att beräkna skalära, geometriska värden på ytan av jorden. 4. places, gör att det går söka efter platser som t.ex. anläggningar, geografiska platser, eller framträdande sevärdheter, inom ett definierat område. 5. visualization, ger visuella representationer av data. Bland dessa bibliotek kommer places att användas i detta projekt för autokomplettering av adresser. För att använda Google Maps, rekommenderar man 13 att deklarera HTML5 som DOCTYPE. För att bibehålla kompatibiliteten med äldre webbsidor, har moderna webbläsare tre renderingslägen, nämligen standard mode, quirks mode och almost standards. Om en webbläsare inte förstår innehållet i Google Maps API V3 eller andra HTML-taggar, ändras DOCTYPE mekanismen från standard mode till quirks mode och innehållet visas ändå. Quirks mode uppfyller ett behov av att behålla bakåtkompatibilitet med äldre webbläsarna. En del av detta projekt är också en Click4Alert app för Android-användarna. Naturligtvis är Click4Alert en av de många appar som användaren kan använda i Android-enheter. Android-appar utvecklas med hjälp av ett Java-programmeringsspråk. Av denna anledning nämns Java i projektet. Figur 7 visar mycket förenklat diagram gällande relationer mellan Android OS och Android-appar. Figur 7 Android och appar 19 av 45

20 Java. I boken Core Java, Volumen I Fundamentals 14 kan man läsa att Javas historien går tillbaka till På Sun Microsystems, beslutade man att skapa ett kompakt och plattformsoberoende programmeringsspråk. Inledningsvis var det ett språk avsedd att tillämpas i små hushållsapparater, t.ex. i en fjärrkontroll för TV. Trots att projektet i prototypfasen var en succé, kunde ingenjörer inte hitta en enda kund framtill Därför övergav man arbetet med detta projekt under samma år. Situationen förändrades 1995, när samma utvecklare beslutade att återinföra möjligheterna med Java språket, genom att lägga fram en webbläsare som heter HotJava. Naturligtvis, var den skriven i Java. Den förtjänar särskild uppmärksamhet utifrån det att ett program som kallas ett appletprogram var implementerat första gången. Tanken med appletprogrammen är möjligheten att kunna köra programmet i realtid, på ett tillförlitligt och säkert sätt. Ingenjörerna som arbetade med Java var inte de första, som ansåg att en stor fördel med ett språk skulle vara portabilitet. Det banbrytande projektet som handlade om att generera en portabel mellankod för en hypotetisk maskin tillhörde Niklaus Wirth, Pascal-språk skapare. Sådana maskiner brukas kallas för virtuella maskiner, därav namnet Java Virtual Machine i korthet JVM. Java är objektorienterat, präglas av enkelhet och har ett stort bibliotek som stödjer TCP/IP, HTTP och FTP protokoll. Eftersom att det antas att Java ska arbeta i olika miljöer, har mycket arbetet lagts ned på att Java skall vara ett tillförlitligt språk. Java-kompilatorn upptäcker exempelvis många fel innan programmet startas. Java är utformat för att fungera i nätverks - och distribuerade miljöer. Till exempel finns det ett begrepp digitalt signerad klass. Detta medger att man alltid vet vem som skrev den här klassen. Om man litar på utvecklare kan man ge fler behörigheter. Läs gärna om det här 15. Kompilatorn genererar en fil, som är oberoende av specifik arkitektur av hårdvara. Denna kompilerade kod kan köras på olika datorer så länge har de installerat Java Runtime System -JRS. Figur 8 DVM Figur 9 JVM 20 av 45

21 Android. Det är ett öppet mobilt operativsystem för mobila enheter. Enligt Android in Action 16 It's the first open source mobile application platform that's moved the needle in major mobile markets around the globe. Här är en kort version av operativsystemet Android. 1. Den första versionen släpptes ut den 23 september 2008 och det finns fyra versionen av denna. 2. Den första versionen av tvåan släpptes den 26 oktober Den första versionen av trean släpptes den 22 februari Den första versionen av fyran släpptes den 18 oktober I korthet kan man dra två, men viktiga slutsatser: detta system utvecklas snabbt, och tar stora marknadsandelar. Som nämndes tidigare är Java ett programmeringsspråket för Android. Dock är processen att kompilera koden lite annorlunda i jämförelse med den klassiska programmeringsmiljön för detta språk. Det handlar om Dalvik virtuell maskin (DVM), som tog platsen av Java Virtual Machine (JVM), för detaljer se figurer 8 och 9. Det påstås också att DVM i den kommande versionen av operativsystemet ändras till Android RunTime (ART). ART introducerar användning av ahead-of-time (AOT) kompileringsprocess genom att kompilera koden vid installation av en applikation. Det resulterar i att batterianvändning minskas, utrymme för bytekod minskas, prestanda blir bättre mm. 1.7 Utvalda frågor angående säkerhet och datapresentation Säkerhet datainmatning Införande av skadlig kod genom att använda SQL-injektion teknik i webbapplikationers databaser kan få mycket allvarliga konsekvenser. Exempelvis kan den som attackerar mata in egna data eller radera hela databasen. Parametrar som skickas till en databasfråga måste vara korrekta med avseende på speciella tecken och förväntade datatyper. Trots att denna tjänst kommer vara skyddad av redan existerande profil, måste inloggningsprocessen garantera att användare skall identifieras korrekt utan att avslöja känsliga data. Cross site scripting, XSS som en datorrelaterat säkerhetsfråga handlar bland annat om att stjäla information genom att lägga till angriparens Javascript kod. Javascript i form av olika bibliotek används i detta projekt och det är absolut nödvändigt att skapa förhindrande mekanismer Säker datapresentation Med Google hacking menas försök att hitta känslig information eller sårbarheter i applikationer/tjänster, genom att använda sökmotorn. Problemet gäller också åtkomst till konfigurationsfiler. Det är måste att skapa 21 av 45

22 en lista över filer med känsliga data som inte skall indexeras av sökmotorer. Remote File Inclusion (RFI) attacker är också välkända. Denna typ av attack är baserad på ett försök att inkludera en fil med skadlig kod genom att manipulera URL-sträng. Av denna anledning måste alla externa variabler valideras. MySQL och PHP error messages. Denna typ av information kan hjälpa men också avslöja katalogstrukturen och webb-filarnas placering. Praktiska åtgärder förväntas. 2 Design 2.1 Övergripande programarkitektur Tjänsten är konfigurerad för de tänkta användarna som är begränsade såväl geografiskt som administrativt. Antalet användare är också ganska välkänt. I detta fall är den klassiska klient - server modellen fullt tillräcklig. Detta antagande förenklar i stor utsträckning strukturen av programmet. Ur strukturell synvinkel är programmet uppdelat i följande moduler: systemadministratör, handläggare, externa användare, som illustreras i figur 10. Figur 10 Strukturell aspekt Den klassiska modellen av en webbserver som är mest populär enligt W. Richard Stevens 17 är en webbserver visad i Figur 3. En webbläsare så som Mozilla Firefox är en typ av klient. Generellt sagt, utan att gå in på detaljer, kan denna modell för kommunikation beskrivas genom att definiera uppgifter för både server/klient och deras driftläge. 22 av 45

23 2.2 Click4Alert och Kommun synkronisering Tjänsten integreras inte i kommunens egna datanät, detaljer illustreras i figur 11. Figur 11 Synkronisering med kommunorganisation Click4Alert är installerad under sin egna domän, där varje specifik kommun tillhandahålls sin individuella subdomän med tillhörande databas. Denna lösning gör det möjligt att ha samma version för alla klienter. Det som identifierar den enskilda kommunen som unik användare är sidhuvud och sidfot. Valet att lägga tjänsten på en gemensam domän medför att underhållskostnaden kan hållas låg eftersom kostnaden slås ut på flera användare. Det som förväntas från kommunen är HTML koden till sidhuvud och sidfot samt att man lägger in en länk till aktuell subdomän på kommunens hemsida. 2.3 Programvara säkerhet Infrastruktur runt programvara. Varje programmeringsspråk har sina starka och svaga sidor. Användningen av vissa språk inom webbutveckling är ett måste utan något alternativ, exempelvis: HTML, CSS och Javascript. Därför behöver en utvecklare ha en väl genomtänkt strategi för att arbeta med riskerna relaterade till de språken som används. Det är viktigt att använda de senaste, men stabila versioner av respektive språk. Det behövs också tillräcklig kunskap om de svagheterna som är förknippade till de språken som används. Brister i dessa utnyttjas av angriparna. Programmering i sig växer snabbt. Att använda de nativa biblioteken är en nödvändighet och ett privilegium. Vid sidan av de biblioteken, som är inbyggda använder man också de som är externa, skrivna av andra utvecklare. Vid användning av biblioteken krävs kunskap om deras begränsningar och svagheter, för att stävja potentiella angrepp. 23 av 45

24 Säker lagring av data i en databas eller i ett filsystem är också en viktig fråga som berör det här området. Detta beror på att angriparna är mest intresserade av innehållet i databasen. Ju känsligare data som databasen innehåller, desto striktare regler för databastillträde ska användas. Enligt McConnell är en metafor i planering av programmering viktig, ty den visar graden av förståelse av problemet. Om metaforer i planering av programmering kan läsas mer boken 18. Byggaren är en metafor som beskriver best det här projektet. Vid behovet av att bygga en kennel för hunden, är det tillräckligt för att köpa ett par brädor och några spikar i en närliggande stormarknad. Sedan är det bara ett par timmars arbete och konstruktionen är klar. Det är annorlunda när man skall bygga ett hus. Detta beror på att bygga ett hus kräver samarbete av många experter inom olika områden. Metaforen visar hur komplicerad projektet är. Säker kodning. Programmeraren är ansvarig för de teknologierna som används för att bygga upp ett program. Det är vederbörande som måste vara medveten om dess svagheter och kunna neutralisera dem. Konsekvens i användning av den valda stilen är en av principer i detta projekt för säker programmering. Mer om stilar kan läsas i Complete Code av McConnell 19. Strukturen i programmet skall vara öppen, transparent och lätt att förstå. Den skall använda alla kända och beprövade skyddsmetoderna som erbjuds av de teknologierna som används i projektet. Säkra designprinciper. Med XP som vald arbetsmodell i detta projekt går det bra att utföra tester i korta tidsperioder. Detta beror på korta utvecklingscykler samt korta konsultationer med kunden. Detta medför att testning förenklas samt fel och misstag elimineras. Till viss del ger XP en bra bedömning av robustheten i programmet enligt de kriterier som Jayaswal och Patton beskriver i sin bok Design for Trustworthy Software 20, nämligen: 1. System design is intended to meet the end users' functional requirements. 2. Parameters design is intended to make product performance less sensitive to exogenous factors in its usage environment. 3. Tolerance design involves tightening tolerances on product or process parameters to reduce variability in performance. Medan de två första punkterna är tydliga, behövs det några ord för att förklara den sista. Med tolerance design menas insatser för att minska variationer medan programmet körs. För detta projekt innebär det en ökad säkerhet på bekostnad av prestanda. Vad som ska skyddas. Det som behövs att skydda är allt som kan manipuleras, skadas eller tas bort. Man kan säga att den viktigaste frågan är användarens datainmatning, i betydelse att allt som genereras av en människa måste verifieras. Datainmatningen kan också äventyras programmets grafiska struktur, som kan ändras eller helt enkelt förstörts. Det är också viktigt att skydda databasen i sig, eftersom den kan förstöras eller manipuleras. 24 av 45

25 Vad som är trovärdigt. De teknologierna som finns för att programmera har sina begränsningar. Trots dessa begränsningar, har de förtroende hos sina användare. Naturligtvis är denna tillit begränsad. Gränsen blir satt av programmerarens kunskap om utvalda teknologier och deras beprövad och stabil version. Riskbedömning. Hot och sårbarheter ur programmeringssynvinkel: typer av farlig kod, hur farlig kod kan injiceras. Riskanalys av juridiskt och affärsmässigt perspektiv: kostnader kontra skador, potentiella kostnader för rättsliga förfaranden, förlust av trovärdighet hos användarna. 25 av 45

26 3. Resultat 3.1 Generella mekanismer Från figur 12 nedan framgår det att direkt åtkomst till databasen har endast administratör och handläggare. Figur 12 Generell mekanism Bland funktionerna i den administrativa panelen finns: att skapa och modifiera tabeller för feltyper, handläggare, avdelningar, tidsintervaller, osv.; att koppla ihop olika typer av fel med de berörda avdelningarna; att övervaka och skicka vissa felanmälningar vidare till berörda instanser. Handläggare, oavsett behörigheter, kan inte såsom administratören skapa tabeller i databasen. Handläggare med full behörighet kan: acceptera felanmälan som skickades via Internet och spara uppgifter i databasen eller ta bort duplikat; ta emot felanmälan via telefon, brev eller samtal och spara det i databasen; göra en bedömning och om det är nödvändigt skicka felanmälan till en annan myndighet/firma; uppdatera status på ärende och avsluta det, såväl i den grafiska som textbaserade modulen; sortera ärenden utifrån faktorerna tidsintervall, status och avdelning såväl i den grafiska som textbaserade modulen; skapa PDF-dokument för eventuell pappersarkivering eller som ett hjälpmedel för en handläggare. Det är möjligt att begränsa behörigheten för handläggare. Begränsning kan röra åtkomst till en eller flera ärendens status. Detta kan kallas för en horisontell begränsning. Inom en särskild status går det att styra behörigheter så att en handläggare inte får förändra ett ärende. Detta kan kallas för en vertikal begränsning. 26 av 45

27 Dock kan en handläggare i varje enskilt ärende skapa PDF-dokument. En extern användare kan vara vem som helst. En avgörande faktor för att bestämma tillhörighet av en felanmälan till en viss kommun är felets adress eller GPS-positionen om en Android applikation används. 3.2 Säkerhet och datarepresentation Säkerhet På grund av krav gällande säkerheten har externa användare en begränsad tillgång till databasen. De kan endast utföra "SELECT" frågan, dvs. endast läsa information. När det gäller felanmälningar sparas deras indata i XML-filer, som kontrolleras innan de läggs in i databasen. När det gäller datainmatning i databasen, ligger ett stort ansvar på programmerare så att programmet har inbyggda skydd mot attacker. Eftersom PHP används i projektet så finns det redan etablerade och testade metoder för detta syfte. Som en standard används en metod som heter mysqli::real_escape_string(). Denna metod tar bort specialtecken, som kan användas för kommandon till MySQL. Ett viktigt särdrag vid exekveringen av en PHP MySQL förfråga med funktion mysqli::query(), är att den gör det omöjligt att behandla mer än en frågan vid en tidpunkt. Ur prestandasynpunkt kan det ses som en nackdel, men med hänsyn till säkerheten är det en stor fördel eftersom det minskar kraftigt risken för injektion av fientlig kod. Det förebygger att angriparen lägger till egna frågor till databasen. Inloggningsprocessen sker via POST metoden, så de grundläggande säkerhetsåtgärderna är implementerade, fast utan HTTPS protokollet. URL-adressen med GET metoden används bara för att referera till de unika objekten, i detta fall ärenden. Information som ingår i webbadressen är offentlig, så avslöjandet av den utgör inget hot ur säkerhetssynvinkel. Cross site scripting, XSS som ett datorrelaterat säkerhetsfrågan åtgärdas med hjälp av PHP htmlspecialchars() och htmlentities() metoder Datarepresentation Genom att använda speciellt utvalda frågor med nyckelord såsom: cache, filetype, intext, intitle, inurl, link, related, site, osv., kan man få fram information om säkerhetskänsliga data. Till exempel: filetype:log inurl:password ger oss användare och lösenord i.log filen. För att förhindra sökmotorerna från att se känsliga data används robots.txt filen med inlagda kommandon. Remote File Inclusion (RFI) attacker är också välkända. I PHP fall rör det sig om vissa anrop av systemfunktioner till exempel: include(), include_once(), request(), request_once() och dynamisk fil-inkludering. För att åtgärda den typen av attacker används preg_replace() funktion, som filtrerar bort farliga tecken. 27 av 45

28 MySQL och PHP error messages är inaktiverade för den offentliga delen av webbsidan med hjälp av error_reporting(0) metoden därför att ett eventuellt fel skrivet på skärmen kan visa känsliga data, exempelvis: namn på kataloger, filer eller funktioner. En innehållshanteringsstrategi implementerades delvist, mest i den administrativa panelen. Det finns ett stort behov att skapa en profil för handläggarna, där de kan individualisera innehållet. För de externa användarna planeras inte att skapa profiler i den närmaste framtiden. En del av denna innehållshanteringsstrategi är modularitet i denna tjänst. Varje användargränssnitt är uppbyggt av moduler som kan lät tas in eller tas bort. Man kan lätt implementera helt nya icke-definierade moduler. Den här strategin ökar antalet tjänstvarianter och samtidigt håller ihop tjänstens enhetlighet. Modularisering ger oss flexibilitet som är nödvändig för att möta marknadskrav. Manipulation av DOM-elementen med hjälp av jquery bibliotek visade sig vara ett tidssparande och mycket effektivt sätt att presentera data på webbsida i alla moduler. Biblioteket används även i en mobilversion av webbplats. De jquery AJAX inbyggda funktionerna hjälpte på ett mycket enkelt och effektivt sätt med asynkronisk laddning av delar av sidor. jquery och jquery Mobile används i en stor skala i detta projektarbete. Både PHP och Java som teknologier klarade sig bra i arbetet med projektet. De har levererat tillräckligt med verktyg för att skickligt urskilja mellan den grafiska datarepresentationen och data i sig. Denna distinktion har en stor betydelse för alla eventuella förändringar i den grafiska layouten. HTML5 och CSS3 är de nyaste teknologier som synkroniserades på så sätt att de gamla webbläsarna, särskild IE8, som verkar vara en standard webbläsare i kommuner, kan läsa och visa ett korrekt innehåll. Med synkronisering menas implementation de HTML5-taggarna och CSS3 attributen som kan tolkas korrekt av IE8. Dessa begränsningar gäller bara för dem stationera versioner av tjänst. Det fanns inga problem i samband med användning av Googles tjänster och framför allt Google-kartor. Det visade sig att användningen av Google-kartor tjänsten blev till stor nytta, eftersom fellokalisering är en mycket enkel och snabb process. Den grafiska representationen av ärende i form av markörer på kartan fann sig att vara ett utmärkt drag. Det ger snabbt ett visuellt arbetsområde för handläggare. 3.3 Gemensamma egenskaper Vid varje moment i användargränssnitt har både externa användarna och handläggarna en hjälpfunktion, som beskriver i detaljer hur det som syns på skärmen, fungerar eller det hur skulle tolkas. Varje ärendestatus har sin egna färg som är gemensam för alla aktörer. Exempelvis representeras alla oregistrerade felanmälningar för både externa användarna och handläggarna av en röd markör. Statusen för alla pågående ärenden synliggörs för de externa användarna genom olika färgmarkörer. Efter ett fördefinierat tidsintervall döljs avslutade ärenden. Dubbletter och opassande ärenden presenteras inte. 28 av 45

29 3.4 Administratör - detaljerad beskrivning Gränssnitt vid inloggning För ett grafiskt användargränssnitts representation se figur 13 nedan. Figur 13 Gränssnitt vid inloggning administratör Denna funktion erbjuder en standardlösning där man kan logga in och/eller återskapa bortglömt lösenord. Här används de vanliga säkerhetsåtgärder i form av funktioner av cookies, session och lösenordskryptering. Vid inloggning till systemet krävs att Javascript måste vara tillåten Gränssnitt efter inloggning För ett grafiskt användargränssnitts representation se figur 14 nedan. Figur 14 Gränssnitt efter inloggning administratör Administrationspanel erbjuder följande funktioner: Publikt Denna funktion erbjuder en möjlighet att bestämma hur lång tid felanmälningar visas i den 29 av 45

30 offentliga delen. Naturligtvis är denna modul bara början av tjänster för den offentliga delen. Handläggare Denna funktion erbjuder en möjlighet att skapa en handläggare, aktivera eller inaktivera handläggare samt tilldela behörigheter. I denna panel är en funktion e-prenumeration implementerat. Funktionen har som sin uppgift att informera handläggare om nya felanmälningar via e-postadress. På detta sätt behöver en handläggare inte övervaka systemet för nya felanmälningar. Kommentar Denna funktion erbjuder en möjlighet att skapa fördefinierade kommentarer för varje ärende och deras status. De fördefinierade kommentarerna underlättar arbetet för handläggare. I många fall räcker det med en standardkommentar. Feltyper Denna funktion erbjuder en möjlighet att skapa, aktivera, inaktivera och lista alla feltyper. Förutom feltyper, kan avdelningar skapas och vid behov kan en läggas till. När listor av feltyper och avdelningar har skapats, är det möjligt att skapa relationer mellan dem. Det handlar om att tilldela feltyper till aktuella avdelningar. Det finns en funktion till i den här panelen. Denna funktion skapar tidsintervall, som hjälper handläggarna att filtrera och sortera felanmälningar. Tidsintervallen kan modifieras, läggas till eller tas bort. Service Vissa ärende exempelvis klotter kan inte åtgärdas inom kommun-organisation. De delegeras till externa organisationer eller företag. För att kunna hantera denna typ av händelser, är det nödvändigt att förteckna sådana organisationer eller företag. Det behövs även inkludera en lista över feltyper som en utvald organisation måste åtgärda. Varje organisation är verksam i ett visst geografiskt område, som också måste tydligt anges. Vissa ärende som skadegörelse eller klotter kräver att man rapporterar dem till polisen. Sättet att skapa en kontakt med ett poliskontor är exakt samma som för andra organisationer. 3.5 Handläggare detaljerad beskrivning Gränssnitt vid inloggning Så som i den administrativa panelen, erbjuder handläggarespanelen en standardlösning för att logga in och återskapa ett bortglömt lösenord. 30 av 45

31 Här används också vanliga säkerhetsåtgärder i form av funktioner av cookies, session och lösenordskryptering. Vid inloggning till systemet krävs att Javascript måste vara tillåten. Vid den första inloggningen, måste användaren ändra sitt lösenord. När cookies eller Javascript är inaktiverade, får användaren ett lämpligt meddelande. För en grafisk representation se figur 15 nedan. Figur 15 Gränssnitt vid inloggning handläggare Gränssnitt efter inloggning För en grafisk representation se figur 16 nedan. Figur 16 Gränssnitt efter inloggning handläggare 31 av 45

32 Handläggarespanel erbjuder följande funktioner: Felanmälan från telefonsamtal När en extern användare felanmäler per telefon, per post eller muntligt, finns det en möjlighet att registrera ärendet i detta läge. Om handläggare är behörig har vederbörande tillgång till en interaktiv Google-karta. Det finns två sätt att hitta en adress för fel på kartan. Det första sättet är att skriva in adressen i fältet. Systemet autokompletterar när handläggaren skriver in önskad adress. Det andra sättet är att klicka på kartan i ett önskat område. Det går också bra att kombinera de två sätten. Om adressen ligger inom kommungränser genereras den automatiskt. I annat fall informeras handläggaren om en felaktig adress. När den valda adressen är korrekt, är nästa steg att välja en feltyp och skicka begäran till databasen. I svaret erhålls information om huruvida felanmälan är redan registrerad eller inte. Det finns två möjliga scenarier: felanmälan är antingen registrerad eller oregistrerad. Systemet kontrollerar om de registrerade ärenden och sökande felanmälan matchar följande kriterier: tillräckligt avstånd mellan dem felanmälanstatus. Ärenden som har status opassande och avslutade beaktas inte i denna sökning. En dubblett, om den finns i databasen, har en informativ betydelse, eftersom handläggaren har fortfarande en möjlighet att registrera felanmälan. Väljer handläggare att registrera felanmälan, kan även vederbörande mata in inlämningsuppgifter om anmälare. Om anmälaren anger sina inlämningsuppgifter kommer han eller hon att informeras om hur arbetet fortskrider. Vid slutförandet av felanmälans registreringsprocess får varje handläggare, som prenumererar på denna feltyp och status, information via e-post. Förutom att de berörda handläggarna informeras om den nya anmälan, kommer den offentliga delen visa relevant information som är tillgänglig för alla. Oregistrerade felanmälningar - grafiskt Direkt efter inloggning till tjänsten, kommer handläggaren att se en Google-karta med alla oregistrerade felanmälningar. Det är en standardinställning. Fördefinierade tidsintervall hjälper att filtrera dessa felanmälningar. För att påbörja felanmälans registreringsprocess, behöver man klicka på en vald markör. På så sätt aktiveras felanmälan. Genom att trycka på knappen Detaljer övergår registreringsprocessen till steg två. För att säkerställa datas integritet i detta skede, blockeras tillgången till den valda felanmälan för andra handläggare. Exklusiv tillgång till den valda felanmälan är tidsbegränsat och under denna tid syns den som upptagen. Om handläggaren inte hinner att registrera felanmälan inom den tid som avsatts för registreringen, sker en automatisk omdirigering till standardsidan. Samtidigt blir felanmälan tillgänglig för andra handläggare. 32 av 45

33 Vid tidpunkten för felanmälans registrering är följande scenarier möjliga: Ifall upptäckts en dubblett, liknar arbetsprocessen den, som finns vid felanmälans registrering via telefonsamtal. förutom dubblettsituation, kan felanmälan klassas som ett kommunärende eller, så kallat, ett opassande ärende. Vissa felanmälningar kan innehålla ett olämpligt material eller kan klassas som ett straffbart hot. Om handläggare bedömer innehållet som sådant, sparar denna felanmälan som ett opassande ärende. Denna status visas inte offentligt. Om en ansvarig tjänsteman uppfattar felanmälans innehåll som ett straffbart hot, kan den anmäla detta till polisen. Om handläggaren bedömer felanmälan som ett kommunärende, har vederbörande en möjlighet att ändra feltypen om den anses vara felaktig. För att få felanmälan helt klar för registrering behövs det två ytterligare kommentarer. Den första är en så kallad registrators kommentar och den är intern dvs., för andra medarbetare. Den andra är en offentlig kommentar som är tillgänglig på Google-kartan för alla. Båda kommentarer kan skrivas för hand eller också nyttjar man de fördefinierade kommentarerna. Det sista som krävs att registrera felanmälan är att trycka på knappen Registrera felanmälan. Här slutar steg två. Sista steget är en kvittering av registreringsoperation. Om felanmälan blev registrerat, får handläggare, som prenumererar på den här feltypen, relevant information via e-post. Prenumeranterna visas på kvitteringslista. Bekräftelse på att felanmälan är registrerad skickas också till anmälaren, om den angav sin e-postadress. För att ha en pappersarkivering av ärende, går det bra att skapa en PDF-fil och spara den på HDD eller skriva den ut direkt. Om handläggaren har gjort ett fel under registreringstiden kan det fixas genom att trycka på knappen Ändra felanmälan. Här slutar steg tre och felanmälans registreringsprocess i sig. Oregistrerade felanmälningar - lista En annan möjlighet att bläddra igenom de oregistrerade felanmälningarna ger en lista. Från listan väljs en önskad felanmälan. Resten av registreringsprocessen skiljer sig inte från den i det grafiska läget. Registrerade felanmälningar - grafiskt Genom att trycka på knappen Registrerade söks i databasen och listas på Google-kartan alla registrerade ärenden. Det är en standardinställning. Det finns tre filtreringskriterier: enhet eller avdelning, feltyp och tidsintervall. Val av en avdelning/enhet tvingar fram en lista över feltyper som rör den. Relationen mellan enheter och feltyper skapas i administratörsläge. Förutom detta, går det att ange önskat tidsintervall och lista över önskade ärenden. Ärendena syns på Google-kartan i form av markörer. Det som syns på Google-kartan kan, genom ett tryck på knappen Skriv ut, skrivas ut i 33 av 45

34 en kombinerad form av Google-karta och lista samtidigt. Är handläggaren nöjd med sortering och filtrering, kan han eller hon genom att trycka på en vald markör på Google-kartan aktivera ärendet och med hjälp av knappen Detaljer påbörja en ärendetilldelning. Här slutar steg ett. I steg två är ärendet representerad på flera sätt, bland annat i form av brödsmulor eller en synlig sökväg, en Google-karta, en bild och en vanlig text. I detta läge, ges handläggaren flera alternativ. Han/hon kan välja mellan Pågående felanmälan, Vidarebefordrat felanmäl eller Avslutad felanmälan. Pågående felanmälan väljs i de fallen där kommunanställda klarar åtgärda ärendet med sina egna resurser. För mer komplicerade fall, måste andra enheter/avdelningar engageras, för att slutföra ärendet. Ett bra exempel på ett sådant ärende kan vara en omfattande skadegörelse. För att stödja detta alternativ skapades en, så kallad, Vidarebefordra Internt mekanism. I syfte att slutföra denna del behövs det att fylla i två fält av kommentarer: en intern för medarbetare och en offentlig. Båda kommentarer kan skrivas för hand. En annan alternativ är att utnyttja en av dem fördefinierade kommentarerna. Nu är ärendet redo att spara som pågående. Det utförs genom att trycka på knappen Spara som pågående felanmälan. Så slutar steg två. I steg tre ändras ärendestatus till Pågående. Den offentliga kommentaren på Google-kartan uppdateras med den aktuella kommentaren. Alla handläggarna, som prenumererar denna feltyp och status är också informerade om förändringar via e-postmeddelande. Listan över prenumeranter visas på en kvitteringslista. Bekräftelse på att ärendet har ändrat sin status skickas också till anmälaren, om det finns en e-postadress. För att ha en pappersarkivering av ärende, går det att skapa en PDF-fil och spara den på HDD eller skriva ut den direkt. Om handläggaren har gjort ett fel under registreringstid kan det fixas genom att trycka på knappen Ändra felanmälan. Här slutar steg tre. Vidarebefordrat felanmälan - vissa uppgifter tillhör andra myndigheter eller kommersiella organisationer. I sådana fall beskrivs status för ärendet som Vidarebefordrat. Handläggaren använder en fördefinierad lista med externa organisationer. Förhållandena mellan externa användare, plats och feltyper etableras i administratörspanel i Services modulen. Detta är en enda skillnad mellan Pågående och Vidarebefordrat felanmälan. Resten av processen under det andra steget är exakt densamma. Så avslutas steg två för Vidarebefordrat felanmälan. I steg tre ändras ärendestatus till Vidarebefordrat. Processen att ändra status i detta stadium är densamma som vid intern tilldelning, förutom en detalj. I det här fallet engageras externa organisationer för att åtgärda ärendet. Man skickar till dem via e-post ett kort meddelande med en bifogad PDF-fil med information om felet. Så avslutas steg tre för Vidarebefordrat 34 av 45

35 felanmälan. Avslutad felanmälan - det kan hända att handläggare kommer att vilja redan i detta skede avsluta ärendet. Orsaker kan vara olika, till exempel, kommunen och dess samverkande enheter ansvarar inte för att åtgärda ärendet. För att avsluta ärendet krävs det att trycka på Avsluta felanmälan knappen, fylla in Åtgärdskommentar, Kommande kommentar i kartan och trycka på Spara som avslutad felanmälan knappen. Så avslutas steg två för Avslutad felanmälan status. I steg tre ändras ärendestatus till Avslutade på exakt samma sätt som i Pågående, med en skillnad, dvs., ärendet har status avslutad. Registrerade felanmälningar - lista En annan möjlighet för att bläddra igenom de registrerade felanmälningarna är en lista. Från listan väljs en önskad felanmälan. Resten av tilldelningsprocessen skiljer sig inte från den i det grafiska läget. Pågående felanmälningar - grafiskt Genom att trycka på knappen Pågående söks i databasen och listas på Google-kartan alla pågående ärende. I den här statusen finns det samma sök- och filtreringskriterier som i de registrerade ärendena. Med andra ord är steg ett likadant som i Registrerade. I steg två finns det bara en möjlighet - handläggaren avslutar ärendet. I övrigt liknar allt tilldelningsprocessen. Pågående felanmälningar - lista Samma princip gäller här och skillnaden är bara ärendestatus. Datarepresentation har samma mall som i de registrerade ärendena. Vidarebefordrat felanmälningar - grafiskt Ur datarepresentations synvinkel är det ingen skillnad mellan Pågående och Vidarebefordrat i alla tre steg. Samma sak gäller funktionaliteten. Det är bara ärendestatus som gör skillnaden. Vidarebefordrat felanmälningar - lista Det finns inga skillnader mellan Pågående och Vidarebefordrat i detta fall heller. Avslutade felanmälningar - grafiskt I den här statusen är sök- och filtreringskriterier likadana som i tidigare ärendestatus. Avslutade felanmälningar - lista Som i tidigare status, representeras data i form av en lista i steg ett. Även steg två liknar tidigare diskuterad status för den grafiska representationen. 35 av 45

36 Opassande felanmälningar - grafiskt Som det beskrevs tidigare, är detta fall speciella, eftersom de kan befinna sig under polisutredning. Naturligtvis skall den här typen av felanmälan inte vara tillgänglig för allmänheten. Tillgång reserveras endast för behöriga tjänstemän. Filtreringsmekanismen är enkel och har bara en faktor, nämligen ett tidsintervall. Opassande felanmälningar presenteras bara på Google-karta. Det finns ingen lista som i tidigare nämnda status. Alla felanmälningar - grafiskt Alla ärende, förutom de som klassas som dubbletter och opassande felanmälningar, presenteras på Google-karta. Efter sortering och filtreringsprocessen syns resultaten i form av markörer. Efter aktivering av ett utvalt ärende i steg ett, kan handläggaren läsa detaljer och skapa PDF-filen i steg två. Steg tre finns inte i detta gränssnitt. 3.6 Extern användare detaljerad beskrivning Alla externa användare har tre vägar till Click4alert tjänsten. Den första och mest klassiska är användargränssnitt för stationera och bärbara datorer, se figur 17 nedan. Figur 17 Extern användare klassiskt gränssnitt 36 av 45

37 Den andra är en mobil version av tjänst för alla mobila enheter, se figur 18 nedan. Figur 18 Extern användare mobilt gränssnitt Den tredje är en Android app. De tre möjligheterna att komma åt tjänsten har samma konceptuella lösning men skiljer sig i en grafisk datarepresentation. Med samma konceptuella lösning menas att varje väg till tjänsten måste garantera möjligheten att felanmäla och få bekräftelse på det, att lista de oregistrerade felanmälningar och att lista Status felanmälningar. Det var inte svårt att uppnå detta mål, eftersom man jobbar i varje fall mot samma databas. Vid tidpunkten för felanmälan, får den externa användaren ett tydligt meddelande om felanmälans adress är giltig. Adressen kan genereras genom att klicka på Google-kartan eller genom att skriva i avsett fält och få hjälp av autokompleteringsfunktion. Oavsett vilken väg som valts, krävs det inte mycket av den externa användaren när han eller hon skickar felanmälan. Förutom behovet att generera en giltig adress på felanmälan krävs det att man väljer en feltyp. Andra uppgifter såsom: bild, namn, e-postadress och kommentar är frivilliga. Har anmälaren valt att ange e-postadress, kommer han/hon få en bekräftelse vid varje statusförändring. Varje felanmälan som är skickad och sparad i databasen har en oregistrerad ärendestatus. De oregistrerade felanmälningarna listas på Google-kartan i form av röda markörer. Ett informationsfönster, som innehåller grundläggande information, är kopplad till varje markör. Kommunen bestämmer vilken information som ska finnas där. Andra ärende kan listas under så kallad statusfelanmälningar gränssnittet. Som de oregistrerade, listas de statusfelanmälningarna på Google-kartan i form av markörer. Varje status har sin egen färg. Det hjälper att identifiera dem snabbt. Förutom standardinformation har informationsfönstret också en plats för offentlig kommentar. Via denna plats informerar handläggaren allmänheten om nuvarande status för varje ärende. Det är det grundläggande syftet med dubbelriktad kommunikation. Felanmälningar, som anses vara dubbletter eller opassande visas inte i den här offentliga delen. De avslutade ärendena syns under begränsad tidsintervall. I den administrativa panelen bestämmer man om det hur länge de ska synas. 37 av 45

Webbservrar, severskript & webbproduktion

Webbservrar, severskript & webbproduktion Webbprogrammering Webbservrar, severskript & webbproduktion 1 Vad är en webbserver En webbserver är en tjänst som lyssnar på port 80. Den hanterar tillgång till filer och kataloger genom att kommunicera

Läs mer

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

Undervisningen i ämnet webbutveckling ska ge eleverna förutsättningar att utveckla följande: WEBBUTVECKLING Ämnet webbutveckling behandlar de tekniker som används för att presentera och bearbeta information i webbläsaren samt utifrån dessa tekniker skapa och vidareutveckla statiska och dynamiska

Läs mer

Webbteknik. Innehåll. Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender. En kort introduktion

Webbteknik. Innehåll. Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender. En kort introduktion Webbteknik En kort introduktion Innehåll Historisk återblick Teknisk beskrivning Märkspråk Standardisering Trender 1 Historisk återblick 89 CERN Tim Berners Lee Ett plattformsoberoende sätt att sprida

Läs mer

SKOLFS. beslutade den XXX 2017.

SKOLFS. beslutade den XXX 2017. 1 (12) Skolverkets föreskrifter om ämnesplan för ämnet webbutveckling i gymnasieskolan, inom kommunal vuxenutbildning på gymnasial nivå och inom vidareutbildning i form av ett fjärde tekniskt år; beslutade

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar programmeringens roll i informationstekniska sammanhang som datorsimulering, animerad grafik, praktisk datoriserad problemlösning och användaranpassad konfiguration

Läs mer

Hi-Fi Prototyping + laborationsgenomgång & verktyg

Hi-Fi Prototyping + laborationsgenomgång & verktyg Hi-Fi Prototyping + laborationsgenomgång & verktyg Karin Fahlquist 2015 Frågor att besvara Vad innebär prototyping? Vad är speciellt med hi-fi prototyping? Hur kan man använda dem? Hur väljer man nivå

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar programmeringens roll i informationstekniska sammanhang som datorsimulering, animerad grafik, praktisk datoriserad problemlösning och användaranpassad konfiguration

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar programmeringens roll i informationstekniska sammanhang som datorsimulering, animerad grafik, praktisk datoriserad problemlösning och användaranpassad konfiguration

Läs mer

Innehålls förteckning

Innehålls förteckning Programmering Uppsats i skrivteknik Axxell Företagsekonomi i informationsteknik 19.3.2015 Respondent: Tomas Björklöf Opponent: Theo Wahlström Handledare: Katarina Wikström Innehålls förteckning 1. Inledning...3

Läs mer

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

TMP Consulting - tjänster för företag TMP Consulting - tjänster för företag Adress: http://tmpc.se Kontakta: info@tmpc.se TMP Consulting är ett bolag som utvecklar tekniska lösningar och arbetar med effektivisering och problemslösning i organisationer.

Läs mer

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

Klient/server. Översikt. Lektion 1: Webbtekniker från Microsoft. Webbteknik från Microsoft. Klient/server. Designmönster. Utrullning. Klient/server Översikt Webbteknik från Microsoft. Klient/server. Designmönster. Utrullning. Lektion 1: Webbtekniker från Microsoft Microsoft webbtekniker. ASP.NET. Klientsidan. Internet Information Server.

Läs mer

Kort om World Wide Web (webben)

Kort om World Wide Web (webben) KAPITEL 1 Grunder I det här kapitlet ska jag gå igenom allmänt om vad Internet är och vad som krävs för att skapa en hemsida. Plus lite annat smått och gott som är bra att känna till innan vi kör igång.

Läs mer

Föreläsning 2. Operativsystem och programmering

Föreläsning 2. Operativsystem och programmering Föreläsning 2 Operativsystem och programmering Behov av operativsystem En dator så som beskriven i förra föreläsningen är nästan oanvändbar. Processorn kan bara ges enkla instruktioner såsom hämta data

Läs mer

Kursplanering Utveckling av webbapplikationer

Kursplanering Utveckling av webbapplikationer Kursplanering Utveckling av webbapplikationer Fakta Ämne Programmering Poäng 40 Yh-poäng Kurskod YSYS-WEB Klass Systemutvecklare.NET Syfte och koppling till yrkesrollen För att kunna arbeta som systemutvecklare

Läs mer

Version Namn Datum Beskrivning 1.0 Förutsättningar Vitec Ekonomi 1.1 Marie Justering för krav på Windows Server

Version Namn Datum Beskrivning 1.0 Förutsättningar Vitec Ekonomi 1.1 Marie Justering för krav på Windows Server Version Namn Datum Beskrivning 1.0 Förutsättningar Vitec Ekonomi 1.1 Marie 2017-03-09 Justering för krav på Windows Server 2012 1.2 Micke 2017-04-07 Vitec Ekonomi från x.60 kräver IIS 8 och websocket.

Läs mer

Inlämningsuppgift 2. DA156A - Introduktion till webbutveckling Teknik och samhälle, Malmö högskola Oktober 2012

Inlämningsuppgift 2. DA156A - Introduktion till webbutveckling Teknik och samhälle, Malmö högskola Oktober 2012 Oktober 2012 Uppgiften går ut på att redovisa dina kunskaper kring JavaScript, liksom din förmåga att skapa en CSS-baserad layout. Detta gör du genom att lämna in ett resultat som följer specifikationerna

Läs mer

30 år av erfarenhet och branschexperts

30 år av erfarenhet och branschexperts 30 år av erfarenhet och branschexperts Integrerad Säkerhet Integrerad Säkerhet Varför överordnat system Användarvänlighet Kvalitet Trygghet Kostnadseffektivitet Varför ett överordnat system? Med stora

Läs mer

Distribuerade affärssystem

Distribuerade affärssystem Distribuerade affärssystem Kursens mål Bygga upp, strukturera och programmera distribuerade system med en flerskiktsarkitektur Beskriva och förklara teorier och uttryck som används inom affärskritiska

Läs mer

Mobile First Video on demand och livesändningar på Internet. Juni 2012

Mobile First Video on demand och livesändningar på Internet. Juni 2012 Mobile First Video on demand och livesändningar på Internet Juni 2012 1 Om detta dokument Marknaden och tekniken kring film (video on demand och livesändningar) på Internet utvecklas blixtsnabbt. Video

Läs mer

Webbserverprogrammering

Webbserverprogrammering Webbserverprogrammering WES Webbserverprogrammering Ämnet webbserverprogrammering behandlar funktionalitet för webblösningar och samspelet mellan beställare, användare, formgivare och utvecklare. Ämnets

Läs mer

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

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2015.Q1 Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2015.Q1 För att 3L Pro skall fungera krävs att nedanstående hårdvarukrav och mjukvarukrav är uppfyllda. Viktigt är att tänka på att

Läs mer

WEBBSERVERPROGRAMMERING

WEBBSERVERPROGRAMMERING WEBBSERVERPROGRAMMERING Ämnet webbserverprogrammering behandlar funktionalitet för webblösningar och samspelet mellan beställare, användare, formgivare och utvecklare. Ämnets syfte Undervisningen i ämnet

Läs mer

Kursplan Gränssnittsdesign och Webbutveckling 1 Vårtermin 2014

Kursplan Gränssnittsdesign och Webbutveckling 1 Vårtermin 2014 Kursplan Gränssnittsdesign och Webbutveckling 1 Vårtermin 2014 Kurswebb: www.creativerooms.se/edu, välj Gränssnittsdesign eller Webbutveckling 1 Lärare: Aino-Maria Kumpulainen, aino-maria.kumpulainen@it-gymnasiet.se

Läs mer

E12 "Evil is going on"

E12 Evil is going on E12 "Evil is going on" Föreläsning 12, HT2014 AJAX Kurs: 1dv403 Webbteknik I Johan Leitet E12 Evil is going on Dagens agenda AJAX XMLHttpRequest-objektet JSON Vad är AJAX? Asynchronous JavaScript and XML

Läs mer

Webbprogrammering. Sahand Sadjadee

Webbprogrammering. Sahand Sadjadee Webbprogrammering Sahand Sadjadee Agenda Webb The World Wide Web (WWW) is a network of online content that is formatted in HTML and accessed via HTTP. The term refers to all the interlinked HTML pages

Läs mer

WEBBTEKNIK. Ämnets syfte

WEBBTEKNIK. Ämnets syfte WEBBTEKNIK Webbteknik används för att utveckla och vidareutveckla statiska och dynamiska webbsidor, webbplatser, webbapplikationer eller andra applikationer där webbtekniker används, till exempel applikationer

Läs mer

WEBBTEKNIK. Ämnets syfte

WEBBTEKNIK. Ämnets syfte WEBBTEKNIK Webbteknik används för att utveckla och vidareutveckla statiska och dynamiska webbsidor, webbplatser, webbapplikationer eller andra applikationer där webbtekniker används, till exempel applikationer

Läs mer

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

Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q3 Hå rd- och mjukvårukråv såmt rekommendåtioner fo r 3L Pro from version 2013.Q3 För att 3L Pro skall fungera krävs att nedanstående hårdvarukrav och mjukvarukrav är uppfyllda. Viktigt är att tänka på att

Läs mer

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

PROGRAMMERING. Ämnets syfte. Kurser i ämnet PROGRAMMERING Ämnet programmering behandlar hur mjukvaror skapas, anpassas och utvecklas samt programmeringens roll i informationstekniska sammanhang som datorsimulering och praktisk datoriserad problemlösning.

Läs mer

Olika slags datornätverk. Föreläsning 5 Internet ARPANET, 1971. Internet började med ARPANET

Olika slags datornätverk. Föreläsning 5 Internet ARPANET, 1971. Internet började med ARPANET Olika slags datornätverk Förberedelse inför laboration 4. Historik Protokoll, / Adressering, namnservrar WWW, HTML Föreläsning 5 Internet LAN Local Area Network student.lth.se (ganska stort LAN) MAN Metropolitan

Läs mer

1. Revisionsinformation

1. Revisionsinformation 7.4.2 Systemkrav Systemkrav 2018-12-06 2 (27) Systemkrav 7.4.2 Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de servrar och klientdatorer som ska användas för systemet.

Läs mer

Avancerade Webbteknologier

Avancerade Webbteknologier Projektledning, Business Knowledge Användbarhet & Layout Avancerade Webbteknologier Lkti Lektion 1 Kommunikation Tobias Landén tobias.landen@chas.se Avancerade webbteknologier del 1 (4 KY poäng) Syfte

Läs mer

Platsbesök. Systemkrav

Platsbesök. Systemkrav Systemkrav Systemkrav 2016-15-19 2 (5) Systemkrav Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de servrar och klientdatorer som ska användas för systemet. Nedan listade

Läs mer

TDP003 Projekt: Egna datormiljön

TDP003 Projekt: Egna datormiljön . TDP003 Projekt: Egna datormiljön Egen utvecklingsmiljö Kursmaterial till kursen TDP003 Höstterminen 2017 Version 2.2 2017-06-30 2017-06-30 Egen utvecklingsmiljö INNEHÅLL Innehåll 1 Revisionshistorik

Läs mer

Prova på-laboration i PHP Johan Sjöholm johsj@ida.liu.se Institutionen för datavetenskap, Linköpings universitet 2009-08-09

Prova på-laboration i PHP Johan Sjöholm johsj@ida.liu.se Institutionen för datavetenskap, Linköpings universitet 2009-08-09 Prova på-laboration i PHP Johan Sjöholm johsj@ida.liu.se Institutionen för datavetenskap, Linköpings universitet 2009-08-09 1. Introduktion till webbprogrammering Webbprogrammering består av ett antal

Läs mer

Preliminär specifikation av projekt

Preliminär specifikation av projekt Preliminär specifikation av projekt Projektets namn: Infraröd Minneslåda (numera omdöpt till FastSync) Uppdragsgivare: Alex Olwal aolwal@cs.columbia.edu Deltagare: Johan Ullberg Nils

Läs mer

FrontPage Express. Ämne: Datorkunskap (Internet) Handledare: Thomas Granhäll

FrontPage Express. Ämne: Datorkunskap (Internet) Handledare: Thomas Granhäll FrontPage Express I programpaketet Internet Explorer 4.0 och 5.0 ingår också FrontPage Express som installeras vid en fullständig installation. Det är ett program som man kan använda för att skapa egna

Läs mer

Mina listor. En Android-applikation. Rickard Karlsson 2013-06-09. Rickard Karlsson - rk222cu Linnéuniversitet rk222cu@student.lnu.

Mina listor. En Android-applikation. Rickard Karlsson 2013-06-09. Rickard Karlsson - rk222cu Linnéuniversitet rk222cu@student.lnu. Mina listor En Android-applikation Rickard Karlsson 2013-06-09 Rickard Karlsson - rk222cu Linnéuniversitet rk222cu@student.lnu.se Innehållsförteckning 2. Innehållsförteckning 3. Abstrakt 4. Inledning/bakgrund

Läs mer

SKOLFS. beslutade den -- maj 2015.

SKOLFS. beslutade den -- maj 2015. SKOLFS Föreskrifter om ändring i Skolverkets föreskrifter (SKOLFS 2010:247) om ämnesplan för ämnet programmering i gymnasieskolan och inom kommunal vuxenutbildning på gymnasial nivå; beslutade den -- maj

Läs mer

Statistik från webbplatser

Statistik från webbplatser Statistik från webbplatser problem och möjligheter Ulf Kronman Föredragets huvuddelar Frågorna och motfrågorna Vilka frågor ställer chefen, BIBSAM och ISO? Varför ställer webmastern krångliga motfrågor?

Läs mer

ADOBE FLASH PLAYER 10.3 Lokal inställningshanterare

ADOBE FLASH PLAYER 10.3 Lokal inställningshanterare ADOBE FLASH PLAYER 10.3 Lokal inställningshanterare PRERELEASE 03/07/2011 Juridisk information Juridisk information Juridisk information finns på http://help.adobe.com/sv_se/legalnotices/index.html. iii

Läs mer

Alla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php

Alla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php Introlektion PHP är ett av de enklare språken att lära sig just pga. dess dynamiska struktur. Det används för att bygga upp båda stora och mindre system. Några vanliga system som använder sig av PHP är

Läs mer

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer

Java: Utvecklingsverktyg, datatyper, kontrollstrukturer Java: Utvecklingsverktyg, datatyper, kontrollstrukturer Sven-Olof Nyström Uppsala Universitet 13 juni 2005 1 Utvecklingsverktyg för Java Vi rekommenderar Suns utvecklingsverktyg (SDK, tidigare JDK), se

Läs mer

Modul 6 Webbsäkerhet

Modul 6 Webbsäkerhet Modul 6 Webbsäkerhet Serverskript & Säkerhet Webbservrar & serverskript exponerar möjlighet för fjärranvändare att skicka data och köra kod vilket medför risker. Man ska aldrig lita på att alla vill göra

Läs mer

Systemkrav och tekniska förutsättningar

Systemkrav och tekniska förutsättningar Systemkrav och tekniska förutsättningar Hogia Webbrapporter Det här dokumentet går igenom systemkrav, frågor och hanterar teknik och säkerhet kring Hogia Webbrapporter, vilket bl a innefattar allt ifrån

Läs mer

Hogias Ekonomisystem. Systemkrav för enanvändarinstallation fr o m version 2015.1 av GENERELLA KRAV

Hogias Ekonomisystem. Systemkrav för enanvändarinstallation fr o m version 2015.1 av GENERELLA KRAV Systemkrav för enanvändarinstallation fr o m version 2015.1 av Hogias Ekonomisystem Systemkraven specificerar de miljöer och förutsättningar som programvaran är testad i och som vi rekommenderar för att

Läs mer

SKOLFS. beslutade den XXX 2017.

SKOLFS. beslutade den XXX 2017. 1 (11) Föreskrifter om ändring i Skolverkets föreskrifter (SKOLFS 2010:247) om ämnesplan för ämnet programmering i gymnasieskolan, inom kommunal vuxenutbildning på gymnasial nivå och inom vidareutbildning

Läs mer

Priskamp. En prisjämförelsesite Björn Larsson 130609

Priskamp. En prisjämförelsesite Björn Larsson 130609 Priskamp En prisjämförelsesite Björn Larsson 130609 Abstrakt Detta är en post-mortem slutrapport om mitt projekt "Priskamp" inom ramen för kursen Individuellt Mjukvaruutvecklingsprojekt VT 2013. Projektets

Läs mer

Internets historia Tillämpningar

Internets historia Tillämpningar 1 Internets historia Redan i slutet på 1960-talet utvecklade amerikanska försvaret, det program som ligger till grund för Internet. Syftet var att skapa ett decentraliserat kommunikationssystem som skulle

Läs mer

Datacentertjänster PaaS

Datacentertjänster PaaS Datacentertjänster PaaS Innehåll Datacentertjänst PaaS 3 Allmänt om tjänsten 3 En säker miljö för kundensa containers 3 En agil infrastruktur 3 Fördelar med tjänsten 3 Vad ingår i tjänsten 4 Applikationer

Läs mer

Yanting Larsen. Mjukvaruutvecklare. Cybercom Group

Yanting Larsen. Mjukvaruutvecklare. Cybercom Group Cybercom Group www.cybercom.se info@cybercom.com Yanting Larsen Jag har ett stort intresse av mjukvaruutveckling och jag är angelägen om att arbeta med antingen webbapplikationer, datorprogram eller mobilapplikationer.

Läs mer

emopluppen Användning av "Ant" Niklas Backlund Version: 1.4 ( 2002/04/26 07:27:52 UTC)

emopluppen Användning av Ant Niklas Backlund Version: 1.4 ( 2002/04/26 07:27:52 UTC) emopluppen Användning av "Ant" Version: 1.4 ( 2002/04/26 07:27:52 UTC) Niklas Backlund Sammanfattning Det här dokumentet handlar om programmet Ant, som är en byggmiljö för programutvecklingsprojekt. Dess

Läs mer

Innehåll. MySQL Grundkurs

Innehåll. MySQL Grundkurs MySQL Grundkurs Copyright 2014 Mahmud Al Hakim mahmud@dynamicos.se www.webbacademy.se Innehåll Introduktion till databaser Installera MySQL lokalt Webbserverprogrampaket (XAMPP) Introduktion till phpmyadmin

Läs mer

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document Programutvecklingsprojekt 2003-04-24 Projektgrupp Elvin Detailed Design Document Björn Engdahl Fredrik Dahlström Mats Eriksson Staffan Friberg Thomas Glod Tom Eriksson engdahl@kth.se fd@kth.se d94-mae@nada.kth.se

Läs mer

Installationsanvisningar

Installationsanvisningar Installationsanvisningar Hogia Webbrapporter INNEHÅLLSFÖRTECKNING Systemkrav version 2011.XX 3 Installation av IIS för Windows Server 2003 5 Installation av IIS för Windows Server 2008 8 Nyinstallation

Läs mer

Systemkrav 2014 för enanvändarinstallation fr o m version 2014.2 av

Systemkrav 2014 för enanvändarinstallation fr o m version 2014.2 av Systemkrav 2014 för enanvändarinstallation fr o m version 2014.2 av Hogias ekonomisystem Systemkraven specificerar de miljöer och förutsättningar som programvaran är testad i och som vi rekommenderar för

Läs mer

Webbplats analys emreemir.com

Webbplats analys emreemir.com Webbplats analys emreemir.com Genereras på Mars 10 2019 18:41 PM Ställningen är 66/100 SEO Innehåll Titel Emre Emir, Full-Stack Web Developer Längd : 35 Perfekt, din titel innehåller mellan 10 och 70 tecken.

Läs mer

STYRKAN I ENKELHETEN. Business Suite

STYRKAN I ENKELHETEN. Business Suite STYRKAN I ENKELHETEN Business Suite HOTET ÄR VERKLIGT Onlinehot mot ditt företag är verkliga, oavsett vad du gör. Om du har data eller pengar är du ett mål. Säkerhetstillbuden ökar drastiskt varje dag

Läs mer

Metoder för verifiering av användare i ELMS 1.1

Metoder för verifiering av användare i ELMS 1.1 Metoder för verifiering av användare i ELMS 1.1 2012-12-21 Kivuto Solutions Inc. [KONFIDENTIELLT] INNEHÅLLSFÖRTECKNING ÖVERSIKT...1 VERIFIERINGSMETODER...2 IUV (Integrated User Verification)...2 Shibboleth

Läs mer

Hur BitTorrent fungerar

Hur BitTorrent fungerar Hur BitTorrent fungerar dator8.info Introduktion till hur BitTorrent fungerar BitTorrent är ett protokoll som möjliggör snabb nedladdning av stora filer med minst Internet bandbredd. Det kostar inget att

Läs mer

Molntjänster. Översikt. Lektion 1: Introduktion till molntjänst. Introduktion till molntjänst. Vilka tjänster finns? Säkerhet.

Molntjänster. Översikt. Lektion 1: Introduktion till molntjänst. Introduktion till molntjänst. Vilka tjänster finns? Säkerhet. Molntjänster Översikt Introduktion till molntjänst. Vilka tjänster finns? Säkerhet. Lektion 1: Introduktion till molntjänst Vad är detta? the Cloud. Definition av molntjänster. Tjänster. Skikt. Klient.

Läs mer

Widgetguiden Vad är Publits widgetshop?

Widgetguiden Vad är Publits widgetshop? Widgetguiden Den här guiden är till för dig som vill använda Publits widgetshop för att enkelt sälja böcker direkt på din egen hemsida, blog eller Facebook. Här går vi steg för steg igenom processen för

Läs mer

Varför ska man använda ett CMS? Vilka är fördelarna och är det alltid bra? Kattis Lodén 2010-03-18

Varför ska man använda ett CMS? Vilka är fördelarna och är det alltid bra? Kattis Lodén 2010-03-18 Varför ska man använda ett CMS? Vilka är fördelarna och är det alltid bra? Kattis Lodén 2010-03-18 Innehåll Inledning... 3 Fakta... 4 Innehåll... 4 Texthantering... 4 Granskning och versionshantering...

Läs mer

SÄKRA DIN AFFÄR VART DEN ÄN TAR DIG. Protection Service for Business

SÄKRA DIN AFFÄR VART DEN ÄN TAR DIG. Protection Service for Business SÄKRA DIN AFFÄR VART DEN ÄN TAR DIG Protection Service for Business DET ÄR EN MOBIL VÄRLD Wifi Fotgängare Idag använder vi fler enheter med fler anslutningar än någonsin tidigare. Att då kunna välja var

Läs mer

Nyheter i. Solen ORBIT 6.7

Nyheter i. Solen ORBIT 6.7 2014-02-12 Nyheter i Solen ORBIT 6.7 Cartesia GIS AB Nyheter i konceptet Mobila klienter och e-tjänst Till ORBIT finns nu två mobila klienter (HTML5-appar) tillgängliga. En för allmänheten, ORBIT Felanmälan,

Läs mer

Hemsideutveckling för Anjool AB

Hemsideutveckling för Anjool AB Beteckning: Akademin för teknik och miljö Hemsideutveckling för Anjool AB Christopher Gidlöf Maj 2012 Examensarbete 15hp B nivå Datavetenskap Internetteknologi Examinator: Carina Petterson Handledare:

Läs mer

Installation och konfiguration av klientprogramvara 2c8 Modeling Tool

Installation och konfiguration av klientprogramvara 2c8 Modeling Tool Installation och konfiguration av klientprogramvara 2c8 Modeling Tool Hämta programpaket, MSI Aktuell version av klientprogramvaran finns tillgänglig för nedladdning på vår hemsida på adress http://www.2c8.com/

Läs mer

Översikt. Installation av EasyPHP 1. Ladda ner från http://www.easyphp.org/ Jag använder Release 5.3.4.0 2. Installera EasyPHP.

Översikt. Installation av EasyPHP 1. Ladda ner från http://www.easyphp.org/ Jag använder Release 5.3.4.0 2. Installera EasyPHP. Laboration 1 Översikt 1. Att komma igång med laborationsmiljön a. installera Aptana Studio 3 b. Installera EasyPHP 2. Testa lite programmering a. Testa enkla uppgifter b. Testa automatiskt 3. Skapa inloggningsformulär

Läs mer

emopluppen Installationsmanual

emopluppen Installationsmanual emopluppen Installationsmanual Sammanfattning Den här manualen beskriver hur man installerar Emo-Pluppen. Innehållsförteckning 1 - Förberedelser... 1.1 - Operativsystem... 1.2 - PHP... 1. - Webbserver...

Läs mer

Compose Connect. Hosted Exchange

Compose Connect. Hosted Exchange Sida 1 av 15 Compose Connect Hosted Exchange Presentation av lösningen: Compose Hosted Exchange Följande möjligheter finns för hantering av e-post 1. Lokalinstallerad Outlook-klient För att kunna använda

Läs mer

Molnplattform. Version 1.0. Användarhandbok

Molnplattform. Version 1.0. Användarhandbok Molnplattform Version 1.0 Användarhandbok September 2017 www.lexmark.com Innehåll 2 Innehåll Ändringshistorik...3 Översikt... 4 Komma igång...5 Systemkrav... 5 Öppna molnplattformen...5 Öppna Print Management-webbportalen...

Läs mer

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

Vad är molnet?... 2. Vad är NAV i molnet?... 3. Vem passar NAV i molnet för?... 4. Fördelar med NAV i molnet... 5. Kom igång snabbt... Produktblad för NAV i molnet Innehåll Vad är molnet?... 2 Vad är NAV i molnet?... 3 Vem passar NAV i molnet för?... 4 Fördelar med NAV i molnet... 5 Kom igång snabbt... 5 Bli kostnadseffektiv... 5 Enkelt

Läs mer

Manual Lead tracking. Version 1.0 2013-12-12

Manual Lead tracking. Version 1.0 2013-12-12 Manual Lead tracking Version 1.0 2013-12-12 Innehållsförteckning 1 Inledning... 3 1.1 Om manualen... 3 1.2 Om tjänsten... 3 2 Använd tjänsten för första gången... 4 2.1 Installera applikationen... 4 2.2

Läs mer

Innehåll. Webbproduktion. Prototyputveckling. Arbetsgång (R)

Innehåll. Webbproduktion. Prototyputveckling. Arbetsgång (R) Innehåll Webbproduktion Produktion och publicering av större webbplatser Produktion Användbarhet/Användbarhetstest Publicering Underhåll Arbetsgång (R) 1) Utred mål och syfte (verksamhets- och målgruppsanalyser)

Läs mer

Webbappar med OpenLayers och jquery

Webbappar med OpenLayers och jquery Webbappar med OpenLayers och jquery Johan Lahti GIT-utvecklare Malmö stad ULI Uppsala, 3 oktober 2011 smap (www.smap.se) Samarbete sedan maj 2009 Kartramverk byggt på OpenLayers och jquery Gemensam server

Läs mer

Undervisningen ska ge eleverna tillfälle att arbeta i projekt samt möjlighet att utveckla kunskaper om projektarbete och dess olika faser.

Undervisningen ska ge eleverna tillfälle att arbeta i projekt samt möjlighet att utveckla kunskaper om projektarbete och dess olika faser. WEBBTEKNIK Webbteknik används för att utveckla och vidareutveckla statiska och dynamiska webbsidor, webbplatser, webbapplikationer eller andra applikationer där webbtekniker används, till exempel applikationer

Läs mer

Tekis-FB 7.1.0. Systemkrav

Tekis-FB 7.1.0. Systemkrav 7.1.0 Systemkrav Systemkrav 2015-09-17 MAAN 2 (2) Systemkrav 7.1.0 Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de servrar och klientdatorer som ska användas för systemet.

Läs mer

Tentamen etjänster och webbprogrammering

Tentamen etjänster och webbprogrammering Tentamen etjänster och webbprogrammering Institutionen för informatik och media, informattionssystem Datum 26/8 Tid 8.00 12.00 Lärare Owen Eriksson Fredrik Bengtsson Maxpoäng 65 För Godkänd krävs minst

Läs mer

Innehåll Molntjänster... 4 Vad är detta?... 5 Cirkeln sluts... 6 The Cloud... 7 The Cloud (forts.)... 8 Definition av molntjänster...

Innehåll Molntjänster... 4 Vad är detta?... 5 Cirkeln sluts... 6 The Cloud... 7 The Cloud (forts.)... 8 Definition av molntjänster... 1 2 Innehåll Molntjänster... 4 Vad är detta?... 5 Cirkeln sluts... 6 The Cloud... 7 The Cloud (forts.)... 8 Definition av molntjänster... 9 Definition av molntjänster (forts.)... 11 Tjänster... 12 Skikt

Läs mer

Slutrapport YUNSIT.se Portfolio/blogg

Slutrapport YUNSIT.se Portfolio/blogg Slutrapport YUNSIT.se Portfolio/blogg RICKARD HANSSON 2012-06-04 Abstrakt Rapporten du har i din hand kommer handla om mitt projektarbete som jag genomfört under tio veckor för utbildningen Utvecklare

Läs mer

Säkerställ er tillgänglighet Kommunikationsrapporteringsverktyg

Säkerställ er tillgänglighet Kommunikationsrapporteringsverktyg Säkerställ er tillgänglighet Kommunikationsrapporteringsverktyg Vad är Meridix Studio? Meridix Studio är ett verktyg som låter er analysera och följa upp er kommunikation via ett enkelt men kraftfullt

Läs mer

E-förslag med DF RESPONS

E-förslag med DF RESPONS E-förslag med DF RESPONS Beskrivning av lösning och möjligheter utifrån organisationens behov E-förslag är ett fantastiskt digitalt verktyg för att öka medborgarnas inflytande och delaktighet. Digital

Läs mer

Utvecklingen av ett tidregistrerings- och faktureringssystem

Utvecklingen av ett tidregistrerings- och faktureringssystem Datavetenskap Opponenter: Anders Heimer & Jonas Seffel Respondenter: Daniel Jansson & Mikael Jansson Utvecklingen av ett tidregistrerings- och faktureringssystem Oppositionsrapport, C-nivå 2006:10 1 Sammanfattat

Läs mer

Systemkrav Tekis-Bilflytt 1.3

Systemkrav Tekis-Bilflytt 1.3 Systemkrav 1. Systemkrav Systemkrav 2015-06-09 2 (8) Systemkrav 1. Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de servrar och klientdatorer som ska användas för systemet.

Läs mer

Hur hänger det ihop? För att kunna kommunicera krävs ett protokoll tcp/ip, http, ftp För att veta var man skall skicka

Hur hänger det ihop? För att kunna kommunicera krävs ett protokoll tcp/ip, http, ftp För att veta var man skall skicka Webben som verktyg Idag: Hur hänger det ihop? Viktiga tekniker Stegen i ett webbprojekt Verktyg Dreamweaver Photoshop Joomla CMS Storyboard och flödesschema Fixa webbhotell Hur hänger det ihop? För att

Läs mer

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

Uppdragsbeskrivning. Paddel-appen Utmärkta kanotleder. Version 1.0 Mats Persson. Distributionslista. Namn Åtgärd Info. Paddel-appen Utmärkta kanotleder Version 1.0 Distributionslista Befattning Bolag/en het Säljare Sogeti Bengt Löwenhamn Konsultchef Sogeti Åsa Maspers Mentor/handledare Sogeti Student KaU Claes Barthelson

Läs mer

URVAL AV UTFÖRDA FRILANSJOBB

URVAL AV UTFÖRDA FRILANSJOBB URVAL AV UTFÖRDA FRILANSJOBB Här följer information om ett urval av utförda frilansjobb. CONTENT MANAGEMENT- OCH GROUPWARE RAMVERK Kund: Sundance MD&M En modulär flashapplikation med en PHP och MySQL backend

Läs mer

FÖRHINDRA DATORINTRÅNG!

FÖRHINDRA DATORINTRÅNG! FÖRHINDRA DATORINTRÅNG! Vad innebär dessa frågeställningar: Hur görs datorintrång idag Demonstration av datorintrång Erfarenheter från sårbarhetsanalyser och intrångstester Tolkning av rapporter från analyser

Läs mer

CMS, optimerade för programmerare Eller hur kan ett sådan skapas.

CMS, optimerade för programmerare Eller hur kan ett sådan skapas. Examensarbete CMS, optimerade för programmerare Eller hur kan ett sådan skapas. David Strömbom 2011-05-20 Ämne: Datavetenskap Nivå: B Kurskod: 1DV40E Abstrakt Denna rapport fokuserar på att undersöka några

Läs mer

JAVAUTVECKLING LEKTION 1

JAVAUTVECKLING LEKTION 1 JAVAUTVECKLING LEKTION 1 2016 Mahmud Al Hakim mahmud.al.hakim@nackademin.se www.alhakim.se AGENDA Introduktion till kursen Java historik och särdrag Javautvecklarens yrkesroll Installation och konfiguration

Läs mer

e-förslag System för ökad medborgardialog

e-förslag System för ökad medborgardialog System för ökad medborgardialog Få medborgarna delaktiga och engagerade i den lokala samhällsutvecklingen Vårt system för ökar medborgardialogen och gör medborgarna delaktiga och engagerade i den lokala

Läs mer

Medvetet företagande i en digitaliserad tid

Medvetet företagande i en digitaliserad tid Medvetet företagande i en digitaliserad tid Förord Vi lever i en spännande och föränderlig tid där digitaliseringen ger oss möjligheter vi tidigare bara kunde drömma om. Modern teknik och smarta tjänster

Läs mer

VAD GÖR DU / VEM ÄR DU?

VAD GÖR DU / VEM ÄR DU? INNEHÅLL Vad blir din roll Databaser vad är och varför Terminologi Datamodellering vad är och varför Utvecklingsprocessen SQL vad är det Data / Information / Kunskap Kapitel 1 delar av. Praktisk Datamodellering

Läs mer

Kurskatalog 2010 INNEHÅLLSFÖRTECKNING

Kurskatalog 2010 INNEHÅLLSFÖRTECKNING SFÖRTECKNING 1. RFID-Kurser... 2 1.1. RFID Grundkurs... 2 1.2. RFID Fortsättningskurs... 3 1.3. RFID dator programmering... 4 1.4. RFID Systemadministration... 5 1.5. RFID Aktiv Systemadministration...

Läs mer

Din guide till. Teknisk Specifikation Säljstöd

Din guide till. Teknisk Specifikation Säljstöd Din guide till Teknisk Specifikation Säljstöd April 2014 Innehåll Systemkrav... 3 Operativsystem... 3 Mjukvara... 3 Maskinvara... 4 Datakällor... 4 Databas... 5 Databasstruktur... 5 Katalogstruktur...

Läs mer

Sokigo AB OVK 2.0. Pentium- eller AMD-processor (x64 processor) på 1,6 GHz Dual Core eller motsvarande.

Sokigo AB OVK 2.0. Pentium- eller AMD-processor (x64 processor) på 1,6 GHz Dual Core eller motsvarande. OVK 2 Systemkrav Dokument Datum / Date Signatur Sida / Page Systemkrav 2016-06-22 2 (6) OVK 2.0 Systemkrav för OVK2 Dokumentet beskriver de krav som systemet ställer på maskinvara och programvara i de

Läs mer

KTH Programutvecklingsprojekt med mjukvarukonstruktion 2D1362. Projektpresentation

KTH Programutvecklingsprojekt med mjukvarukonstruktion 2D1362. Projektpresentation KTH Programutvecklingsprojekt med mjukvarukonstruktion 2D1362 Projektpresentation Fakturasystem Total Office Mobile Systems http://www.nada.kth.se/projects/prom04/fakturasystem/ Uppdragsgivare: Örjan Melin

Läs mer

JavaScript in SharePoint and not just for Apps. Wictor Wilén

JavaScript in SharePoint and not just for Apps. Wictor Wilén JavaScript in SharePoint and not just for Apps Wictor Wilén Wictor Wilén Agenda Varför JavaScript? JavaScript bibliotek SharePoint JS bibliotek JavaScript Client Side Object Model (JSOM/CSOM) REST Client

Läs mer

CMS. - Content management system

CMS. - Content management system CMS - Content management system Agenda CMS Server, webbhotell och FTP Wordpress, ställ mycket frågor Om vi hinner - Snabb genomgång av CMS - uppgiften Nu & Då Sidor med bara HTML och CSS kräver manuell

Läs mer