From pjkujala@it.jyu.fi Thu Mar 27 14:07:54 2003 Date: Thu, 27 Mar 2003 13:59:40 +0200 (EET) From: Pauli Kujala To: portti@korppi.jyu.fi Subject: Re: Korppi-Portti -palaveri (fwd) Resent-Date: Thu, 27 Mar 2003 13:59:43 +0200 (EET) Resent-From: portti@korppi.jyu.fi On Wed, 26 Mar 2003, Jukka-Pekka Santanen wrote: > Tässä voisi mielellään kuvata vaihtoehtoisia tapoja > tallentaa henkilöstökoulutuksen kursseja Kotkaan. Näistä Jenni kirjoittikin pöytäkirjaan jotain, joten en palaa niihin. > En välttämättä kuvannut Korppi-järjestelmän kurssien > tallentamista riittävän tarkasti. Minulle tuli sama mieleen palaverin aikana... En tiedä olitteko läsnä tietokannan perehdyttämisessä eli tiedättekö mikä ero käytännössä on kurssinimikkeellä ja kurssilla sekä kurssin opetustapahtumilla. > Kullekin kurssinimikkeelle > tulee antaa yksikäsitteinen kurssikoodi Itse asiassa ei tarvitse, koska ko. koodi ei ole avainkenttä kurssi-taulussa. Tämä yksikäsitteisyys on vain yliopiston "oikeita" kursseja varten, ja siksi se tarkistetaan kurssinimikkeitä muokattaessa. Tässä Portti-erikoistapauksessa siis voidaan aivan hyvin käyttää yhtä "kurssikoodia", joka voi olla mielivaltainen. Käytännössähän se ei tule varmaankaan näkymään missään. (Voidaan tietenkin sopia, että sen tulee olla yksikäsitteinen, esim. juokseva numero.) > > Ryhmäläiset keskustelevat tilaajanedustajien kanssa, kuinka nopeasti > > Korpissa tehtyjen muutoksien (luominen, päivittäminen) tulee näkyä > > WWW:ssä. > > > Pitäisikö tässä myös kuvata, mihin tämä toteamus > liittyy? Tämä siis vaikuttaa siihen, miten rajapinta > kannattaa toteuttaa. Mitkä ovat mahdolliset Paulin > esittämät vaihtoehdot? Vaihtoehdot: 1. Korpissa rajapintana HTTP ja JSP-sivu, joka pyydettäessä generoi halutut tiedot esim. XML-muotoon ja palauttaa tiedot suoraan selaimelle (eli käyttö onnistuisi esim. lynxillä ja uudelleenohjaamalla tuloste tiedostoon, josta parsimalla saadaan tiedot tietokantaan; tai parsimalla suoraan syöte ilman tiedostoa). Tarkoittaa käytännössä siis sitä, että Portti-palvelin hoitaa "ajastuksen" eli kyselee Korpilta tiedot tarvittaessa. Ei ole täysin reaaliaikainen Portin kannalta. 2. Korpissa tietoja muutettaessa ne tallennetaan esim. XML-muodossa jonnekin Korpin "Portti-spooliin" eli odottamaan sitä että Portti hakee ja poistaa tiedot Korpista (vaikkapa HTTP:llä). Tämä siis ei ole täysin reaaliaikainen eli tiedot eivät näy Portissa välittömästi. 3. Korpissa tietoja tallennettaessa Korppi lähettää samalla esim. HTTP-pyynnön Portti-palvelimelle, joka jatkaa kohdasta 1. Jos tarvitaan täysin reaaliaikaisuutta, on tämä lähes ainoa realistinen vaihtoehto. 4. Korppi kirjoittaa tallennetut tiedot esim. XML-muodossa jonnekin verkkolevylle, josta Portti voi noutaa ja poistaa ne tarvittaessa. Tämän katsoisin olevan poissuljettu tekniikka. Ei välttämättä täysin reaaliaikainen, riippuen siitä miten Portti huomaa muuttuneet tiedot verkkolevyllä. Muitakin vaihtoehtoja varmasti on, mutta niiden tutkiminen riippuu siitä kuinka reaaliaikaista pitää tietojen synkronointi olla. Itse katsoisin parhaaksi vaihtoehdon 1 (yksinkertaisin, luotettavin ja varmin). > Siis henkilöstökoulutuksen kurssit syötetään Korppiin. > Sieltä tiedot siirretään sovittavalla tavalla Portin > tietokantaan, jonka perusteella muodostetaan > tiedotuksen tapahtumien ja tiedotteiden sivut. > > Keskustelussa mainittiin XML Korpin Portille välittämien tietojen > > muotona ja staattiset sivut Portti-tietokannan päivittämistä varten. > > > Tämän osalta ei tosiaankaan tehty mitään päätöksiä. > Todennäköisesti järkevintä on päivittää tiedot > Korpista Portin tietokantaan (esim. XML-muodossa), > jolloin haku Portti-tietokannasta on mahdollista. > Tällöin siis Portti muotoilisi Zopen oliotietokannan > tietojen pohjalta esitettävät sivut, joista osan > (esimerkiksi yksittäisen kurssin tiedot) se voisi > haluttaessa tallentaa kunkin päivityksen jälkeen > staattisiksi sivuiksi. Jos Zopen tietokannasta > tiedot saadaan muodostettua sutjakkaasti, ei > varmaankaan kannata käyttää staattisia sivuja. Kannatan sitä, että siirretyt tiedot pidetään Portti-tietokannassa eikä staattisina sivuina. Tällöin sivujen ulkoasun vaihtaminen (tietojen järjestys, otsikointi, ym.) on helpompaa, eikä se rajoitu pelkästään CSS-tyylien käyttöön. Portti-sovellus voi siis muotoilla esitettävän tiedon sillä tavalla miten se parhaaksi nähdään (ja vaikka useammalla eri tavalla eri paikoissa). Portti-tietokantaan tallennus mahdollistaa myös ne sisällysluettelon omaiset sivut, joissa näkyy vain pieni osa tapahtumista ja kursseista listamuodossa (tapahtumakalenterin pääsivu ym.). Tietokannan käyttö mahdollistaa myös sen, että arkistoja varten ei tarvita mitään erillistä suunnittelu hakemistorakenteena tjmv. Kaikki tiedot pidetään tietokannassa, joten kurssien päivämäärien ym. perusteella voidaan luoda linkit eri vuosille, eri kuukausille ym. Myös hakuominaisuudet toimivat luultavasti huomattavasti nopeammin tietokannasta kuin tiedostoista levyllä. Tietokannasta tapahtumatietoja voidaan siirtää tarvittaessa hyvin helposti eteenpäin kolmansille osapuolille. Silloin minkäänlaista tietojen parsimista staattisista sivuista ei tarvita, ja kolmas osapuoli voi generoida haluamansanäköiset sivut/tiedot/graafit tietokannan tietojen perusteella. -- % Pauli Kujala work phone: (014) 260 2531 % % pjkujala@it.jyu.fi work room: Agora C434.1 % % http://www.mit.jyu.fi/pjkujala/ %