haku: @keyword serialization / yhteensä: 4
viite: 3 / 4
Tekijä:Björklund, Kaj
Työn nimi:A Serialization Library with Undo Support
Kumoamista tukeva sarjallistamiskirjasto
Julkaisutyyppi:Diplomityö
Julkaisuvuosi:2005
Sivut:75      Kieli:   eng
Koulu/Laitos/Osasto:Tietotekniikan osasto
Oppiaine:Ohjelmistotekniikka   (T-106)
Valvoja:Soisalon-Soininen, Eljas
Ohjaaja:Soisalon-Soininen, Eljas
Digitoitu julkaisu: https://aaltodoc.aalto.fi/handle/123456789/92690
OEVS:
Digitoitu arkistokappale on julkaistu Aaltodocissa
Sijainti:P1 Ark Aalto     | Arkisto
Avainsanat:serialization
undo
memento
persistence
agile development
sarjallistaminen
kumoaminen
muisto
pysyvyys
ketterä kehitys
Tiivistelmä (fin):Ketterä kehitys ja käytettävyys ovat usein esiintulevia käsitteitä nykyisessä ohjelmistokehityksessä.
Näihin tekijöihin keskittyminen tuottaa suurta hyötyä asiakkaille ja loppukäyttäjille, mutta samanaikaisesti ne tuovat sovelluskehittäjille uusia haasteita.
Käytettävyyden ja jatkuvan muutoksen huomioivan arkkitehtuurin suunnittelu vaatii myös kehittäjien työmäärän puntarointia.

Sarjallistaminen on arkkitehtuurisesti herkkä ominaisuus, joka on hyödyllinen muun muassa tallentamisen ja lataamisen toteuttamisessa.
Mahdollisuus kumota tehty toiminto on merkittävä ominaisuus käytettävyyden kannalta.
Kumoaminen tarjoaa käyttäjille keinon selvitä virheistään sekä tutkia sovellusta tarvitsematta pelätä rikkovansa jotakin.

Tässä työssä tutkitaan menetelmiä olioiden sarjallistamisen sekä toimintojen kumoamisen toteuttamiseen interaktiivisissa sovelluksissa, joissa on graafinen käyttöliittymä.
Erityisesti selvitetään yleisesti hyväksyttyjä vaatimuksia, malleja ja tekniikoita sekä sarjallistamiseen että kumoamiseen, mutta myös olemassaolevia toteutuksia tarkastellaan.

Työssä esitellään kirjasto sarjallistamisen toteuttamiseen C++-kielellä.
Lisäksi kirjastoon esitetään laajennuksia, jotka lisäävät siihen puoliautomaattisen yhden käyttäjän lineaarisen kumoamistuen.
Kirjaston suunnitelma perustuu yleiseen sarjallistuvaan muistoon (memento), joka mahdollistaa olioiden tilan vangitsemisen ja palauttamisen, sekä vangitun tilan sarjallistamisen.

Esiteltyä kirjastoa verrataan taustatyössä esiteltyihin menetelmiin, jolloin käy ilmi että kirjaston käyttö vähentää sovelluskehittäjän työtaakkaa erityisesti kumoamisen tapauksessa.
Osoittautuu myös, että kirjasto soveltuu ketteriin projekteihin.
Myös käyttökokemuksia kirjaston soveltamisesta kahteen kaupalliseen projektinhallintasovellukseen esitellään.
Jatkotutkimuksille annetaan useita suuntaviivoja.
Diplomityö päätetään yhteenvetoon läpikäydyistä aiheista.
ED:2005-06-22
INSSI tietueen numero: 28909
+ lisää koriin
INSSI