Coma - Sovellusprojekti
Tietotekniikan Sovellusprojekti
Projektiraportti 1.0
28.5.2004
JYVÄSKYLÄN YLIOPISTO
TIETOTEKNIIKAN LAITOS
Tekijät: Hanna Alm, Kari Arkko, Pentti Nakari, Lassi Paavolainen
Työn nimi: Projektiraportti
Työ: Coma-Sovellusprojekti
Sivumäärä: 18
Tilaaja: Jyväskylän yliopisto, tietotekniikan laitos
Tiivistelmä: Tämä
dokumentti on Coma-projektin Projektiraportti, jossa kuvataan ja analysoidaan
projektin suoritusta sekä sen onnistumista.
Avainsanat: ECCOMAS2004, projektissa oppiminen
Versiohistoria
Versio |
Pvm |
Kuvaus |
Tekijä |
0.1 |
03.05.2004 |
Rakenteen
hahmottaminen |
KA |
0.2 |
06.05.2004 |
Sisältöä |
KA, HA |
0.3 |
12.05.2004 |
v0.2 kokouksessa esille tulleet lisäykset |
HA, KA, LP, PN |
0.4 |
19.05.2004 |
v0.3 kokouksessa esille tulleet korjaukset |
HA |
0.5 |
27.05.2004 |
v0.4 viimeistely |
HA |
1.0 |
28.05.2004 |
hyväksytty versio |
HA |
Tekijät
HA – Hanna Alm
KA – Kari Arkko
PN – Pentti Nakari
LP – Lassi Paavolainen
Coma-projekti
Projektiryhmä: Hanna Alm
Kari
Arkko
Pentti
Nakari
Lassi
Paavolainen
Tilaaja: Jyväskylän
yliopisto, Tietotekniikan laitos
Kirsi
Majava
Pekka
Neittaanmäki
Tuomo
Rossi
Vastaava ohjaaja: Markus
Inkeroinen
Tekninen ohjaaja: Tero
Toivonen
Visuaalinen konsultti: Jaana
Rannanpää
Kotisivu: http://sovellusprojektit.it.jyu.fi/coma/
Laitteet: Neljä PC-konetta, joissa kahdessa oli käyttöjärjestelmänä Windows XP professional, ja kahdessa Linux.
Tiivistelmä: Coma-projekti oli Jyväskylän yliopiston tietotekniikan laitoksella kevään 2004 aikana toteutettu Sovellusprojekti. Coma-projekti suunnitteli ja toteutti yleiskäyttöisen sovelluksen konferenssi-proceedingsien tekemiseen.
Sisällys
3.2. Nykyisin
käytössä olevat sovellukset
4. Projektin
resurssit ja työkalut
5. Projektin
tavoitteet ja niiden toteutuminen
5.1. Sovelluksille
asetetut tavoitteet ja niiden toteutuminen
6. Projektiryhmän
tavoitteet ja niiden toteutuminen
6.1. Yleiset
oppimistavoitteet
7. Työn ja vastuun
jakautuminen
7.2. Projektipäällikön
työtehtävät
7.3. Henkilökohtaiset
työtehtävät
9.2. Tuntematon
ohjelmointiympäristö
11. Projektiryhmän
jäsenten kokemuksia
Taulukko 2. Dokumenttien suunniteltu ja toteutunut valmistumisaikataulu.
Taulukko 3. Sovelluksille suunnitellut ja toteutuneet
välitavoitteet.
Taulukko 4. Vastuualueet ja niistä vastaavat henkilöt.
Taulukko 5. Projektiryhmän jäsenten projektiin käyttämän
ajan jakautuminen.
Kuva 1. Projektin suunniteltu ja toteutunut aikataulu
Gantt-kaaviona.
Kuva 2. Projektiryhmän projektiin käyttämän ajan
jakautuminen.
Coma-projekti
toteutti kevään 2004 aikana Jyväskylässä 24–28.7.2004
järjestettävään ECCOMAS2004 (European Congress on Computational Methods in
Applied Sciences and Engineering) -konferenssiin liittyvän kokoomajulkaisun
pohjan luomiseen tarkoitetun sovelluksen. Sovelluksen alpha-versio, jolla
CD-ROM-proceedings saadaan tehdyksi, oli valmistuttava projektin aikana, jotta
jatkokehitys pääsee alkamaan kesäkuun alussa.
Projekti
aloitettiin tilaajan tarpeesta saada kesän ECCOMAS2004-konferenssin
kokoomajulkaisu eli proceedings CD-ROM-muotoisena. Samalla oli mietitty voisiko
projektin yhteydessä tehdä yleiskäyttöisen sovelluksen, jonka avulla
proceedingsit voitaisiin luoda myös tulevaisuudessa järjestettävistä
konferens-seista ja tapahtumista melko helposti. Tämän takia projektiryhmältä
oli tilattu ECCOMAS2004-konferenssin CD-ROM-proceedings sekä
konferenssisovellus. Projektin edetessä kävi ilmi, että
konferenssisovelluksella olisi paljon erilaisia toimintoja. Projektin ollessa
rajoitettu käytännössä 4 kuukauteen, siirrettiin useita sovelluksen toimintoja
jatkokehitykselle ja mahdolliselle uudelle projektille.
Tässä
dokumentissa analysoidaan projektin projektisuunnitelmassa olevia tavoitteita
ja niiden toteutumista. Dokumentin tarkoituksena on selventää projektin
onnistumista kokonaisuutena sekä antaa projektiryhmän jäsenille valmiuksia
seuraavan projektin läpivientiin.
Luvussa 2 käydään
läpi projektiin liittyviä oleellisia termejä. Luvussa 3 kuvataan projektin
taustaa ja luvussa 4 käsitellään projektin resurssit ja työkalut. Projektin ja
projektiryhmän tavoitteet ja niiden toteutuminen sisältyy lukuihin 5 ja 6. Työn
ja vastuun jakautuminen projektissa käsitellään luvussa 7 ja projektiryhmän
ajankäyttö luvussa 8. Projektin kohtaamat ongelmat ja riskit käsitellään
luvussa 9 ja projektin tuottamat dokumentit esitellään lyhyesti luvussa 10.
Projektiryhmän jäsenten kokemuksia esitellään luvussa 11.
Luvussa
esitellään projektin kannalta keskeisiä termejä.
ECCOMAS European Community on Computational Methods in Applied Sciences.
HTML HyperText
Markup Language, SGML-pohjainen kuvauskieli hypertekstidokumenttien laatimiseen. [7]
Perl Practical
Extraction and Report Language, ajettaessa käännettävä vapaa
ohjelmointikieli, joka sopii teksti-tiedostojen tiedonhakuun, käsittelyyn ja raportointiin.
[7]
Tässä luvussa
kuvataan taustoja projektille sekä Coma-projektin tehtävää.
Jyväskylässä 24–28.7.2004
järjestetään ECCOMAS2004 (European Congress on Computational Methods in Applied
Sciences and Engineering) -konferenssi. Konferenssiin osallistuvien henkilöiden aikaisemmin toimittamasta
materiaalista koostetaan proceedings, kokoomajulkaisu. Osallistujien
kirjoittamat tiivistelmät artikkeleistaan painetaan kirjaksi ja artikkelit
kokonaisuudessaan tallennetaan CD-ROM-levylle. Lisäksi oli ilmennyt tarvetta
sovellukselle, jolla voidaan muodostaa kokoomajulkaisu.
Tällä hetkellä artikkelit ja niiden tekijätiedot on kerätty, WWW:n kautta lomaketta käyttäen, hakemistorakenteeseen. Hakemistorakenteessa tiedot käsitellään erilaisilla skripteillä.
Projektin
tavoitteena on ollut konferenssi-proceedings CD-ROM-levyn toteuttaminen.
CD-ROM-levyn sisältöä pitää pystyä selailemaan erilaisilla selaimilla ilman sovelluksien
asentamista. Projektin toisena tavoitteena on ollut toteuttaa mahdollisimman
helppokäyttöinen konferenssi-proceedingsien tekoon tarkoitettu sovellus, jolla
on mahdollista muokata proceedingsien rakennetta soveltuvaksi erilaisiin
konferensseihin. Proceedingsin koostamiseksi tarvittavat tiedot kerättiin
tietokantaan.
Tässä luvussa
esitellään projektiorganisaatiota ja sen käytössä olleet materiaaliresurssit.
Projektiorganisaatioon
ovat kuuluneet tietotekniikan opiskelijat Hanna Alm, Kari Arkko, Pentti Nakari
ja Lassi Paavolainen. Tilaajan edustajina Jyväskylän yliopiston tietotekniikan
laitokselta ovat toimineet Kirsi Majava, Tuomo Rossi ja Pekka Neittaanmäki.
Vastaavana ohjaajana on toiminut tietotekniikan laitokselta Markus Inkeroinen.
Teknisenä ohjaajana on toiminut Tero Toivonen. Visuaalinen konsultti Jaana
Rannanpää on toiminut myös osana organisaatiota kevään aikana.
Johtoryhmään ovat
kuuluneet tilaajan edustajina Kirsi Majava ja Tuomo Rossi. Vastaava ohjaaja
Markus Inkeroinen ja opiskelijoista projektipäällikkö Kari Arkko. Johtoryhmä ei
joutunut kokoontumaan kertaakaan projektin aikana.
Projektiryhmällä
on ollut käytössään tietotekniikan laitoksella lukittava projektihuone
AgC223.4. Ryhmän käytössä on ollut neljä PC-tietokonetta, joista kahteen on
asennettu Windows XP-käyttöjärjestelmä ja kahteen Linux, yhteen koneista on
asennettu polttava CD-asema. Lisäksi projektiryhmällä on ollut vapaassa
käytössä lasertulostin ja skanneri, jotka sijaitsevat projektiryhmien
yhteistilassa, ja kopiokone huoneessa AgC432.2. Erillisen varaamisen
tarvitsevat kannettava tietokone, mp3-tallennin, digitaalikamera ja
videoprojektori.
Projektissa
käytetty ohjelmointikieli Perl oli kolmelle neljästä ryhmän jäsenestä
tuntematon ohjelmointikieli. Linux-käyttöjärjestelmä oli vain yhdelle hyvin
tuttu. Linux-käyttöjärjestelmään ja Perl-kieleen saatiin koulutusta, mikä
nopeutti ohjelmointiympäristöön ja ohjelmointikieleen tutustumista. Laitos antoi yleistä koulutusta mm. käytettävyyteen
ja vapaaseen lähdekoodiin.
Koneet ja
ohjelmistot toimivat hyvin, lukuun ottamatta joitain yhteensopivuusongelmia
tekstinkäsittelyssä Open Officen ja Microsoft Wordin välillä.
Ohjaajilta ja
ylläpidolta saatiin asiantuntevaa ohjausta aina kun sitä tarvittiin.
Kokoustilat ja
eri laitteistot ovat olleet projektin käytössä aina, kun niiden käyttö ja
varaus on ollut tarpeen. Mp3-tallentimen käytöstä tosin projektiryhmä luopui
muutaman käyttökerran jälkeen, tallentimen toiminta ei ollut aina luotettavaa.
Projektin
tavoitteena on ollut toteuttaa konferenssi-proceedings CD-ROM-levy. CD-ROM-levyn
sisältöä pitää pystyä selailemaan erilaisilla selaimilla ilman sovelluksien
asentamista. Projektin toisena tavoitteena on ollut toteuttaa mahdollisimman
helppokäyttöinen konferenssi-proceedingsien tekoon tarkoitettu sovellus, jolla
on mahdollista muokata proceedingsien rakennetta soveltuvaksi erilaisiin
konferensseihin. Proceedingsin koostamiseksi tarvittavat tiedot kerättiin
tietokantaan.
Projektiryhmä sai
toteutettua sovelluksen konferenssi-proceedingsien tekoon sekä
tiedonsiirtosovelluksen ECCOMAS2004-konferenssi datan siirtämiseen
tietokantaan. Projektiryhmä ei saanut toteutettua konferenssi-proceedings
CD-ROM-levyä, koska kaikki levyille tuleva data ei ollut valmiina.
Projektiryhmä sai kuitenkin tehtyä proceedingsin vajavaisella datalla,
esimerkkinä sovelluksen toimivuudesta.
Luvussa
esitellään Coma-projektin suunniteltu aikataulu ja sen toteutuminen.
Taulukossa, Taulukko 2, on esitetty Coma-projektin tuottamat dokumentit,
niille suunniteltu ja toteutunut valmistumisaikataulu ja kyseisestä
dokumentista vastaava henkilö.
Vaihe |
Suunniteltu Pvm |
Toteutunut Pvm |
Tarkistuspiste |
Vastuuhenkilö(t) |
1 |
25.02.2004 |
03.03.2004 |
Projektisuunnitelma valmis |
KA, HA |
2 |
03.03.2004 |
10.03.2004 |
Vaatimusmäärittely valmis |
KA, LP |
3 |
31.03.2004 |
21.04.2004 |
Sovellussuunnitelma valmis |
KA |
4 |
05.04.2004 |
05.05.2004 |
Testaussuunnitelma valmis |
HA |
5 |
30.04.2004 |
28.05.2004 |
Testiraportti valmis |
HA |
6 |
12.05.2004 |
28.05.2004 |
Käsikirja,
sovellusraportti, projektiraportti valmis |
KA |
7 |
12.–20.05.2004 |
18.05.2004 |
Loppuesittely |
KA |
Taulukko 2. Dokumenttien suunniteltu ja toteutunut valmistumisaikataulu.
Aikataulussa
pysyminen osoittautui odotettua hankalammaksi. Suunnitteludokumenttien laadinta
vei aikaa huomattavasti enemmän kuin aikataulun laadinnan yhteydessä osattiin
arvioida. Tästä johtuen sovelluksen toteuttamisen aloittaminen myöhästyi ja
testaamista ei ehditty tekemään järjestelmällisesti ja kattavasti. Testaus
aloitettiin heti yhdessä toteutuksen kanssa.
Alla esitetyssä
Gantt-kaaviossa, Kuva
1, on nimetyllä tummalla janalla esitetty projektin
suunniteltua kestoa ja sen alla on esitetty toteutunut kesto.
Kuva 1. Projektin suunniteltu ja toteutunut aikataulu Gantt-kaaviona.
Projektissa
asetetut välitavoitteet sovelluksissa ja niiden toteutuminen on esitetty
taulukossa, Taulukko 3.
Suunniteltu Pvm |
Toteutunut Pvm |
Välitavoite |
16.02.2004 |
16.02.2004 |
Harjoitteluhakemistorakenne Linux-koneilla |
20.02.2004 |
20.02.2004 |
Hakemistorakenteeseen (nykyiseen) tutustuttu |
03.03.2004 |
21.04.2004 |
Tietokanta suunniteltu |
03.03.2004 |
03.03.2004 |
Osa TK:sta valmis (artikkelin nimi ja tekijä ) |
05.03.2004 |
23.03.2004 |
Ensimmäiset indeksisivut generoitu (selaus
tekijän mukaan) |
10.03.2004 |
12.03.2004 |
KL (sessioiden ja aihealueiden syöttö) |
12.03.2004 |
22.04.2004 |
Indeksisivut generoitu (selaus aihealueen mukaan
(aakkostettu)) |
15.03.2004 |
24.04.2004 |
Ensimmäiset versio(t) hakemistorakenteesta |
19.03.2004 |
19.03.2004 |
KL (levyjako) |
24.03.2004 |
24.04.2004 |
Generoidaan hakemistorakenne levyjaon
perusteella |
16.04.2004 |
- |
KL (ulkoasun syöttö) |
19.04.2004 |
11.05.2004 |
Tietokanta valmis |
23.04.2004 |
30.04.2004* |
ECCOMAS2004 ulkoasu |
07.05.2004 |
27.05.2004 |
Käyttöliittymä valmis |
20.05.2004 |
|
CD-ROM-levy(t)
valmis (valmiit) |
*
Ulkoasun hahmotelma valmis, käytettävyyttä parannellaan
jatkokehityksenä.
Taulukko 3. Sovelluksille suunnitellut ja toteutuneet välitavoitteet.
Välitavoitteista eniten myöhästyivät tietokannan suunnittelu ja generoiva sovellus. Tietokantaan tuli lisäyksiä, joita ei oltu huomattu suunnitteluvaiheessa ottaa huomioon, lähes koko toteutusvaiheen ajan. Välitavoitteiden asettamisessa ei oltu huomioitu suunnitteludokumenttien valmistumisaikataulua oikeastaan ollenkaan.
Tässä alaluvussa
käsitellään projektiryhmän omia oppimistavoitteita.
Projektiryhmän
tavoitteena on ollut tutustua projektityöskentelyyn, projektin suunnitteluun ja
hallintaan sekä toteutetun ohjelmiston kautta ohjelmistotuotantoon.
Ohjelmistotuotanto käsittää muun muassa ohjelmiston suunnittelun, toteutuksen,
testauksen ja raporttien laatimisen.
Projektityöskentelyn
keskeisiä käsitteitä ovat ryhmätyö sekä projektin aikataulun huolellinen
suunnittelu, ja sen myötä aikataulun toteutuminen. Jokainen projektin jäsen
osallistui kaikkiin oleellisiin tehtäviin, jotta kaikki oppivat tarpeellisia
työskentelytaitoja ja ohjelmointia. Työnjaosta pyrittiin tekemään
mahdollisimman tasapuolinen.
Projektin aikana
ei ryhmässä syntynyt sisäisiä erimielisyyksiä tai ristiriitoja, vaan ryhmän
jäsenet tulivat hyvin toimeen keskenään. Ryhmän jäsenet pystyivät keskenään
ratkaisemaan sovellukseen liittyviä ongelmia ja kysymään neuvoa toisiltaan.
Projektissa
kaikki saivat tutustua dokumentointiin. Projektiryhmä oppi tekstinkäsittelyä ja
dokumentointia.
Koska Perl oli
lähes kaikille ennestään tuntematon, projektiryhmä oppi uuden ohjelmointikielen.
Projektiryhmän tavoite oli oppia kirjoittamaan selkeää ohjelmakoodia ja hyvä
kommentointitapa. Kommentoinnin merkitys korostuu, kun sovellusta
jatkokehitetään eri henkilöiden toimesta.
Projektin
käytössä on ollut CVS-versionhallintapalvelin, joka on (laajassa) käytössä
tämän päivän yritysmaailmassa. Projektiryhmän yksi tavoite on ollut oppia
versionhallinnan oikeaoppinen käyttö projektin toteutuksen ja dokumentoinnin
kannalta parhaalla mahdollisella tavalla.
Projektiryhmä analysoi
tuloksiaan, miettimällä mitkä olivat vaikeita kohtia projektissa ja miten ne
ratkaistiin, sekä mitä tulisi tehdä toisin. Tällä tavoin projektiryhmän jäsenet
saavat kokonaiskuvan projektin toteutumisesta ja voivat käyttää tätä tietoa
hyväkseen myöhemmissä projekteissa.
Ryhmän jäsenet
harjoittelivat esiintymistaitoja yhteisissä viikkopalavereissa, sekä
opponointi- ja loppuesittelytilaisuuksissa. Ryhmässä pyrittiin siihen, että
jokainen esitteli jossakin projektin vaiheessa projektin etenemistä muulle
yleisölle kuin pelkälle omalle projektiorganisaatiolleen.
Luvussa
esitellään ja analysoidaan projektiryhmän jäsenten keskinäistä työnjakoa ja
vastuun jakautumista.
Projektin aloittaminen ja aihealueeseen
tutustuminen suoritettiin ryhmätyönä. Myös opponointitilaisuuksiin ja
loppuesittelyyn valmistauduttiin yhdessä.
Projektipalaverien puheenjohtaja ja sihteeri
valittiin ryhmän jäsenistä tilanteen mukaan ennen palaveria.
Yleisten työtehtävien jako sujui koko projektin
ajan hyvin, projektiryhmän jäsenistä löytyi aina vapaaehtoinen täyttämään
annettua tehtävää.
Koko projektin ajan projektipäällikkönä toimi Kari
Arkko. Projektipäällikön tehtävinä oli olla ajan tasalla projektin toteutuksen
etenemisestä, hoitaa tiedotus projektiympäristössä sekä vastata tehtävien
uudelleen jaosta. Projektipäällikkö vastasi koko projektista.
Projektin työmäärä pyrittiin jakamaan
mahdollisimman tasaisesti projektiryhmän jäsenten kesken. Projektisuunnitelma,
vaatimusmäärittely ja muut alkuvaiheessa toteutettavat dokumentit tehtiin
ryhmätyönä. Jatkossa pyrittiin jakamaan tehtävät jokaisen kykyjen, osaamisen ja
voimavarojen mukaan projektin läpiviennin kannalta mahdollisimman edullisella
tavalla.
Työtehtävien jaossa onnistuttiin hyvin. Jokaisen
toiveet ja osaaminen otettiin huomioon tehtävien jaossa, mikä näkyi hyvänä
osaamisena sekä innokkuutena.
Taulukossa, Taulukko
4, kuvataan Coma-projektin vastuualueiden suunniteltua
jakoa ja vastuualueen tehtävien etenemisestä vastaava henkilö.
Vastuualue |
Vastuuhenkilö |
Projektipäällikkö |
Kari Arkko (KA) |
Dokumenttien ulkoasu |
Hanna Alm (HA) |
HTML ja palvelimet |
Pentti Nakari (PN) |
Ohjelmointi |
Lassi Paavolainen (LP) |
CD-ROM-levy |
Hanna Alm (HA) |
Sovellus |
Kari Arkko (KA) |
Tietokanta |
Pentti Nakari (PN) |
Taulukko 4. Vastuualueet ja niistä vastaavat henkilöt.
Vastuualue jakoa
ei pystynyt pitämään täysin selkeänä, pääasiallisesti projektipäällikkö
huolehti viime kädessä projektin eri osa-alueista.
Projektiryhmä
käytti projektin läpi viemiseen yhteensä noin 1300 tuntia, tunnit jakautuivat
tasaisesti ryhmän jäsenten kesken. Keskimääräisesti projektiryhmän jäsenet
käyttivät projektissa työskentelyyn 20-21 tuntia viikossa.
Kuvassa, Kuva 2, on esitetty koko projektiryhmän kevään aikana
käyttämän työn ajan jakautuminen prosentteina.
Suurimmat osuudet ajasta menivät ohjelmointiin, suunnitteluun,
dokumentointiin ja dokumenttien kirjoitusasun laadintaan. Lisäksi projektin
aikana pidetyt palaverit veivät merkittävän osan projektiin käytetystä ajasta.
Taulukossa, Taulukko 5, on esitetty projektiryhmän jäsenten projektiin
käytetyn ajan sekä projektiin käytetyn kokonaisajan jakautuminen tunteina.
Taulukosta voidaan vertailla ryhmän jäsenten käyttämiä tuntimääriä. Pientä
virhettä tuntimääriin aiheuttaa hieman erilaiset kirjausmenetelmät, esimerkiksi
toinen on saattanut sisällyttää luentotunteihin myös siihen liittyvät ryhmätyöt
ja toinen on kirjannut nämä tunnit erikseen. Kirjatuista tunneista voidaan
kuitenkin nähdä, että selvästi projektijäsenistä yksi on painottunut
dokumentointiin ja toinen ohjelmointiin. Kaksi ryhmän jäsenistä on tehnyt melko
tasapuolisesti molempia mainituista päätehtävistä.
Kuva 2. Projektiryhmän projektiin käyttämän työajan jakautuminen.
Tehtävä |
Kari |
Hanna |
Lassi |
Pentti |
Yhteensä |
Suunnittelu |
43:00 |
82:30 |
35:05 |
00:00 |
160:35 |
Dokumentointi |
42:45 |
72:20 |
19:15 |
22:50 |
157:10 |
Määrittely |
12:00 |
00:00 |
35:55 |
00:00 |
47:55 |
Ohjelmointi |
74:15 |
20:55 |
74:55 |
156:20 |
326:25 |
Testaus |
08:05 |
01:00 |
16:20 |
04:50 |
30:15 |
Materiaaliin tutustuminen |
13:00 |
09:00 |
14:25 |
18:00 |
54:25 |
Kurssi: luennot |
26:00 |
12:20 |
14:05 |
19:00 |
71:25 |
Palaverit |
37:50 |
34:20 |
29:10 |
27:35 |
128:55 |
Tiedottaminen |
08:50 |
00:00 |
00:00 |
00:00 |
08:50 |
Kurssi: dokumenttien kirjoitusasu |
38:30 |
40:30 |
32:10 |
45:35 |
156:45 |
Perehdytys |
14:50 |
19:00 |
15:45 |
25:25 |
75:00 |
Kurssi: opponoinnit ja niiden valmistelu |
13:30 |
14:10 |
11:05 |
09:10 |
47:55 |
Kurssi: muut tehtävät |
02:45 |
07:35 |
17:20 |
00:00 |
27:40 |
Kurssi: ryhmätyöt |
00:00 |
06:05 |
05:05 |
04:15 |
15:25 |
Muu projektiin liittyvä tapahtuma |
00:00 |
04:00 |
00:00 |
00:00 |
04:00 |
Kurssi: palautteen läpikäyminen |
00:00 |
00:00 |
00:15 |
00:00 |
00:15 |
Yhteensä |
335:20 |
323:45 |
320:50 |
333:00 |
1312:55 |
Taulukko 5. Projektiryhmän jäsenten projektiin käyttämän työajan jakautuminen.
Analysoidaan
projektissa ilmenneitä ongelmia ja riskejä.
Riittämätöntä suunnittelua pidettiin suurimpana
riskinä. Suunnitteludokumenttien huolellinen teko ja katselmointi auttoivat
ehkäisemään tämän riskin toteutumista.
Perl ohjelmointikielenä ei ollut kaikille ryhmän
jäsenille tuttu. Tämän johdosta sovelluksen toteutuksessa saattaisi ilmetä
ongelmia, joiden selvittäminen veisi aikaa.
Riskin toteutumista ehkäistiin opiskelemalla
ohjelmointikieltä ja tutustumalla aihepiiriin kirjallisuuden,
internet-materiaalin sekä teknisen ohjaajan avustuksella. Riskin ehkäisemisessä
onnistuttiinkin ilmeisesti hyvin, koska ohjelmoinnin vuoksi projekti ei ole
kohdannut isoja ongelmia.
Ryhmän jäsenten sairastuminen oli yksi riskeistä.
Tällaisessa tilanteessa projektipäällikön pitäisi pystyä ohjaamaan ryhmän
resurssit siten, että puuttuvan henkilön tehtävät tulevat tehdyksi.
Projektin aikana lähes kaikki projektiryhmän
jäsenet sairastuivat flunssaan vuorotellen, projektin eteneminen ei tästä
merkittävästi kuitenkaan hidastunut.
Projektin jäsenten ja koko projektiorganisaation
välinen tiedotus oli aktiivista. Kaikista ongelmista ja epäselvyyksistä tuli
informoida koko projektiorganisaatiota, jotta mahdollisiin ongelmiin osattiin
tarttua riittävän ajoissa. Tiedotuksesta vastasivat osaltaan kaikki
projektiorganisaation jäsenet. Projektiryhmän jäsenet vastasivat
projektipäällikölle ja projektipäällikkö lopulle organisaatiolle. Tilaajan
informoi projektiryhmää riittävästi, jotta projektiryhmä osasi varautua mahdollisiin
muutoksiin sovelluksen toteutuksessa.
Projektin jäsenten ja sovelluksen tulevien
käyttäjien piti testata sovellusta ahkerasti helpon ja käytettävän
käyttöliittymän luomiseksi sekä kaikkien käytännön virhetilanteiden löytämiseksi.
Tässä riittävän testaussuunnitelman luominen oli avuksi.
Projektiin käytettävän ajan loppuessa, jouduttiin
testauksesta karsimaan rankasti. Testauksessa pyrittiin keskittymään
testaussuunnitelman [5] priorisoimiin testitapauksiin.
Koska sovellus koostuu useista eri komponenteista
ja eri komponenttien toteutukseen kuluva aika saattoi vaihdella huomattavasti,
voitiin projektin mahdollisiin riskeihin lukea myös liian kattavan
toiminnallisuuden suunnittelu toteutettavaksi suhteessa projektin resursseihin
ja rajattuun aikatauluun nähden.
Tilaaja pystyi karsimaan osan vaatimuksia
projektin kuluessa, jotta projektin sovellukset pystyttiin toteuttamaan.
Toisaalta käyttöliittymän toteutukseen otettiin mukaan tilaajan jakokehitykseen
siirtämiä ominaisuuksia jotta käyttöliittymästä tulisi käytettävä.
Laitteiston rikkoutuminen oli yksi mahdollinen
riskitekijä. Tätä riskiä ehkäistiin ottamalla varmuuskopiot riittävän usein, ja
sijoittamalla materiaalia eri asemille.
Projektiryhmä ei
kohdannut isoja ongelmia projektin aikana. Projektiryhmän jäsenet toimivat
hyvin yhdessä ja yhteistyö tilaajan ja ohjaajien kanssa sujui mallikkaasti.
Ainoina ongelmina
voi pitää visuaalisen konsultin kanssa yhteisen palaveriajan löytymistä ja
testaukseen käytettävän ajan kesken loppumista. Visuaalisen konsultin kanssa
kuitenkin asioiden hoitaminen sujui sähköpostitse suhteellisen hyvin.
Tämän raportin
lisäksi Coma-projektin tuottamia dokumentteja ovat projekti-, sovellus- ja
testaussuunnitelmat, vaatimusmäärittely sekä testaus- ja sovellusraportit.
Ensimmäisenä
dokumenteista valmistui projektisuunnitelma [1], jossa kuvataan projektin
taustoja, tavoitteita ja työtapoja. Sen jälkeen valmistuneeseen
vaatimusmäärittelyyn [6] on kirjattu sovelluksen vaatimukset sekä yleisimpiä
käyttötapauksia. Sovellussuunnitelma [3] sisältää sovelluksen rakenteen
hahmottelun ja käyttöliittymän ulkoasun kuvauksen. Toteutusvaiheen lopussa
tehdyssä testaussuunnitelmassa [5] on kuvattu toteutettavat testitapaukset sekä
niiden raportointiohje.
Tämän jälkeen
tehtiin sovellussuunnitelman ja vaatimusmäärittelyn pohjalta kirjoitettu
sovellusraportti [2], joka kuvaa toteutettua sovellusta. Projektin viimeisestä
dokumentista, testausraportista [4], löytyvät testauksen tulokset.
Projektin aloitus
sujui hyvin, projektiryhmän jäsenille muodostui nopeasti omat vastuualueet oman
osaamisensa mukaan. Alussa aikaa kului konferenssin laajuuden ja sisällön
käsittämiseen, tässä kuitenkin tilaajan aktiivinen mukana olo auttoi paljon.
Ryhmän jäsenet
tulivat toimeen keskenään todella hyvin ja ajatuksia pystyttiin vaihtamaan
rennon keskustelun merkeissä omassa työtilassamme.
Kohdaltani
projekti onnistui hyvin, olin mukana kaikissa projektin osa-alueissa,
pääasiallisesti kuitenkin suunnittelussa ja dokumentoinnissa. Projektin
yhteydessä pääsin tutustumaan uuteen ohjelmointikieleen ja harjoittelemaan sitä
myös.
Kokonaisuutena
projekti oli mielenkiintoinen ja toteutui mielestäni hyvin.
Projekti
käynnistyi hyvin, koska tilaaja tiesi mitä halusi. Ainoa ongelma oli sisäistää
konferenssin rakenne, joka selkeytyi vaatimusmäärittelyn aikana. Projektiryhmän
jäsenet tulivat nopeasti tutuiksi ja hyvä ryhmähenki säilyi koko projektin
ajan.
Mielestäni
projekti onnistui osaltani hyvin. Olin mukana kaikissa projektin osa-alueissa.
Ohjelmoinnin aloittaminen sujui hyvin, koska Perl osoittautui selkeäksi
ohjelmointikieleksi. Palavereissa osallistuin aktiivisesti keskusteluun, joskus
ehkä liiankin paljon. Toinen opponointi meni mielestäni hyvin, koska ehdin
valmistautua siihen.
Kokonaisuudessaan
projekti sujui hyvin, vaikka aikataulussa ei aivan pysyttykään. Projektiryhmän
jäsenet olivat tunnollisia ja motivoituneita. Kaikille tuli selväksi alusta
alkaen tehtävien jako ja vastuualueet. Omat tehtävät ja vastuualueet jokainen
hoiti mallikkaasti.
Projekti pääsi
käynnistymään melko nopeasti, joskin konferenssin artikkelien tiedot sisältävän
hakemistorakenteen hahmottaminen oli aluksi hankalaa. Projektin aihe oli mielenkiintoinen ja sopivan haastava sekä
vastasi hyvin tuntemiani tekniikoita ja
kieliä. Projektissa tarvittiin myös työkaluja ja tekniikoita jotka eivät olleet alunperin minulle yhtä tuttuja tai
joita en muuten ollut käyttänyt useisiin vuosiin. Erityisesti tietokannat, SQL,
CVS sekä Perl-kieli palautuivat hyvin mieleen ja opin myös uusia asioita
niistä.
Projektiryhmä oli
erittäin toimiva, ristiriitoja ei esiintynyt ja tehtävien ja vastuualueiden
jako onnistui myös kiitettävän hyvin. Lähinnä aikataulussa pysyminen tuotti
pieniä vaikeuksia. Konferenssiaineiston luonteen takia käsiteltävässä datassa tapahtui koko ajan
pientä kehitystä, ja tämä tuotti jonkin verran hankaluuksia parserisovelluksen
suunnittelussa ja ohjelmoinnissa. Tilaaja tosin olisi voinut toimittaa jo
projektin alkuvaiheessa hieman kattavampaa informaatiota hakemistorakenteesta
ja sinne lisättäväksi suunnitelluista tiedoista, jolloin parseria olisi voinut
suunnitella etukäteen paremmin ja toteuttaminen olisi ollut helpompaa ja
nopeampaa. Tästä huolimatta ohjelmointi sujui melko nopeasti ja ilman suurempia
ongelmia.
Projekti
käynnistyi mukavissa merkeissä. Projektin alkuaikoina tuntui olevan hieman
epäselvyyksiä konferensseihin liittyvien termien kanssa, sillä
projektiryhmäläisillä ei ollut aikaisempaa kokemusta konferensseista.
Vaatimusmäärittelyä tehdessä asiat selvenivät ja työt alkoivat luistaa
selvemmissä merkeissä. Vaatimusmäärittelyn teko oli muutenkin aika helppoa,
sillä tilaajalla oli tarvittavat ominaisuudet pitkälti selvillä.
Projektiryhmällä
tuntui olevan pieni suvantovaihe siirryttäessä vaatimusmäärittelystä
sovelluksen suunnitteluun. Tähän aikaan oli myös paljon projektiluentoja sekä
tutustumista uuteen ohjelmointikieleen, minkä takia tuntui, että projekti ei
edistynyt hirveän paljoa. Lopulta suunnittelu käynnistyi toden teolla kun
jätettiin suunnitelmien testaaminen käytännössä. Valmis sovellussuunnitelma
olikin erittäin käyttökelpoinen apu ainakin generoivan sovelluksen ohjelmoinnissa.
Ohjelmointivaihe
käynnistyi toden teolla vasta huhtikuun puolessa välissä eikä kestänyt kuin
reilun kaksi viikkoa. Ohjelmointi onnistui jopa yllättävän helposti, vaikka
kyseistä ohjelmointikieltä ei ollut projektiryhmästä aikaisemmin käyttänyt kuin
yksi.
Kaiken kaikkiaan
projekti oli erittäin mielenkiintoinen kokemus ja kaikki projektiryhmän jäsenet
olivat motivoituneesti mukana koko projektin ajan. Projektiryhmän jäsenten
kesken ei ollut minkäänlaisia epäselvyyksiä ja projektihuoneessa oli aina leppoisa
tunnelma. Jokainen hoiti oman alueensa kiitettävästi.
Projektin
aikataulun laatiminen osoittautui kaikkein vaikeimmaksi tehtäväksi.
Projektiryhmällä ei ollut aikaisempaa kokemusta projektityöskentelystä, joten
projektin eri vaiheisiin käytettävän ajan arviointi heitti osittain erittäin
paljon. Pääasiallisesti suunnitteluun käytetyn ajan osuus kasvoi projektin
edetessä.
Projektiryhmä
huomioisi suunnittelun viemän ajan realistisemmin.
Coma-projekti suunnitteli ja
toteutti WWW-ympäristössä toimivan konferenssi-sovelluksen, jota voidaan käyttää tulevaisuudessa konferenssijulkaisujen
tekemisessä. Lisäksi projektissa toteutettiin parserisovellus, jolla
ECCOMAS2004-konferenssin tiedot siirrettiin tietokantaan erillisestä
hakemistorakenteesta.
Ryhmän jäsenten mielestä projekti
kokonaisuutena sujui hyvin ja projektiryhmän jäsenet oppivat projektista
arvokkaita projekti- ja ryhmätyöskentelytaitoja.
[1] Alm
Hanna, Arkko Kari, Nakari Pentti ja Paavolainen Lassi, Projektisuunnitelma,
Jyväskylän yliopiston tietotekniikan laitos, Jyväskylä, 2004.
[2] Alm
Hanna, Arkko Kari, Nakari Pentti ja Paavolainen Lassi, Sovellusraportti,
Jyväskylän yliopiston tietotekniikan laitos, Jyväskylä, 2004.
[3] Alm
Hanna, Arkko Kari, Nakari Pentti ja Paavolainen Lassi, Sovellussuunnitelma,
Jyväskylän yliopiston tietotekniikan laitos, Jyväskylä, 2004.
[4] Alm
Hanna, Arkko Kari, Nakari Pentti ja Paavolainen Lassi, Testausraportti,
Jyväskylän yliopiston tietotekniikan laitos, Jyväskylä, 2004.
[5] Alm
Hanna, Arkko Kari, Nakari Pentti ja Paavolainen Lassi, Testaussuunnitelma,
Jyväskylän yliopiston tietotekniikan laitos, Jyväskylä, 2004.
[6] Alm
Hanna, Arkko Kari, Nakari Pentti ja Paavolainen Lassi, Vaatimusmäärittely,
Jyväskylän yliopiston tietotekniikan laitos, Jyväskylä, 2004.
[7]
Jaakohuhta Hannu, Suuri
tietotekniikan tietosanakirja käsitteistö ja sanasto, Suomen Atk-kustannus Oy, Helsinki, 1999.