Göm menyn

TDP005 Projekt: Objektorienterat system

Examination och betygsättning

Kursen examineras genom ett projekt som redovisas genom fem skriftliga rapporter och en demo. Ni skall under hela projektet också skriva en programmeringsdagbok, på samma sätt som i TDP003.

Generella regler

Alla dokument skall vara skrivna och bearbetade av er, ni skall alltså inte använda någon LLM/generativ "AI" för att skapa era dokument. Inlämning av något som en LLM/generativ "AI" har genererat kommer ses som försök till vilseledning.

Plockar ni färdig kod någonstans ifrån skall detta dokumenteras som en kommentar i koden som tydligt markerar vilken kod som ni inte har skrivit själva, och länk till källan skall finnas.

Examinationsmoment

Obs: Deadline-tider för nedanstående moment kan alla hittas under "Schema" till vänster.
  1. Kravspecifikation. Skall beskriva ert projekt.
  2. Statusrapporter. Framför löpande er planering samt hur ni ligger till relativt denna.
  3. Designspecifikation. Beskriver designen av ert projekt, främst genom UML-diagram.
  4. Kodgranskningsprotokoll. En redogörelse per projektgrupp för kodgranskningen i er kodgranskningsgrupp.
  5. Individuell reflektionsrapport. En rapport skriven utifrån programmeringsdagboken som ni ska föra under projektets gång. Detta moment görs individuellt.
  6. Individuellt portfolio-tillägg. En beskrivning av ert spel samt det viktigaste ni har lärt er från kursen, tillagt i er portfolio-mjukvara från er tidigare kurs TDP003. Detta moment görs individuellt.
  7. Programredovisning. Innehåller två delar.
    • Demo. Projektet ska till sist demonstreras på slutseminariet. Demotillfället har obligatorisk närvaro.
    • Projektdokumentation. Kod och kompileringsinstruktioner.

För utförligare instruktioner kring de olika momenten, se länkarna ovan till respektive moment. För en allmän beskrivning av projektets innehåll, se projektbeskrivningssidan.

Tänk på att anpassa rapporternas struktur till innehållet. Använd de rubriker som passar till det ni presenterar. En struktur med metod och resultat är till exempel inte lämpligt för dessa rapporter. Tänk även på att det tydligt ska framgå från rapporterna vem som har skrivit dem, samt vilket projekt det gäller. Alla rapporter ska lämnas in i något enkelt läsbart format, som till exempel pdf. Inga specialprogram ska krävas för att läsa dem.

Alla rapporter ska lämnas in till er handledare via e-post. Kravspecifikationen ska dessutom lämnas till beställargruppen för kommentarer, och kommentarerna ska skickas in tillsammans med dokumentet. All kod skall redovisas via Gitlab, genom att maila er handledare samt kursledarna med URL till koden när den är klar.

Individuellt bidrag

Eftersom grupperna är större blir det viktigt att samtliga gruppmedlemmar visar aktivt deltagande i kursen genom att göra commits via Git. Vi rekommenderar att ni parprogrammerar under projektets gång, men det är viktigt att ni säkerställer att ni roterar vem som pushar ert arbete till Git. Medan ni även kommer att redovisa vem som arbetar på vad genom statusrapporterna är det viktigt att det finns spår av att samtliga gruppmedlemmar bidrar till projektet i commit-historiken.

Betygskriterier

Programredovisningen ger betyg 3, 4 eller 5. Dokumenten betygssätts endast som U eller G.

För totalbetyg på hela kursen gäller följande:

Totalbetyg Programredvisning Övriga moment
3 3 G på samtliga
4 4
5 5

Checklista för examinationen

Checklista för inlämnat material:
  • Är materialet inlämnat i tid?
  • Är alla delar inlämnade?
  • Uppfyller projektet/dokumenten de krav som återfinns på denna sida och i projektbeskrivningen?
  • Följer koden kodstandarden? Avvikelser ger rest.
  • Är koden enhetligt indenterad? Slarvig indentering ger omedelbart rest.
  • Är koden kommenterad enligt kodstandarden?
  • Är alla implementationskrav uppfyllda?
  • Beskriver kravspecifikation och designspecifikation tydligt uppgiften? Går det att använda kravspecifikationen för att diskutera och förstå projektet?
  • Uppfyller programmet kravspecifikationen?
  • Är klassdiagrammet fullständigt och ritat på ett tydligt och korrekt sätt?
  • Stämmer klassdiagrammet och koden överens?
  • Visar projektet på en god förståelse av kursen?

Bedömningskriterier

Kursmål Betyg 3 Betyg 5
Använda ett objektorienterat språk Implementerar systemet med lämpliga språkkonstruktioner. Använder inkapsling och polymorfi.
Använda objektorienterade principer för att kunna samarbeta i konstruktionen av ett mer omfattande program Planerar, implementerar och dokumenterar ett objektorienterat projeket. Projektet fungerar med varierande uppsättningar av objekt som interagerar med varandra. Implementerar systemet med hänsyn till hög kohesion och låg koppling.
Förklara god källkoddesign Reflekterar över källkodsdesign på ett sätt som visar insikt i designprinciper i relation till den egna koden.
Granska programvara genom att hålla och delta i kodgranskningsmöten Framställer kodgranskningsprotokoll.

För betyg 3 krävs uppfyllnad av alla bedömningskriterier för betyg 3.
För betyg 4 krävs uppfyllnad för betyg 3 samt majoriteten av bedömningskriterierna för betyg 5. 
För betyg 5 krävs uppfyllnad för betyg 3 samt alla bedömningskriterier för betyg 5.

Regler för examinering av datorlaborationer vid IDA

Datorlaborationer görs i grupp eller individuellt, enligt de instruktioner som ges för en kurs. Examinationen är dock alltid individuell.

Det är inte tillåtet att lämna in lösningar som har kopierats från andra studenter, eller från annat håll, även om modifieringar har gjorts. Om otillåten kopiering eller annan form av fusk misstänks, är läraren skyldig att göra en anmälan till universitetets disciplinnämnd.

Du ska kunna redogöra för detaljer i koden för ett program. Det kan också tänkas att du får förklara varför du har valt en viss lösning. Detta gäller alla i en grupp.

Om du förutser att du inte hinner redovisa i tid, ska du kontakta din lärare. Då kan du få stöd och hjälp och eventuellt kan tidpunkten för redovisningen senareläggas. Det är alltid bättre att diskutera problem än att, t.ex., fuska.

Om du inte följer universitetets och en kurs' examinationsregler, utan försöker fuska (t.ex. plagiera, använda otillåtna hjälpmedel eller ej godkända AI-baserade assistenter) kan detta resultera i en anmälan till universitetets disciplinnämnd. Konsekvenserna av ett beslut om fusk kan bli varning eller avstängning från studierna.

Policy för redovisning av datorlaborationer vid IDA

För alla IDA-kurser som har datorlaborationer gäller generellt att det finns en bestämd sista tidpunkt, deadline, för inlämning av laborationer. Denna deadline kan vara under kursens gång eller vid dess slut. Om redovisning inte sker i tid måste, den eventuellt nya, laborationsserien göras om nästa gång kursen ges.

Om en kurs avviker från denna policy, ska information om detta ges på kursens webbsidor.


Sidansvarig: Eric Ekström & Dag Jönsson
Senast uppdaterad: 2025-11-10