Preliminär specifikation

Relevanta dokument
FairWay 1.0 SDD. Systemdesignbeskrivning

Preliminär specifikation av projekt

LIPS 1, 2002 Lätt Interaktiv Projektstyrningsmodell

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

Projektstyrning - kortversionen Jan-Åke Olofsson

Projektplan, Cykelgarage

Människa- datorinteraktion, MDI, vt 2012, Anvisningar för projekt- /grupparbete

Projekt Intelligent Indexering

Människa- datorinteraktion, MDI, ht 2011, anvisningar för projekt- /grupparbete

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

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

Exempel på verklig projektplan

Innehåll. Projekt Greed. Projekt definition. Projekt Greed En introduktion till projektmodellen LIPs

Människa- datorinteraktion, MDI, ht 2012, Anvisningar för projekt- /grupparbete

TDDC74 - Projektspecifikation

Projektplan. LiTH AMASE Accurate Multipoint Acquisition from Stereovision Equipment. Johan Hallenberg Version 1.0

Välkomna till KMM! KMM. KMM - lärandemål Efter fullgjord kurs ska ni bland annat kunna:

Projektplan. LiTH Reglering av Avgaser, Trottel och Turbo Fredrik Petersson Version 1.0. Status. Reglerteknisk Projektkurs RATT LIPs

ProPlanner. Uppdragsgivare: Torbjörn Jönsson, AstraZeneca. Ett projekt för kursen Programutvecklingsprojekt 2D1954

Design och konstruktion av grafiska gränssnitt

Dokumentation och presentation av ert arbete

Etablera projektet Intressenter

TDDI02. Programmeringsprojekt. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU

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

Design och konstruktion av grafiska gränssnitt

Dokumentation och presentation av ert arbete

Tvättfat. Produktframtagning och projektgrupper. Tips. Vattenkran. Engreppsblandare. Blandare. Claes Tisell. Maskinkonstruktion.

Projektstatus 20 februari 2002

Projektmetodik. Andreas Lenshof. Institutionen för Biomedicinsk Teknik Lunds Universitet

Sakfrågan Preliminär specifikation

Projektplan David Sandberg Version 1.0

Inlämning 1 torsdagen den 3 februari 2011 Grupp C3

Reglerteknisk projektkurs TSRT10


Guide till projektarbetet

Fyra i rad Javaprojekt inom TDDC32

Teknisk fysik Institutionen för fysik Maria Hamrin Krister Wiklund. Hej,

TDDI02. Programmeringsprojekt. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Riskhantering för administrativa projekt inom Karolinska Institutet

Projektmetodik. Johan Nilsson. Institutionen för Biomedicinsk Teknik LTH, Lunds Universitet

Projektstyrning - kortversionen Jan-Åke Olofsson

Objektorientering. Grunderna i OO

Dokumentation och presentation av ert arbete. Kursens mål. Lärare Projektmedlemmar. Studenter Extern personal. Projektfaser. Projektroller.

SLUTRAPPORT RUNE TENNESMED WEBBSHOP

1. Etablera projektet

Rune Tennesmed. Oskar Norling 1DV430. Individuellt Mjukvaruutvecklingsprojekt 1DV430 Webbprogrammerare H12 Oskar Norling

LIPS Kravspecifikation. Institutionen för systemteknik Mattias Krysander

Före Kravspecifikationen

IKOT 2011 Tvätt av ultraljudsmätare. Grupp A5 steg 1

David A, Niklas G, Magnus F, Pär E, Christian L CHALMERS INLÄMNING1. IKOT Grupp B4

Utvärdering av projektet

Specifikation för Projekt Alhanko

LIPs Fredrik Ljungberg ChrKr Projektdirektiv18_ROV.doc CKr

Dokumentation och presentation av ert arbete

Ramverk för projekt och uppdrag

LIPs Andreas Bergström ChrKr Projektdirektiv16_Toyota_v2.0.doc CKr

Reglerteknisk projektkurs TSRT10

campus.borlänge Förstudie - Beslutsstöd för operativ tågtrafikstyrning

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Programvaruutveckling - Metodik 2016 Jonas Wisbrant

LIPs Martin Lindfors ChrKr Projdir2017_sbd.doc CKr

LiTH Segmentering av MR-bilder med ITK Efterstudie MCIV. Anders Eklund. Status

Bilaga 5 b: Mall för projektplan

