Version 1.0 Distributionslista Befattning Bolag/en het Student KaU Anton Odén Student KaU Olle Pejstrup Konsult/handledare Sogeti Konsultchef Sogeti Åsa Maspers Projektledare Sogeti vakant Namn Åtgärd Info.
Innehållsförteckning 1. Allmän beskrivning av uppdraget... 3 1.1 Bakgrund... 3 2.... 3 2.1 Lösningen... 3 2.2 Utredning... 3 2.3 Implementation... 4 2.4 Optioner... 4 2.4.1 Option 1: Konfiguration av enhet... 4 2.4.2 Option 2: Monitorering av enheter... 4 2.4.3 Option 3: Köra presentationsklienten på IoT-device... 4 3. Genomförande/arbetssätt... 5 3.1 Rutiner... 5 3.2 Genomförande... 5 4. Stöd/kvalitetssäkring... 5 4.1 Granskningar... 5 4.2 Testarbete... 5 5. Leveranser... 5 5.1 Dokumentation... 5 6. Konfigurationsstyrning... 5 7. Miljö... 5 8. Uppföljning och Rapportering... 6 8.1 Rapportering internt/externt... 6 8.1.1 Statusrapportering... 6 8.1.2 Möten... 6 8.1.3 Slutrapportering... 6 Ändringsförteckning Version Datum Ändring 1.0 Dokumentet skapats Sida 2 av 6
1. Allmän beskrivning av uppdraget 1.1 Bakgrund Sogeti Sverige AB (Sogeti) är ett IT-konsultbolag med bred verksamhet, stort fokus på kompetens och modern teknik. Syftet med uppdraget är att utveckla en lösning för att ersätta skyltar, menyer, informationsblad m.m. med en digital variant som kan uppdateras dynamiskt. Dels underlättar det att hålla information uppdaterad och dels kan det vara bättre ur en miljösynpunkt. 2. Uppdragets mål är att utveckla en lösning för att dynamiskt kunna visa information, informationen ska även på ett enkelt sätt kunna ändras av en person som inte är så datorvan. Uppdraget består av följande steg: 2.1 Lösningen Utreda hur man ska presentera informationen på en enhet Utreda hur man ska administrera informationen Implementera en applikation för att presentera information Implementera en applikation för att administrera information (kan vara samma applikation som för presentation) Utreda vad som krävs för att låsa ner en platta och få ner den information i en punktlista som ska vara lätt att följa. Lösningen inkluderar en administrationsklient där man kan administrera informationen som ska visas på enheterna och en klient som körs på enheter vars syfte är att presentera information. Informationen som presenteras ska kunna uppdateras dynamiskt så om informationen ändras från administrationsklienten så ska enheterna som presenterar information uppdateras automatiskt. Enheterna som presenterar information är plattor, det kan då vara Windows, Android eller ios. 2.2 Utredning Innan någon implementation görs så behöver man utreda hur information ska presenteras och administreras. När det gäller att presentera information på en enhet på ett enkelt sätt så har vi några exempel på vad man skulle kunna använda sig av; Visa en PowerPoint-liknande fil, Visa en webbsida som presenterar informationen eller visa information i en app för Android, ios eller Windows. De olika alternativen har olika för och nackdelar och Sida 3 av 6
uppdragstagarna behöver här ta reda på vilken av dessa sätt som är enklast att använda sig av i detta syfte och varför man väljer bort de andra alternativen. Beroende på vilket sätt man väljer att presentera informationen på så styr det ganska mycket hur man väljer att administrera informationen också, men även här finns flera vägar att gå och man behöver också kika på om det finns ramverk man kan använda för att förenkla det hela, väljer man att inte använda något ramverk så ska det finnas en anledning till att det också. 2.3 Implementation Implementationen ska göras efter att utredningen är klar. Administrationsklienten ser vi gärna att den utvecklas endera som en klient att installera och i så fall skriven i WPF eller en webb-baserat klient och då gjord med Microsofts MVC. Om annat väljs så ska det finnas en tydlig anledning till detta. Presentationsklienten ser vi gärna att den utvecklas som en Windows 10 Universal app om man väljer att göra en app för det, väljer man att göra en webb-baserat applikation ser vi gärna att den i så fall görs med Microsofts MVC. Om annat väljs så ska det finnas en tydlig anledning till detta. 2.4 Optioner Projektet i sig är begränsat så det ska vara möjligt att hinna med det under exjobbsperioden men skulle det finnas tid över så kan följande optioner väljas till. 2.4.1 Option 1: Konfiguration av enhet På ett enkelt sätt ska man kunna ladda ner ett skript eller en installationsfil till en platta för konfigurera den så den låser sig och enbart visar upp klienten som presenterar informationen och även pekar ut vilken information som ska visas på klienten. 2.4.2 Option 2: Monitorering av enheter När flera enheter används och man presenterar olika information på olika enheter så är det väldigt intressant att på ett smidigt sätt kunna hålla koll på vilka enheter som fungerar och om någon slutar fungera. Så via administrationsgränssnittet ska man även kunna se alla enheter som är kopplade till detta system och som används för att visa upp information. 2.4.3 Option 3: Köra presentationsklienten på IoT-device Utreda om det går att använda samma klient som används på plattorna för att köra på en IoT-device som t.ex. Raspberry Pi för att koppla till en TV och visa information. Detta istället för att man ska behöva ha en stor datorlåda ståendes bara för att kunna presentera information på en TV-skärm, en Raspberry t.ex. är så pass liten så man skulle kunna sätta fast den på baksidan av TVn. Om det är möjligt så ska även uppdragstagarna installera klienten på en IoT-device och visa att det fungerar och om detta har några begränsningar som man behöver ta hänsyn till. Även här ska det finnas en enkelt punktlista över hur man sätter upp detta i så fall. Sida 4 av 6
3. Genomförande/arbetssätt 3.1 Rutiner Sogeti tillhandahåller arbetsplatser, datorer samt erforderliga utvecklingsverktyg. Uppdragstagarna kommer att ha access till Sogetis nätverk och förväntas nyttja Sogetis TFS-server eller GIT för versionshantering. 3.2 Genomförande Uppdragstagarna planerar själv genomförandet och Sogeti tillhandahåller stöttning både projektstyrningsmässigt och rent implementationstekniskt. Förslagsvis används Scrum med en sprintlängd på 3 veckor som sätts upp där uppdragstagarna specificerar vad de bedömer hinns med i början av varje sprint och har en demo för en eller flera på Sogeti i slutet av varje sprint. 4. Stöd/kvalitetssäkring 4.1 Granskningar Vid behov genomförs granskning som kan initieras av både handledare och uppdragstagare. Lämpligen definieras några granskningspunkter vid planeringen av projektet. 4.2 Testarbete Funktions-, system- och integrationstest görs av uppdragstagarna. 5. Leveranser 5.1 Dokumentation Det finns inga krav på dokumentation men lämpligen levereras en enkel användarinstruktion. 6. Konfigurationsstyrning All programkod och tillhörande specifikationer och andra utvecklingsdokument ska versionshanteras med hjälp av Microsoft TFS eller GIT. 7. Miljö Utvecklingsverktyg väljs av uppdragstagarna tillsammans med handledare. Sida 5 av 6
8. Uppföljning och Rapportering 8.1 Rapportering internt/externt 8.1.1 Statusrapportering 8.1.2 Möten Rapportering av status och framskridande i utvecklingen beslutas i samråd vid projektuppstart. Möten hålls vid behov. Vid uppstart läggs lämpligt antal avstämningsmöten in i projektplanen. 8.1.3 Slutrapportering Arbetet presenteras för Sogeti i samband med lämpligt månadsmöte alternativt lunchmöte. Sida 6 av 6