Differences

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

Link to this comparison view

glosa_projekt [2019-02-27 12:39]
Daniel Viström
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. 
- 
-====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.\\ 
- 
-  * Jobba fram 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 ==== 
-- 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.\\ 
-- 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] 
- 
- 
-- Dataflöde och arkitekturdiagram. 
- 
- 
-==== 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. 
-