Nada

Fiktiv tentamen i Programutvecklingsteknik, 2D1385

Inga hjälpmedel. Betygsgränser: 25 => trea, 35 => fyra, 45 => femma. Totalt finns femtio tentapoäng och sex bonuspoäng.

1 Klasskamrater (5p)

Du ska utveckla ett program för den som vill ha full koll på sina klasskamrater. För varje klasskamrat har man förstås namn och adress. För kamraterna i överklassen noteras dessutom Rolexmodell och yachtsegelyta; för kamraterna i underklassen noteras om dom knarkar,super eller svär.
      Objektmodellera med namn och typer på metoder och parametrar och med angivande av eventuella static, public, private osv. I modellen ska en underklass heta Överklass.

2 Kamratproblem (8p)

Ditt program är klart men några problem kvarstår.

3 Kamratkön (10p)

qm.gif Nadas pruttlabbar har använt programmet qm som väntelista för hjälp och redovisning. Objektmodellera ett sådant program där man som klient kan välja kurs, köa in sej och se kamratkön växa nedanför. Tänk även på aspekter som inte syns i objektmodellen och kommentera dom särskilt.

4 Kamratsajten (7p)

Ditt klasskamratprogram blev en sådan framgång att du nu tänker sätta upp en webbplats för klasskamrater av alla slag i hela landet. Alla ska kunna lägga in sin egen klass i en stor databas, men för att det ska fungera tänker du bara lägga in XML-filer med av dej specificerade taggar. Föreslå taggar och attribut om man vill ha med uppgifter av följande typ.
      Årskurs F-59 på KTH
Andersson, Eva, f 40-06-23, barn Bo 1965, Åsa 1968, Pia 1976.
Bengtsson, Jan, f 39-11-01, d 99-12-30, barn Jon 1961.
Eriksson, Henrik, f 42-01-19, barn Viggo 1964, Kimmo 1967, Jonna 1972.
- - -
Skriv början på XML-filen så långt som exemplet går.

5 Kamratträdet (8p)

Din kamratwebbsajt blev en sådan dundersuccé att KTH vill ha upp ett kamratträd på på webben, ett JTree där gamlingar ska kunna klicka på KTH-roten och få fram sektionerna, på sin sektion och få fram årskurserna och så vidare. Du måste nu läsa en jättestor XML-fil och bygga upp detta träd från roten. Till din hjälp har du metoder av det slag som finns i xml.SAX eller i HTML.Document, dvs du itererar automatiskt över starttaggarna och kan avläsa värdet på attributen och eventuell text mellan start och sluttagg.

Skriv helst ingen javakod men beskriv i ord hur du skulle göra, till exempel "...och så skapar jag ett nytt barn till noden och lägger in namnet där och så...".

6 Kamratikon (5p)

piano.gif Varje årskurs vill ha sin egen ikon på webben och eftersom alla F-femtiniorna var pianister vill man ha en klaviatur av ungefär det här utseendet. Komponenten JPanel kan användas för att skapa en tom rektangel med lämplig bredd, höjd och bakgrundsfärg, men hur får man ihop hela klaviaturen? Du får inte använda null-layout (med fixerade lägen). Beskriv med ord, bild och så lite kod som möjligt din konstruktion!

7 Kamrattjatt (7p)

Grattis! Din kamratwebbsajt är nu bland dom tio populäraste. Trycket är stort på att den ska byggas ut med en tjattfunktion. Kraven är följande. Beskriv i ord hur detta ska kunna fungera. Du kan anta att alla som vill vara med på egen hand skaffar sej PGP-nyckel.

Tentamensresultatet kommer upp på måndag på Nadas stora anslagstavla


Sidansvarig: <henrik@nada.kth.se>
Senast ändrad 2 maj 2001
Tekniskt stöd: <webmaster@nada.kth.se>