Projekt Glosa

Ni har en uppgift och ni vet ju i stort hur mycket tid ni har på er. Er första uppgift blir att ni ska jobba fram en projektplan (projektupplägg). När den är klar ska ni redovisa denna.

Grupp 1
Grupp 2
  • Godkänd projektplan som ska innehålla design av databas, Java-appen och REST-API:et.
  • GUI och logik utvecklat i Java. Modell och grafiskt gränssnitt ska separeras enligt MVC.
  • Data sparas i MySQL.
  • REST-API gjort i PHP, REST-API:et har flera olika “endpoints” för att hämta och spara data.
  • Unika användare med inloggning och utloggning (även i “back-end”:et).
  • Kunna skapa nya glosor.
  • Kunna radera glosa.
  • Kunna hämta glosa.
  • Kunna “svara på” en glosa och få veta om det var rätt. Rättning ska ske via end-point.


Några Javatips

För att skicka information till servern med POST använder vi den klass som hittas här (som ni också fått ut i exemplet).
För att tolka datan vi får från servern (Json) använder vi oss av Gson som kan laddas hem här.
För att få iordning klasser för tolkning av Gson kan detta vara till hjälp.

Man kan lägga till massa fler krav tex, kunna hantera flera språk, logik kring hur glosor plockas fram utifrån tidigare svar, göra läxförhör med X antal glosor och massa statistik på detta. Man skulle till och med kunna utmana andra användare i systemet i “gloskampen”.

  • Fler krav…
  • Ännu fler krav…

Första målet (ev enda) ska inte vara en färdig produkt utan en MVP release, så i planen ska ni vara noga med att ringa in vad som är det minsta ni behöver när det gäller funktion för att få till en fungerande produkt enligt uppgiften.

  • Ni behöver en projektplan
  • Gör en förstudie (i detta projekt blir det en “brainstorming”).
  • Ha en Workshop med några av dina klasskamrater.
  • Lista alla use cases, lämpligt kan vara att dela upp på Java-delen och REST-API:et.
  • Gör en design av databas, REST-API:et och Java-appen.
  • Gör en tidsplan utifrån det ni gjort ovan. Kolla om det verkar rimligt, om inte så revidera det ovan.
  • Skriv klart projektplanen och se till att den blir godkänd.
  • Loopa
    • Koda, ni bör koda varje use-case för sig.
    • Testa.
  • Redovisa (Ni kommer att få redovisa inför klassen).

Ex på rubriker ni kan använda i er plan för projektet

Här beskriver du vad projektet handlar om och vad som ska byggas.

Här beskriver du omfattningen av projektet.

Här kommer det nog att bli flera underrubriker. Beskriv projektets upplägg, alltså vad som måste göras.
Tala om vilka verktyg som ska som ska användas.
Skriv ner hur projektet ska kommuniceras med “kunden”.
Kommunikation med handledaren samt kontinuerlig dokumentation av arbetets gång sker genom…

- Lista use cases
- Hur ska GUI se ut? Gör skisser över utseendet.
- Ska någon grafik användas och hur ska den i så fall tas fram?
- Databasdiagram med förklaringar.
- UML Klassdiagram för JAVA-programmet.
- Dataflöde och arkitekturdiagram.
- Dokumentation av REST-API:et.
ex på dokumentation av en endpoint.

  • /get-token
    Skickar login och password för att få en token som kan användas för alla endpoints som kräver detta.
    • skickar:
      • login
      • password
    • svar:
      • status_code
      • auth_token
      • [status_message]

Gör en tidsplan utifrån use cases och annat som måste med i planen.
Tidsplanen skulle kunna göras i ett Gantt-schema eller liknade.


2020-05-29 Redovisning av projekt

  • Vi börjar med att alla kommer in i ljudkanalen #wesweb kl 08.10 för lite info.
  • Ni ska enligt ett givet körschema (se nedan) visa vad ni har gjort via skärmdelning (10 min) till ljudkanalen #wesweb i Discord. Ni har inte så mycket tid att redovisa på så se till att ni har kört igenom er redovisning flera gånger innan ni verkligen redovisar. Viktigt att ni gör det så ni är säkra på att ni hinner visa det ni vill visa på den tid ni har fått.
  • Ni ska lämna in den slutgiltiga projektplanen som PDF (den som matchar det ni har gjort) via mail till Joakim (jf@oedu.se) och via inlämning i vklass till Daniel senast den 31/5.
  • Ni ska lämna in koden till Daniel via inlämning i vklass. Gör en ZIP-fil av de filer som hör till projektet (.java-filer ur src-mappen och om ni använt andra resurser som t.ex. bilder).
  • Ni ska ha “git commit && git push” koden till Gitlab när det gäller Joakim, detta ska ni göra kontinuerligt men senaste kl 15.30 fredagen 29/5.