Päivitetty: 30.12.2010
 

Suorittaminen

Unix-ohjelmointi-kurssi suoritetaan lukuvuonna syksyllä 2010 harjoitustyöllä, joka koostuu kahdesta osasta:

  • harjoitusten pienten tehtävien palautettavat osuudet
  • harjoitustehtävistä muodostuva isompi kokonaisuus

Ensimmäinen osa on palautettava viimeistään pe 7.1.2011 ja toinen osa ma 31.1.2011.

Toisen harjoitustyöosuuden arvosana on suoraan koko kurssin arvosana. Ensimmäisen osion on oltava kuitenkin hyväksyttävästi suoritettu.

Ensimmäinen osuus

  1. Tee hakemisto EtunimiSukunimi, jossa Etunimi on etunimesi alkaen isolla alkukirjaimella ja Sukunimi sukunimesi alkaen isolla alkukirjaimella.
  2. Kopioi harjoitustehtävien 1.2, 1.4, 2.1, 2.2, 3.3, 4.2, 4.3, 5.4, 6.2, 6.3, 6.4 ja 7.5 ratkaisut tekemääsi hakemistoon. Huomaa, että palautettava osuus tiedostojen nimineen ja sisältöineen on määritelty tarkasti kunkin harjoitustehtävän yhteydessä.
  3. Pakkaa hakemisto sisältöineen gzip-pakatuksi tar-paketiksi EtunimiSukunimi.tar.gz, jossa Etunimi on etunimesi alkaen isolla alkukirjaimella ja Sukunimi sukunimesi alkaen isolla alkukirjaimella. Voit käyttää komentoa:
    tar czf EtunimiSukunimi.tar.gz EtunimiSukunimi
    
  4. Palauta harjoitustyösi käyttäen Prolab Puzzle -järjestelmää viimeistään pe 7.1.2011.

Huomio! Jos haluat palauttaa sekä ensimmäisen että toisen osion yhtä aikaa ensimmäisen määräajan kuluessa, voit tehdä sen pakkaamalla yksinkertaisesti molempien osioiden tehtävät samaan pakettiin. Huomaa, että Puzzle-järjestelmässä voi olla vain yksi palautus per tehtävä, joten uudempi palautus samaan tehtävänantoon korvaa aiemman palautuksen.

Tehtävät saattoi suorittaa myös käymällä harjoituksissa ja esittelemällä ratkaisun siellä assistentille. Mikäli olet tehnyt jonkin tehtävän tällä tavoin, sitä ei tarvitse lisätä palautukseen. Jos olet tehnyt kaikki ensimmäisen osion tehtävät tällä tavoin, sinun ei tarvitse palauttaa ensimmäiseen määräaikaan mennessä mitään.

Toinen osuus

Isomman harjoitustyön aiheena on ohjelmisto, jolla voi jakaa kavereidensa kanssa tavoitettavuustiedon (paikalla/poissa). Se koostuu HTTP:tä käyttävästä palvelimesta, joka tallentaa tilat, ja Qt:lla tehdystä asiakasohjelmasta, jolla voi vaihtaa omaa tilaa ja katsoa muiden tilan. Ohjelmisto muodostuu useamman harjoituskerran aikana vaihe vaiheelta.

Asiakas- ja palvelinohjelmiston väliselle protokollalle ei ole asetettu muita vaatimuksia kuin että se on HTTP:tä. Viestintään voi käyttää GET-metodia esimerkiksi seuraavasti:

  • Kaikkien tilatietojen pyytäminen: GET / (tai GET / HTTP/1.0)
  • Oman tilatiedon päivittäminen: GET /username/password/status (tai GET /username/password/status HTTP/1.0)

Tarkempia vaatimuksia esitetään harjoitustustehtävien yhteydessä. Älykkäitä lisäominaisuuksia saa toteuttaa, ja vaikka ominaisuuksien määrä ei sinänsä ole arvosanaa kohottava tekijä, näkyvä paneutuminen harjoitustyön laadukkaaseen tekemiseen katsotaan positiivisesti arvostelussa.

Lisätty 30.12.2010: Toisin kuin tehtävässä 3.4 alun perin on sanottu, palvelimen saa toteuttaa myös säikeillä (eli ei tarvitse käyttää erillisiä prosesseja rinnakkaistamiseen).

  1. Varmista, että harjoitutehtävissä 8.1 ja 8.2 viimeistelty ohjelmisto (palvelin ja asiakas) on vaatimusten mukainen.
  2. Tee hakemisto EtunimiSukunimi, jossa Etunimi on etunimesi alkaen isolla alkukirjaimella ja Sukunimi sukunimesi alkaen isolla alkukirjaimella.
  3. Kopioi kaikki neljä RPM-pakettia edellisessä kohdassa tehtyyn EtunimiSukunimi-hakemistoon. Tästä hakemistosta löytyy siis sekä suoraan asennettavat toimivat paketit että niiden muodostamiseksi tarvittavat lähdekoodipaketit.
  4. Pakkaa hakemisto sisältöineen gzip-pakatuksi tar-paketiksi EtunimiSukunimi.tar.gz, jossa Etunimi on etunimesi alkaen isolla alkukirjaimella ja Sukunimi sukunimesi alkaen isolla alkukirjaimella. Voit käyttää komentoa:
    tar czf EtunimiSukunimi.tar.gz EtunimiSukunimi
    
  5. Palauta harjoitustyösi käyttäen Prolab Puzzle -järjestelmää aikavälillä ma 10.1.2011 - ma 31.1.2011.

