Göm menyn

TDP019 Projekt: Datorspråk

Granskningsmall


Granskningsmall för annan grupps projektarbete

Här är förslag på punkter att ta upp:

Beroende på val av språk och verktyg som implementeras kan frågorna vara mer eller mindre relevanta.

Ni skriver ett dokument med svar på de relevanta granskningsfrågorna.

  • Det skapade datorspråket
    • Verkar språket uppfylla de krav som språket är tänkt att användas till?
    • Egna synpunkter på språket. Dess syntax och semantik.
    • Användarhandledningen. Är det möjligt att förstå hur språket fungerar och kan man enkelt lära sig det genom att läsa manualen? Finns bra exempel?
  • Språkbeskrivningen med grammatik
    • Grammatiken. Verkar den vara korrekt, välskriven och ha korrekta benämningar på de olika språkkonstruktionerna?
    • Överensstämmer beskrivningen av språket med grammatiken?
    • Finns det konstruktioner i språket som grammatiken ej verkar ta upp, eller beskriver grammatiken möjliga konstruktioner, som språket ej verkar kunna hantera.
    • Ger systembeskrivningen en bra bild på hur implementeringen ser ut?
  • Implementering av verktyg eller användning av verktyg för språket
    • Det implementerade systemet (interpretator, kompilator, översättare av notation mm). Verkar det vara en bra modell?
    • Implementering av egna eller användning av existerande verktyg (lexer/parser etc). Verkar verktyget lämpat för uppgiften? Är verktyget använt på ett bra sätt? Finns det begränsningar i verktyget, som gör det svårt att implementera datorspråket?
  • Metoder och algoritmer.
    • Synpunkter på valda metoder och algoritmer, verkar de vara bra val? Kan det bli mycket ineffektivt? Finns det alternativ, som hade blivit bättre?
  • Koden för implementeringen i Ruby.
    • Är koden bra modulariserad? Kan man särskilja de olika delarna som programmet består utav och de olika algoritmerna.
    • Finns det en överensstämmelse mellan hur grammatiken är beskriven och motsvarande strukturer och kod i programmet.
    • Är koden läsbar och förståelig för dig som läsare? Val av namn på olika storheter (identifierare för variabler, klasser, metoder/funktioner/procedurer mm).
    • Ta gärna ut en del som du tycker var bra och motivera varför.
    • Ta gärna ut en del som du tycker var dåligt / som du inte alls enkelt kan förstå och motivera varför.
    • Har Ruby använts på ett bra sätt? Har ni alternativa förslag på hur man kan använda andra Ruby-konstruktioner.
  • Code complete-boken eller andra kodstandarder
    • Verkar programmerarna ha följt en egen kodstandard?
    • Försök att finna någon aspekt i den kod ni granskar för att se hur den uppfyller synpunkterna/kraven som boken eller andra standarder ställer. Ni kan inte vara heltäckande. Ange var ni hittar motsvarande aspekter på kod i boken.
  • Testkörning av språket
    • Var det lätt att komma igång med systemet?
    • Är det lätt att skriva program i språket? Ger användarhandledningen stöd för detta?
    • Visade egna testkörningar på några problem? Felaktigheter uppstår vid felaktig kod i datorspråket.
    • Finns oklarheter i konstruktioner, vad som borde hända?

Sidansvarig: Pontus Haglund
Senast uppdaterad: 2024-01-10