Harjoitustyö

Harjoitustyö on pakollinen ja suoritetaan vaiheittain.
Harjoitustyön suunnitelma on palautettava viikolla 7 (voidaan sisällyttää osaksi 1. demoja).

Aihe

Keksitään itse, vaikeustaso: kerhon jäsenrekisteri (kerhon jäsenrekisteri ei kuitenkaan kelpaa aiheeksi, koska se tehdään kurssin malliohjelmana). Vinkkejä (soveltaen) työkirjassa: Harjoitustyöohje.

Harjoitustöiden käyttöliittymä toteutetaan pääsääntöisesti teksti/menupohjaisena. Jos tekijöillä on kiinnostusta/osaamista graafisen käyttöliittymän tekemiseen (esim. kurssi käytynä edellisenä kesänä), aiheesta voidaan neuvotella. Tämä vaatii kuitenkin tavanomaista harjoitustyötä itsenäisempää työskentelyä.

Ryhmän koko:

Mielellään pareittain. 1-3 henkilön ryhmät ovat mahdollisia.

Tiedostot

Harjoitustyö säilytetään WWW:ssä (Ei Optimassa). Harjoitustyön URL-hakemistojuuri merkitään Korppi-järjestelmään. (esim. http://www.cc.jyu.fi/~minurmin/ohj/). Ohjelman dokumentteineen ja lähdekoodeineen tulee olla hakemistossa JAR-pakettina sekä hakemistorakenteena, jossa tiedostoja voidaan tarkastella suoraan. Lisäksi ohjelmasta tulee olla generoituna Javadoc-dokumentaatio. files.txt-tiedostoa ei tarvita. Lisätietoja paketeista ja dokumentaatiosta 4. pääteohjauksessa.

Mahdollinen hakemistorakenne voisi olla esim. seuraavan tyyppinen:

 /
 |
 |-harkka.jar      - kaikki pakattuna
 |-suunnitelma.txt - vaihe 1
 |-crc.html        - vaihe 2
 |
 |--src/
 |   |
 |   |-java-lähdekoodit pakettien mukaisissa alihakemistoissa
 |
 |--classes/      
 |   |
 |   |-ajettavat java-luokat (ei pakollinen)
 |
 |--doc/ 
     |
     |-javadoc-dokumentaatio

Aikataulu

Harjoitustyöstä voi saada hyvityspisteitä (max. 3) tenttiin. Toisaalta myöhästymiset aiheuttavat kokonaisarvosanaan miinuksia (max -6, määritellään myöhästyneiden päivien ja aiheen vaativuuden mukaan)! Huom. Työkirjan jaottelun vaiheet 1 ja 2 on yhdistetty vaiheeksi 1.

Vaiheet

Vaihe:Aihe                                       Valmis viimeistään
-------------------------------------------------------------------
1&2 Suunnitelma                                        la 19.2.2005
-------------------------------------------------------------------
3  "Toimiva" kommentoitu pääohjelma ja menut
   (joista tulee: "ei toimi").                         la 19.3.2005
-------------------------------------------------------------------
4  Tietorakenteet ja luokat
   suunniteltu ja hyväksytty (crc+uml)                  la 2.4.2005
-------------------------------------------------------------------
5  Tietorakenteet koodattu ja testattu.
   Ohjelma ilman muuta oikeaoppisesti
   jaettuna osiin. Mielellään myös 
   kommentoitu ohjelman runko, jossa 
   toimivat tietorakenteet ja toiminnot 
   mukana. toimintojen alakohtien ei 
   vielä tarvitse toimia.                              la 23.4.2005
-------------------------------------------------------------------
6  Ainakin toimiva tiedoston luku
   ja tiedostoon talletus.
   Viimeistään nyt tietorakenteet
   toimivat ohjelman rungon kanssa.                    la 14.5.2005
-------------------------------------------------------------------
7  Toimiva ja dokumentoitu ohjelma.
   Menupohjaisista ohjelmista voi puuttua              la 28.5.2005 
   ohjaajan kanssa sovittuja toimintoja.     (näyttö sähköpostilla)
-------------------------------------------------------------------

Välivaiheiden näyttäminen

Harjoitustyön ohjaukset pääteohjausten jälkeisellä ohjaustunnilla tai tarvittaessa sovitaan erikseen. Kukin vaihe näytetään ohjaajalle henkilökohtaisesti aikataulun mukaan (erikseen sovittaessa myös palautus sähköpostilla on mahdollista).

Harjoitustyön vaihe on hyväksytty, kun vaihe on näytetty henkilökohtaisesti ohjaajalle ja ohjaaja on merkinnyt hyväksynnän Korppiin.

Ongelmista voi kysyä muulloinkin

On aivan ilmeistä, että tämän kurssin harjoitustyössä tulee erinäisiä ongelmia, joita ratkoessaan vain hakkaa päätään seinään ja meinaa vielä viivästyä aikataulusta. Kohtuullisen ongelma ratkaisuyrityksen jälkeen voi ilman muuta kääntyä aina ohjaajan puoleen, on sitä itsekin oltu vaikeuksissa (ja tullaan olemaan).

Aluksi kysyn joka tapauksessa, että onko tilannetta tutkittu debuggerilla, joten tämä kannattaa tehdä jo etukäteen. Samoin ongelma kannattaa yrittää paimentaa hyvin pienelle alalle. Näin voimme vähän nopeuttaa ongelman käsittelyä.

© Miika Nurminen ()
Perustuu osittain Vesa Lappalaisen kurssisivustoon.
Tyylitiedosto © Tommi Lahtonen & Petri Heinonen.
Viimeksi päivitetty: 2005-02-19