Arbeta i projekt. Anders Hessel ITP-projekt Uppsala Universitet

Projektplan för utvecklingen av Kryssarklubbens nya webbplats

Projektdirektiv. Version: 1.0. Projekt: Förstudie Ekonomisystem Ålands kommuner och kommunalförbund

Projektplan Utbildningsadministration och studentstöd

Projektdirektiv Hanna Nyqvist Sida 1

1. Etablera projektet

Projektplan. LiTH Autonom bandvagn med stereokamera Henrik Berggren Version 1.0. Status. TSRT10 8Yare LIPs. Granskad

INFÖRANDE, AVSLUT OCH UPPFÖLJNING. Agneta Bränberg

Ingenjörsprojekt, TFYY Föreläsning 3. Urban Forsberg Institutionen för Fysik, Kemi och Biologi, IFM

Innehåll (3) Innehåll (2) Innehåll (5) Innehåll (4) Innehåll (6) Innehåll (7) Dokumenthistorik. beställare, Översiktlig beskrivning av projektet

Objektorienterad programmering, allmänt

Viktiga egenskaper hos ett program (Meyer): Objektorienterad programmering, allmänt. Vilka egenskaper vill vi att våra program ska ha?

Filhanterare med AngularJS

Projektarbete DAVC20

LiTH. WalkCAM 2007/05/15. Testplan. Mitun Dey Version 1.0. Status. Granskad. Godkänd. Reglerteknisk projektkurs WalkCAM LIPs

Röna fingrar e gött o ha:) SLUTRAPPORT BUDGETSYSTEM LNU

Utveckling av SLU:s varumärkesarbete bilden av SLU

Bilaga 5 b Mall för projektplan

Kurs-PM fo r HI1028, Projektkurs inom programvaruutveckling, VT16

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

Projektplanering. Projektplanen. Om inte projektet planeras noga, kommer det garanterat att misslyckas

Inlämningsuppgifter, EDAF30, 2015

Bilaga 4c. Utveckling. Upphandling av IT-stöd för barn- och elevregister inom Skolplattform Stockholm UTBILDNINGSFÖRVALTNINGEN. Förfrågningsunderlag

Rafel Ridha Projektdefinition

SKOLFS. beslutade den XXX 2017.

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document

Projektdirektiv. Rikard Falkeborn Sida 1

729G75: Programmering och algoritmiskt tänkande. Tema 1. Föreläsning 1 Jody Foo

Problemet. Beställarkompetens och kravhantering. Användbarhetsboom Internet som motor. Beställarproblemet. Användarnytta = verksamhetsnytta.

Projektdirektiv Christian Andersson Naesseth Sida 1

PROJEKTPLAN KURSDATABAS 1 nov jun 2005 PROJEKTANSVARIG: EINAR LAURITZEN PROJEKTLEDARE: ELISABETH LUNDBERG version 1 mars- 2004

Kursplan Gränssnittsdesign och Webbutveckling 1 Vårtermin 2014

Spelprogram. Objektorienterade applikationer Laboration 2

Rapportering som krävs utöver LIPS-dokumenten: poster föredrag där projektets genomförande och resultat beskrivs hemsida som beskriver projektet

Reglerteknisk projektkurs TSRT10


Transkript:

PRUP, FairWay Preliminär specifikation Projekt 40. Navigationssytem för utställningsbesökare Uppdragsgivare: Mats Erixon, CITU Daniel Högberg, projektledare Åke Djärf, vice projektledare Magnus Johansson, sekreterare Kristoffer Andersson Lars-Ove Björkman Martin Björkman Magnus Johansson Tobias Wallin Av: Kristoffer Andersson Stockholm, 1 maj 2000

Innehåll 1 Problembeskrivning...3 1.1 Bakgrund...3 1.2 Syfte...3 1.3 Krav och avgränsningar...4 1.3.1 Allmänt...4 1.3.2 Funktioner...4 1.3.3 Datormiljö...4 1.3.4 Användare...5 2 Förslag till lösning...5 2.1 Systemskiss...5 2.1.1 Moduler...5 2.1.2 Diagram...5 2.1.2.1 Dataflödesdiagram...5 2.1.2.2 Delsystemstruktur...6 2.1.3 Skiss av användargränssnittet...7 3 Tidsplanering...8 3.1 Generellt...8 3.2 Projektledning...8 3.3 Kravspecifikation...8 3.4 Avtal...9 3.5 Analys...9 3.6 Design...9 3.7 Implementation... 10 3.8 Testning... 10 3.9 Presentation / slutrapport... 10 4 Riskanalys... 11 2

