Ylläpitodokumentti. Oppimistavoitteiden hallintajärjestelmä harri

Samankaltaiset tiedostot
Suunnitteludokumentti

Käyttöohje. Oppimistavoitteiden hallintajärjestelmä harri

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Yhteenveto. Oppimistavoitteiden hallintajärjestelmä harri

Vaatimusdokumentti. Oppimistavoitteiden hallintajärjestelmä harri

Asennusohje. Sahara-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Asennusohje. Sahara-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ylläpitodokumentti. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Asennusohje. Sahara-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Lohtu-projekti. Ylläpitäjän dokumentti. Versiohistoria: Ensimmäinen versio Andreas Asuja

Ylläpitodokumentti. Kohahdus. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Insert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot)

Lohdutus - tietokantadokumentti

Ohjelmisto on selainpohjaisen käyttöliittymän tarjoava tietokantajärjestelmä merikotkien seurantaan WWF:n Merikotka-työryhmän tarpeisiin.

Testaussuunnitelma. Oppimistavoitteiden hallintajärjestelmä harri

Lohtu-projekti. Testaussuunnitelma

Subversion-ohje. Linux Traffic Control-käyttöliittymä Ryhmä paketti2

Tietokantasovelluksen määrittelydokumentti

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:

Ylläpitodokumentti Mooan

Käyttöohje. AssariXP. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ylläpitodokumentti. PLAYOFF Jari Anttila Sanna Fröblom Aarno Sandvik Tommi Paavilainen Miikka Kohijoki. Päivi Pääkkö, ohjaaja

HELIA 1 (14) Outi Virkki Tiedonhallinta

Asennusohje. Sahara-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Projektisuunnitelma. Oppimistavoitteiden hallintajärjestelmä harri

LINUX-HARJOITUS, MYSQL

Tehtävä 1. Tietojen lisääminen, poistaminen, päivittäminen ja tulostaminen

3. Taulujen määrittely ja muuttaminen

Yhteenvetodokumentti. Halaan-ryhmä. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Ylläpitodokumentti. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

3. TAULUJEN MÄÄRITTELY JA MUUTTAMINEN

WWW-sivut HTML-kielellä esitettyä hypertekstiaineistoa

ALMU-järjestelmä Suunnitteludokumentti

Ylläpitodokumentti Labra

SQL - STRUCTURED QUERY LANGUAGE

HELIA TIKO-05 1 (22) ICT03D Tieto ja tiedon varastointi E.Räty, O.Virkki

Projektisuunnitelma. Oppimistavoitteiden hallintajärjestelmä harri

Valppaan asennus- ja käyttöohje

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.3.0

Tapahtumakalenteri & Jäsentietojärjestelmä Ylläpito

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö

Ylläpito-ohje. Matematiikan oppifoorumi. Carl Johansson Jukka Kariola Outi Marttila Helena Venäläinen Sampsa Virtanen. Ohjaaja.

Vaatimusdokumentti Labra

Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Kirjasto Relaatiotietokannat Kevät Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina

Tietokantasovellus (4 op) - Web-sovellukset ja niiden toteutus

Uutisjärjestelmä. Vaatimusmäärittely. Web-palvelujen kehittäminen. Versio 1.3

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0

Käyttöohje. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

CMS Made Simple Perusteet

Tietokanta.java Luokka tarjoaa välineet tietokannan lukemiseen. Haetuista tiedoista muodostetaan kurssi- ja opetus-olioita.

Graafinen käyttöliittymä lintujen rengastusjärjestelmään

Ohjelmistotuotantoprojekti

Testausraportti. Orava. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Tietokannat II -kurssin harjoitustyö

Testaussuunnitelma. Ohjelmistotuotantoprojekti Nero. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testaussuunnitelma Labra

Projektisuunnitelma. Oppimistavoitteiden hallintajärjestelmä harri

SELVITYSRAPORTTI LABRA-VERKON MYSQL:n JA PHP:n KÄYTTÖÖNOTOSTA. Jarkko Kähkönen

