Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

2/2001 Tietojärjestelmät ja Systeemisuunnittelu 010557001 Luennoitsija: Tapio Lammi

Samankaltaiset esitykset


Esitys aiheesta: "2/2001 Tietojärjestelmät ja Systeemisuunnittelu 010557001 Luennoitsija: Tapio Lammi"— Esityksen transkriptio:

1 2/2001 Tietojärjestelmät ja Systeemisuunnittelu 010557001 Luennoitsija: Tapio Lammi e-mail: tapi@iki.fi

2 Oliopohjainen Suunnittelu ja UML

3 Analyysistä Suunnitteluun Analyysi: Luokat Attribuutit Operaatiot Riippuvuudet Ominaisuudet Suunnittelu: Oliot Tietorakenteet Algoritmit Viestit Kontrolli

4 Suunnitteluvaiheen tehtävät Kerätään analyysivaiheen kaavioista luokat ja niihin kuuluvat operaatiot Suunnitellaan algoritmit operaatioiden toteutukseen Optimoidaan datan käsittelypolut Suunnitellaan ulkoisten liityntöjen kontrollilogiikat Sovitetaan suunnitelma käytetyille työkaluille Jaetaan suunnitellut toiminnallisuudet moduuleihin

5 Analyysivaiheen työstö Kootaan luokkakaavioiden operaatiot Käydään läpi parametrit ja paluuarvot, sekä muunnetaan ne kuvauskielen tietotyypeiksi Käydään läpi parametreihin liittyvät rajoitukset (esim. merkkijonojen maksimipituudet, sallitut esitysformaatit)

6 Analyysivaiheen työstö Class Tilaus { public void Tallenna( ) throws DBException; public static Tilaus Hae( string tilausKoodi_ ) throws DBException; };

7 Toteutusalgoritmien suunnittelu Käydään suorituskykyvaatimukset ja suunnitellaan algoritmit –Lineaarinen algoritmi –Hajautus prosesseihin –Samanaikaiset prosessit –Liukuhihnatoteutus Käydään algoritmit läpi ja suunnitellaan niihin liittyvät datan lukitukset ym. tekijät Kuvataan algoritmit aktiviteettikaavioilla

8 Toteutusalgoritmin valintaan liittyviä tekijöitä Algoritmin monimutkaisuus - eli kuinka paljon algoritmin kuormitus rasittaa prosessoria. –vrt. Quick Sort vs. Bubble Sort Algoritmin selkeys ja ymmärrettävyys –Keep It Simple Joustavuus ja laajennettavuus –Miten algoritmiin on lisättävissä uusia ominaisuuksia tai miten se on sovitettavissa muuttuvalle datalle Mieti myös onko algoritmille vaihtoehtoja esim. muokkaamalla järjestelmän rakennetta

9 Datan käsittelypolkujen optimointi Käydään läpi käsiteltävät datat ja suunnitellaan teknisellä tasolla taulurakenne hakuavaimineen ja luodaan taulujen luontiskriptit Käydään läpi datan käsittelyoperaatiot, datamäärät ja suorituskykyvaatimukset ja valitaan datan sisäinen esitysmuoto –Taulukko- Puurakenne –Linkitetty Lista- Hajautustaulu

10 Datan käsittelypolkujen optimointi create table DBLasku( primary key Laskukoodi varchar (20), Viitenumero varchar(20), status varchar (8), tilausnumer varchar(16) );

11 Tietokantarakenteen optimointi - pöytätestaus Käydään läpi haut, päivitykset, lisäykset ja poistot. Lähtökohta - rivin kirjoitus/luku tietokantaan kestää 20 ms (cacheista johtuen harvaan tehdyt yksittäiset operaatiot voivat näyttää nopeammilta) –Haku = Haku indeksistä + datahaku –Kirjoitus = Datan kirjoitus + indeksien määrä * indeksin kirjoitus –Päivitys = Datan kirjoitus + päivitettävien indeksien määrä * indeksin kirjoitus –Poisto = Datan poisto + indeksien määrä * indeksin poisto Periaate - suunnittele mahdollisimman pieni määrä hyvin hajauttavia indeksejä

12 Ulkoisten liityntöjen kontrollilogiikoiden suunnittelu Käydään läpi käyttöliittymälogiikat ja rajapintaluokat jotka toimivat liityntöinä ulkoisiin järjestelmiin Suunnitellaan operaatioiden algoritmit ja datamoduuleiden käyttö Jaetaan toiminnallisuudet tarkennettuihin luokkahierarkioihin Sovitetaan malli hyödyntämään käytettyjä luokkakirjastoja

13 Suunnitelman työkaluille sovittaminen Käytetyt työkalukirjastot ja frameworkit tarjoavat yleensä suuren joukon valmiita algoritmeja ja teknisiä toteutusmalleja järjestelmän toteutukselle Valmiiden työkalujen käyttöä kannattaa hyödyntää aina kun mahdollista koska se: –Vähentää ylläpidettävän koodin määrää –Vähentää potentiaalisten virheiden määrää –Pitää ohjelman rakenteen selkeämpänä –Poistaa päällekkäistä työtä

14 Suunnitelman moduuleihin jako Jaetaan järjestelmä loogisiin kokonaisuuksiin –Kirjastoihin –Ajettaviin ohjelmiin –itsenäisiin komponentteihin Suunnitellaan eri moduulien keskinäinen sidonta –Staattinen linkitys –Ajonaikainen lataaminen –Komponentin haku nimipalvelulta

15 Suunnitteluvaiheen työkaluja Oliosuunnitteluohjelmistot –Rational Rose –Select Enterprise –OMTool Tietokannan suunnittelutyökalut –Mahdollistavat taulurakenteen luonnin käsitemallista –Osa oliosuunnittelutyökaluista sisältää myös nämä ominaisuudet Rajapintojen kuvauskielet (IDL - Interface Definition Language)

16 IDL - kielet Esimerkiksi CORBA IDL Kieliriippumaton tapa kuvata rajapinnan toiminta –moduulirakenne- luokkarakenne –parametrit- paluuarvot Käännetään lopulta toteutuskielelle Useat OOD-työkalut tukevat jotain kuvauskieltä ja sisältävät kääntäjät yleisimmille ohjelmointikielille


Lataa ppt "2/2001 Tietojärjestelmät ja Systeemisuunnittelu 010557001 Luennoitsija: Tapio Lammi"

Samankaltaiset esitykset


Iklan oleh Google