1

Harjoitustyö
Toiminnallinen määrittely
Ohjelmoinnin jatkokurssi
kevät 2002
Jukka Salminen
i79947

Toiminnallinen määrittely

Ohjelmoinnin jatkokurssin harjoitustyö, Jukka Salminen

1. Johdanto

1.1 Tarkoitus

Tämä dokumentti on JSApplet-ohjelman toiminnallinen määrittely.

1.2 Tuote

Sovelluksessa toteutetaan Java-applet (JSApplet), jota voi käyttää taulukkoeditorina osana web-pohjaista dokumentointijärjestelmää.

1.3 Määritelmät, termit ja lyhenteet

2. Yleiskuvaus

JSApplet on web-selaimessa toimiva komponentti, joka hakee palvelimelta XHTML-muodossa olevan taulukon ja näyttää sen JTable-komponetissa. Käyttäjä voi muokata taulukon rakennetta ja sisältöä ja palauttaa taulukon palvelimelle. JSApplet on osa web-pohjaista dokumentointijärjestelmää ja sen avulla on helppo lisätä taulukoita XML-koodattuun tekstiin. Kuvassa 1. on ohjelma liittymäkaavio.

deployment.gif (3020 bytes)

Kuva 1. Liittymäkaavio

2.1 Käyttöperiaate

Ohjelman käyttöperiaate on seurava:

  1. Palvelin lähettää editoitavan dokumentin XML-muodossa, josta selain muodostaa luettavan HTML-sivun käyttäen apunaan selaimen antamaa XSL-tyylitiedostoa. Tätä prosessia ei kuvata tarkemmin tässä dokumentissa.
  2. Jos teksti sisältää taulukoita, liittyy niihin skripti ja yksikäsitteinen tunnuskoodi, joiden avulla kutsutaan palvelimelta editointisivu. Editointisivu sisältää koodia, joka lataa editointiappletin.
  3. Appletille annetaan parametreissä tieto siitä, mistä URL-osoitteesta taulukon voi ladata XHTML-muodossa.
  4. Applet hakee taulukon annetusta URL-osoitteesta ja näyttää sen JTable-komponentissa.
  5. Käyttäjä tekee taulukkoon haluamansa muutokset/lisäykset
  6. Applet palauttaa taulukon XHTML-muodossa takaisin samaan URL-osoitteeseen, josta se haettiinkin.
  7. Lopuksi käyttäjä painaa web-sivulla olevaa linkkiä, joka näyttää alkuperäisen sivun lisättynä muuttuneilla tiedoilla.

2.2 Oletukset ja riippuvuudet

Applet vaatii toimiakseen web-asiakasohjelman ja siihen Sun Java Plugin-komponentin, jonka lataus tapahtuu automaattisesti ellei sitä jo ole asennettuna käyttäjän koneelle. Asiakasohjelman on tuettava vähintään Java 1.4-tason komponenttia.

2

3. Tiedot

Appletin toiminta perustuu siihen, että palvelimelta voidaan lukea XHTML-muodossa oleva taulukko. Taulukon täytyy olla oikeaoppisesti koodattu, eli elemeteillä tulee olla päättävät elementit ja kaikki erikoismerkit on koodattava entiteettien avulla (tämä JSApplet-versio olettaa että koodaus perustuu ISO-8859-1 standardiin). Alla on esimerkki taulukon koodista:

<table>
  <tr>
    <td>Vaihe</td>
    <td>S -FSH</td>
  </tr>
  <tr>
    <td>follikkelivaihe</td>
    <td>2.4 - 9.3 IU/l</td>
  </tr>
  <tr>
    <td>ovulaatiohuippu</td>
    <td>3.9 - 13.3 IU/l</td>
  </tr>
  <tr>
    <td>luteaalivaihe</td>
    <td>0.6 - 8.0 IU/l</td>
  </tr>
  <tr>
    <td>menopaussi</td>
    <td>31.0 - 134.0 IU/l</td>
    </tr>
</table>

4. Toiminnot

applet.gif (6533 bytes)

Kuva 2. Ohjelman käyttöliittymä.

Käyttäjällä on käytettävissään seuraavat toiminnot:

3

5. Ulkoiset liittymät

Applet kommunikoi ainoastaan sen palvelimen kanssa, josta se alunperin ladattiin. Kaikki koodi on yhdessä JAR-tiedostossa, joka ladataan kerran ennen appletin ensimmäistä suoritusta.

6. Käytettävyys, toipuminen, turvallisuus ja suojaukset

Ohjelman varsinainen logiikka on palvelinpuolella, applet editoi ainoastaan pientä osaa dokumenteista. Näin ollen sen suorituskyky riippuu ainoastaan sen kyvystä käsitellä XML-dataa tehokkaasti. Käytettävyyden edellytyksenä on myös nopea käynnistyminen. Jotta päästäisiin riittävään nopeuteen, täytyy appletin koko pitää mahdollisimman pienenä. Tämän vuoksi appletissa käytetään XML-parserina pientä ja nopeaa ohjelmaa (QDParser), joka sisältää ainoastaan välttämättömät ominaisuudet.

Koska tietojen editointi tapahtuu vain pienissä osissa, ei vaara tietojen kadottamisesta ole kovin suuri. Palvelinohjelma huolehtii versiohallinnasta ja varmuuskopioinneista.

Käyttäjät tunnistetaan salasanan avulla ennen järjestelmään pääsyä. Sen jälkeen tunnistus tapahtuu cookie-tekniikalla. Tietoliikennettä palvelimen ja asiakasohjelman välillä ei ole tarvetta salata.

7. Suunnittelurajoitteet

7.1 Standardit

XHTML 1.0

XSLT 1.0 (W3C Recommendation 16 November 1999).

7.2 Laitteisto ja ohjelmistorajoitteet

Ohjelma toimii kaikissa koneissa, joissa on web-asiakasohjelma. Asiakasohjelman on kyettävä käyttämään Java Plugin-tekniikkaa, versio 1.4 tai uudempi.