Käyttöohje. Versiohistoria: versio Mari Kommenttien perusteella korjattu versio

Ohjelmistojen mallintamisen ja tietokantojen perusteiden yhteys

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

Määrittelydokumentti NJC2. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Aditro Tikon ostolaskujen käsittely versio 6.2.0

T Hypermediadokumentin laatiminen. Sisältö. Tavoitteet. Mitä on www-ohjelmointi? Arkkitehtuuri (yleisesti) Interaktiivisuuden keinot

Korkeakoulujen prosessipalvelin: mallintajan palvelinohje Versio 0.2

INTINU13A6 Java sovellukset

Toteutusdokumentti NJC2. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

HSMT Tietokannoista. Ville Leppänen. HSMT, c Ville Leppänen, IT, Turun yliopisto, 2008 p.1/32

Ylläpitodokumentti NJC2. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Tietotekniikan laitos Käki-projekti TIETOKANTASUUNNITELMA. 1. Johdanto

Tiedonhallinnan perusteet. H11 Ovien ja kulun valvontajärjestelmän tietokanta

1 YLEISTÄ (KS) SQL-TRAINER - KUVAUS NYKYISESTÄ JÄRJESTELMÄSTÄ (HL,KS) JATKOKEHITYKSEN VAATIMUKSET (HL,KS)...7

Haaga-Helia/IltaTiko ict2tcd005: Ohjelmiston suunnittelutaito 1/7 Anne Benson. Tällä opintojaksolla käytämme VS:n kolmen kokonaisuuden luomiseen:

Käyttöohje. Boa Open Access. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Tietokantasovellus: drinkkiarkisto

Uutta Remote Support Platform 3.1 -versiossa

Projektinhallintaa paikkatiedon avulla

Automaster tai MBS. 2. ODBC - ajurin asennus (jos ei ole jo asennettu)

Nettiposti. Nettiposti käyttöohje

SQL Buddy JAMK Labranet Wiki

Convergence of messaging

Tällä viikolla. Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia

Käyttöohje. Aija. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Tietokannat. CREATE TABLE table(col1,col2,... ); Luo uuden taulun. CREATE TABLE opiskelijat(opnumero,etunimi,sukunimi);

KIURU Tietotekniikan sovellusprojekti

Opettajana Mika Sorsa, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija

Käyttöohje. Labra. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Simulaattorin asennus- ja käyttöohje

Action Request System

Ensimmäisessä vaiheessa ladataan KGU tietokanta Hallitse tietokantoja toiminnon avulla.

POISSAOLOJEN SEURANTAJÄRJESTELMÄ

Käyttöohje. MAITO metadatan hallintatyökalu. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

CVS. Kätevä väline usein päivitettävien tiedostojen, kuten lähdekoodin, hallitsemiseen

DL SOFTWARE Uumajankatu 2 Umeågatan FIN VAASA/VASA FINLAND +358-(0) Fax +358-(0)

Ylläpito. Ylläpito. Ylläpidon lajeja Ohjelmistotuotanto, syksy 1998 Ylläpito

Ylläpitodokumentti NJC2. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Transkriptio:

Ylläpitodokumentti Oppimistavoitteiden hallintajärjestelmä harri Helsinki 14.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Petri Kinnunen Lasse Leino Anne Pääkkö Minna Ulmala Asiakas Harri Laine Johtoryhmä Kimmo Simola, vastuuhenkilö Aleksi Yrttiaho, ohjaaja Kotisivu http://www.cs.helsinki.fi/group/harri Versiohistoria Versio Päiväys Tehdyt muutokset 1.0 14.12.2007 Dokumentti valmis 0.9 13.12.2007 Asennusohje puuttuu 0.3 12.12.2007 Toteutetut vaatimusdokumentin toiminnot 0.2 10.12.2007 Tietokantakaavio ja SQL-lauseet 0.1 05.12.2007 Ensimmäinen L A TEX-versio

