-
Notifications
You must be signed in to change notification settings - Fork 0
Yleistä
Harjoitustyössä toteutetaan itsenäisesti ohjelmisto omavalinteisesta aiheesta. Esimerkkiaiheita Tavoitteena on soveltaa ja syventää ohjelmistotekniikan menetelmät- (ohjelmistojen mallintaminen), ohjelmoinnin perus- ja jatkokursseilla opittuja taitoja, sekä harjoitella tiedon omatoimista etsimistä. Harjoitustyötä tehdään itsenäisesti ja tarjolla on pajaohjausta.
Harjoitustyön on edettävä viikottaisten virstanpylväiden mukaan. Tehtävät ja palautus Työ on saatava valmiiksi kurssin aikana, muuten kurssi katsotaan keskeytetyksi. Samaa ohjelmaa ei voi jatkaa myöhemmin toisessa yrityksessä, vaan työ on aloitettava uudella aiheella alusta. Kurssin uusimismahdollisuuksia on jouduttu rajoittamaan, joten varaathan riittävästi aikaa kurssin suorittamiseen!
Harjoitustyön ohjelmointikieli on Java. Erikoistapauksista voi yrittää sopia kurssin vastuuhenkilön (Matti Luukkainen) kanssa.
Ohjelmakoodin muuttujat, luokat ja metodit voi kirjoittaa suomeksi tai englanniksi, kunhan kieliä ei sekoita rumasti keskenään. Samoin Javadoc ja muu dokumentaatio kirjoitetaan suomeksi tai englanniksi. Hyväksyttävä tapa on myös kirjoittaa koodi englanniksi, mutta dokumentaatio suomeksi.
Toteutus etenee “iteratiivisesti ja inkrementaalisesti”. Tämä tarkoittaa, että heti alussa toteutetaan pieni osa ohjelman toiminnallisuudesta. Ohjelman ydin pidetään koko ajan toimivana, uutta toiminnallisuutta lisäten, kunnes tavoiteltu ohjelman laajuus on saavutettu. Ohjelman rakenteeseen kannattaa kysyä vinkkejä pajasta, sekä ottaa mallia ohjelmoinnin jatkokurssin harjoitustehtävistä.
Iteratiiviseen tapaan tehdä ohjelma liittyy kiinteästi automatisoitu testaus. Aina uutta toiminnallisuutta lisättäessä ja vanhaa muokatessa täytyy varmistua, että kaikki vanhat ominaisuudet toimivat edelleen. Kaiken testaaminen käsin uudelleen ja uudelleen ei ole ajankäytöllisesti järkevää. Testien automaattinen generointi on ehdottomasti kiellettyä, sillä generointi luo rumia ja usein käyttökelvottomia testejä.
Voit tehdä harjoitustyöhösi aluksi tekstikäyttöliittymän ja vasta saatuasi ohjelman perustoiminnallisuuden toteutettua voit siirtyä graafisen käyttöliittymän toteutukseen. Graafinen käyttöliittymä on mahdollista jättää pois sopimuksen mukaan, mikäli aihevalinta ja toteutus tukevat tätä vaihtoehtoa. Graafiseen käyttöliittymän toteuttamiseen voit halutessasi käyttää NetBeansiin integroitua Swing GUI builderia. Lisätietoa GUI-builderista
Harjoitustyön tavoitteena on tuottaa ohjelma, joka voitaisiin antaa toiselle opiskelijalle ylläpidettäväksi ja täydennettäväksi. Lopullisessa palautuksessa on oltava lähdekoodin lisäksi dokumentaatio sekä automaattiset testit.