Ohjelmiston määrittely
TTY Porin yksikkö
Klk-2009 - TDI



Luennot ja harjoitukset: Lähiopetus n. 48 tuntia. Kurssi edellyttää lähiopetukseen osallistumisen lisäksi itsenäisesti suoritettavaa työskentelyä. Lähiopetus professori Hannu Jaakkola. Sähköposti: etunimi.sukunimi@tut.fi.

Tavoitteet: Opiskelija ymmärtää määrittelyn merkityksen osana ohjelmistokehitystä ja hänellä on perusvalmiudet määrittelymenetelmien soveltamiseen. Opiskelija kykenee osallistumaan ohjelmiston määrittelyprojektiin sekä määrittelyn asiantuntijana että tilaajan edustajana. Kurssilla perustana ovat

Kurssi on suunnattu asiakkaan ja toimittajan väliseen vuorovaikutukseen ohjelmistotuotannossa.
 

Sisältöalue Ydinaines Täydentävä tietämys Erityistietämys
1. Ohjelmiston määrittelyprosessin ymmärtäminen: Esitutkimus, vaatimusten kerääminen ja analysointi, vaatimusten dokumentointi. Vaatimusten validointi ja laadunvarmistus.
Määrittelyn sidos suunnittelutyöhön.
 
2. Vaatimusten kuvaaminen UML:n kuvaustekniikoilla: tiedot ja toiminnot, luokkakaaviot, vuorovaikutuksen kuvaaminen, tilakaaviot, tietovirrat. Formaalit kuvaustekniikat. Kuvaamisen työkalut.  
3. Toiminnalliset ja ei-toiminnalliset vaatimukset, reunaehdot ja rajoitteet. Vaatimusten kuvaamisen käytännöt. Vaatimusten priorisointi ja riskianalyysi.  
4. Vaatimusten keräämisen ja analysoinnin menettelytavat.    
5. Määrittelyprojekti. Ohjelmiston toiminnnallinen määrittely.    

Toteutustapa: Luennot, niihin liittyvät tehtävät sekä omaehtoinen työskentely ja  muut sovittavat suoritteet.

Kurssin laajuus: 5 op.

Kurssin suorittaminen: Kurssi suoritetaan osallistumalla luentoihin, niihin perustuvalla kuulustelulla sekä kurssikokonaisuuden soveltamistaitoja mittaavilla muilla suoritteilla.  Kuulustelusta saatava maksimipistemäärä on 40. Kuulustelusta on saatava hyväksytty suoritus (min. 16 pistettä = 2/5*max) kurssin läpäisemiseksi; osallistumisaktiviteetin ja muiden suoritteiden antamat lisäpisteet siis lasketaan mukaan vasta kun kuulustelu on suoritettu hyväksytysti. Kurssin luennoilla läsnäolosta voi kerätä 10 pistettä (piste per kerta = 4h). Muista suoritteista  on kerättävissä  -7..10 pistettä. Negatiiviset pisteet eivät muuta hyväksytyllä kuulustelulla ansaittua kurssin suoritusta hylätyksi  (vaikuttavat kuienkin arvosanaan - mahdollisesti). Arvosana määräytyy jakamalla yhteenlaskettu pistemäärä luvulla 10 ja pyöristämissääntöjen mukaisesti muuntamalla saatu tulos kokonaisluvuksi. Loppuarvosanan määräytymisessä arvosteluasteikko on 1-5. 


Muut suoriutteet: Sovitaan kurssin alussa. Vaihtoehtoja

Henkilökohtainen / Ryhmätyö. 


Kirjallisuus ja kurssimateriaali:

Luennot on rakennettu seuraavia kirjoja hyödyntäen

Tyyppi Nimi Tekijä ISBN URL Painos,saatavuus... Tentti-
materiaali
Kieli
Kirja  Software Engineering  Sommerville, Ian  0-321-31379-8    Addison-Wesley, 8. painos  Kyllä  Englanti 
Kirja  UML Distilled  Fowler, Martin  0-321-19368-7    Addison-Wesley, 3. painos  Ei ole  Englanti 
Kirja  Mastering the Requirements Process  Robertson Suzanne, Robertson James  0-321-41949-9    Addison-Wesley, 2. painos, 2006  Ei ole  Englanti 
Kirja  Ohjelmistotuotanto  Haikala Ilkka, Märijärvi Jukka      Talentum, 10. painos  Ei ole  Suomi 
Luentokalvot  Ohjelmiston määrittelyn kalvomateriaali  Jaakkola, Hannu      TTY, Porin yksikkö  Kyllä  Suomi 

