IT-järjestelmän tietokantaan liittyvistä oikeudellisista ongelmista
Kun perehdytään IT-järjestelmien ympärillä oleviin oikeudellisiin kysymyksiin, tarvitaan paitsi järjestelmällistä lakitietoa, myös ymmärrystä IT-järjestelmien komponenteista. Tässä artikkelissa käsittelemme, miten IT-järjestelmät on rakennettu eri osista ja miten nämä osat toimivat yhdessä. Lisäksi selitämme oikeudellisia kysymyksiä, jotka liittyvät erityisesti tietokantoihin, jotka voivat olla käyttäjän näkökulmasta vaikeasti havaittavissa.
IT-järjestelmät koostuvat “näytöstä” ja “logiikasta”
Mitä IT-järjestelmän “näyttö” tarkoittaa
Kun haluat ymmärtää IT-järjestelmän rakenteen, silmiinpistävin osa on todennäköisesti näytön ulkonäkö. Itse asiassa, tyypillisessä järjestelmänkehitysprosessissa, “näytön suunnittelu” ja “näytön siirtymien” järjestäminen ovat yleensä seuraavat vaiheet “vaatimusten määrittelyn” jälkeen, jossa tehdään toimintojen kartoitus ja muut. Tällainen näytön ulkonäkö on alue, joka luonnollisesti kiinnittää käyttäjän huomion, joka tilaa järjestelmän kehityksen, ja se on myös alue, jossa käyttäjän ja toimittajan välinen kommunikaatio on todennäköisesti vilkkainta. Seuraavassa artikkelissa selitetään “yhteistyövelvollisuus”, jonka käyttäjän on täytettävä toimittajalle koko järjestelmän kehitysprosessin ajan projektin saavuttamiseksi.
https://monolith.law/corporate/user-obligatory-cooporation[ja]
Tässä artikkelissa selitetään pääasiassa, että käyttäjän on tehtävä yhteistyötä toimittajan kanssa perussuunnitteluvaiheessa (eli näytössä) osana yhteistyövelvollisuuttaan järjestelmän kehityksessä.
IT-järjestelmän “näyttö” kirjoitetaan yleensä noudattaen tietokonekielten, kuten HTML:n ja CSS:n, sääntöjä. IT-järjestelmän “näyttöä” kutsutaan usein eri nimillä, kuten “frontend”, “UI (User Interface)”, mutta pääasialliset keskustelunaiheet ovat “käyttömukavuus” ja “selkeys” käyttäjän näkökulmasta.
Mitä IT-järjestelmän “logiikka” tarkoittaa
Kuitenkin, jos IT-järjestelmä on “näyttö” ensin, se on vain “näyttö”, jolla ei ole mitään “liikettä” tai “muutosta”. Vaikka käyttäjän syötteet vastaanotetaan ja tulosteet näytetään “näytöllä”, tämä prosessi sisältää “laskennallisen käsittelyn”.
Tällainen käyttäjän silmiltä piilossa oleva, sanalla sanoen “järjestelmän takapuoli”, suorittaa monimutkaisia laskentoja ja ohjauksia. Tietojen haku näytöltä, tietojen muuttaminen, lisääminen tai poistaminen edellyttää, että taustalla on ennalta rakennettu tietokanta. Kaikenlaiset käsittelyt tietokannan tiedoille tehdään yleensä tietokonekielellä, jota kutsutaan SQL:ksi.
Näytölle asennettujen painikkeiden ja muiden laukaisimien avulla luodaan polku tarvittavan SQL-lauseen suorittamiseen, ja tämän avulla saadaan aikaan liikkuvan ja muuttuvan järjestelmän kokonaiskuva.
Huomaa, että “näytöstä” näkymättömien erilaisten logiikoiden rakentamiseen liittyvät asiat voidaan usein kutsua “backendiksi”.
Järjestelmän ulkonäköön keskittyminen voi olla riski
Tähänastinen selitys muodostaa perustan IT-järjestelmän rakenteelle, joka on suunniteltu toimimaan verkossa. Ymmärrys näistä asioista on merkittävää myös oikeudellisissa keskusteluissa, projektien riitojen ehkäisyssä ja kriisinhallinnassa. Käytännössä käyttäjien, jotka keskittyvät vain näytön “ulkonäköön”, ja toimittajien, jotka hoitavat monia tärkeitä tehtäviä näkymättömällä “logiikan” puolella, välillä voi syntyä kommunikaatio-ongelmia.
Käyttäjien ja toimittajien erilaiset huolenaiheet voivat muodostaa riskin
Esimerkiksi käyttäjät, jotka keskustelevat IT-järjestelmistä pääasiassa “näytön” näkökulmasta, ovat usein välinpitämättömiä järjestelmän sisäisen rakenteen monimutkaisuudesta. Juuri tästä syystä he eivät välttämättä ymmärrä, kuinka paljon “pieniä toiminnallisuuden lisäyksiä” tai “pieniä muutoksia vaatimuksiin”, jotka näyttävät pinnallisesti merkityksettömiltä, voivat vaikuttaa moniin prosesseihin. Esimerkiksi seuraavassa artikkelissa käsitellään tyypillisiä oikeudellisia ongelmia, jotka saattavat ilmetä, kun vanha järjestelmä poistetaan käytöstä uuden järjestelmän kehittämisen yhteydessä.
https://monolith.law/corporate/the-transition-from-the-oldsystem[ja]
Tässä yhteydessä selitetään, kuinka usein ongelmia ilmenee, kun dataa siirretään vanhasta järjestelmästä uuteen. Toisin sanoen, sisäisen laskennan ja ohjauksen monimutkaisuus, jota ei voi kuvitella pelkästään ulkonäön perusteella, voi aiheuttaa odottamattomia ongelmia käyttäjille. Lisäksi, koska käyttäjät eivät ymmärrä “järjestelmän toimittajan näkökulmaa”, on mahdollista, että jälkikäteen tehtävät muutokset tulevat esiin pieninä palasina.
https://monolith.law/corporate/howto-manage-change-in-system-development[ja]
Tällaisissa tilanteissa, joissa jälkikäteen määrätään vaatimusten muutoksia tai toiminnallisuuksien lisäyksiä, myös palkkion jälkikäteinen korotus voi joskus muodostua vakavaksi ongelmaksi.
https://monolith.law/corporate/increase-of-estimate[ja]
Käyttäjän välinpitämättömyys “logiikkaa” kohtaan voi olla riski
Lisäksi, on olemassa tilanteita, joissa käyttäjän havaitsemattomat osat voivat muodostua suureksi ongelmaksi, kun ongelma paljastuu. Seuraavassa on esimerkkejä tällaisista tilanteista.
Mahdollisuus, että ylläpitoon ja turvallisuuteen liittyviä ongelmia ilmenee
Tämä tilanne käsittää tapaukset, joissa lisäominaisuuksien toteuttaminen ei ole mahdollista, ja järjestelmän toiminta hidastuu käytön myötä, kunnes se lopulta lakkaa toimimasta.
Lisäksi, koodin puutteet näytöllä voivat johtaa turvallisuushyökkäyksiin, joissa hyökkääjä kaappaa henkilökohtaisia ja luottamuksellisia tietoja, jotka eivät saisi näkyä näytöllä. Tällainen hyökkäys tunnetaan nimellä “SQL-injektio”. Tämä on aiheuttanut vakavia kiistoja, joista kerrotaan yksityiskohtaisesti seuraavassa artikkelissa.
https://monolith.law/corporate/risks-of-libraryuse-and-measures[ja]
Tämän artikkelin pääaiheena on riskit, jotka liittyvät kehysjärjestelmien ja kirjastojen käyttöön, mutta esitellyt oikeustapaukset koskevat hyökkäyksiä, joissa on käytetty SQL-injektiota.
Vaara, että hallinto ei ulotu IT-järjestelmän käyttövastuussa olevan henkilön työhön
Se, että IT-järjestelmän käyttäjät ovat välinpitämättömiä taustalla olevasta “logiikasta”, liittyy ongelmaan, jossa hallinto ei ulotu IT-järjestelmän käyttövastuussa olevan henkilön työhön. Tähän aiheeseen liittyen seuraavassa artikkelissa käsitellään “tietojen menetys käyttövastuussa olevan henkilön laiminlyönnin seurauksena” ja selitetään tietokantojen käsittelyyn liittyvän työn merkitys.
https://monolith.law/corporate/dataloss-risk-and-measures[ja]
Vaara, että logiikka on väärä, vaikka se näyttäisi toimivan oikein pinnallisesti
Se, että järjestelmän toiminta ei rajoitu “näyttöön”, tarkoittaa, että järjestelmä, joka näyttää toimivan oikein pinnallisesti, saattaa itse asiassa olla virheellinen “logiikan” osalta. Tämä voi paljastua yllättäen epäsäännöllisissä tehtävissä, kuten “kerran puolessa vuodessa” tai “kerran vuodessa”, vaikka se ei olisi ilmeistä päivittäisissä perustehtävissä.
Tällaisissa tapauksissa, jos “järjestelmä, joka on toimitettu kerran, paljastuu puutteelliseksi jälkikäteen”, se on oikeudellisesti (ei velvollisuuden laiminlyönti, vaan) virhevastuun kysymys.
https://monolith.law/corporate/defect-warranty-liability[ja]
Jos vika paljastuu vastaanoton jälkeen, seuraavassa artikkelissa selitetään yksityiskohtaisesti, miten tällaisessa tilanteessa tulisi toimia.
https://monolith.law/corporate/system-flaw-measure-after-acceptance[ja]
Yhteenveto
Järjestelmäkehityksen ja oikeudellisten asioiden systemaattinen ymmärtäminen
IT-järjestelmän kehittämiseen liittyvät oikeudelliset ongelmat edellyttävät, että ennen oikeudellisten kysymysten tunnistamista on tärkeää ymmärtää, mihin osaan järjestelmää ongelma liittyy. Sekä oikeudellisissa kysymyksissä että IT-järjestelmän ongelmissa on tärkeää, että järjestelmän kehitysprojekteissa syntyvissä kiistoissa ei menetetä kokonaiskuvaa. Erityisen tärkeää on panostaa eri toimialojen väliseen yhteistyöhön.
Category: IT
Tag: ITSystem Development