Tehtävä 1 - Luokat ja oliot
Huom! Viimeksi päivitetty 25-09-2013 20:49
- Tarkennettu Sisältö-kohdasta ensimmäisen kappaleen sisältöä.
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:
- kolme pakettimäärittelyä
- luokkamäärittelyjä, jotka pakettien sisällä
- luokilla attribuutteja ja metodeja
- luokkien attribuuteilla ja metodeilla näkyvyysmääreet ja mahdollisuuksien/tarpeellisuuden mukaan myös muita määreitä
- luokkien välillä suhteita (3 erilaista) ja osa suhteista nimetty
- kaavion otsikko ja ainakin yksi kommentti

Aiheeseen liittyvää lukemistoa
- Object Management Group - UML
- http://www.uml.org/
- Introduction to UML - SmartDraw Tutorials
- http://www.smartdraw.com/resources/tutorials/uml-diagrams/
- Object-oriented analysis and design
- http://en.wikipedia.org/wiki/Object-oriented_analysis_and_design
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.
- Laajuus - 6 pistettä
- Kohdan arvostelussa otetaan huomioon kuinka kattavasti annettua aihealuetta on käsitelty. Esittelytekstiin valitun sisällön on oltava relevanttia ja asianmukaisesti käsiteltyä. Laajuus ei ole itsetarkoitus.
- Tarkkuus - 6 pistettä
- Kohdan arvostelussa huomioidaan kuinka yksityiskohtaisesti sisältö on esitelty. Myöskään tarkkuus ei ole itsetarkoitus, vaan esittelytekstiin on osattava valita asian kannalta oleelliset seikat.
- Muoto - 5 pistettä
- UML-kaavion on noudatettava oikeaa muotoa ja kuvattava yllä mainitut elementit sopivalla tavalla.
- Yleisvaikutelma - 3 pistettä
- Edellisten kohtien lisäksi työstä voi saada korkeintaan kolme lisäpistettä. Täydet kolme pistettä saa moitteettomasta tai lähes moitteettomasta suorituksesta, kaksi pistettä saa mikäli työssä on joitakin puutteita ("ihan ok"), yhden pisteen saaminen tarkoittaa jo merkittäviä erehdyksiä ja nolla pistettä tarkoittaa jo hyvin suuria puutteita työn sisällössä tai muodossa.