TKO-laboratorio TKK

T-106.850 Ohjelmistotekniikan seminaari

in English /

Ohjelmistojen havainnollistaminen (2 ov)

Yleistä tietoa

Sisältö
Viimeisen vuosikymmenen aikana olemme saaneet nähdä kuinka laadukkaat käyttöliittymät ovat löytäneet tiensä lukuisiin ohjemistotuotteisiin, kuten peleihin ja CD-ROM-pohjaisiin tietosanakirjoihin. Yhä edelleen moni ohjelmoija käyttää kuitenkin tekstipohjaisia työkaluja, joissa yhdessä ikkunassa, yhdellä fontilla esitetään lähdekoodi ja jäljitetään virhettä ohjelmasta, joka tulostaa käsinkirjoitettuja print-lauseita.

Ohjelmistojen havainnollistaminen (Software Visualization, SV) tähtää tämän epäkohdan korjaamiseen hyödyntäen grafiikkaa ja animointitekniikoita ohjelmakoodin sekä sen ajonaikaisen tieto- ja kontrollivuon esittämiseen. Tässä seminaarissa tutustutaan alan historiaan, toteutustekniikoihin, olemassa oleviin sovelluskehyksiin, SV:n käyttöön niin opetuksen apuvälineenä, ohjelmien testauksessa kuin virheenjäljityksessäkin sekä viimeaikaisimpiin tutkimustuloksiin visualisoinnin hyödyllisyydestä.

Esitietovaatimukset
Kurssi on tarkoitettu ensisijaisesti opintojensa loppupuolella oleville ohjelmistotekniikan pääaineopiskelijoille sekä jatko-opiskelijoille.
Kokoontumiset

to 12-14 T4 (alustava tieto).

Seminaari ei kokoonnu joka viikko (ks. aikataulu). Ensimmäinen kokoontumiskerta 27.1.2005.

Opettaja
opettava tutkija Ari Korhonen
Ilmoittautuminen
Ilmoittaudu lähettämällä sähköpostia vastaavalle opettajalle. Kerro viestissä opiskelijanumerosi, vuosikurssisi ja pääaineesi.
Kurssin suorittaminen
Seminaari kokoontuu vain aikataulussa mainittuina päivinä. 24.2. aiheena on raportin kirjoittaminen, johon mennessä tulee ensimmäinen versio raportista olla valmis. Tilaisuuteen kannattaa ottaa mukaan myös kaikki siihen mennessä kerääntynyt kirjallisuus. Tilaisuudessa keskustellaan erityisesti raporttiin ja sen kirjoittamiseen liittyvistä asioista, kuten lähteistä ja niiden käytöstä, oman aiheen asemoimisesta laajempaan kokonaisuuteen (jokainen aihe liittyy johonkin kirjan lukuun), aiheiden rajauksista, tavoitteista jne. Raportin voi kirjoittaa joko suomeksi tai englanniksi.
3.3.-7.4. pidetään itse seminaariesitykset siten, että joka tilaisuudessa on kaksi esitelmää. Esitelmän havaintomateriaalin kieli tulee olla sama kuin esityksen kieli (suomen kielisen esityksen kalvot suomeksi). Viimeisellä kerralla on lisäksi seminaarin päätöstilaisuus.
Hyväksyttyyn suoritukseen edellytetään esitelmää, kirjallista esitystä sekä osallistumista ja opponointia. Kaikki opponoivat toisiaan, jolloin toinen versio kirjallisesta esityksestä tulee jakaa kaikilla osallistujille. Lähetä URL PDF:ään (tai itse PDF, jos sinulla ei ole kotisivutilaa) viimeistään viikkoa ennen esitelmääsi kaikille. Arvioitava eli viimeinen versio raportista tulee palauttaa 7.4. mennessä.
  • Esitelmä
    • Kesto 45 minuuttia
    • Esim. itse esitys 30 minuuttia, keskustelu 15 minuuttia
  • Kirjallinen esitys
    • Max. 8 sivuinen artikkeli PDF-muodossa
    • Ensimmäinen versio (vähintään ns. "extended abstract") 24.2. mennessä
    • Toinen (lähes lopullinen) versio esitelmään mennessä
    • Lopullinen arvioita teksti tulee olla valmis 7.4. mennessä

Seminaarin aikataulu

