Kmom10: Examination och redovisning

By . Latest revision .

Detta kursmoment avslutar och examinerar kursen.

Alla delar i detta kursmoment skall utföras individuellt och självständigt.

Upplägget är enligt följande:

Totalt omfattar kursmomentet (07/10) i storleksordningen 20–40 studietimmar.

#Bedömning och betygsättning

Tentamen rättas och bedöms när den lämnats in.

När du lämnar in redovisningstexten slutbedöms din insats på kursen och du får ett slutbetyg på kursen.

Inlämning av projektet måste ske samtidigt som du lämnar in redovisningstexten, annars kommer projektet ej att bedömas.

Läs hur betyget sätts i grunder för bedömning och betygsättning (tentamen + projekt).

#Tentamen “programmeringstenta” (obligatorisk)

Du måste nå ett godkänt betyg på tentamen. Om du missar tentamen så kan du göra omtentamen eller resttentamen vid senare tillfälle alternativt omregistrera dig på nästa kurstillfälle.

Du kan få maximalt 30 poäng om du löser alla uppgifter på tentamen. Du behöver minst 60% för att bli godkänd.

Med en godkänd tentamen kan du nå ett slutbetyg om E-C.

#Genomförande

Tentamen sker vid ett bokat tillfälle under en dag. Campusstudenter har en bokad sal på campus 9-14. Distansstudenter har en hemtentamen som skall utföras någon gång med start mellan 9-24.

Tiden för tentamen är begränsad till 5 timmar. Om du har rätt till utökad tid vid tentamen så meddelar du läraren och bifogar underlag.

Lärare är normalt tillgängliga för frågor under 9-17, lärarstöd under 17-24 är inte garanterat.

Du får ha tillgång till internet, ditt kursrepo och all kod du skrivit under kursen. Du gör uppgiften på din egen dator, i ditt kursrepo.

Du jobbar individuellt och självständigt och tar inte hjälp av någon. Generella förtydligande kan du få av lärare i salen eller via chatt/forum.

Verktyget dbwebb exam används tillsammans med kursrepot för att checka ut och lämna in din tentamen. Du kan, och bör, förbereda dig genom att läsa hur du checkar ut och lämnar in din tentamen.

Det är fritt att förbereda sig inför tentamen, efter bästa förmåga.

#Förbered via tidigare tentamen

Du kan träna på tidigare tentamen för att få övning och en känsla av vilken typ av uppgifter och struktur du kan förvänta dig.

Det finns ingen garanti för att nya tentamen kommer att följa exakt samma upplägg som tidigare tentamen. Oavsett det så bedömmer läraren att de tidigare tentamen som finns tillgängliga nedan är relevanta övningsobjekt.

Följande gamla tentor finns tillgängliga, de senaste tentorna är ofta mest relevanta. Observera att poängfördelningen är olika för nedan tentor.

Du kan checka ut ett par av ovan tentamen via dbwebb exam checkout prep, de sparas då i katalogen me/kmom10/prep och du kan använda dbwebb exam som vid en vanlig tentamen. Läsa om hur du checkar ut och lämnar in din tentamen med dbwebb exam.

#Planerade tentamen

Följande tentamen är planerade (se den rekommenderade studieplanen).

  • Tenta (kmom10/try1): Torsdagen den 28:e mars, 2019.
  • Omtenta (kmom10/try2): Fredagen den 31:e maj, 2019.
  • Resttenta (kmom10/try3): Fredagen den 30:e augusti, 2019.

Nästkommande tillfällen sker i samband med kurstillfället som är planerat till läsperiod 3, vårterminen 2020.

Du kan även se planeringen för dessa tentamen via dbwebb exam ls.

#Projekt “eshop3” (optionell)

Projektet är optionellt och kan hjälpa dig att nå ett högre betyg (D-A) på kursen.

Projektet skall lösas individuellt och självständigt, oavsett om du tidigare jobbat i grupp när du löst eshop1 och eshop2.

Varje krav är värt maximalt 10 poäng om kravet är löst till fullo utan brister. Totalt omfattar projektet maximalt 30 poäng.

Spara alla filer i me/kmom10/eshop3.

Du måste lösa krav 1 innan du kan lösa krav2 eller 3.

#Krav 1

Följande krav måste vara uppfylla Ditt eshop3 skall uppfylla de krav som finns för ehop1 och eshop2.

Du har följande filer med relevant innehåll:

  • package.json
  • config/db/eshop.json
  • sql/eshop/{backup,setup,ddl,insert}.sql
  • {index,cli}.js

Webbklienten innehåller en sida eshop/about som visar namnen på de som jobbat på projektet i eshop1 och eshop2 samt vem som utfört uppgiften i eshop3. Terminalklienten har kommandot about som visar samma information.

I webbklienten skall eshop/log visa de 20 senaste händelserna i loggtabellen. Det skall finnas ett formulärelement där användaren kan skriva in en söksträng som filtrerar vilka rader som visas i utskriften.

I terminalklienten skall kommandot logsearch <str> ge samma svar som ovan.

I webbklienten, gör så att man kan klicka på en kategori och sedan visas de produkter som finns i kategorin.

