Differences

This shows you the differences between two versions of the page.

Link to this comparison view

glosa_projekt [2020-05-27 15:59]
Joakim Forsgren
glosa_projekt [2022-07-18 13:20]
Line 1: Line 1:
-====== 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== 
-  * "Brainstom" - https://docs.google.com/document/d/15I17VXADNi38pWyFqrmDuwafhACDrVISh6R05Gjb7SY/edit?usp=sharing 
-  * "use cases" - https://docs.google.com/spreadsheets/d/1A5tUkrTWaffRLw9cgidL7aGtkHW3WxTWqDh6R1nanFQ/edit?usp=sharing 
- 
-==Grupp 2== 
-  * "Brainstom" - https://docs.google.com/document/d/1UyPyqLmgSdQ6-v-hKleXiA56PTVinYQbS2D3hQzt_k8/edit?usp=sharing 
-  * "use cases" - https://docs.google.com/spreadsheets/d/1vs3bkP48QKRJQSFKM8gJvlV4ZUG-SdhTbiQlKppM2c4/edit?usp=sharing 
- 
- 
-====Minimikrav för betyget E för projektet (Programmering 2 och Webbserverprogrammering 1) ==== 
-  * 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. 
-  * Kunna skapa nya glosor. 
-  * Kunna radera glosa. 
-  * Kunna hämta glosa. 
-  * Kunna "svara på" en glosa och få veta om det var rätt. 
- 
-\\ 
-=== Några Javatips === 
-För att skicka information till servern med POST använder vi den klass som hittas [[http://www.codejava.net/java-se/networking/an-http-utility-class-to-send-getpost-request|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 [[http://www.java2s.com/Code/Jar/g/Downloadgson224jar.htm|här]]. \\ 
-För att få iordning klasser för tolkning av Gson kan [[http://www.jsonschema2pojo.org|detta]] vara till hjälp. 
-==== Fler krav för högre betyg ==== 
-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... 
- 
-==== Upplägg av Projekt Glosa ==== 
-Första målet (ev enda) ska inte vara en färdig produkt utan en [[https://en.wikipedia.org/wiki/Minimum_viable_product|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 ====== 
-==== Projektnamn ==== 
- 
- 
-==== Bakgrund ==== 
-Här beskriver du vad projektet handlar om och vad som ska byggas. 
- 
-==== Om projektet ==== 
-Här beskriver du omfattningen av projektet. 
- 
-==== Projektupplägg ==== 
-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... 
- 
-==== Teknisk specifikation ==== 
-- 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] 
- 
- 
-==== Plan för genomförande med en tidplan ==== 
-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 fler 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 (den som matchar det ni har gjort) via mail till Joakim, Joakim kommer sen att dela projektplanen till Daniel senast den 31/5. 
-  * Ni ska lämna in koden till Daniel (Daniel bestämmer hur) 
-  * 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. 
-