Seminaari kokoontuu vain alla mainittuina päivinä (torstaisin klo 12-14, salissa T4). Alla olevat aiheet ovat työnimiä ja niitä voidaan tarkentaa 24.2. tilaisuudessa.
Päivämäärä Aihe Esittäjä(t)
27.1. Aloitusluento Korhonen
24.2. Raportin kirjoittaminen (kaikki)
3.3. "Ohjelmistojen havainnollistaminen: algoritmianimaatio" ja "Vuorovaikutteisen visualisoinnin toteutustekniikat ja algoritmit" Karavirta ja Lähteenmäki
10.3. "CASE-välineet ja dokumentointi" ja "Olio-ohjelmien visualisointi" Ojala ja Sivonen
17.3. "Ohjelmointiympäristöt ja visuaalinen virheenjäljitys" ja "Logiikkaohjelmien ja tietokantakyselyjen havainnollistaminen" Lönnberg ja Rautio
31.3. "Visualisoinnin opetus- ja luentokäyttö" ja "Ohjelmistojen havainnollistamisvälineet opetuskäytössä ja niiden evaluointi" Seppälä ja Koivu
7.4. Seminaariesitys ja päätöstilaisuus Ylikerälä (+ kaikki)

Kirjallisuus

Yleistä
Eräs osa kirjallisuustutkimusta on lähteiden kriittinen arviointi. Kaikkea löydettyä materiaalia ei kannata liittää mukaan viiteluetteloon ja viitteiden laadulla on merkitystä. Tässä muutama yleisohje: i) pyri selvittämään asioiden ja ilmiöiden taustoja etsimällä julkaisu(t), jossa asiasta on mainittu tai tulos on esitetty ensimmäisen kerran ii) pyri tuomaan esille myös tuorein tieto aiheesta ja iii) viittaa mahdollisimman arvovaltaiseen julkaisuun (lue: vältä viittaamasta WWW-sivuihin). Alla olevat linkit toimivat parhaite hut.fi -domainin alueella. Kirjastolla on yleissopimus monien suurten julkaisijoiden kanssa, joten elektronisen kirjaston kautta monet artikkelit on mahdollista ladata itselleen PDF-muodossa.
Oppikirja
Seminaarissa käytetään peruslähteenä kirjaa

Software Visualization
Edited by John T. Stasko, John B. Domingue, Marc H. Brown and Blaine A. Price

Kirjan aiheita:

  • The early history of SV
  • Software Visualization Techniques
  • Visualization Specification Styles
  • Visualization for Specialized Domains
  • Visualization for Software Engineering
  • Visualization for Education
  • Evaluation

Konferensseja
Seuraavat konferenssit (ja erityisesti suluissa olevien vuosien kokousjulkaisut) liittyvät läheisesti aihepiiriin


Lehtiä ja kokoomateoksia
Seuraavissa lehdissä ja kokoomateoksissa on aihepiiriä käsitteleviä pidempiä julkaisuja.


Ohjelmistoja
Kirjallisuutta (= julkaistu jossakin julkaisussa) voi etsiä myös suoraan ohjelmistojen WWW-sivujen kautta, koska monet tekijät ovat listanneet omat julkaisunsa. Seuraavassa on linkkejä erityisesti kokoaviin sivustoihin, joilla esitellään usampia ohjelmia tai ohjelmistoja eri kategorioissa. Huom! älä jätä kirjallisuustutkimustasi tämän verkosta löytyvän materiaalin varaan. Lisäksi kannattaa huomata, että nämä (ja muut verkosta löytyvät) kokoelmat eivät kata koko aihepiiriä riittävästi. Esimerkiksi alla oleva ensimmäinen linkki kokoaa vain tietotekniikan opetukseen liittyviä sivustoja. Lisäksi kannattaa suhtautua kriittisesti sivustojen täydellisyyteen. Monia (tässä mainitsemattomia) sivustoja ylläpidetään harrastelijavoimin, joten ne eivät tyypillisesti ole kattavia, ne eivät välttämättä ole ajan tasalla (pyri aina päättelemään milloin sivustoa on viimeksi päivitetty) ja lisäksi ne saattavat valita listaansa sivustoja melko kapealla näkemyksellä (ja erityisesti joitain Amerikkalaisia sivustoja on koottu myös melkoisen markkinahakuisesti).

Tämän sivun sisällöstä vastaavat Ari Korhonen, E-mail: Ari.Korhonen@hut.fi.
Sivun sisältöä on viimeksi päivitetty 3.2.2005.
URL: http://www.cs.hut.fi/Opinnot/T-106.850/index.html