Tehtävä 1 - Luokat ja oliot

Huom! Viimeksi päivitetty 25-09-2013 20:49

Tehtävän tarkoituksena on muodostaa UML-kaavio, joka kuvailee puhelinlaskuja hallitsevan järjestelmän rakennetta ja ominaisuuksia (luokkakaavio) sekä laatia kaaviota tukeva teksti, josta ilmenee, että UML:n toimintaperiaatteet on sisäistetty.

Voit suunnitella luokkaakaavion täysin itse. Sinulla voi olla luokka Asiakas, joka säilöö asiakkaaseen liittyviä tietoja sekä puhelinliittymän tiedot. Erikseen voi jälleen määritellä PuhelinLiittyma-luokan, josta voi tehdä puheluja ja viestejä, tallentaa niitä myöhemmin laskutettavaksi jne. Toiminnallisuuksien osalta vain taivas on rajana ja voit ottaa mallia Ohjelmointi 1 -kurssilla tekemistäsi Puhelu- ja Puhelinlasku-luokista. Kuvaile kuitenkin työn mukana palautettavassa tekstissä, kuinka olet ajatellut järjestelmän toimivan, jolloin ilmenee yhteys piirtämääsi UML-kaavioon. Voit myös mainita, mikäli et saanut näkymään jotain UML-kaaviossasi, vaikka olisit halunnut.

Noudata UML-kaaviota laatiessasi annettuja ohjeita. Väärästä muodosta ja palautusformaatista seuraa pisteiden aleneminen.

Sisältö

UML-kaavion oheen kirjoitettava teksti esittelee, mikä UML-kaavio on sekä tarkastelee sen hyötyjä ja heikkouksia. Luokkakaavion ohella esiteltäviä UML:n muita mallinnuskohteita (esim. sekvenssikaavio, use case diagrammi) voi esitellä melko suppeasti, mutta pelkkä maininta ei riitä.

Toimintaperiaatteen ja käyttökohteiden esittelyn lisäksi tekstissä esitellään luokkakaavion eri osien (pakkaus, luokka), näiden ominaisuuksien sekä yhteyksien merkitsemiskäytäntöjä. Eri notaatioiden selittäminen on luultavasti helpompaa luodun kaavion avulla, joten sen tai sen osien liittämistä PDF-dokumentin osaksi tulee harkita.

Laadittavassa UML-kaaviossa tulisi olla ainakin:

Esimerkki UML-kaaviosta
UML-kaavio on laadittu PlantUML-työkalulla ja kaavioon liittyvä lähdetiedosto on .scala-tiedosto.

Aiheeseen liittyvää lukemistoa

Palautus

Tehtävän palautus tehdään aikarajaan lauantaihin 28.9. klo 18.00 mennessä Rubyric-järjestelmään. Myöhästyneestä palautuksesta seuraa 2 pisteen vähennys alkavaa vuorokautta kohden – eli esimerkiksi sunnuntaina klo 18.01 palautetun työn pisteistä vähennetään 4 pistettä.

Palautuksen jälkeen käy vielä vastaamassa palautteeseen osoitteessa: http://www.cs.hut.fi/cgi-bin/teekysely.pl?action=showform&id=studio1-scala1-2013&lang=FIN

Arvostelu

Tehtävä arvostellaan erillisten kriteerien mukaisesti. Tehtävän maksimipistemäärä on 20 pistettä ja hyväksytty suoritus on vähintään 10 pistettä.

Jos tehtäväpalautus on selvästi hyvin keskeneräinen ja se saa alle vaaditun hyväksytyn pistemäärän, se voidaan palauttaa tekijälle korjattavaksi (ns. bumerangi). Tehtävä on hyväksytty vasta, kun se on palautettu riittävän laajuisena ja syvällisenä. Bumerangina palautetusta tehtävästä voidaan antaa korjattunakin enintään minimipistemäärä 10.