OLIOPERUSTAINEN OHJELMISTOKEHITYS
Syksy 1999
Huom! Syksyn 2000 kurssin sivut löytyvät täältä.
Pikalinkit muille sivuille:
Tämä sivu kuvaa sekä syventävän kurssin Olioperustainen
ohjelmistokehitys (5 ov) että Sivuaineopiskelijan ohjelmistokurssin
osan Olioperustainen ohjelmistokehitys (2 ov). Kussakin kohdassa on mainittu
eroavaisuudet näiden kurssien välillä.
-
Luennot (Roope
Raisamo):
-
Tiistaisin klo 14-16 ja keskiviikkoisin klo 14-16 Pinni 1100. Alkavat
14.9.
syventävä kurssi (5 ov): 14.9.-17.11.
sivuainekurssi (2 ov): 14.9.-13.10.
-
-
Vierailuluennot:
-
ti 16.11. klo 14-16 Pinni 1100
-
Tarja Systä, TaY/TTKK: "Ohjelmistojen takaisinmallinnus"
-
ti 23.11. klo 14-16 Pinni 1100
-
Markku Hakala, TaY: FRED-projekti
-
ke 24.11. klo 14-16 Pinni 1100
-
Tero Laine, Nokia: "Versioituvan olioperustaisen ohjelmiston käyttöliittymätoteutuksen
suunnittelu OMT++-menetelmällä ja käytännön toteutus
sovelluskehyksiä käyttäen"
-
-
Syventävällä kurssilla on ainakin yhdelle vierailuluennolle
osallistuttava, ellei esitä pakottavaa syytä. Kaikille vierailuluennoille
kannattaa osallistua, koska niillä saa erilaisia käytännön
näkökulmia kurssin asioihin.
Harjoitukset (Erno
Mäkinen):
Ryhmä 1: maanantaisin klo 12-14 Pinni h. 3038 / Erno Mäkinen
Ryhmä 2: perjantaisin klo 12-14 Pinni 2107
Ryhmä 3: perjantaisin klo 14-16 Pinni 2107. Alkavat 20.9.
syventävä kurssi (5 ov): 20.9.-3.12.
sivuainekurssi (2 ov): 20.9.-22.10.
Tentit:
-
Syventävän kurssin tentti: torstaina 16.12.1999 klo 16-20 D10ab
-
Syventävän kurssin uusinta alkuvuodesta 2000 (luultavimmin vuoden ensimmäinen tenttipäivä helmikuussa - ilmoitetaan myöhemmin).
-
Ainoastaan uusintoihin ilmoittaudutaan lomakkeella
- Tenttiin tuleva materiaali on seuraava:
- Koskimies: Pieni oliokirja, osat I-II (sivut 1-153)
- Koskimies: Ohjelmistoarkkitehtuurit-moniste (kirjan uusittu osa III)
- Jaaksi: MVC++-moniste -- mallin rakenne ja käyttökohteet
- Jaaksi: Design Patterns -moniste -- suunnittelumallien käyttötarkoitukset, ei yksityiskohtainen rakenne
- Tarja Systän, Markku Hakalan ja Tero Laineen vierailuluentojen sisältö verkosta löytyvien luentokalvojen laajuudessa.
Muut monistetut paperit ja niput tukevat tenttimateriaalia, mutta niitä ei erikseen vaadita. Myöskään tentissä ei tule olemaan täydellisen ohjelmakoodin kirjoittamista. Tentissä ei saa olla esillä omaa materiaalia, mutta UML-notaation lyhyt syntaksi jaetaan osana tenttiä.
Opetus:
-
syventävä kurssi (5 ov): 40 t luentoja, 22 t harjoituksia + vierailuluennot
sivuainekurssi (2 ov): 20 t luentoja, 10 t harjoituksia
Vaadittavat opintosuoritukset:
-
syventävä kurssi (5 ov): Kirjallinen kuulustelu, suunnitteluprojekti
sekä aktiivinen osallistuminen harjoituksiin.
sivuainekurssi (2 ov): Kirjallinen kuulustelu sekä aktiivinen
osallistuminen harjoituksiin.
Opintojakson sisältö:
-
Olio-ohjelmoinnin perusteet (esimerkit pääosin Java- ja C++-kielillä),
olioperustainen analyysi ja suunnittelu, uudelleenkäytettävät
olio-ohjelmistot, yleiskatsaus oliokieliin (Smalltalk, C++, Java, Oberon-2)
Kurssin materiaali:
Kurssimateriaalina toimii Suomen Atk-kustannus Oy:n julkaisema
Pieni oliokirja (Kai Koskimies, 1997) sekä kurssilla jaettu lisämateriaali.
Kurssin aihealueeseen voit tutustua tutkimalla valittuja
verkko-osoitteita.
Lisäksi suositeltavia kirjoja oheismateriaaliksi ovat:
-
Rumbaugh et al., Object-Oriented Modeling and Design. Prentice-Hall,
1991.
-
Booch, Jacobson, and Rumbaugh, The Unified Modeling Language User Guide.
Addison-Wesley, 1998.
-
Rumbaugh, Booch, and Jacobson, The Unified Modeling Language Reference
Manual. Addison-Wesley, 1998.
-
Jacobson, Booch, and Rumbaugh, The Unified Software Development Process.
Addison-Wesley, 1999.
-
Stroustrup B.: The C++ Programming Language, 3rd Edition. Addison-Wesley,
1997.
-
Ellis and Stroustrup, The Annotated C++ Reference Manual. Addison-Wesley,
1990.
-
Gamma, Helm, Johnson, and Vlissides, Design Patterns - Elements of Reusable
Object-Oriented Software. Addison-Wesley, 1994.
-
Campione and Walrath, The
Java Tutorial; Object-Oriented Programming for the Internet
Viikkoharjoitukset:
-
Viikkoharjoitusten
numerot tulevat esille verkkoon viimeistään viikkoa ennen palautusta.
Muutamaa poikkeusta lukuunottamatta harjoitukset löytyvät Pienestä
oliokirjasta.
-
-
Viikkoharjoitusten seurannassa käytetään seuraavia periaatteita:
-
Tähdellä merkityistä suunnittelu- ja ohjelmointiharjoituksista
saa tietokoneella käytännössä toteutettuna kaksinkertaisen
pistemäärän ainoastaan paperilla suunniteltuihin verrattuna.
-
Tenttioikeus edellyttää 50 % osuutta harjoituspisteistä
ilman konehyvityksiä (eli käytännössä alla mainitut
0 p. rajat). Konepisteet lasketaan tenttioikeuspisteisiin. Siis tekemällä
paljon tehtäviä koneella riittää vähemmänkin
kuin 22 tehtävää.
-
Syventävällä kurssilla (5 ov) tehtävistä saa hyvityspisteitä
tenttiin seuraavasti; pisteet (hyvitys tentissä):
-
54 (6 p.)
-
48 (5 p.)
-
42 (4 p.)
-
36 (3 p.)
-
31 (2 p.)
-
26 (1 p.)
-
22 (0 p.)
-
Sivuainekurssilla (2 ov) tehtävistä saa hyvityspisteitä
tenttiin seuraavasti; pisteet (hyvitys tentissä):
-
25 (3 p.)
-
19 (2 p.)
-
14 (1 p.)
-
10 (0 p.)
Roope Raisamo (rr@cs.uta.fi)
Sivua päivitetty viimeksi 27.10.1999