TIES5301 Eksakti ohjelmistokehitys (5 op)
Kuvaus
Sisältö
Kurssilla keskitytään eksaktin määrittelyn laatimiseen ja määrittelyn ohjaamaan ohjelmointiin. Toisesta näkökulmasta menettelyä voidaan pitää myös ongelmanratkaisutapana, jolla saadaan eleganteja ratkaisuja vaikeille ongelmille. Kurssi alkaa propositio- ja predikaattilogiikan kertauksella. Tämän jälkeen esittelemme käyttämämme yksinkertaistetun ohjelmointikielen ja heikoimman esiehdon käsitteen. Kurssin loppuosa sisältää menetelmiä ohjelman kehittämiseksi tavoitteen ohjaamana. Kurssin sisällysluettelo:
1. Johdanto
2. Induktio ja invariantti
3. Propositiologiikkaa
4. Predikaattilogiikkaa
5. Eksakteista määrittelyistä
6. Ohjelmointikieli ja heikoimmat esiehdot
7. Ohjelman kehittäminen tavoitteen ohjaamana
8. Invarianttien kehittäminen
9. Ohjelman kehittäminen
Suoritustavat
Luentojen kuuntelu, harjoitustehtävien teko ja loppukuulustelu
Arviointiperusteet
Hyväksytty suoritus edellyttää loppukuulusteluun osallistumista ja hyväksyttyä suoritusta.
Osaamistavoitteet
vaikkei eksakteja matemaattisia määrittelyjä olisikaan mahdollista täydellisessä muodossaan.