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: 2025-02-10