MeeGo/Maemo-lisätehtävä

MeeGo/Maemo-ympäristöön tehty toisen osuuden oikein tehty asiakasohjelma nostaa arvosanaa yhdellä pykälällä (mikäli arvosana olisi jo muutenkin 5, valitettavasti tällä ei ole vaikutusta). Halutessasi palauttaa myös tämän tehtävän, tee toisen osion palautuksen hakemistoon EtunimiSukunimi alihakemisto MeeGo (tai Maemo), jossa on kaikki tehtävään liittyvät lähdekoodit ja LUEMINUT-tiedosto, jossa on selitetty, miten ohjelma ottaa erityisesti huomioon ja toteuttaa MeeGo- tai Maemo-ympäristön vaatimukset.

Arvostelu

Harjoitustyöt arvostellaan asteikolla 1-5, jossa 1 on matalin ja 5 korkein arvosana. Lähtökohtana on arvosana 3, joka edustaa normaalia suoriutumista. Kaikkien kohtien ei tarvitse täyttyä yhtäaikaa arvosanan siirtymiseksi tasolta toiselle (ylös- tai alaspäin). Harjoitustyö voidaan myös hylätä, jolloin korjausaikaa on tarkastuksen jälkeen kolme viikkoa.

5: ammattitaitoinen, erinomainen suoritus. Opiskelijan suoritus ylittää selvästi harjoitustyön vaatimukset ja tavoitteet varsinkin laadullisesti mutta mahdollisesti myös määrällisesti. Näin opiskelija osoittaa syvällisesti ymmärtävänsä kurssilla opetetut Unix-ohjelmoinnin periaatteet sekä pystyy soveltamaan poikkeuksellisen lahjakkaasti oppimaansa. Työn looginen rakenne on johdonmukainen ja vaadittua tasoa selkeämpi valittujen suunnitteluratkaisujen ansiosta. Opiskelija on pystynyt itsenäiseen ammattitaitoa osoittavaan työskentelyyn.

4: odotukset ylittävä, esimerkillinen suoritus. Opiskelijan suoritus täyttää erinomaisesti kaikki harjoitustyön vaatimukset erityisesti laadullisesti. Lisäksi opiskelija osoittaa syvällisesti ymmärtäneensä kurssilla opetetut Unix-ohjelmoinnin periaatteet. Työn looginen rakenne on esimerkillisen selkeä ja johdonmukainen. Ratkaisua voisi käyttää mallina opetuksessa. Opiskelija on pystynyt itsenäiseen työskentelyyn.

3: odotuksia vastaava, hyvä suoritus. Opiskelijan suoritus täyttää kaikki harjoitustyön vaatimukset. Opiskelija ymmärtää kurssilla opetetut Unix-ohjelmoinnin periaatteet. Ratkaisu on laadukas keskeisimmillä osa-alueilla. Työn looginen rakenne on johdonmukainen. Opiskelija pystynyt pääsääntöisesti itsenäiseen työskentelyyn.

2: tyydyttävä suoritus. Opiskelijan suoritus täyttää harjoitustyön perusvaatimukset, mutta joillakin osa-alueilla on pieniä puutteita. Opiskelija ymmärtää periaatteessa kurssilla opetetut Unix-ohjelmoinnin periaatteet, mutta niiden soveltamisessa on vaikeuksia. Työ ei ole rakenteeltaan looginen, minkä vuoksi valittuja ratkaisuja voi olla vaikea ymmärtää. Opiskelija on saattanut tarvita jonkin verran apua työskentelyynsä.

1: kehittymistä edellyttävä suoritus. Opiskelijan suoritus ei täytä kaikkia harjoitustyön vaatimuksia ja työssä on puutteita. Työn tekijällä on suuria vaikeuksia ongelman ja sen ratkaisun hahmottamisessa. Opiskelija on tarvinnut paljon apua työskentelyynsä. Hän on kuitenkin selvästi osoittanut aktiivista otetta työn kohteena olevien asioiden harjoittelussa, ja huomattavaa kehittymistä on jo tapahtunut. Puutteellisen harjoitustyön hyväksyminen edellyttää ohjausta antaneen opettajan (esimerkiksi työpajaohjaajan useamman aktiivisen työpajakerran jälkeen) puoltolausuntoa ja opiskelijan lupausta jatkaa tietojensa ja taitojensa kehittämistä itsenäisesti. Käytännössä saadakseen tämän arvosanan, opiskelijan on tehtävä runsaasti töitä.

Näitä kriteerejä sovelletaan harjoitustyön toiseen osuuteen. Näin saatua arvosanaa laskee yhdellä pykällä mahdollinen lisäajan käyttö. Tämän jälkeen arvosanaa nostaa yhdellä pykälällä, mikäli asiakasohjelmisto on siirretty toimimaan Maemo-ympäristössä.

Kotisivut
Tiedotteet
Aikataulu
Luennot
Harjoitukset
Suorittaminen
Linkkejä
Vastauksia UKK
Yhteystiedot
In English
Tulostettava
versio
 
 
© 2000-2008 Henrik Hedberg