T-76.611 Ohjelmistojen määrittely- ja suunnittelumenetelmät Software design and specification methods Kurssin henkilökunta ja sponsori Luennoitsija DI Antti Karanta, Napa Oy www.napa.fi Assistentti TkL Timo Asikainen, SoberIT www.soberit.hut.fi Kurssia sponsoroi FCS Partners Oyj antamalla kurssin käyttöön suuren osan sillä käytetyistä luentokalvoista www.fcspartners.fi
Yhteystiedot ja tiedotuskanavat Yhteystiedot Luentoihin liittyvät asiat t76611-teacher@soberit.hut.fi Harjoitustöihin ja järjestelyihin liittyvät asiat t76611@soberit.hut.fi Tiedotus Kurssinwww sivut www.soberit.hut.fi/t-76.611/ Kurssinnews ryhmä opinnot.tik.tik76611 Esitiedot T-106.270 Ohjelmoinnin peruskurssi T3 TAI T-106.233 Ohjelmoinnin peruskurssi 2 Sujuva ymmärrys olio-ohjelmoinnista jollain oliokielellä T-76.601 Ohjelmistotuotannon perusteet Peruskäsitys siitä, mikä on ohjelmistoprosessi ja mitä siihen kuuluu
Käsiteltävät asiat Kantavana teemana olioajattelumalli, olioanalyysi ja -suunnittelu Luokkasuunnittelu Vastuunjako Design patterneja Järjestelmäsuunnittelun ja olioprosessin perusteet UML on vain notaatio, väline Notaatioonkin kyllä perehdytään melko syvälle Perspektiivi käsiteltäviin asioihin Ohjelmistokehittäjän näkökulma UML:a voivat käyttää muutkin Käytännönläheistä asiaa, hyvin vähän teoriaa teorian vuoksi Esim. UML:n metamallia ei käsitellä Käytännönläheistä teoriaa tulee kyllä vastaan Luennot etenevät eri tavalla kuin kirja Luennoilla käsitellään joitain aiheita joita ei ole kirjassa Luennoilla tehdään myös pieniä harjoituksia Yksin ja ryhmissä Kynät ja paperia matkaan!
Perspektiivi käsiteltäviin asioihin Pääasiallisesti pysytään irti koodista Jonkin verran Javaa tullaan silti näkemään esimerkeissä itse ei tarvitse koodata Oliokielillä on hyvin erilaisia piirteitä, jotka vaikuttavat joiltain osin oliosuunnitteluun Näkökulma tällä kurssilla staattinen tyypitys, staattinen ja yksittäinen (single) luokittelu Esimerkiksi Java, C++, C# Suurin osa esitellyistä periaatteista pätee kyllä ilman näitä oletuksiakin Käsiteltäviä asioita Yleiskatsaus oliosuuntautuneisuuteen UML yleiskatsaus Luokkamallinnus Käyttötapausmallinnus Arkkitehtuuritason kaaviot Dynaamiset mallit Oliosuunnitteluperiaatteita Olioprosessi Unified Process Kokonaiskuva UML:n käytöstä UP:ssa Desing Patterns
Käsiteltäviä asioita Jos kiinnostusta löytyy, voidaan pitää esittelyluento myös seuraavista aiheista Aspektiohjelmointi Javalla Puhdas ja dynaaminen olio-ohjelmointi Rubylla Materiaali Larman, Craig: Applying UML and Patterns, 2 nd edition, Prentice Hall 2001 Saatavissa ainakin TKK kirjakauppa, DataClub, www.amazon.co.uk... Prujuja Luentokalvot prujuina (suomeksi, eivät tule webiin) Onko tilaaminen TOPI:n kautta onnistunut? Mahdollisesti jonkin verran muuta täydentävää materiaalia prujuina (englanniksi) Kannattaa vilkaista myös kurssin kotisivulla olevia linkkejä
Kirjasta vaadittavat osiot Ei tarvitse lukea kappaleita 7, 13, 32, 34 35 Seuraavista kappaleista ei tulla kysymään mitään tentissä 20, 33 Silti hyödyllisiä, sisältävät esimerkkejä suunnitteluperiaatteiden soveltamisesta Ylipäätään koko kirja on hyvää asiaa ja suositeltavaa luettavaa Vaatimukset Harjoitustyö Tentti Kurssi vaihtuvasisältöinen, joten tämän kurssin sisällöstä on tentit Keväällä Syksyllä Ensi vuoden alussa (tammikuu) Palaute
Harjoitustyö 2 3 hengen ryhmissä Ryhmän koko ei vaikuta arvosteluun Kaksivaiheinen palautus Ensimmäisessä vaiheessa palautetaan analyysiosuus, toisessa sen pohjalta tehty design Deadlinet??? Arvostelu arvosanoin 1-5 Harjoitustyö Läpäiseminen ei ole ylivoimaista, jos viitsii nähdä vähän vaivaa Harjoitustyön hyväksytty suorittaminen edellyttää molempien palautuksien hyväksymistä Palautuskielet suomi / ruotsi / englanti Julkaistaan myöhemmin
Tentti Kirja vaadituilta osin Prujut Ilman luentokalvoja pärjää, mutta ei välttämättä 4 tai 5 edestä Vaikka luennoilla on jonkin verran Java esimerkkejä, mitään Java tuntemusta ei tentissä edellytetä Tentit toukokuussa, elo- tai syyskuussa ja tammikuussa Arvosana 0.5 * (harjoitustyön arvosana + tentin arvosana) Pyöristys normaalisti (x.5 pyöristyy x + 1:ksi)
Palaute Kurssilta kerätään palautetta webissä Linkki kurssin sivuilla Palautetta kerätään myös tentistä Palaute on anonyymiä (opiskelijanumeroa ei yhdistetä palautteeseen) Palautteen antaminen on pakollista kurssin läpäisemiseksi (osasuoritus) Muuta Tutkintouudistuksen vuoksi kurssi todennäköisesti lakkaa olemasta nykyisessä muodossaan Kannattaa siis suorittaa kurssi nyt alta pois jos suorituksen tarvitsee