Sisältö i 1 Johdanto 1 2 Sanasto 1 3 Asennusohje 1 3.1 Tietokanta.................................. 1 3.2 harri..................................... 2 3.3 Muuta.................................... 2 4 Toteutuskieli ja -ympäristö 3 5 Tarkennuksia suunnitelmiin 3 5.1 Yleistä.................................... 3 5.2 Käyttöliittymä................................ 3 5.2.1 Huomioita ja mahdollisia ongelmia................ 3 5.3 Tietokanta.................................. 4 5.3.1 SQL-taulut ja sekvenssit...................... 4 5.3.2 Huomioita ja mahdollisia ongelmia................ 6 6 Toteutetut vaatimukset ja suunnitelman osat 7 6.1 Toteutetut vaatimusdokumentin toiminnot................. 7 6.2 Toteuttamatta jääneet suunnitteludokumentin toiminnot.......... 8 7 Hyväksymistestaus 9 7.1 Havaitut puutteet ja väärä toiminta..................... 9 8 Koodin ylläpitoon liittyvät seikat 9 8.1 Virheitä................................... 9 9 Muut ylläpitoon vaikutavat seikat 9

1 Johdanto 1 Tässä dokumentissa kuvataan järjestelmän toteutusta ja ylläpitoa, sekä suunnittelun ja toteutuksen eroja. Ryhmä on toteuttanut vaatimusdokumentin ensimmäisen prioriteettitason toiminnoista 29 ja kolmannen tason toiminnoista yhden. 2 Sanasto OSJ eli Opetuksensuunnittelujärjestelmä OSJ on Helsingin yliopiston Tietojenkäsittelytieteen laitoksen tietojärjestelmä, jossa on laitoksella työskentelevien henkilöiden ja luennoitavien kurssien tiedot. JSP eli Java Server Pages JSP on Java-teknologia, jonka avulla voidaan dynaamisesti luoda HTML, XML tai muun tyyppisiä dokumentteja vastauksena Web-asiakkaan pyyntöön. Teknologia erottaa käyttöliittymän sisällöntuotannosta sallien muutokset käyttöliittymän ulkoasuun ilman että dynaamista sisältöä pitää muuttaa. Java Servlet Java Servletit ovat alustasta riippumattomia palvelimella olevia moduleita, joiden avulla saadaan lisättyä dynaamista sisältöä Web-palvelimelle. Luotu sisältö on yleensä HTML:ää, mutta se voi olla myös XML:ää. Servletit voivat hallita tiloja useiden palvelintransaktioiden läpi käyttäen HTTP-keksejä, istuntomuuttujia tai URL-uudelleenkirjoitusta. 3 Asennusohje Tämä asennus kertoo miten saat Oppimistavoitteiden hallintajärjestelmän, eli harrin, toimimaan Helsingin yliopiston Tietojenkäsittelytieteen laitoksen tietokantapalvelimella. Tietokanta ympäristöksi oletetaan Oracle 10.2.0 ja sovelluspalvelinalustaksi Apache Tomcat 4.1.18. Asennukseen tarvittava materiaali löytyy osoitteesta: http://cs.helsinki.fi/group/harri/final/ Tästä eteenpäin sanalla materiaali viitataan juuri tähän materiaaliin. 3.1 Tietokanta Oracle-ten voit käydä luomassa tämän linkin kautta: https://ilmo.cs.helsinki.fi/ilmotest/servlet/account2