I webbklienten, gör så att man kan koppla en produkt till en eller flera produktkategorier.

Självtest krav 1

Följande är förslag till hur du själv kan testa delar av kravet.

Lägg till och hantera en produkt i webbklienten.

  1. Lägg till, redigera en produkt.
  2. Lägg produkt i flera kategorier.
  3. Se produktöversikten och produkten skall synas med sina kategorier.
  4. Visa kategorier, klicka på en kategori, produkterna skall synas.

I terminalklienten.

  1. Lägg till produkten på ett par hyllor i lagret.
  2. Se att produkten finns i lagret på rätt hyllor med rätt antal.
  3. Plocka bort ett visst antal av produkten från någon av lagerhyllorna.

#Krav 2

I webbklienten kan man hantera sin order och dess orderrader och “beställa” sin order.

Det skall finnas en webbsida som visar en komplett order, inklusive orderstatus, kunddetaljer och orderrader.

I terminalklienten kan man skapa en plocklistan som visar att respektive beställd produkt finns i lagret.

Gör en webbsida som visar plocklistan för ordern. Visa tydligt om det finns tillräckligt med produkter på lagret och vilka hyllor de finns på.

I terminalklienten kan man skicka en order, ange att den är skickad. När ordern skeppas iväg så minskas innehållet i lagret med de produkter som skickas till kund.

Självtest krav 2

Följande är förslag till hur du själv kan testa delar av kravet.

  1. Skapa en order, lägg till orderrader (med din nya produkt, och befintliga produkter).
  2. Visa översyn av order inklusive information om orderstatus, orderrader och kunddetaljer på en webbsida.
  3. Visa/skapa en plocklista i terminalklienten.
  4. Visa samma plocklista i webbklienten och se tydligt om det finns tillräckligt med produkter i lagret, för varje orderrad.
  5. Ändra status på ordern till skickad, via terminalklienten.
  6. Dubbelkolla att lagret har minskat med motsvarande antal produkter.

#Krav 3

När en leverans skickas, så genereras automatiskt en faktura som innehåller pris per orderrad och ett totalpris på ordern.

I webbklienten kan man få se alla detaljer om fakturan, dess fakturarader, priset per fakturarad och det summerade priset samt datum då ordern skickades. Man kan också se status på fakturan, om den är betald eller ej.

I terminalklienten finns ett kommando payed <invoiceid> <date> där man kan ange en faktura som betald.

Självtest krav 3

Följande är förslag till hur du själv kan testa delar av kravet.

  1. Skapa och skeppa en order.
  2. I webbklienten, kontrollera att fakturan innehåller samma saker som ordern inklusive prisdetaljer och fakturastatus.
  3. I terminalklienten, ange fakturan som betald.
  4. I webbklienten, visa att fakturans status är uppdaterad till “betald”.

#Redovisning (obligatorisk)

När du är klar med allt du avser lämna in, skriv då redovisningstexten enligt följande. De delar som berör projektet skriver du endast om du genomfört projektet.

  1. På din redovisningssida, skriv följande:

    1. Skriv ett stycke om hur programmeringstentan gick att genomföra. Var tentan lätt eller svår? Tog det lång tid, stressigt? Vad var svårt och vad gick lätt? Var det en bra och rimlig examination för kursen?

    2. För varje projektkrav du implementerat, dvs 1-3, skriver du ett textstycke om ca 5-10 meningar där du beskriver vad du gjort och hur du tänkt. Poängsättningen tar sin start i din text så se till att skriva väl för att undvika poängavdrag. Missar du att skriva/dokumentera din lösning så blir det 0 poäng. Du kan inte komplettera en inlämning för att få högre betyg.

    3. Du kan välja (optionellt) att spela in en redovisningsvideo som ett komplement till din redovisningstext och därmed underlätta rättningen av ditt projekt. I videon visar du tydligt vilka krav du löst och hur du löst dem.

    4. Skriv ett stycke om hur projektet gick att genomföra. Berätta om problem/lösningar/strul/enkelt/svårt/snabbt/lång tid, etc. Var projektet lätt eller svårt? Tog det lång tid? Vad var svårt och vad gick lätt? Var det ett bra och rimligt projekt som avslutning på kursen?

    5. Avsluta med ett sista stycke med dina tankar om kursen och vad du anser om materialet och handledningen (ca 5-10 meningar). Ge feedback till lärarna och förslå eventuella förbättringsförslag till kommande kurstillfällen. Är du nöjd/missnöjd? Kommer du att rekommendera kursen till dina vänner/kollegor? På en skala 1-10, vilket betyg ger du kursen?

  2. Ta en kopia av texten på din redovisningssida och kopiera in den på läroplattformen Canvas. Glöm inte länka till din me-sida.

  3. Publicera till studentservern och se till att samtliga kursmoment validerar.

# Ställ dig i kursrepot
dbwebb publish me

#Revision history

  • 2019-03-08: (E, mos) Krav till eshop3.
  • 2019-03-06: (C, mos) Ny struktur inför vt19.
  • 2018-05-07: (B, mos) Lade till examination för Webbprogrammering.
  • 2018-02-27: (A, mos) Första utgåvan.

Document source.