2/2001 Tietojärjestelmät ja Systeemisuunnittelu Luennoitsija: Tapio Lammi
Tekninen suunnittelu perinteisin menetelmin
Analyysistä Suunnitteluun Tilakaavio DFD-kuvaus ER-tietomalli Käsiteluettelo Datasuunnittelu Arkkitehtuuri Rajapinnat Algoritmit
Prototyypitys apuna suunnittelussa AnalyysidokumentaatioPrototyypitys Suunnitteludokumentaatio
Miksi prototyypitys ? Ongelmakohtien havainnointi nopeutuu Voidaan kokeilla eri toteutusmallien välillä Saadaan toteutus alkamaan mahdollisimman pienellä viiveellä ja edetään pienin askelin
Ohjeita suunnitteluvaiheeseen Vältä tunnelinäköä Suunnitellut toteutusmallit on voitava jäljittää vastaavaan analyysivaiheen malliin Yksinkertaisuus on kaunista Suunnittele saman tyyppisten ongelmien ratkaisu samanlaiseksi eri osissa järjestelmää Suunnittelun tulisi mahdollistaa muutosten teko ja laajennukset Suunnittelu != Toteutus
Vihjeitä suunnitteluvaiheeseen Käy suunnitelma läpi mahdollisimman aikaisessa vaiheessa päällekäisyyksien minimoimiseksi Pyri minimoimaan tietorakenteiden ja yksittäisistä operaatioista saatavien vasteiden määrä Rajoita moduulin funktioiden toiminta siten, että riippuvuudet muihin moduuleihin ovat mahdollisimman vähäisiä Pyri mahdollisimman yksinkertaisiin ja samankaltaisiin moduulin ulkoisiin rajapintoihin
Datasuunnittelu Käsiteluettelo: Ovi: Korkeus Leveys Kätisyys Materiaali Valmistaja Mallinumero Analyysi - datamalli:Suunnittelu: struct ovi {... }; Tietorakenteet Tietokanta
Algoritmisuunnittelu VaatimusmäärittelyDFD-malli Avaa Avaa: Algoritmikuvaus
Algoritmisuunnittelun asteittainen tarkentaminen Avaa Kävele ovelle. Avaa ovi Siirry oven toiselle puolelle Sulje ovi repeat until ovi aukeaa käännä kahvaa; if kahva ei käänny then poista avain lukosta etsi oikea avain aseta se lukkoon endif Työnnä ovi auki; end repeat;
Moduulien suunnittelu Integrointikulut / moduuli Kehityskulut / moduuli
Moduulien suunnittelu - Toiminnallisuuden kuvaaminen Toteutetaan tasolla joka mahdollistaa laatukatselmoinnit Vaihtoehdot: –Graafinen kuvaus (vuokaavio, laatikkodiagrammi…) –Pseudokoodi –Ohjelmointikielellä toteutettu koodi –Päätöstaulu –Läpikäynti pöytätestauksen avulla
Moduulien suunnittelu - pseudokielet Pseudokielet ovat yksinkertaistuksia varsinaisista ohjelmointikielistä Käyttävät perus-ohjelmointirakenteita –Perättäisjärjestys käskyille –Ehtolauseet (IF-THEN-ELSE, SELECT-CASE) –Silmukat (REPEAT-UNTIL, DO-WHILE) Pseudokielen käyttäminen yksinkertaistaa toteutettavan koodin ja tekee siitä luettavampaa
Suunnitteluvaiheen viimeistely Jokaisesta toiminnallisuudesta tehdään: –Toiminnallinen kuvaus –Rajapintakuvaus –Tietorakenteiden suunnittelu ja dokumentointi –Kuvaus olettamuksista ja rajoituksista Näiden jälkeen suunnitteluvaihe voidaan katselmoida