1 Problembeskrivning Uppdragsgivarens formulering av projektet: Med hjälp av en inskannad karta över området, inlagda distanser, olika utställande bolag och deras verksamhetsområden, skapas en så optimal färdväg som möjligt genom utställningen. Ytterligare variabler är också möjliga att lägga in. 1.1 Bakgrund På stora mässor, så som CeBITs i Hannover, samlas flera hundra företag för att ställa ut sina produkter och tiotusentals besökare irrar omkring bland alla dessa utställare i ett desperat försök att hitta de som intresserar just dem. Enorma hallar, dålig skyltning och tidsbrist är faktorer som gör ett mässbesök mindre angenämt än vad det skulle kunna vara. När besökaren dessutom ställer sig frågan om han/hon inte går denna samma väg för fjärde gången är det något som inte stämmer. 1.2 Syfte Något måste göras åt den tidskrävande och uttröttande promenad, fram och tillbaka över hallar stora som fotbollsplan, som en del mässbesökare utsätts för. Ett enkelt och tydligt navigationssytem, som visar en approximativt optimal väg till de utställare som är av intresse för en viss person, skulle kunna vara till stor hjälp och nytta. Syftet med detta projekt är att först och främst skapa ett grundsystem som löser detta problem och som eventuellt skulle kunna byggas ut med diverse tillägg. Några exempel på sådana tillägg är gruppering och sökning av utställare efter bransch och produkt, alternativa gränssnitt mot användaren (WAP, Palm pilot) och automatiserad mässkartstolkning för enklare administration av systemet. Projektet har även ett sekundärt, personligt syfte för projektmedlemmarna, som egentligen är av större vikt än det tidigare nämnda. Arbetet ska ge erfarenheter av projektarbete, dess processer, gruppdynamik, konflikthantering och ledning. Med andra ord hoppas vi att vi genom detta projekt vidgar våra vyer och får insyn i den arbetsmetodik som vi med stor sannolikhet kommer använda oss av i vårt framtida yrkesliv. Förutom dessa två viktiga syften har vi även enats om en högre målsättning för projektet. Visionen är att bli utnämnt till ett bästa projekt och att kunna presentera en världsledande mässruttplanerare. 3

1.3 Krav och avgränsningar För att kunna säkerställa att detta projekt blir genomförbart och användbart inom den tidsram som satts upp har vi blivit tvungna att ställa upp en del krav och avgränsningar på systemet. Dessa är satta på ett sätt som gör att de, om de följs, ger en minimal och generell lösning på problemet. Avsikten med att bara kräva en prototyp som resultat är att fokus ska ligga på basfunktionaliteten och att vi därefter ska kunna bygga ut systemet till en färdig produkt. 1.3.1 Allmänt Ett första krav är att engelska ska användas i all kod samt i alla leverans dokument. Systemet och koden måste dokumenteras noggrant och skrivas modulärt för att förenkla vidareutveckling av produkten. En användarhandledning måste givetvis skrivas, men systemet ska vara så intuitivt och enkelt att använda att det endast krävs en enkel hjälpfunktion vid eventuella problem. 1.3.2 Funktioner Systemet ska kunna läsa in statiska indata beskrivande mässan, företagen och deras position i mässlokalen. Användaren ska via ett grafiskt användargränssnitt kunna göra ett interaktivt val av utställare som han/hon önskar besöka. Detta följs av ett beräkningssteg och resultatet av detta presenteras i slutänden som en kortaste väg genom mässlokalen. Denna procedur måste kunna upprepas flera gånger under samma session. Tidsåtgången för beräkningssteget måste hållas under en rimligt låg gräns. Problemet är en variant av ett välkänt och beräkningstungt problem, nämligen TSP (Travelling Salesmans Problem). Detta innebär att lösningsförslaget med största sannolikhet måste begränsas till en approximation av den kortaste vägen. Funktionalitet och användarvänlighet ska dock sättas före prestanda. För att minimera tidsåtgången bör systemet göra lämpliga förberäkningar vid uppstart och inläsning av indatat. 1.3.3 Datormiljö Systemet ska vara ett Web-baserat enanvändarsystem, som enkelt kan byggas ut till ett fleranvändarsystem. Det måste vara robust, vilket innebär att om systemet byggs ut till ett fleranvändarsystem måste det, när så är praktiskt genomförbart, ta hänsyn till singlepoint failures, d.v.s. om en användare i en fleranvändarmiljö får problem skall detta inte låsa beräkningsmodulen för övriga användare. Genom att göra det Web-baserat blir systemet portabelt och inte bundet till någon speciell typ av operativsystem. Då budgeten för detta projekt tills vidare är mycket begränsad, bör utvecklarna så gott som det går hålla sig till det som är gratis. Utvecklingsspråk kommer med största sannolikhet vara Java. 4

