Tentamen: INTE 2011-10-26 Det enda godkända hjälpmedlet är ett exemplar av den personliga fusklappen som lämnats in som inlämningsuppgift tre på kursen. På nästa sida finns ett utdrag ur instruktionerna för kursen som beskriver kraven på uppgiften. Betygskriterier De enskilda frågorna betygsätts antingen på en U/G-skala eller en U/G/VG-skala. Dessa vägs sedan samman till ett betyg enlighet med betygskriterierna nedan. Fx Godkänt på två frågor. Studenter som får detta betyg kan om de vill ges en möjlighet att komplettera upp detta betyg till ett E. Det finns inga möjligheter att komplettera upp betyget till ett högre betyg än E. Kompletteringen kommer att ha formen av en muntlig examination där man får ett urval begrepp att förklara. E Godkänt på tre frågor. I praktiken en kontroll av att du har den grundläggande terminologin och kan koppla ihop de olika begreppen. Det enklaste sättet att få detta betyg är utan tvekan att koncentrera sig på de tre första frågorna. D Godkänt på fem frågor, eller godkänd på fyra med minst ett VG. För detta betyg måste du alltså kunna gå lite längre än bara den grundläggande terminologin. C Godkänd på alla sex frågorna, eller godkänd på fem med minst ett VG. I det andra alternativet måste en av de godkända uppgifterna vara den praktiska. B Godkänd på alla sex frågorna med minst ett VG. Om en fråga ligger precis under godkäntgränsen kan ytterligare ett VG kompensera, men det blir en bedömning från fall till fall. Den praktiska frågan måste vara godkänd. A Godkänd på alla sex frågorna med minst två VG. Lycka till!
Utdrag ur instruktionerna för inlämningsuppgift 3 Formatet ska vara stående A6 med en halv cm marginaler. Inlämningar i andra format kommer att skalas om för att passa detta format utan hänsyn till hur det ser ut. Går du utanför marginalerna kan text alltså försvinna. Vi kommer inte att ägna oss åt detektivarbete för att lösa eventuella problem med fonter odyl. Håll det enkelt bara så ska det inte vara något problem. Om studentskrivarna klarar av att skriva ut det ska det inte vara några problem. Dokumentet får bara vara en sida långt. Består det av flera sidor får ni bara den första. I nedre högra hörnet av sidan ska det finnas en två gånger två cm stor ruta med ditt namn och texten: INTE HT2011. Rutan ska i övrigt vara tom. Rutan får gå ut i marginalen. Anledningen till att vi inte tillåter att ni själva skriver ut är för att undvika misstankar om att någon har med sig flera fusklappar. Vi kommer att skriva ut dem på färgat papper och stämpla eller på annat sätt göra en markering i rutan med ditt namn. Såväl färg på pappret som markeringen i rutan kommer att skilja sig mellan de olika tentorna. Missar man den ordinarie tentan måste man därför lämna in på nytt inför omtentan. Deadline för inlämning av denna uppgift är två arbetsdagar innan tenta respektive omtenta. Detta för att vi ska ha tillräckligt med tid för att skriva ut och göra klart fusklapparna. Dessa delas sen ut i samband med tentan. Kommer du försent kommer de att finnas hos tentavakten i den sal du borde vara i. Missar du deadline finns det ingen möjlighet att skicka in i efterhand.
Begreppsfrågor Dessa frågor ber dig förklara eller kontrastera ett eller flera begrepp. Svaren förväntas vara kortfattade, men ändå relativt kompletta. Det räcker alltså inte med ett par lösryckta punkter. Det finns inga speciella mängdkrav, men börjar du komma upp i en sida per fråga har du antagligen överarbetat frågan betydligt. Varje fråga bedöms på en skala med två betyg: Underkänt och Godkänt. Formella metoder Vilka för- respektive nackdelar finns det med formella metoder jämfört med traditionell testning? Statisk och dynamisk testning Kontrastera de bägge begreppen statisk och dynamisk testning mot varandra. TDD Förklara begreppet testdriven utveckling. Lista också minst tre av de fördelar som metodens förespråkare anser att den ger gentemot traditionell utveckling och testning.
Essäfrågor Dessa frågor förväntas du besvara mer utförligt än de första tre. Frågorna är normalt sett öppnare än frågorna i den förra kategorin, och det finns betydligt mer att säga. Som alltid är det vanskligt att säga något om storleken, men två sidor är inte på minsta vis orimligt för svaret på en fråga. Tänk också på den efterfrågade formen. En essä är en kort text, vanligen över ett vetenskapligt område, som har ett personligt eller populärvetenskapligt framställningssätt. Här räcker det alltså inte med att göra en punktlista eller stapla fakta efter varandra, utan du måste också tänka på presentationen. Frågorna betygssätts på en U/G/VG-skala. För godkänt ska du visa en grundläggande förståelse för ämnet som diskuteras. För väl godkänt ska du visa en djupare förståelse och även göra en åtminstone nöjaktig presentation. Verktyg På kursen har det diskuterats en hel del verktyg, bland annat enhetstestramverk, versionshanteringssystem, ärendehanteringssystem, profilers, verktyg för statisk analys, byggsystem, etc. Hur påverkar användandet av olika typer av verktyg testning? Du behöver inte ta upp varje typ av verktyg som har tagits upp på kursen. Det som efterfrågas är snarare en generell diskussion om verktyg i allmänhet och deras påverkan. Användning av mått I ett projekt finns det ofta ett stort antal roller. Några av dessa är testare, testledare, programmerare, projektledare. Diskutera hur personer som innehar dessa roller påverkas av, och/eller kan använda sig av mått (software metrics) i sitt arbete. För säkerhets skull vill vi återigen påpeka vikten av att besvara frågan. Den handlar om att diskutera, inte om att, till exempel, lista lämpliga mått för de olika rollerna. Det får man gärna göra om man vill, men det räcker inte för att besvara frågan.
Praktik Den sista frågan är rent praktisk. Uppgiften går ut på att designa en uppsättning testfall för nedanstående metod med hjälp av ekvivalensklasspartitionering. För ett godkänt betyg räcker det med att du visar att du förstått vad testfall är och hur man tillämpar ekvivalenspartitionering. För ett väl godkänt betyg på frågan måste testfallen vara hyfsat kompletta, och du måste också diskutera och kritisera dem. Några frågor du kan ställa dig är till exempel: Vilka typer av fel hittas inte? Vilka ytterligare testfall genereras om du också använder gränsvärdesanalys? Om du använde felgissning, skulle det påverka? Finns det några beroenden som inte du inte tar hänsyn till? Observera att frågan alltså inte egentligen handlar om att testa metoden, utan om att visa att du förstått ekvivalensklasspartitionering och hur man använder tekniken för att generera testfall. Går det inte att följa hur du har använt ekvivalenspartitionering för att ta fram testfallen kommer du att underkännas på frågan oavsett hur bra dina testfall är. add public void add(int... pages) Klassen Range, från vilken ovanstående metod är hämtad, representerar ett intervall i, till exempel, en bok. Denna metod lägger till sidor till intervallet. Om man till exempel har intervallet [1,3,5-8,10] och lägger till sidorna 2, 3, 9 och 13 så får man intervallet [1-3,5-10,13]. Parameters: pages - noll, en, eller flera sidor som ska läggas till intervallet. För den som är obekant med notationen... så betyder den just noll eller flera. Det som sker i praktiken vid ett anrop är att en array skapas där värdena läggs. pages hade alltså (nästan) lika gärna kunnat vara en int[]. Throws: java.lang.illegalargumentexception - om någon sida i pages är mindre eller lika med noll. java.lang.nullpointerexception - om pages, alltså hela arrayen, är null.