Tarvitset tunnuksen luontiin tunnukset Tietojenkäsittelytieteen laitoksen omaan tietojärjestelmään (cs-). Tunnusten luonnin jälkeen ota ssh-yhteys palvelimeen melkki.cs.helsinki.fi. Kopioi materiaalin hakemistosta testitietokanta löytyvät addall.sql ja rmall.sql tiedostot palvelimelle. Komenna setup oracle ja käynnistä sqlplus komennolla sqlplus /nolog samasta hakemistosta mihin kopioit edellä mainitut tiedostot. Ota yhteys Oracle tietokantaasi komennolla connect oma/salasana@bodbacka/test, jossa oma on oma cs-tunnuksesi ja salasana se salasana, jonka syötit Oracle ten luonnin yhteydessä. Lisää testitietokanta tietokantaasi komentamalla start addall.sql. Vastaavasti voit poistaa kaikki tietokantataulut komentamalla start rmall.sql. Testitietokanta on nyt pystytetty. 2 3.2 harri Ota yhteys Tietojenkäsittelytieteen laitoksen tietokantapalvelimelle db.cs.helsinki.fi ja komenna wanna-tomcat. Kopioi materiaalin juurihakemisto kaikkine tiedostoineen ja alihakemistoineen hakemistoon /tomcat/webapps/. Editoi tiedostoa /tomcat/webapps/harri/konfiguraatio.txt, joka sisältää seuraavat rivit: dblogin = OMATUNNUS dbpassword = SALASANA admin = jbauer Korvaa oma omalla cs-tunnuksellasi ja salasana omalla Oracle-tunnuksen salasanallasi. Muuttuja admin määrittelee järjestelmän järjestelmävastaavan, joka on testitietokannassa käyttäjä tunnuksella jbauer. Oletusarvoa voi muuttaa koska tahansa. Komenna setup-oracle, setup tomcat ja start tomcat. Järjestelmä on nyt toiminta kunnossa ja on käytettävissä osoitteesta: http://db.cs.helsinki.fi/tomcat/oma/harri/, jossa oma on taas oma cs-tunnuksesi. 3.3 Muuta Tietokannan pystytyksessä on mukailtu syksyn 2007 Tietokantasovelluksen ohjeita, jotka löytyivät kirjoitushetkellä osoitteesta: http://www.cs.helsinki.fi/u/laine/tikas/material/tietokannat.html Apache Tomcatin tapauksessa on tehty samoin. Ohje löytyy osoitteesta:

3 http://www.cs.helsinki.fi/u/laine/tikas/material/servlet_ohje.html Ongelmatilanteissa konsultoi näitä ohjeita. 4 Toteutuskieli ja -ympäristö Ohjelmisto on toteutettu suunnitelman mukaisesti Java-ohjelmointikielen versiolla 1.5. Käyttöliittymän toteutuksessa on käytetty JSP (Java Server Pages) -tekniikkaa ja CSS:ia (Cascading Style Sheet). Tietokantaa käsittelevät luokat on toteutettu Servletteinä, joissa ovat SQL-lauseet. Tietokantana käytettiin Oracle:n versiota 10g Enterprise Edition Release 10.2.0.3.0. 5 Tarkennuksia suunnitelmiin 5.1 Yleistä Suunnitteludokumentin toisessa luvussa (s. 2) esiteltyä MVC-arkkitehtuurimallia käytettiin toteutuksen pohjana, mutta järjestelmän Java-luokkia tai niiden metodeja ei toteutettu läheskään kaikilta osin luvussa neljä (s. 14) esitetyssä muodossa. Erot ovat paikoin suuria ja tarkat tiedot toteutetuista luokista ja metodeista tulisi katsoa Javadoc-kuvauksista ja lähdekoodista. 5.2 Käyttöliittymä 5.2.1 Huomioita ja mahdollisia ongelmia Käyttöliittymässä käyttäjä jonka rooli on tarkastaja, julkaisee kurssin vaihtamalla pudotusvalikosta sen tilan julkaistuksi. Tämä tilan muuttaminen eroaa muista tilanmuutoksista, sillä se kopioi useita rivejä tietokantatauluissa ja tuhoaa aiemmin julkaistun kurssin tietoja. Tästä julkaisemisen vakavuudesta ei anneta mitään tietoa, eikä mitään varmistuksia kysytä.