TTY kirjaston verkkopalvelussa on saatavilla yksi kurssin keskeisistä lähdeteoksista - Robertson & Robertson, Mastering the Requirements Process [E-kirjasto -> Verkkokirjat -> Safari Books Online -> Software Engineering -> Requirements ans Specification; suora linkki http://proquest.safaribooksonline.com/0321419499]. Linkit:
Materiaalin käyttö edellyttää TTYn verkkoavaruudessa olemista (käyttöä TTYn sisäverkosta tai muualta VPN-yhteydellä). VPN-yhteyden asennus on ohjeistettu TTY:n verkkosivuilla (http://www.tut.fi/haavi/ -> ATK-palvelut -> Etäyhteydet -> VPN); sieltä voi ladata asennukseen tarvittavat kilkkeet (exe-muotoinen asennuspaketti). Ohje ja tarvittavat asennusvälineet ovat saatavissa myös kurssin työkalusivustossa http://www.pori.tut.fi/~hj/otuper-verkkokurssi/Tools/ .

Muita aihepiiriä käsitteleviä suositeltavia kirjoja lukemistoksi  asiasta kiinnostuneelle ovat

Luentomateriaalin jakelu:

Sisältö ja aikataulu:


Yleistarkastelu

Määrittely osana ohjelmistotyötä
- vaatimukset määrittelytyölle (2)
- ohjelmistoprojektit (3)
Johdatus ohjelmiston määrittelyyn – kokonaisuus (4)
Vaatimusten hallinta (5)
Kuvaustekniikat osana määrittelytyötä
Johdatus UML-kieleen (6)
Toimintojen ja tietojen kuvaaminen (7)
Luokka- ja oliokaaviot (8)
Tilakaaviot (9)
Vuorovaikutuksen kuvaminen (10)
Tietovirtojen kuvaaminen (11)

Yksityiskohtainen tarkastelu

Projektin käynnistäminen (12)
- sidosryhmäanalyysi
Järjestelmän rajaaminen (13)
Vaatimusten etsinnän menettelytapoja (14)
Vaatimuskuvaus (15)
Funktionaaliset ja ei-funktionaaliset vaatimukset (16)
Vaatimusten arviointi (17)
- vaatimusten hyväksymiskriteerit (testattavuus)
- vaatimusten laadukkuus
Vaatimusten dokumentointi (18)
Vaatimuksista toiminnalliseen määrittelyyn (19)
Case – järjestelmän määrittely (20)

Aika
2009
Aihe (alustava aikatauluarvaus)
Viitteet
4 h
Kurssin aloitus.
Määrittely osana ohjelmistotyötä.
01-.pdf
02-.pdf
4h  Johdatus ohjelmiston määrittelyyn

Asiakasvaatimusten hallinta
03-.pdf
04-.pdf
05-.pdf
4h Johdatus UML-kieleen

Toimintojen ja tietojen kuvaaminen
06-.pdf
koskimies-etal-UML.pdf
07-.pdf
4h Luokkakaaviot 08-.pdf
4h Tilakaaviot 09-.pdf
4h Vuorovaikutuksen kuvaaminen 10-.pdf
4h Tietovirtojen kuvaaminen
Projektin käynnistäminen
11-.pdf
12-.pdf
4h Järjestelmän rajaaminen
13-.pdf
4h Vaatimusten etsinnän menettelytapoja
 
14-.pdf
4h Vaatimuskuvaus
Vaatimusluokat
15-.pdf
16-.pdf
4h Vaatimusten arviointi
Vaatimusten dokumentointi
17-.pdf
18-.pdf
4h Vaatimuksista toiminnalliseen määrittelyyn
Kertaus
19-.pdf




Hyödyllisiä linkkejä:
 

UML-standardi

Linkkejä alan asioihin

TTY Porin ohjelmistoprosessitoiminta

Opetuksen tukimateriaali ja muiden yliopistojen kursseja

Kirjalllisuutta ja apuvälineitä

UML-standardi

Ohjelmistoprosessien ja laadun kehittäminen - organisaatioita

Tietoja

     Tietoviikko - 250 suurinta yritystä: http://www.tietoviikko.fi/
     Sähkö- ja elektroniikkateollisuusliitto: http://www.elektroind.fi/