Søgemaskiner for
Grundlæggende Programmering,
Internetprogrammering og
Introduktion til algoritmik og datastrukturer

MAJ 2000


Velkommen til hjemmesiden for projekter i søgemaskiner.

Hjemmesiden er fælles for studerende med forskellige forudsætninger og projektmål.
Dog gælder det for alle projekterne, at der arbejdes med teknologier, der anvendes i internet-søgemaskiner.


  • Overordnet
  • Fællesdelen
  • Projektformular
  • Datastrukturer
  • Serverteknologi
  • Programeksempler
  • Data
  • Rapport
  • Projekteksamen
  • Projektdage
  • Projektgrupper
  • Lærer
  • Om Algoritmeundervisning på ITU

  • Overordnet

    For alle projektgrupperne gælder det, at der arbejdes med teknologier, der anvendes i internet-søgemaskiner.
    Projektgrupperne har forskellige forudsætninger, men alle grupperne skal løse de opgaver
    der er beskrevet under
    fællesdelen. Dog kan der træffes specielle aftaler
    for hver gruppe med en lærer. Når en gruppe har løst opgaverne under fællesdelen har gruppen
    sin første primitive udgave af en søgemaskine for IT-C.
    Efter at en gruppe har en løsning indholdende besvarelser for opgaverne under
    fællesdelen, kan gruppen vælge at bygge videre på sin løsning: det kan dreje sig om f.eks.
    anvendelse af mere avanceret datastrukturer, anvendelse af
    Serverteknologi eller konstruktion af pænere brugergrænseflade.
    Hvad den enkelte gruppe vælger at arbejde videre med, vil afhænge af interesser og forudsætninger.
    Såfremt gruppen ikke har andre forudsætninger end grundlæggende programmering forventes det ikke
    at gruppe i projektperioden når meget længere end at besvare fællesdelen.
    Hver gruppe skal gøre rede for sine ønsker i en projektformular.

    På denne side finder du endvidere data indsamlet fra IT-C's hjemmesider,
    samt programeksempler på hvorledes disse data kan anvendes.

    Hver gruppe skal beskrive sit projektarbejde i en rapport, og denne rapport skal
    senere forsvares ved en projekteksamen.

    Under projektperioden afholdes der projekdage. På disse dage
    vil der være generel information og individuel vejledning.
    Hvis du eller din gruppe herudover har problemer under projektet, er i velkomne til at henvende jer til en af
    de lærerer, der er tilknyttet projektet.


    Fællesdelen

    Til brug for projektet er der konstrueret to filer indeholdene data,
    fra IT-C's hjemmesider, herefter kaldet URL's. Disse to filer indeholder informationer om hvilke ord
    der er på hvilke URL's. Filerne har forskellig størrelse, alt efter hvor mange hjemmesider de
    indeholder informationer fra. I nedestående beskrives en række opgaver.
    De to første opgaver går ud på at afprøve og lettere modificere
    programeksemplet "RunMe". Programmet "RunMe" gør følgende tre ting : Følgende opgaver skal løses : Ud over ovenstående obligatoriske opgaver kan de enkelte projektgrupper som omtalt udbygge opgaven. F.eks. ved at anvende allerede brugte eller andre datastrukturer til f.eks. at repræsentere data på en mere kompakt måde.

    Projektformular

    Hver gruppe skal udarbejde en projektformular. Denne skal afleveres underskrevet af en lærer senest
    d. 3 maj kl. 12.00 i studieadministrationen. I projektformularen indgår der en projektbeskrivelse.
    Projektbeskrivelsen kan være en reference til denne hjemmeside, med en uddybning af hvad projektgruppen
    vil lave ud over fællesdelen.
    For grupper som ikke har andre forudsætninger end grundlæggende programmering skal det blot skitseres hvad man
    vil arbejde videre med såfremt der er tid til dette efter løsning af opgaverne under
    fællesdelen.
    I projektformularen skal hver gruppemedlem endvidere angive forudsætninger for projekter. Dette indeholder relevante kurser, uddannelser,
    erfaringer m.m. fra IT-C og andre steder.

    Datastrukturer

    Til at løse opgaverne hørende til fællesdelen skal man bruge hægtede lister.
    Hvis man ikke kender til hægtet lister kan man læse om disse i "JAVA : software solutions" af John Lewis og
    William Loftus, anden udgave, kapitel 12.1. Endvidere skal/kan der anvendes datastrukturer som hashing, trier m.m.
    Det nødvendige materiale om disse andre datastruktuktur vil blive udleveret og gennemgået under Projekdagene.

    Serverteknologi

    Denne udvidelse af fællesdelen er primært for de studerende, som har fulgt kurset Internetprogrammering. Ideen er at konstruere en client-server-løsning basert på Java-servlets. Java-servlets er i modsætning til Java-applets kode, som kan eksekveres af serveren. Java-servlets kan opfattes som server-scripts. I kan finde eksempler på brugen af servlets her. En tutorial til Java-servlets.

    Her er et eksempel på en HTML-side, som kalder en servlet. I bør ændre servletten, så den opbygger sin datastruktur i init-metoden.


    Programeksempler

    Hvis man ønsker at køre et java program, f.eks. RunMe, på en af de store data-filer
    skal man skrive følgende : java -mx80M -ms80M RunMe datafil, hvor datafil skal være navnet på den datafil man vil anvende.

    Data

    Datafiler med forskellig størrelse:

    Rapport

    Rapporten skal som minimum indeholde : På grundlæggnede programmering er der udarbejdet en note om hvorledes en projektrapport kan se ud. Denne note anbefales det at man læser før rapportskrivning. I noten skønnes det at en projektrapport ca. fylder 25 side. For dette konkrete projekt skønner vi at en rapport kan fylde meget mindre.

    Projekteksamen

    Hver gruppe skal forsvare sin rapport ved en mundtlig eksamen.
    På basis af rapporten og forsvaret gives der en individuel karakter for hver deltager i gruppen.

    Eksamen bliver afholdt d. 14 juni.


    Projektdage

    Under projektperioden vil der være dage hvor projektgrupperne har mulighed for at
    få hjælp til projektet m.m.

    Projektgrupper

    Gruppe 1 : Ole Grünbaum, Bo Bonnevie og Stig Jensen.
    Gruppe 2 : Salai
    Gruppe 3 :Michael Zakarias, Allan Larsen, Olavur Brimnes og Peter Mose-Christensen.
    Gruppe 4 : Mette og Tiina.
    Gruppe 5 : Elena
    Gruppe 6 : Hans Henrik Andersen
    Gruppe 7 : Kasper, HC og Søren

    Alle lærer og studerende


    Lærer

    Stephen Alstrup
    Jens Chr. Godskesen
    Theis Rauhe