4 5.3 Tietokanta Tietokantaan on tullut joitain muutoksia verrattuna suunnitteludokumentissä esiteltyyn ja tässä luvussa esitellään toteutettu tietokanta. Järjestelmässä suoritettavat SQL-lauseet on tehty käytetyn Oraclen tietokantaversion mukaisesti, eikä niiden yhteensopivuutta tai toimintaa muissa ympäristöissä ole määritelty. Kuva 1: Järjestelmän tietokantakaavio 5.3.1 SQL-taulut ja sekvenssit CREATE TABLE kayttaja ( VARCHAR(20) PRIMARY KEY sukunimi VARCHAR(80), etunimi VARCHAR(15) CREATE TABLE kurssi ( koodi VARCHAR(20) PRIMARY KEY nimi_suomi VARCHAR(80), nimi_englanti VARCHAR(80) CREATE TABLE kurssiversio ( VARCHAR(20),

vastuuhenkilo VARCHAR(20) NOT NULL REFERENCES kayttaja() tila CHAR(1) DEFAULT s, kurssikoodi VARCHAR(20) NOT NULL REFERENCES kurssi(koodi) PRIMARY KEY () CREATE TABLE muokkaaja ( VARCHAR(20) NOT NULL REFERENCES kayttaja() kurssiversio VARCHAR(20) NOT NULL REFERENCES kurssiversio() PRIMARY KEY (, kurssiversio) CREATE TABLE tarkastaja ( VARCHAR(20) NOT NULL REFERENCES kayttaja() kurssiversio VARCHAR(20) NOT NULL REFERENCES kurssiversio() PRIMARY KEY (, kurssiversio) CREATE TABLE lukitus ( lukitsija VARCHAR(20) REFERENCES kayttaja(), kurssiversio VARCHAR(20) NOT NULL REFERENCES kurssiversio() PRIMARY KEY (kurssiversio) CREATE TABLE yhteisavain ( INTEGER PRIMARY KEY CREATE TABLE teema ( INTEGER REFERENCES yhteisavain() kurssiversio VARCHAR(20) NOT NULL REFERENCES kurssiversio() PRIMARY KEY () CREATE TABLE alateema ( alateema INTEGER REFERENCES teema() paateema INTEGER REFERENCES teema(), PRIMARY KEY (alateema) CREATE TABLE oppimistavoite ( INTEGER REFERENCES yhteisavain() teema INTEGER NOT NULL REFERENCES teema() taso INTEGER NOT NULL, syvyys INTEGER NOT NULL, muutettu TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, muuttaja VARCHAR(20) NOT NULL, PRIMARY KEY () 5

CREATE TABLE esitietovaatimus ( INTEGER REFERENCES yhteisavain() kurssiversio VARCHAR(20) NOT NULL REFERENCES kurssiversio() syvyys INTEGER, PRIMARY KEY () CREATE TABLE esitietokurssi ( esitietovaatimus INTEGER REFERENCES esitietovaatimus() kurssiversio VARCHAR(20) REFERENCES kurssiversio() PRIMARY KEY (esitietovaatimus, kurssiversio) CREATE TABLE esitietoteema ( esitietovaatimus INTEGER REFERENCES esitietovaatimus() teema INTEGER REFERENCES teema() PRIMARY KEY (esitietovaatimus, teema) CREATE TABLE selite ( yhteisavain INTEGER NOT NULL REFERENCES yhteisavain() kuvaus VARCHAR(3000) NOT NULL, kieli CHAR(1) NOT NULL, PRIMARY KEY (yhteisavain, kieli) CREATE SEQUENCE yhteisavain_ INCREMENT BY 1 MINVALUE 1 START WITH 1 ; CREATE SEQUENCE kurssiversio_ INCREMENT BY 1 MINVALUE 1 START WITH 1 ; 6 5.3.2 Huomioita ja mahdollisia ongelmia Tietokannan taulut eivät ole Boyce-Codd -normaalimuodossa. Tämä on seurausta ainakin siitä, että OSJ:n sisältämistä tiedoista muodostattavista näkymätauluista oli tarpeellista ottaa kurssin nimi suomeksi ja englanniksi järjestelmän omiin tauluihin. Kyseisten tietojen tallennus toteutettiin kurssi-tauluun nimi_suomi ja nimi_englanti nimisinä sarakkaina. Koska kurssilla ei välttämättä ole nimeä molemmilla kielillä, voi tauluun tulla useita nullarvoja. Kurssiversio-taulussa on viittaus FOREIGN KEY (vastuuhenkilo) REFERENCES kayt-

taja() joka valitettavasti tarkoittaa sitä, että jos käyttäjä poistetaan kayttaja- taulusta, kokonaisen kurssin tiedot tuhoutuvat. Eli vastuuhenkilöä ei voida poistaa käyttäjien joukosta ilman, että esi, julkaistu kurssi häviää. 7 Suunnitteludokumentissa esitellyt SQL-käskyt kurssin lukitsemiseen (kohta 3.2.2, s. 12) toteutettiin lähes kuvatulla tavalla Tilahallinta-luokan metodeissa lukitsekurssi ja vapautakurssi. 6 Toteutetut vaatimukset ja suunnitelman osat 6.1 Toteutetut vaatimusdokumentin toiminnot Toiminnot kaikille T1, Kurssin löytäminen listasta (prioriteetti 1) T2, Haku (3) T3, Esitietovaatimusten valinta (1) Muokkaaja, vastuuhenkilö, tarkastaja ja järjestelmävastaava T4, Kirjautuminen (1) T5, Uloskirjautuminen (1) Muokkaaja, vastuuhenkilö ja järjestelmävastaava T6, Pääteeman lisääminen (1) T7, Pääteeman poistaminen (1) T9, Alateeman lisääminen (1) T10, Alateeman poistaminen (1) T12, Oppimistavoitekstin lisääminen, (1) T13, Oppimistavoitekstin poistaminen (1) T15, Oppimistavoitteen tason valinta (1) T16, Oppimistavoitteen syvyyden valinta (1) T31, Esitietovaatimuksen lisääminen (1) T33, Esitietovaatimuksen poistaminen (1)

8 T35, Esitietovaatimuksen syvyyden valinta (1) T37, Esitietovaatimuksen kytkeminen kurssiin (1) T38, Esitietovaatimuksen kytkeminen teemaan (1) Vastuuhenkilö ja järjestelmävastaava T45, Kurssin tilan muutos muokattavaksi (1) T46, Kurssin tilan muutos suojatuksi (1) T47, Kurssin tilan muutos tarkastettavaksi (1) T48, Muokkaajan nimeäminen (1) T50, Muokkaajan poistaminen (1) Tarkastaja ja järjestelmävastaava T51, Kurssitietojen julkaisu, (1) T52, Kurssin tilan muutos suojatuksi (1) Järjestelmävastaava T53, Kurssin poisto julkisesta tilasta (1) T54, Vastuuhenkilön luominen (1) T55, Vastuuhenkilön poistaminen (1) T56, Tarkastajan luominen (1) T57, Tarkastajan poistaminen (1) 6.2 Toteuttamatta jääneet suunnitteludokumentin toiminnot Oppimistavoitteiden muokkausta ei toteutettu (kohta 3.1.6, s. 6). Esitietovaatimusten muokkausta ei toteutettu (kohta 3.1.8, s. 8).

7 Hyväksymistestaus 9 7.1 Havaitut puutteet ja väärä toiminta Käyttöliittymässä toiminto lisää oppimistavoite lisää sen väärään teemaan. Toiminto lisää esitietovaatimuksen kurssiliitos johti ohjelman kaatumiseen. Kurssin julkaisu ei onnistunut - ohjelma toi näytölle tekstin null. 8 Koodin ylläpitoon liittyvät seikat 8.1 Virheitä JulkaiseKurssit-metodi Tilahallinta-luokassa tuhoaa (mahdollisen) julkaistun kurssin tiedot kuten pitääkin ja tekee kurssiversio-tauluun kopion julkaistavasta kurssista. Se ei kuitenkaan tee kopioita kurssiin kuuluvista teemoista, oppimistavoitteista tai esitietovaatimuksista, vaikka näin tulisi tapahtua. 9 Muut ylläpitoon vaikutavat seikat Ohjelmistoa ei asennettu palvelimelle muuta kuin toteutusta, testausta ja järjestelmän esittelyä varten, eikä sovellusalueen todellista tietosisältöä koskaan käytetty. Täten mitään toiminnassa olevaa ylläpidettävää järjestelmää projektin päättyessä ei ole.