OHJEITA C-OHJELMOINNIN HARJOITUSTYÖTÄ VARTEN (Syksy 2010)

YLEISTÄ

C-ohjelmointikurssin suoritus edellyttää harjoitustyön tekemistä. Vain harjoitustyön palauttanut saa osallistua erilliskuulusteluun. Syksyn 2010 kurssikokeeseen voi osallistua vaikka ei olisi vielä palauttanut harjoitustyötä. Kurssista ei kuitenkaan voi saada suoritusta, jos ei tee harjoitustyötä. Harjoitustyö suositellaan palautettavaksi ma 1.11.2010 mennessä ja se on palautettava viimeistään ma 8.11.2010.

RYHMÄ- TAI YKSILÖTYÖ

Harjoitustyö suositellaan tehtäväksi 2-3 henkilön ryhmässä. Ryhmätöissä on oltava lisäksi tietorakennemoduulille testausmoduuli. Ryhmätöissä tulee huolehtia, että kaikki tekevät suunnilleen yhtä paljon työtä työn eteen. Ryhmätöissä kunkin funktion kohdalla tulee ilmetä kuka sen on tehnyt.

TYÖN ALOITUS JA TYÖN OHJAUS

Valitse yksi tehtävälistan ohjelmointitehtävä ja toteuta se ANSI-C -kielellä tai C-kielellä käyttä c99 standardia.
Ilmoitakaa moodlessa kurssin alueella ryhmänne harjoitustyöaihe 5.10 mennessä. Riittää, että yksi ryhmän jäsenistä ilmoittaa työn nimen ja ryhmän jäsenten nimet. Ryhmässä voi olla 2-3 opiskelijaa. Kirjautuessasi ensimmäistä kertaa kurssin moodle-alueelle tarvitset sanaa htyo.

Harjoitustyön ohjausta on saatavilla harjoitusten aikana.

Vastuu sopivasta aikataulusta on sinulla itselläsi.

VAATIMUKSIA

Käytettävät piirteet (nämä täytyy löytyä ohjelmakoodista): Muita ominaisuuksia voi sitten käyttää tarpeen mukaan. Voit tehdä työsi millä tahansa koneella, mutta tuloksen on kuitenkin ehdottomasti toimittava myös laitoksen Linux-ympäristössä (muista siis siirrettävyys). Ohjelman pitää kääntyä gcc:n parameteilla -ansi -pedantic -Wall ja Wextra ilman varoituksia. Vaihtoehtoisesti voit käyttää c99 standardia. Käännösyksikköjä on oltava vähintään kaksi. Lisäksi tehdään makefile, jonka avulla tehdään suorituskelpoinen ohjelma.

HYVIN SUUNNITELTU PUOLIKSI TEHTY

Hahmottele ongelmakenttää ja lyö lukkoon toiminnallinen määrittely, käytettävät tietorakenteet sekä ratkaisujen päälinjat. Esittele valintojasi ja ratkaisujasi työohjaustilaisuudessa. Voit säästää koodinkirjoitusvaivojasi jo hyvillä tietorakenteilla.

POIS TURHA HIENOSTELU: Eli tee se ja vain se mitä pyydetään ja tee lisävirittelysi vain omaan versioosi!

Sopiva ohjelman pituus on 200-500 riviä koodia (plus kommentit). Pituutta tärkeämpää on kuitenkin, että ohjelma tekee mitä pyydetään.

Älä aliarvioi suunnittelun merkitystä toimintapainotteisessakaan lähestymistavassa.

HYVÄT OHJELMAT EIVÄT KASVA ITSESTÄÄN - NE TEHDÄÄN

Arvioi tehdyn suunnitelman toteuttamiskelpoisuutta: Sijoita funktioiden esittelyt, tietorakenteiden tyyppimäärittelyt ym. yhteiset esittelyt .h -loppuisiin määrittelytiedostoihin. Varsinainen suoritettava koodi ja muuttujamäärittelyt tulevat .c -loppuisiin lähdekooditiedostoihin.

Laadi aina erillinen pääohjelma ja sijoita yhteenkuuluvat, jonkin selkeän osatehtävän suorittavat funktiot omiin lähdekooditiedostoihinsa

Tee työsi hyvällä maulla (AINA):

Testausta kannattaa tehdä järjestelmällisesti heti alusta alkaen. Voit etsiä yksinkertaisia virheitä ja 'epäilyttäviä' kohtia gcc-kääntäjän optioilla -ansi -pedantic -Wall

DOKUMENTOINTI: TARPEELLINEN OSA

Tiedostoon ohje kirjattu 2-4 sivuinen lyhyt rakennedokumentti ja ohjelman käyttöohje sekä huolellisesti tehty kommentointi ja lyhyt selitys testauksesta riittää tällä kertaa.

Ohjelman kommentoinnissa pätevät seuraavat yksinkertaiset säännöt:

HARJOITUSTYÖN PALAUTUS

Työ on jätettävä tarkastettavaksi viimeistään ma 8.11. Työt jätetään tarkastettavaksi kurssin moodle alueella.

Tarkastettavaksi jätetään yksi tar-tiedosto, johon on koottu kaikki työhön liittyvä materiaali:

Halutessaan tar-tiedoston voi myös palauttaa pakattuna tgz-tai gz-tiedostona. (Ohjeita tar-tiedoston tekemiseen ja pakkaamiseen)

HARJOITUSTYÖN ARVOSTELUSTA

Työn arvostelussa otetaan huomioon seuraavat asiat:

Pistemäärät ovat ohjeellisia. Erityyppisissä töissä voidaan niistä hieman poiketa.

Ohjelma palautetaan korjattavaksi, jos

  1. ohjelma ei käänny
  2. ohjelma toiminta katkeaa vakavaan suoritusaikaiseen virheeseen
  3. ohjelma ei lainkaan suorita sitä, mitä sen pitäisi tehdä
  4. dokumentointi puuttuu kokonaan
  5. ohjelman testikuvaus puuttuu kokonaan
  6. ohjelmassa ei ole lainkaan funktioita
  7. ohjelman arvostelussa sen yhteispistemäärä on pienempi kuin 3. (Harjoitustyöstä vaaditaan 3 pistettä kurssin läpipääsyyn.)
  8. Ohjelmasta puuttuu jokin vaadittu piirre: linkitetty tietorakenne, tiedostoston käsittely tai komentoriviparametrin käyttö.
  9. Ohjelmaa ei ole jaettu käännösyksiköihin
  10. Makefile puuttuu
Palaute harjoitustyöstä

Palaute harjoitustyöstä annetaan moodlen kautta. Tarvittaessa voidaan myös käyttää tapaamista ja suullista palautetta, etenkin, jos lisäohjaus on tarpeen.
Tarkastukseen jätetty C-harjoitustyö annetaan korjattavaksi korkeintaan yhden kerran. Korjausaikaa on 1-2 viikkoa. Korjauksen jälkeen työ joko hyväksytään tai lopullisesti hylätään. Jos työ joudutaan hylkäämään, niin myös kokeessa saadut pisteet mitätöityvät.

Onnea työlle!