Tietojärjestelmäsuunnittelun keskeisiä asioita
Transcription
Tietojärjestelmäsuunnittelun keskeisiä asioita
Tietojärjestelmäsuunnittelun keskeisiä asioita Tietojärjestelmien suunnittelu kevät 2015 27.1.2015 Luento 1 Pirkko Nykänen 1 Kurssin tavoitteista ja sisällöstä • Kokonaiskuva ja ymmärrys – Tietojärjestelmätieteen suuntaukset, tietojärjestelmien tarkastelun kontekstit, tieto- ja tietojärjestelmäkäsityksiä – Tietojärjestelmien suunnittelun lähestymistavat, menetelmät ja systeemityöprosessi: • tietojärjestelmien suunnittelun paradigmat ja koulukunnat, niiden eroja, menetelmien käyttöön liittyviä kysymyksiä – Tietojärjestelmien onnistumisen ja epäonnistumisen tekijöitä, tietojärjestelmien arviointi – Tietojärjestelmien suunnitteluprosessin hallinta – Kurssisivu: www.uta.fi/sis/tie/tjsum/index.html – Kurssisivuille tulevat luennot, harjoitukset ja kurssimateriaalit Pirkko Nykänen 2 Ohjelma • 27.1 2015 klo 12-14 Pinni B1084 Johdanto – Tietojärjestelmätieteen suuntauksia, tietojärjestelmien tarkastelun kontekstit, tieto- ja tietojärjestelmäkäsityksiä, Tietojärjestelmien suunnittelun lähestymistavoista ja menetelmistä – Nunamaker JF and Briggs RO, Toward a broader vision on information systems. ACM Trans Manag Inf Syst 2(4), 2011 • 3.2.2015 Luonnontieteellinen ja suunnittelutieteellinen näkökulma tietojärjestelmien kehittämiseen March & Smith, Design and natural science research on information technology, Decision Support Systems 15, 1995, 251-266 – March, Park and Ram, Design science in information systems research, MISQ 28(1), 2004, 75-105 – – Case Pizzerian tietojärjestelmän suunnittelu Pirkko Nykänen 3 • 10.2.2015 Käyttäjien osallistuminen – käyttäjäkeskeinen suunnittelu – Muita käyttäjälähtöisiä suunnittelutapoja – J Gulliksen, B Göransson, I Boivie, S Blomkvist, J Persson, A Cjander, Key principles for user-centered systems design. Behavior and Information technology 22(6), 2003, 397-409 – JY Mao, K Vredenburg, PW Smith, T Carey, The state of user-centered design practice. Comm ACM 48(3), March 2005, 105-109 Pirkko Nykänen 4 • 17.2.2015 Ketterä tietojärjestelmien suunnittelu – Abrahamsson P, Conboy B and Wang X, Lots done, more to do: the current state of agile systems development research European Journal of Information Systems 18, 2009, 281–284 – Li Jiang & Armin Eberlein, Towards A Framework for Understandingthe Relationships between Classical Software Engineering and Agile Methodologies APOS 2008 ACM Workshop Pirkko Nykänen 5 • 24.2.2015 Tietojärjestelmien integraation suunnittelu – Bendik Bygstad, Peter Axel Nielsen and Bjørn Erik Munkvold, Four integration patterns: a socio-technical approach to integration in IS development projects. Info Systems J 20, 2010, 53–80 – K Umapathy, S Purao and RR Barton, Designing enterprise integration solutions: effectively. European Journal of Information Systems 17, 2008, 518–527 Pirkko Nykänen 6 • 3.3.2015 Tietosuoja ja tietoturvakysymykset suunnittelussa – Tietosuoja, tietoturva – Lait, normatiiviset ohjeet - Tietoturvan toteutus • 5.3.2015 Tietojärjestelmän onnistuminen – S Petter, W DeLone and E McLean, Measuring information systems success:models, dimensions, measures, and interrelationships. European Journal of Information Systems 17, 2008, 236–263 – Esimerkkejä tietojärjestelmien onnistumisen arvioinnista Suomessa / Kattava, hoitotyö Pirkko Nykänen 7 Kurssin suoritus • Harjoituksiin osallistuminen – osallistuminen 2/3 pakollista , kolmesta harjoituksesta kahteen osallistuttava – Harjoitukset pitää Antto Seppälä, [email protected] – Harjoitukset: 3 x 2 t, 24.2, 3.3 ja 10.3, B1084, kellonaika ilmoitetaan myöhemmin • Lisäksi opiskelija tekee pienimuotoisen referaatin annetusta artikkelista, artikkelit tulee kurssisivulle, niistä jokainen voi valita yhden ja toimittaa artikkelireferaatin minulle • Tentti maaliskuun lopussa, uusinta huhtikuussa Pirkko Nykänen 8 Plagiointi • jonkun toisen tekemän työn esittäminen omana työnä = plagiointia, luvatonta käyttöä! • sitä ei hyväksytä ja siitä seuraa rangaistus • esittämäsi tekstin tulee olla sinun itse tekemääsi, lainaukset ja viittaukset muiden tekemään työhön pitää merkitä näkyviin • 2 hyvää syytä välttää plagiointia: o it is against the ethical standard o it reflects incompetence Pirkko Nykänen 9 Tietojärjestelmäkäsite 1 Ihmisistä, tietojenkäsittelylaitteista, tiedonsiirtolaitteista ja ohjelmista koostuva järjestelmä, jonka tarkoitus on tietoja käsittelemällä tehostaa ja helpottaa jotakin toimintaa tai tehdä toiminta mahdolliseksi 2 Abstrakti systeemi, jonka muodostavat tiedot ja niiden käsittelysäännöt The Environment Information System Pirkko Nykänen I/O 10 Ulkoinen ympäristö Organisaatioympäristö Järjestelmän kehittämisympäristö Kehittämisprosessi Tietojärjestelmä Käyttäjän ympäristö Käyttöprosessi Ives, Hamilton and Davis 1980 Pirkko Nykänen 11 Kyse on siis • • • • • • Järjestelmän määrittelystä ja erityisesti rajauksesta (Scope) Toisiinsa liittyvistä järjestelmistä (Interaction / Integration) Järjestelmien yhteistoiminnallisuudesta (Interoperability) Järjestelmien kerrostamisesta (Layering) – Organizational system – Social system – Human system … Biological System – ICT system – Electrical system Järjestelmistä malleina (Models) ja tosielämän toteutuksina (Implementations, Instances) Rajapinnoista (Interfaces,APIs) ympäristöön jossa järjestelmä toimii – – Rajapinta määrittelee minkälaisia syötteitä järjestelmä pystyy vastaanottamaan ja minkälaisia tulosteita se pystyy tuottamaan pyrkimys standardien mukaisiin eli avoimiin rajapintoihin Pirkko Nykänen 12 Tietojärjestelmätieteen kehityslinjat Luonnontieteet Sosiaalitieteet Kauppatieteet Keskittyminen organisaatioiden tietojenkäsittelyyn 13.3.2012 Keskittyminen tietotekniikan loppukäyttäjiin Tietojärjestelmätiede Pirkko Nykänen 13 Tietojärjestelmätiede • • • • • Tutkitaan ja kehitetään tietojärjestelmiä organisaatioiden toimintojen kehittämiseksi ja tukemiseksi, Tietojärjestelmien kehittämisen tavoitteena on saada aikaan haluttu muutos kohteena olevassa toiminnassa ottaen huomioon sosiaaliset ja organisatoriset kontekstit Muutosta ohjaavat asetetut tavoitteet ja tietojärjestelmän kehittämisen avulla pyritään vaikuttamaan halutun muutoksen toteutumiseen Tietojärjestelmien kehittämisen lisäksi tarvitaan useimmiten muitakin muutoksia, esimerkiksi työtehtävien ja toimintatapojen muutoksia sekä koulutusta uusien menetelmien ja välineiden käyttöön lait, asetukset ja muut normatiiviset ohjeet asettavat reunaehdot Pirkko Nykänen 14 Tietojärjestelmätieteen tutkimuksesta • Suunnittelutieteellinen lähestymistapa • Luonnontieteellinen / käyttäytymistieteellinen lähestymistapa Pirkko Nykänen 15 Tietojärjestelmän kehittäminen = SYSTEMOINTI - kehitysryhmän tietyssä ympäristössä suorittama kohdejärjestelmän muutosprosessi, joka tapahtuu kohdejärjestelmälle asetettujen tavoitteiden mukaisesti KEHITYSRYHMÄ ASETTAA TAVOITTEET HAVAINNOI KOHDEJÄRJESTELMÄ SUORITTAA OHJAA MUUTOSPROSESSI OVAT OMINAISUUKSIA KOHDEJÄRJESTELMÄ TAPAHTUU YMPÄ RI STÖ Pirkko Nykänen 16 ISD - Information systems (analysis and) design – Menetelmät • Kattavia, moniaskelisia lähestymistapoja ja malleja tietojärjestelmien suunnitteluun – Tekniikat • Prosesseja joita seuraamalla pyritään varmistamaan että järjestelmän suunnittelu ja kehittäminen on suunniteltua, vaiheittaista ja kaikki kehittämistyössä mukana olevat tietävät mitä ollaan tekemässä – Työkalut, välineet • Erilaisia ohjelmistoja, case-työkaluja joiden avulla suunnittelua ja kehittämistä tehdään Pirkko Nykänen 17 Tietojärjestelmien suunnittelu • = Työprosessi, jossa – Tutkitaan ihmisten ja/tai organisaatioiden toimintaa – Mallinnetaan ja kuvataan valittu osa ” rakennuspiirustukset” – Toteutetaan piirustusten mukainen järjestelmä – Otetaan järjestelmä hallitusti käyttöön toimintaympäristössä – ylläpidetään ja kehitetään järjestelmää • = SYSTEEMITYÖTÄ Pirkko Nykänen 18 Tietojärjestelmien suunnittelun maailmat • Työprosessien konkreettinen maailma – Näin ihmiset ja organisaatiot toimivat, toteuttavat tehtäviään • Mallien ja kuvausten abstrakti ja looginen maailma – Tältä toiminnot ja tehtävät näyttävät prosesikaavioina, tietovirtakaavioina, käyttötapauksina, formaaleina esityksinä • Tietokoneiden, varusohjelmien ja tietoverkkojen tekninen maailma – Näillä teknologioilla ja ratkaisuilla kuvatut toiminnat voidaan toteuttaa Pirkko Nykänen 19 Käsitys toiminnasta (mallit) tarvitaan toimintaprosessien uudistamiseen näitä tukevien tietojärjestelmien suunnitteluun ja toteutukseen Arkkitehtuuri tarvitaan tietojärjestelmätasolla tarvittavan yhteistoiminnallisuuden järjestämiseksi 18.1.2011 Luento 1 Pirkko Nykänen 20 Mahdollinen tarkastelukehys tietojärjestelmäarkkitehtuuriin • • • • • • Strategianäkymä - Lainsäädäntö, politiikka Tietonäkymä - tietomalli, tiedot, rakenteet, yhteydet Palvelunäkymä - käyttäjät, käyttötilanteet,käyttö Ohjelmistonäkymä - Tietojärjestelmät, ohjelmistot, niiden suhteet Tiedonsiirtonäkymä - Liitännät, rajapinnat, tiedonsiirto Toteutusnäkymä - totetutus tarjouspyyntöjen, RFIden ja sopimusten avulla Pirkko Nykänen 21 Tietojärjestelmäarkkitehtuuri Liiketoimintanäkymä, toiminnallinen kokonaisuus Tietoarkkitehtuuri, tietomalli Palvelunäkymä Tietojärjestelmä- ja tiedonsiirtonäkymä Toimeenpanonäkymä / teknologinen toteutus Pirkko Nykänen 22 TÄRKEÄÄ: • Käyttäjien toiveiden selvittäminen • Käyttäjän tarpeiden määritteleminen • Määritysten tekeminen ja hallinta – Joka neljäs tietohallintojohtaja nimeää epäonnistuneen tai kokonaan keskeytetyn tietojärjestelmäprojektin ensisijaiseksi epäonnistumisen syyksi epäselvät tai puutteelliset vaatimusmääritykset – Käyttäjävaatimusten selkeä määrittely, tarpeiden oikea ymmärtäminen ja kunnollinen dokumentointi sekä muutospyyntöjen hallinta ovat keskeisiä tekijöitä tietojärjestelmäprojektin onnistuneelle läpiviennille Pirkko Nykänen 23 Ongelman määrittely • • Suunniteltavan järjestelmän tavoitteet, mihin ongelmiin järjestelmä kohdistuu, tavoitetila, muutos / parannus nykytilaan Suunnittelun lähtökohtien analyysi – Ongelman määrittely, hyväksyntä: määritellään ja kaikki osapuolet hyväksyvät määrittelyn (ongelma on…ongelma vaikuttaa…ongelmasta seuraa…ratkaisusta saatavat hyödyt…) – Ongelman taustalla olevan ongelman ymmärtäminen: ongelman taustalla olevats seikat, joita pyritään korjaamaan / muuttamaan,ydinongelma – Käyttäjien ja muiden osapuolten tunnistaminen: käyttäjät ja kaikki tahot, joihin uuden tietojärjestelmän kehittäminen ja käyttöönotto vaikuttaa (keitä ovat käyttäjät …. Keitä ovat asiakkaat…kehen järjestelmän tulokset vaikuttavat…kuka arvioi/ hyväksyy kehitetyn järjestelmän…keitä organisaation ulkopuolisia järjestelmän kehittäminen koskee… miten heidät otetaan huomioon….kuka ylläpitää järjestelmää…) Pirkko Nykänen 24 – Järjestelmän rajojen määrittely: mikä on järjestelmän kohdealue ja mikä sen ulkopuolella, toiminnan rajat, miten järjestelmä vaikuttaa rajojensa ulkopuolelle, – Tunnistetaan järjestelmäratkaisuun liittyvät rajoitteet: aikataulu, tietokannat, resurssit (henkilöt, raha), organisaation näkökulmat etc • Ongelmanmäärittelyä saadaan selvennettyä käyttötapauksilla, use cases – toimijan vuorovaikutus järjestelmän kanssa – järjestelmän suorittama tapahtumasarja, joka tuottaa tietyn toimijan havaitseman sellaisen tuloksen, jolla on toimijalle jokin arvo Pirkko Nykänen 25 Vaatimusmäärittelystä • Suunnittelijoiden ja asiakkaiden välinen vuorovaikutus, vaatimusten tunnistaminen – asiakkaat saattavat tuntea toiminnat ja prosessit huonosti – Usein ne on dokumentoimatta – Sovelluksen sisältö on kuitenkin asiakkaiden tiedon ja tietämyksen ja sen kommunikoinnin varassa – Asiakkaiden koulutus • Kehitysprosessit – vaatimusten dokumentointi ennen kehittämisopimusten tekoa – muutoksen hallinta! • Suunnittelujohtoinen prosessi (design-driven requirements process) – erityisesti selainpohjaisten (www) järjestelmien suunnittelussa: ehdotetut ratkaisut / suunnitelmat muuttavat asiakkaiden liiketoiminnan prosesseja, ja miten ne kytkeytyvät järjestelmäarkkitehtuuriin – Prototypointi – ratkaisun vaikutuksia Pirkko Nykänen 26 Mallit, menetelmät ja systemointi auttavat hallitsemaan tietojärjestelmän suunnittelua Suunnittelu- ja kehittämisprosessin hallinta Halutun tuloksen saavuttaminen Integroinnin tuki Uusien teknologioiden käyttöönoton mahdollistaminen Uskottavuuden luominen (kannattaa investoida) Perinnejärjestelmien kapseloinnin ja migraation mahdollistaminen ‘Plug & Play’: uusia sovelluksia voidaan ottaa käyttöön ja vanhoja korvata uusilla ja että tämä olisi mahdollisimman vähän tuote- ja valmistajariippuvaista Teknisen toteutusalustan uusiminen osina (laitteet, verkot, varusohjelmistot ...) Pirkko Nykänen 27 Metodologian roolit • Intellektuaalinen rooli – hallittavissa, manageroitavissa, valvottavissa, ohjattavissa – taloudellinen näkökulma; resurssien hyödyntäminen, kustannusten optimointi – epistemologinen perustelu: suunnittelutietämyksen kerääminen ja kumulointi, kokemattomien suunnittelijoiden oppiminen, organisaatioiden oppiminen Pirkko Nykänen 28 • Poliittinen rooli – pystytään käsittelemään ja hallitsemaan prosessin monimutkaisuutta, comfort factor – ongelma on tärkein kuitenkin, ei metodologia – metodologian käyttö voi olla monella tapaa vahvistava tekijä, laillinen perustelu, kilpailuetu ( tarjouskilpailut, sertifiointi etc) – auttavat rakentamaan kuvaa ammattimaisesta kehittämisestä, professionalismista, profiilin nosto, ammttikuvan parantaminen – luotettavuustekijä: auttaa perustelemaan It-investointeja ja niiden tarpeellisuutta – auditointi, sertifiointi mahdollista, voidaan seurata prosessia ja sen etenemistä Pirkko Nykänen 29 Tietojärjestelmäsuunnittelusta • Tietojärjestelmän suunnittelu ei ole ensisijaisesti loogis-tekninen ongelma • ei ole olemassa oikopolkuja, hokkus-pokkuskonsteja • Ei ole olemassa yhtä oikeaa tai väärää tapaa kehittää tietojärjestelmiä • Hyväkään menetelmä ei toimi, ellei sitä osata soveltaa • Tilannekohtaisuus – tunnetaan ja ymmärretään tilanteen ominaisuudet, osataan räätälöidä ja muokata Pirkko Nykänen 30 Tietojärjestelmien suunnittelu ja toteutus - mikä on vaikeaa? • Tietojärjestelmän toiminnallinen määrittely - mitä järjestelmän tulisi tehdä? – Ongelman tunnistaminen, kuvaaminen – Toiminnallisen muutoksen analyysi, kuvaaminen – Ratkaisumahdollisuuksien tunnistaminen – Kommunikointiongelmat: käyttäjä - IT ammattilainen • Rakentamisprosessi – Menetelmät, tekniikat, välineet, kehittämisprosessin hallinta, muutoksen hallinta • Tietojärjestelmän käyttöönotto – Työtapojen, toimintatapojen muuttaminen, 31 Pirkko Nykänen kehittäminen, yhteensovittaminen Miksi on vaikeaa? • Tietojärjestelmien kehittämisen historia on lyhyt, n 50v • Kehittämisessä on joukko ongelmallisia ominaispiirteitä: Monimutkaisuus, näkymättömyys, muunnettavuus, ainutkertaisuus, skaalautumattomuus, epäjatkuvuus • Liiallinen optimismi, järjestelmien abstrakti luonne • Nopeasti uusiutuva teknologia • Järjestelmien kasvava keskinäinen integrointi, erilaiset toimintaympäristöt, käyttäjäkohtaiset räätälöidyt järjestelmäversiot • Järjestelmiin liittyvät toiminnalliset ja sosiaaliset ympäristöt, niiden luonne, ominaisuudet ja kehittyminen • Eri sidosryhmien poikkeavat näkemykset järjestelmien luonteesta ja tavoitteista • Ammutaan liikkuvaa maalia, ympäristö kehittyy koko ajan Pirkko Nykänen 32 Ratkaisuja? • • Systemaattisella ja määrätietoisella toimintatapojen kehittämisellä voidaan päästä hyviin tuloksiin Kehittämisprosessi – Kokonaisuus, joka alkaa tietojärjestelmän kehittämiseen johtavan idean syntymisestä aina järjestelmästä luopumiseen saakka – Kattaa koko järjestelmän elinkaaren (life-cycle) – Kiinteässä vuorovaikutuksessa ympäristönsä kanssa: tietojärjestelmää kehittävän ja käyttävän organisaation liiketoiminta, johtaminen, laatujärjestelmä ja projektien hallinta – Myös prosessi itse vaikuttaa itseensä: sen käytöstä seuranneiden hyötyjen ja haittojen tulee ohjata prosessin kehittämistä – Prosessi ei ole entiteetti joka kerran määritellään ja jota sen jälkeen orjallisesti noudatetaan vaan jatkuvan evoluution mukaan elävä modulaarinen ja dynaaminen kokonaisuus – Prosessin osia (esim. tietyissä vaiheissa käytettyjä menetelmiä) tulisi olla helppo arvioida ja tarvittaessa muuttaa ilman että vaikutukset muihin prosessin osiin olisivat epäsuotuisat – Prosessin kehittäminen ei voi kuitenkaan olla kovin radikaalia jokainen hanke ei saa tehdä laajoja muutoksia prosessiin (ettei prosessista saatu hyöty häviä) Pirkko Nykänen 33 Tietojärjestelmäkäsityksistä ja suunnittelun lähestymistavoista ja historiasta Pirkko Nykänen 34 Tietojärjestelmien tarkastelun kontekstit Käyttäjän konteksti - käyttäjäjärjestelmät, organisaatiot = organisatorisen ja yhteisöllisen tiedon tuottaminen ja tarjonta Tuottajien konteksti Edistäjien konteksti - sovellukset, teknologia = tuottaminen ja tarjonta - tietojenkäsittelypalvelut = tuottaminen ja tarjonta Pirkko Nykänen 35 Tieto ja tietojärjestelmät • • • Tietokäsitykset – mitä on tieto - dataa, informaatiota, tietämystä, viisautta – mitä on data, informaatio, tietämys, viisaus Tietojärjestelmäkäsitykset – mitä tietojärjestelmät ovat - tietoteknisiä järjestelmiä, tietojenkäsittelyjärjestelmiä, informaatiojärjestelmiä, käyttäjäjärjestelmiä Järjestelmän luonnetta koskevat käsitykset – millaisia järjestelmät ovat • Formaaleja: rakenne, toiminta ja rajat yksikäsitteisesti määritelty • Holistisia: järjestelmä on kokonaisuus joka on vuorovaikutuksessa ympäristön kanssa, ei selkeitä rajoja tai osia • Suunnittelumenetelmät – millaisia olettamuksia, arvoja ja oletuksia sisältyy lähestymistapoihin ja menetelmiin Pirkko Nykänen 36 Tietojärjestelmäkäsitykset • Tietotekninen järjestelmä – laitteista, ohjelmistoista ja tietoverkoista koostuva teknillinen järjestelmä – jättää organisatorisen ja inhimillisen tiedon käsittelyn ulkopuolelle • Tietojenkäsittelyjärjestelmä – organisaation toiminnalle tietoja (dataa) sekä manuaalisesti että automaattisesti välittävä ja käsittelevä järjestelmä – jättää epäformaalin tiedon käsittelyn tarkastelun ulkopuolelle 37 Pirkko Nykänen • Informaatiojärjestelmä – informaation käsittely osana organisaation toimintaa – formaali ja epäformaali toiminta – tekniset ja sosiaaliset tekijät – jättää tietämyksen luonnin ja eräät tietämyksen siirtämisen osatekijät tarkastelun ulkopuolelle • Käyttäjäjärjestelmä – Inhimillinen tietoa käsittelevä järjestelmä – Voi tarkastella dataa, informaatiota tai tietämystä, mutta aina inhimillisen tiedon käsittelyn näkökulmasta Pirkko Nykänen 38 Tietojärjestelmän luonne • Formaali järjestelmäkäsitys – järjestelmä kattaa rakenteen ja toiminnan – rakenne on joukko alkioita ja niiden välisiä relaatioita ja muodostaa järjestelmän pysyvän, koossa pitävän puolen – toiminta on joukko alkioiden tuottamia tranformaatioita ja tapahtuu annetun rakenteen puitteissa – Järjestelmän rakenne, toiminta, ja rajat ovat täsmällisesti ja yksikäsitteisesti määritelty – järjestelmän rakenne ja toiminta voi asetetun tavoitteen suhteen olla enemmän tai vähemmän onnistunut Pirkko Nykänen 39 Holistinen järjestelmäkäsitys • Järjestelmä on kokonaisuus, joka on jatkuvassa vuorovaikutussuhteessa ympäristönsä kanssa – järjestelmällä ei ole selkeitä rajoja tai osia – ympäristö vaikuttaa järjestelmän sisäisen toiminnan ja muutosten onnistumiseen • järjestelmän ja sen ympäristön vuorovaikutusta ei voi ennakoida kovinkaan tarkasti • mikä tahansa järjestelmämääritelmä on enemmän tai vähemmän mielivaltainen, koska holistisen todellisuuden voi aina käsitteellistää ja jäsentää jollain toisella tavalla Pirkko Nykänen 40 Järjestelmäkäsitysten soveltuvuus • Missä määrin esitetyt järjestelmäkäsitykset soveltuvat tietojärjestelmien tarkasteluun? – Teknologinen järjestelmä • formaali tulkinta; järjestelmä formalisoitavissa ja deteministinen – Organisatorinen järjestelmä • holistinen tulkinta; järjestelmä puoliformaali ja kontingentti • formaali tulkinta soveltuu ainoastaan sellaisiin järjestelmän osiin, joita halutaan ja voidaan säännellä tarkasti – Inhimillinen järjestelmä • holistinen tulkinta; järjestelmä ei-formaali ja emergentti Pirkko Nykänen 41 • Formaali järjestelmäkäsitys soveltuu siis tietojärjestelmien tarkasteluun ainoastaan siinä määrin kuin kohteena on ihmisten hallittavissa oleva artefakta – teknologia on varsin helposti hallittavissa – ihminen on vaikeasti hallittavissa – organisaatioita pyritään hallitsemaan, mutta organisaatioihin sisältyvät ihmiset haittaavat hallinnan saavuttamista Pirkko Nykänen 42 Tietojärjestelmä • Teknologinen järjestelmä – • Tietojärjestelmäorganisaatio – • organisatoriset ja institutionaaliset rakenteet, päätökset, standardit, toimintaohjeet Sosiaalinen tietojärjestelmä – • teknologinen infrastruktuuri, laitteistot, tietoverkot, ohjelmistot henkilöiden väliset sosiaaliset suhteet, sosiaaliset toimintatavat, yhteinen viestintä ja kielenkäyttötavat Henkilökohtainen tietojärjestelmä – henkilökohtaiset työjärjestelyt, opitut viestinnän ja kielenkäyttötavat, suhteet työtovereihin ja työhön Pirkko Nykänen 43 Käytännön ongelmia tietojärjestelmien kehittämisessä • • • • • • osa hankkeista ei valmistu, tai ylittää niille varatut aika-, henkilö- tai taloudelliset resurssit Ongelmat voivat olla luonteeltaan osittain teknisiä, yleisin syy kuitenkin hankkeiden huono hallinta, kun hankkeet kasvavat >>>suuremmat kehitysryhmät >>> ongelmat suunnittelu- ja toteutustyön organisoinnissa ja hallinnassa sekä kommunikaatiossa Pienen hankkeen voi pelastaa “sankariteoilla”, suurta hanketta ei Teknologia kehittyy >>>uusia mahdollisuuksia soveltaa tekniikkaa >>> järjestelmistä tulee suurempia, monimutkaisempia ja vaativia Vaatimukset systeemityölle ovat kiristyneet: yhä suurempia järjestelmiä tulisi tuottaa yhä nopeammin, kuitenkin mahdollisimman pienin kustannuksin Vaikka kehitystyötä on pyritty helpottamaan uusilla menetelmillä ja välineillä, systeemityön tuottavuus kasvaa vain noin 4% vuodessa samalla kun järjestelmien keskimääräinen koko kaksinkertaistuu muutamassa vuodessa Pirkko Nykänen 44 • Epäonnistunut tietojärjestelmä ? – Vaikea määritellä yksiselitteisesti – Yleensä määritellään yksittäisinä tilanteina • toimivaa järjestelmää ei ole saatu aikaan • kustannukset suuret • tietojärjestelmä ei tuota hyötyä • harva käyttää järjestelmää • asenteet negatiiviset järjestelmää kohtaan • järjestelmä ei sovi suunniteltuun tarkoitukseen / suunnitelluille käyttäjille / käyttöympäristöön 80% / 20% -sääntö Tietotekniikan arviointi • Tietotekniikka kallista, laajavaikutteista, merkitys kasvaa • Vaikutuksia toimintarakenteisiin, prosesseihin, työhön ja sen tuloksiin, työtehtäviin, työn pätevyysvaatimuksiin,.. • Tarjolla erilaisia vaihtoehtoja • Halutaan selvittää tietotekniikan hyötyjen vaihtelua eri paikoissa • Siirretään tietotekniikkaa erilaiseen ympäristöön (technology transfer) • Toiminnan kehittäminen tietotekniikkaa hyväksikäyttäen • Organisaatioiden muutosvastarinta Pirkko Nykänen 45 Ongelmia tietojärjestelmien laadussa • • • Laadulliset ongelmat ovat tyypillisesti niitä joihin asiakas tai käyttäjä ensimmäisenä törmää Järjestelmät sisältävät usein lukuisia virheitä ja puutteita vielä toimitusvaiheessa yleisiä ovat myös tapaukset, joissa valmis järjestelmä ei vastaakaan asiakkaan vaatimuksia tai sitä ei jostain muusta syystä voida ottaa käyttöön >>> on tehty järjestelmä joka ei sovi siihen tehtävään / ympäristöön mihin se on tarkoitettu Pirkko Nykänen 46 Ongelmia tietojärjestelmien ylläpidossa • • • • • • Mitä tärkeämpi järjestelmä, sitä kauemmin se elää ja sen ylläpitoon kuluu resursseja Vain noin kolmasosa systeemityöstä on uusien järjestelmien kehittämistä: 2/3 työstä on vanhojen järjestelmien ylläpitoa Mitä aikaisemmassa vaiheessa kehitystyössä on tehty virhe, sitä kalliimmaksi sen korjaaminen tulee koska myös myöhemmät vaiheet joudutaan uusimaan Usein ylläpitoa tekevät nuoret ja kokemattomat työntekijät Perinnejärjestelmät (legacy systems) Dokumentaatio puutteellista, ei ajantasaista, systeemin yksityiskohdat suunnittelijan /ohjelmoijan päässä Pirkko Nykänen 47 Systeemityön historiaa ja lähestymistapoja Mallintamista korostavat menetelmät • 1970-luvulla: toimintosuuntautuneet, rakenteelliset menetelmät • 1980-luvulla: tietosuuntautuneet menetelmät • 1990-luvulla: oliosuuntautuneet menetelmät, HCI/GUI, palvelin-asiakas arkkitehtuurit, Internet • 2000-luvulla: Websovellukset, langattomat sovellukset, komponenttiarkkitehtuurit, palveluarkkitehtuurit (SoA) • 2010 – cloud computing, hajautetut arkkitehtuurit Prosessimallit • 1950-luvulla: Vesiputousmalli (waterfall model), vaihejakomalli • 1970-luvulla: prototypointi ja evolutionäärinen malli • 1980-luvulla: spiraalimalli • 1990-luvulla: samanaikaisuus, rinnakkaismallit • 2000-luvulla: ketterät menetelmät (agile methods) Pirkko Nykänen 48 Järjestelmäkehityksen lähestymistavat • Metodiset lähestymistavat – – – – – formaalit elinkaarilähestymistavat rakenteelliset lähestymistavat protoilu ja evolutionääriset lähestymistavat sosiotekniset, osallistuvat lähestymistavat ymmärryksen muodostamiseen ja ongelmanmuotoiluun pyrkivät lähestymistavat – ammattiyhdistysjohtoiset lähestymistavat – emansipatoriset lähestymistavat Pirkko Nykänen 49 Keskeisten kysymysten kehitys metodisissa lähestymistavoissa • • • • Tekniset kysymykset: ohjelmointitekniikat Järjestelmäkehityksen hallintaan liittyvät kysymykset – formaalit elinkaarilähestymistavat: prosessin hallinta – rakenteiset lähestymistavat: prosessin ja tuotteen hallinta Käyttäjäsensitiiviset kysymykset – rakenteiset & protoilu & evolutionääriset: Käyttöliittymät ja käyttäjien vaatimukset Sosiaaliset kysymykset – sosiotekniset, osallistuvat lähestymistavat: interventio sosiaaliseen työjärjestelmään Pirkko Nykänen 50 • • • • Ymmärryksen muodostamiseen ja ongelmanmuotoiluun pyrkivät lähestymistavat: useat näkökulmat ja yhteisymmärrys Emansipatoriset kysymykset: ammattiyhdistysvetoiset lähestymistavat: järjestelmän käyttäjien intressit Neohumanistiset lähestymistavat: yhteisymmärryksen muodostaminen poistamalla esteitä vapaalta ja vääristymättömältä kommunikaatiolta Metodiset lähestymistavat vs. ametodinen ja agiili lähestymistapa – perinteiset metodiset lähestymistavat ovat laajoja ja luonteeltaan raskaita – ametodine lähestymistapa hylkää järjstelmäkehitysmenetelmien käytön – agiili eli ketterä järjestelmäkehitys soveltaa tilannekohtaisesti kevyitä metodisia toimintatapoja Pirkko Nykänen 51 Systeeminsunnittelijan taitojen tarve a) ennen b) nyt b) a) Ihmiset, vuorovaikutus Prosessit ja parhaat käytännöt Teknologia Pirkko Nykänen Hietanen Päivi, Systeemityö523/2004 Systeeminsuunnittelijan taidot – Analyyttiset taidot, osaaminen • Toiminnallisen, kohdeympäristön, organisaation toiminnan ymmärtäminen • Ongelmanratkaisutaito, looginen ajattelu, ongelmien mallinnus, jäsennys, kuvausmenetelmien hallinta • Systeemiajattelu; kyky nähdä / ajatella toimintaa ja tietojärjestelmiä systeeminä – Tekniset taidot • Teknologioiden ominaisuudet, soveltaminen, soveltamisen mahdolloisuudet ja rajat – Hallinta, johtaminen • Hankkeiden / projektin hallinta, resurssointi, riskit, mahdollisuudet – Sosiaaliset kyvyt, kommunikointi • Ryhmätyö, tiimityötaidot, kyky tulla toimeen ihmistenm kanssa, kyky viestiä ja kommunikoida (suullinen, kirjallinen ) Pirkko Nykänen 53