1.3.4 Användare Den tänkta användargruppen för vårat navigeringssystem är mässbesökare. Mässarrangören kommer förstås också använda programmet för att läsa in mässbeskrivningen i systemet. 2 Förslag till lösning Efter ett majoritetsbeslut valde vi att inte presentera något lösningsförslag innan projektet kommit igenom analys- och designfasen. Vi ansåg att det var viktigt att inte rusa igenom denna första och mycket betydelsefulla del. Samtidigt vill vi inte låsa oss eller styra in oss mot någon lösning före problemet och alla lösningsförslag analyserats och utvärderats. Detta innebär att denna del kommer vara ganska tunn. 2.1 Systemskiss 2.1.1 Moduler Mässnavigeringssystem Web interface 2.1.2 Diagram 2.1.2.1 Dataflödesdiagram Mässbeskrivning Val av platser Vägbeskrivning Mässnavigeringssytem Web Interface Administrator Mässbesökare 5

2.1.2.2 Delsystemstruktur PreCalc data Calc Datamodel Client Handler - HTTP -generic Controller PreCalc nod-id, koordinater (x,y), grannlista InfoHandler Base Data Base data Calc ClientHandler Controller Datamodel InfoHandler PreCalc PreCalc data Grundläggande information avseende en mässa/ utställning. Denna information består t.ex. av en karta över utställningsområdet, namn och beskrivning av alla utställare och koordinater för dessas fysiska placering i lokalen. Huvudsaklig beräkningsmodul. Denna modul beräknar den kortaste väg en besökare måste ta givet en lista över önskemål. Den delmodul som direkt kommunicerar med användaren. Kontrollmodul som givet en arbetsbegäran från ClientHandler begär beräkning av Calc-modulen. Uppläst grunddata för beräkning. En wrapper runt Base data. Tanken med denna modul är att säkerställa kontroll över det antal sessioner/ motsv som samtidigt är aktiva mellan ClientHandler och Base data. Administrationsmodul som i förväg utför vissa grundberäkningar. Lagrat utdata från PreCalc 6

2.1.3 Skiss av användargränssnittet 7

3 Tidsplanering 3.1 Generellt Då projektet är baserad på en kurs har det en mycket begränsad löptid. Det finns flera viktiga tidpunkter som måste hållas, som projektets tidplan har tvingats anpassa sig till. De deadlines som finns är markerade i tabellen nedan. Den sammanlagda tidsåtgången beräknas uppgå till cirka 750 timmar. Vecka 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Ledning Kravspec. Avtal Analys Design Impl. Test Present. 3.2 Projektledning I projektledning ingår att planera och driva projektet framåt, fördela arbetsuppgifter, koordinera samt tidsplanera. Projektledaren ansvarar också för kontakterna med uppdragsgivaren. Dokument: Projektplan där uppgifter och tider beskrivs. Milstolpar: Projektet skall fullföljas till redovisningen som hålls senast den 19 maj 2000. Tidsåtgång: 80 timmar, fördelat över hela projektet Ansvarig: Daniel Högberg 3.3 Kravspecifikation Eftersom uppdragsgivaren, Mats Erixon, bara har en generell önskan om projektets resultat, är vi tvungna att själva framställa en 8

kravspecifikation. Denna blir då en mer omfattande beskrivning av vad vi vill få gjort med projektet. Dokument: Kravspecifikation som beskriver vad systemet skall göra. Milstolpar: Delar ur kravspecifikationen bildar tillsammans med delar av analysen den preliminära specifikationen som ska inlämnas till Lars Kjelldahl senast den 10 mars 2000. Tidsåtgång: 30 timmar Ansvarig: Kristoffer Andersson 3.4 Avtal För att reglera rättigheter till hela eller delar av resultaten från projektet kommer avtal att skrivas dels mellan projektgruppens medlemmar och dels mellan projektgruppen och uppdragsgivaren. Dokument: Ett avtal för projektgruppens medlemmar och ett mellan projektgruppen och uppdragsgivaren. Milstolpar: Senast den 2 mars 2000 skall avtalet gentemot uppdragsgivaren skrivas under. Avtalet inom gruppen skall skrivas under innan avtalet gentemot uppdragsgivaren skrivs under. Tidsåtgång: 30 timmar Ansvarig: Martin Björkman 3.5 Analys För att ta reda på vad vi ska göra samt hur detta ska göras (på ett generellt plan) undersöks i denna fas vad som finns att tillgå inom olika tekniker, datakällor o.s.v. Dokument: Scenarion ("Use cases") i textform, skiss av användargränssnitt, skiss av arkitektur. Milstolpar: Eftersom delar av analysens resultat ska lämnas in tillsammans med specifikationen till Lars Kjelldahl, måste analysen vara klar till den 10 mars 2000. Tidsåtgång: 40 timmar Ansvarig: Kristoffer Andersson 3.6 Design För att implementationen ska bli smidig och rätt från början gäller det att lägga stor vikt vid hur projektgruppen väljer att utforma det slutgiltiga systemet. Dokument: Arkitekturell design av systemet, detaljspecifikation av alla gränssnitt samt vilka algoritmer som ska användas, beskrivning av databasstruktur (eller liknande). Milstolpar: All designdokumentation måste vara framtagen till etappredovisningen som ska vara senast den 12 april 2000. Tidsåtgång: 150 timmar Ansvarig: Åke Djärf 9

3.7 Implementation Implementation av systemet enligt detaljspecifikation. Det skall även ske enhetstester utifrån testprotokoll. Systemet ska också dokumenteras och göras användarvänligt i form av användarhandbok. Dokument: Programkod som utgör ett körbart system, systemhandbok som beskriver systemet och kraven på datormiljö, användarhandbok. Milstolpar: Allt ska vara klart till 1 maj 2000, för att tester skall hinna göras fram till den 4 maj 2000 då förhandsvisning av systemet skall ske. Tidsåtgång: 240 timmar Ansvarig: Martin Björkman 3.8 Testning För att kunna avsluta projektet måste man kunna kontrollera att resultatet uppfyller alla tidigare uppsatta mål eller dokument. Detta innebär således kontroll av allt framställt material så att det överensstämmer med tidigare material. Dokument: Plan och protokoll för enhetstest, integrationstestplan. Milstolpar: Enhetstesterna utförs under implementationen, planerna måste därför vara klara till den 5 april 2000. Integrationstesterna kommer att genomföras dagarna efter att implementationen är klar, d.v.s. de första dagarna i maj fram till den 4 maj 2000. Tidsåtgång: 100 timmar Ansvarig: Lars-Ove Björkman 3.9 Presentation / slutrapport För att kunna 'sälja' projektets resultat måste en övertygande presentation framställas. Dokument: Presentation för dator och OH. Milstolpar: Till förhandsvisningen måste presentationsmaterial vara klart, d.v.s. till den 4 maj 2000. Tidsåtgång: 80 timmar Ansvarig: Tobias Wallin 10

4 Riskanalys I ett försök att kartlägga vad som skulle kunna gå snett har vi här angivit vår uppskattade sannolikhet att en viss händelse inträffar samt vilka eventuella konsekvenser som skulle kunna uppstå, efter skalan Hög/Medel/Låg. Risk Konsekvens Problem Åtgärd H H Prestanda- eller nogrannhetsproblem med algoritmen för TSP. Undersöka flera metoder. Förenkla problemet. Se över approximationsmöjligheter och graden av approximation. M H Tidsbrist p.g.a. att andra kurser tar mycket tid. Jobba hårt i början. Arbeta fram en tidplan alla tror på och känner sig delaktiga i. M L M H Kunskapsbrist i gruppen. Datormiljöproblem. Kan vi få tag i vad vi behöver gratis? Mindre områden: kontakta andra som kan. Större saker: omformulera eller begränsa kraven. Undersök på ett tidigt stadium vad gruppen behöver. Håller CITU med någon utrustning? Omforma kraven. L H Samarbetsproblem inom gruppen. Tag genast upp problem. Diskutera, kanske omfördela arbetsuppgifter. L L Sjukdom / semester för gruppmedlem. Alla måste tala om längre planerad frånvaro. Omprioritera / omstrukturera. 11