Tietojärjestelmä TJT-tutkimuksen kohteena kautta aikojen. Markku I. Nurminen Turun yliopisto, Informaatioteknologian laitos JTJT produktio 2004



Samankaltaiset tiedostot
17 BUDJETOINTI. Asiakaskohtainen Budjetti Ylläpito-ohjelma. Dafo Versio 10 BUDJETOINTI. Käyttöohje. BudgCust Yleistä

Kirjoita oma versio funktioista strcpy ja strcat, jotka saavat parametrinaan kaksi merkkiosoitinta.

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla

Kirjanpidon ALV-muutos

Käyttöjärjestelmien historia. Joni Herttuainen Henri Jantunen Markus Maijanen Timo Saksholm Johanna Tjäder Eetu Turunen

Ongelma(t): Mihin perustuu tietokoneiden suorituskyky ja sen jatkuva kasvu? Mitkä tekijät rajoittavat suorituskyvyn parantamista ja mitkä niistä ovat

Ohjelmoinnin perusteet Y Python

Pipfrog AS Tilausten hallinta

Sivu 1 / Viikin kirjasto / Roni Rauramo

Tarina-tehtävän ratkaisu

Ongelma(t): Mihin perustuu tietokoneiden suorituskyky ja sen jatkuva kasvu? Mitkä tekijät rajoittavat suorituskyvyn parantamista ja mitkä niistä ovat

811120P Diskreetit rakenteet

TIETOJEN TUONTI TIETOKANNASTA + PIVOT-TAULUKON JA OLAP-KUUTION TEKO

Esimerkkiprojekti. Mallivastauksen löydät Wroxin www-sivuilta. Kenttä Tyyppi Max.pituus Rajoitukset/Kommentit

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo

Jouni Huotari OLAP-ohjetekstit kopioitu Microsoftin ohjatun OLAP-kuution teko-ohjeesta. Esimerkin kuvaus ja OLAP-määritelmä

ARVI-järjestelmän ohje arvioinnin syöttäjälle

Home Media Server. Home Media Server -sovelluksen asentaminen tietokoneeseen. Mediatiedostojen hallinta. Home Media Server

Zeon PDF Driver Trial

811120P Diskreetit rakenteet

Versionhallintaa. Versionhallinnan käyttöönotto SAS ympäristössä

Tietokannat PERUSMATERIAALI Microsoft Access 2007 Kieliversio: suomi Materiaaliversio 1.0 päivitetty

Meidän visiomme......sinun tulevaisuutesi

TIETOKANTOJEN PERUSTEET MARKKU SUNI

DumpDbox-ohjelmiston asennus- ja käyttöohjeet Sisällys

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

EP A-Oh jelmaseloste

Amazon Web Services (AWS) on varmaankin maailman suosituin IaaS-tarjoaja. Lisäksi se tarjoaa erilaisia PaaS-kategoriaan kuuluvia palveluita.

HELIA TiKo-05 1 (10) Outi Virkki ICT03D Tieto ja tiedon varastointi yrityksessä

SYÖTTÖPOHJA LUKUJEN SYÖTTÖÖN ERI TARKOITUKSIIN

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

1 Aritmeettiset ja geometriset jonot

Auditointiajot, Vaasa

Nettisivujen Päivitysohje

1. Uuden Ilmon käytön eroavaisuudet vanhasta Ilmosta lyhyesti

Access-kyselyt. Luetteloinnin kehittämispäivä Mia Kujala

kertaa samat järjestykseen lukkarissa.

Send-It ilmoittautumisjärjestelmä (judotapahtumat Suomessa)

Seguinin lauta A: 11-19

Tiedonhallinnan perusteet. Viikko 1 Jukka Lähetkangas

Tulevaisuuden päätelaitteet

Project group Tete Work-time Attendance Software

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

Pankkitositteen tietojen kohdentaminen

Sosiaalisen median käyttö autokaupassa. Autoalan Keskusliitto ry 3/2012 Yhdessä Aalto Yliopisto, Helsingin kauppakorkeakoulu opiskelijatiimi

Luento 1 (verkkoluento 1) Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus

Matopeli C#:lla. Aram Abdulla Hassan. Ammattiopisto Tavastia. Opinnäytetyö

CUDA. Moniydinohjelmointi Mikko Honkonen

2013 -merkistä tunnistat uudet ominaisuudet

Tikli-projektin avausseminaari

3. Ryhdy kirjoittamaan ja anna kaiken tulla paperille. Vääriä vastauksia ei ole.

Lomalista-sovelluksen määrittely

HELIA 1 (11) Outi Virkki Tiedonhallinta

Webforum. Version 15.3 uudet ominaisuudet. Päivitetty:

CABAS. Release Notes 5.4. Uusi kuvien ja dokumenttien käsittely

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö

Version päivittäminen

Järjestelmäarkkitehtuuri (TK081702) Web Services. Web Services

Ohjelmoinnin perusteet Y Python

Algoritmit 1. Luento 10 Ke Timo Männikkö

Hyvinvointikyselyjen toteuttaminen sähköisesti oppilaitoksissa

Tuloperiaate. Oletetaan, että eräs valintaprosessi voidaan jakaa peräkkäisiin vaiheisiin, joita on k kappaletta

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä

ASCII-taidetta. Intro: Python

TEKSTINKÄSITTELYTEHTÄVIÄ, OSA 1

Käyttöjärjestelmät: prosessit

Hyvästä paras. Miksi jotkut yritykset menestyvät ja toiset eivät?

Action Request System

Tulosta yrityksesi tuloslaskelma ja tase myöhempää tarkastusta varten. Ota varmuuskopio tilanteesta ennen tilimuunnosta.

1 Kannat ja kannanvaihto

Syöttölaitteiden historia

Toinen harjoitustyö. ASCII-grafiikkaa

Algoritmit 1. Luento 10 Ke Timo Männikkö

Valintanauhan komennot Valintanauhan kussakin välilehdessä on ryhmiä ja kussakin ryhmässä on toisiinsa liittyviä komentoja.

Tietorakenteet, laskuharjoitus 7, ratkaisuja

Luento 2: Tiedostot ja tiedon varastointi

Internet-pohjainen ryhmätyöympäristö

Kenttä- ja salivarausohjelmisto koripalloseuroille ja halleille

HumakPro-uudistuksia ja -parannuksia / kevät 2013:

Eksote-tilauksen ajaminen poikkeaa tavallisesta taksintilauksesta muutamin osin, jotka käydään läpi tässä ohjeessa.

Verkkokurssin tuotantoprosessi

TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 30. marraskuuta 2015

Nokia Lifeblog 2.5 Nokia N76-1

HELIA 1 (16) Outi Virkki Tietokantasuunnittelu

MICROSOFT EXCEL 2010

Ohjelmoinnin perusteet Y Python

Tehtävä: FIL Tiedostopolut

Sisällysluettelo 1 Johdanto Root, koko Opalan pääkäyttäjä

Silent Gliss 9020/21, 9040/41 ja 5091 moottorit. Uusi moottorisukupolvi

ARVI-järjestelmän ohje arvioinnin syöttäjälle

Asteri Palkanmaksun uudistuksia 2006

Sisäinen laskutus ja sisäiset lähetteet Käyttöohje. Sisällys. Päivitetty YLEISTÄ... 2

Webforum. Version 14.4 uudet ominaisuudet. Viimeisin päivitys:

Operator's Panel Välityspöytä

TK Palvelinympäristö

Brother Image Viewer Android -opas

Kopioi cd-levyt kiintolevylle, niin fyysiset levyt joutavat eläkkeelle.

Työssäoppiminen ja sen kopiointi Wilmassa Wilmaohje Turun ammatti-instituutti Sami Mäkelä

Transkriptio:

Tietojärjestelmä TJT-tutkimuksen kohteena kautta aikojen Markku I. Nurminen Turun yliopisto, Informaatioteknologian laitos JTJT produktio 2004

Johdanto Tämän historiallisen katsauksen tarkoituksena on saada aikaan etäisyyttä kaikista niistä tutuista asioista, joihin olemme tottuneet kohdatessamme tämän päivän tietotekniikkaa. Voimme toivoa, että tietojärjestelmän käsitteen ydin sitä kautta tulisi meille paremmin näkyväksi. Onhan eri aikakausina ratkaistu tiettyjä ongelmia eri tavoilla. Toisaalta ovat toki ongelmatkin olleet eri aikoina erilaisia. Joka tapauksessa meille historian kautta avautuu aitiopaikka muutosten tarkkailemiseen. Kun uusi ratkaisu usein teknisen kehityksen siivittämänä syrjäyttää vanhan, voimme nähdä siinä muutoksen aikaisempaan käytäntöön. Käytännön muuttuminen kohdistuu usein käyttötoimintaan, siis käytön käytäntöön. Ainakin vähänkin suurempien murrosten jälkeen käyttäjien tietotekniikan kanssa toimitettava arkipäivä tulee kalustettavaksi uudella tavalla, joskus merkittävästikin. Näitä uudenlaisia ratkaisuja ei voida tai kannata useinkaan tuottaa vanhoilla menetelmillä. Siten myös kehittämisen käytäntö joutuu tässä tilanteessa muutoksen kohteeksi. Itsestään selvältä tuntuu, että myös johtamisen käytäntö joutuu sopeutumaan muutokseen, joskus itsekin uusia käytäntöjä keksien ja muutoksen moottorina toimien. Jos lopulta tietojärjestelmien tutkimuksen käytäntö ei muutu mukana, menettää se nopeasti relevanssinsa muilta osin kuin tietojärjestelmien historiaan kohdistuneelta osalta. Historiantutkimuksen tehtävä on kuvata tapahtumien kulkua mahdollisimman objektiivisesti ja virheettömästi. Kenties suurempi tehtävä on auttaa lukijaa oivaltamaan historian kulun syy- ja seuraussuhteita: miksi kävi sillä tavalla kuin kävi? Olisiko voinut käydä toisin? Mitä merkityksiä voidaan nähdä toteutuneessa kehityksessä? Nämä kysymykset kiinnostavat meitä tässäkin yhteydessä. Yleisenä käsityksenä on, että olemme kaikkien muutosten ja murrosten kautta kulkeneet aina vain parempia tietojärjestelmäratkaisuja kohti. Tämä ilmentää juuri kurssiproduktion käytäntöteemaa. Aikaisemman käytännön syrjäyttävä uusi käytäntö on jossakin suhteessa käytännöllisempi kuin tuo aikaisempi. Ennen ja jälkeen asettuvat täten eräänlaiseen parivertailuun siitä, kumpi on parempi. Kehityksen kulku ei kuitenkaan ole ollut lainkaan näin suoraviivainen. On helppo nähdä vaihtoehtoisia reittejä. Mitä jos tietty innovaatio olisi syntynyt muutamaa vuotta aikaisemmin? Minkälaisia uusia mahdollisuuksia se olisi avannut tilanteessa, jossa tietyt käytännöt eivät vielä olisi juurtuneet kovin syvälle infrastruktuurin kaltaisiksi kivettymiksi, joita ei enää myöhemmin ollut mahdollista, järkevää tai käytännöllistä purkaa. Toteutuneessa kehityskulussa on myös paljon satunnaisilta näyttäviä askeleita, joille on vaikeata keksiä käytännöllisyyteen perustuvia perusteluita. Joskus taustalta häämöttävät raadolliset taloudelliset tai valtapoliittiset intressit. Jokin yhtiö saattoi esimerkiksi haalia itselleen runsain mitoin patentteja, ei suinkaan siksi, että olisi ollut innokas kehittämään niiden pohjalta uusia tuotteita ja käytäntöjä. Tarkoituksena on nimittäin saattanut olla pyrkimys estää kilpailijoita tuomasta noita tuotteita markkinoille, jotta voitaisiin jatkaa asiakkaiden rahastamista omilla vanhoilla tuotteilla. Tietotekniikan historian harrastus on viime aikoina selvästi vilkastunut, johtuneeko tuo sitten siitä, että jokin aika sitten tuli täyteen puoli vuosisataa ensimmäisten tietokoneiden luomisesta vai jostakin muusta syystä. Rivakkaa vauhtia karttuva kirjallisuus painottuu kuitenkin voittopuolisesti tietokoneen historiaan, jolloin pääpaino tulee kuin itsestään tekniseksi. Historiakirjallisuus käsittelee myös usein tietojenkäsittelyn, siis leimallisesti ohjelmoinnin tai laskennan kehittymistä. Tietojärjestelmän laajempi intressi on jäänyt siten suhteellisen vähäiselle huomiolle.

Edellisessä luvussa panimme jo merkille, että tiedon käsittelyn rinnalla tietojärjestelmässä on kiinnitettävä huomiota myös itse tietoon ja sen varastoimiseen. Käsittelyn dynaaminen ja varastoimisen staattinen aspekti muodostavat yhdessä eräänlaisen duaalisen parin. Tietojenkäsittelyn historiaa on siten syytä täydentää tiedon hallinnan historialla. Tätä perusparia, kuten nyt vuosituhannen vaihteen läheisyydessä olemme tulleet erityisesti kokemaan, tulee täydentää vielä tiedon siirrolla, kommunikaatiolla. Näitä kolmea perustoimintoa ja niiden yhteen integroitunutta kokonaisuutta pidämme nyt silmällä, kun lähdemme tietojärjestelmäsuuntautuneelle aikaretkelle, joka painottuu lähimenneisyyteen. Koska tietojärjestelmä ei tavallisesti ole olemassa itseään varten, niin on aikamatkalla myös muistettava olla tarkkana sen suhteen, ketä järjestelmä palvelee ja kuka sen omistaa. Keitä ihmisiä on järjestelmän ympärillä ja mitkä ovat heidän intressinsä järjestelmän suhteen. Järjestelmästä odotetaan tavallisesti jotain hyötyä tai ainakin sen pitää olla mielekäs jossakin suhteessa. Tällainen järjestelmän mieli on hyvä tietää, koska siten voidaan paremmin arvioida, onko järjestelmä tarkoitukseensa hyvin tai huonosti soveltuva. Erilaisia tietojärjestelmiä on ollut olemassa jo kauan ennen tietokoneiden keksimistä. Aloitammekin aikamatkan pikavierailulla vähän kauemmaksi, ennen kuin tulemme varsinaisen tietotekniikan aikakauteen. Aika ennen tietokoneita Tiedon talletus Tietojenkäsittelyn historian ajatellaan tavallisesti alkaneen siitä, kun ihmiskunta oppi kirjoitustaidon. Mutta toki tietoa on käytetty aikaisemminkin. Ihmiset ovat oppineet kokemuksistaan ja välittäneet tietoa toisille, vaikka se onkin tapahtunut suullisesti. Tiedon talletustekniikkana käytettiin ihmisten muistia. Muistin toiminta edellytti sen ajoittaista virkistämistä niin, että tietäjän tuli ajoittain suullisesti toistaa tietoansa, mielellään toisten ihmisten kuullen. Runomitta ja laulunuotti toimivat hyvin muistia tukevana tekniikkana. Mutta tietenkin kirjoitustaito muodosti keskeisen virstanpylvään erityisesti tiedon tallettamisen historiassa. Voitiin alkaa puhua dokumentista, josta voitiin esimerkiksi erimielisyyden sattuessa käydä katsomassa, mitä riidanalaisesta asiasta alunperin oli sovittu. Tiedon talletustekniikka kehittyi nopeasti niin, että laajojakin tietokokonaisuuksia pystyttiin hallitsemaan systemaattisesti. Tiedon tuottaminen ja jäljentäminen suoritettiin käsityönä. Tiedon hallinnan kannalta merkittäväksi virstanpylvääksi muodostui kirjapainotaidon keksiminen. Sen avulla voitiin suuria tietojoukkoja saattaa laajan lukijapiirin käytettäväksi. Joukkotiedotus oli siis välillä useiden vuosisatojen ajan kirjallisesti painottunutta, kunnes sähköiset viestimet taas ovat palauttaneet takaisin suullisen viestinnän tärkeimmäksi joukkoviestinnän muodoksi. Kirjan painaminen myös toimi tiedon dokumenttiarvoa kohottavasti. Kun kirjan tietojen korjaaminen painamisen jälkeen ei ollut mahdollista, usko painetun sanan totuuteen kasvoi. Se onkin ollut vahva, ja vasta nyt Internet-aikakaudella on noussut tervettä epäluuloa tiedon oikeaksi luulemisen suhteen. Kun kerran tiedon talletus on ihmisen muistamiskykyä vahvistava väline, niin sille ei riitä, että tieto saadaan talletetuksi. Se pitää pystyä tarvittaessa myös löytämään. Tätä tarkoitusta varten on kutakuinkin tietovälineestä riippumatta tietojoukkoihin sovellettu erilaisia indeksejä sekä lajittelua. Indekseillä päästään nopeasti haluttuun koh-

taan tietojoukossa, joka on suhteellisen pysyvä. Tällöinhän se voidaan vaikkapa sitoa kirjaksi. Jos taas tiedostossa tapahtuu paljon elämistä, käy uusien sivujen lisääminen tai vanhojen poistaminen helposti työlääksi. Irtolehtiset mapit ja kortistot ovat palvelleet tällaista käyttötarvetta. Lopulta keskeiseksi tietovälineeksi nousi reikäkortti. Se on kuitenkin ansainnut oman jaksonsa, joten katsomme ensin hetken aikaa, mitä on tapahtunut muilla rintamilla ennen kuin päästään lähelle automaattista tietojenkäsittelyä. Tiedon käsittely Edellä juuri todettiin, että tietojenkäsittelyn historia on voimakkaasti painottunut nimenomaan käsittelyn historiaan. Katsaukset alkavat usein helmitauluista (n. 3000 ek) ja jatkuvat 1600-luvulta lähtien selvittäen erilaisia laskutekniikoita. Napierin logaritmitaulut (ja niistä johdetut laskutikut) muodostavat yhden tuotelinjan ja erilaisten mekaanisten laskukoneiden (Pascal, Leibniz) kehittäminen toisen. Tietotekniikan kannalta käänteentekeväksi osoittautui Charles Babbagen kehittämät (1832-49) analyyttinen kone ja differenssikone, sillä niissä koneen automaattinen toiminta ihmisen käden koskematta oli keskeisenä lähtökohtana. Ohjelman käsite alkaa hahmottua ja Ada Augusta King, Lovelacen herttuatar oli ilmeisesti ensimmäinen tunnettu ohjelmoija; hän työskenteli juuri Babbagen laitteiden kanssa. Laitteita oli määrä käyttää erilaisten taulukoiden laskemiseen matemaatikkojen, tähtitieteilijöiden ja merenkulkijoiden tarpeisiin. Babbage toimi muutoinkin kuin oikea ohjelmoija, hän jätti suuren osan ideoistaan dokumentoimatta ja julkaisematta. Hänen työnsä ei saanut välittömiä jatkajia, vaan painopiste siirtyi olennaisesti teoreettisemmalle tasolle. Vuonna 1854 George Boole esitti symbolisen logiikan periaatteet, joiden varassa digitaalitekniikka olennaisilta osin lepää vielä tänäkin päivänä. 1900-luvun alkuvuosikymmenet toivat yllättävän vähän uusia aluevaltauksia tiedon käsittelemisen tekniikassa. Voi olla, että polttavaa yhteiskunnallista tarvetta tietokoneelle ei vielä ollut noussut esiin, mutta myöskään digitaalisen tietojenkäsittelyn perustekniikka ei ollut riittävän kehittynyttä. Vasta 1930-luvulla digitaalisesti orientoitunut tutkimus sai kunnolla vauhtia. Saksassa Konrad Zuse käytti reletekniikkaa ja binääriaritmetiikkaa konstruktioissaan (1935-38). Atanasoff ja Berry onnistuivat rakentamaan laskimeensa aritmetiikkayksikön ja itseään virkistävän syklisen muistin. Englannissa taas syntyi Turingin kone, abstraktinen automaatti, jonka merkitys laskettavuuden tutkimuksessa on ollut huomattava. Tässä vaiheessa voimmekin jäädä odottamaan oikean tietokoneen syntyä, tapahtumaa, jonka sylikummina on pidettävä toista maailmansotaa. Tiedon siirto Vasta kirjoitustaito teki mahdolliseksi tiedon lähettämisen ulkoistetussa muodossa ilman, että tietävä subjekti itse siirtyi tiedon kantajana paikasta toiseen. Kirjoitettu dokumentti vaati kuitenkin lähetin kantajakseen, jotta siirto olisi ollut mahdollinen. Sanomien välittämiseen erikoistui erityinen lähettien tai sanansaattajien ammattikunta. Usein nämä olivat valtaapitävien palveluksessa ja muodostivat valtakuntien alueellisen hallinnon tärkeän osan. Viestiyhteyksien takaamiseksi perustettiin ja ylläpidettiin infrastruktuuria; kestikievarien tehtävänä oli majoittaa kruunun asialla liikkuvaisia sekä tarjota heidän käyttöönsä hevosia ynnä muuta tarvittavaa tukea. Tämän viestiverkoston avaaminen muillekin kuin viranomaisille merkitsi postilaitoksen syntymistä.

Tiedon siirtäminen ilman ihmistä oli houkutteleva tavoite, ei ainoastaan piiritetyn linnan puolustajalle, vaan parannusta toivottiin viestin perillepääsyn nopeuteen ja kustannuksiin. Kirjekyyhkyt toimittivat tätä virkaa satojen vuosien ajan. Poikkeusoloissa menetelmä lienee vieläkin käyttökelpoinen, ainakin vielä Normandian maihinnousussa (1944) nämä veteraanit toimittivat korvaamattomia tehtäviä. Lennätin ilmentää jo sanana tavallista pikaisempaa viestintää. Optinen, sähköinen ja myöhemmin langaton lennätin olivat kukin selviä edistysaskeleita viestityksessä, jossa pitkän aikaa nautti suurta arvostusta sähköttäjät, nuo Morsen aakkoset taitavat viestinnän ammattilaiset. Puhelin (1876) merkitsi sähköisen viestinnän alalla ratkaisevaa viestintärakenteen verkostoitumista, yksittäisten käyttäjien suoraa tavoitettavuutta. Radio (Marconi lähetti ensimmäiset langattomat signaalit 1895) puolestaan laajensi puhelimen point-topoint -rakennetta broadcasting-mahdollisuudella vähän samaan tapaan kuin mitä kirjapaino teki kirjoitetulle tiedolle. Tiedon perille pääsyn turvaaminen ja sen estäminen joutumasta vääriin käsiin ovat tietenkin olleet viestinnän ongelmina kautta aikojen. Median kehittyminen interaktiiviseksi teki yksinkertaiseksi kuitata saadut viestit, ja erilaiset salakirjoitustekniikat suojasivat ainakin jonkinasteisesti asiaankuulumatonta hakkerointia ja väärentämistä. Puhelintekniikkaan liittyvät telex-yhteydet toivat mahdollisuuden suorittaa sitovia liiketapahtumia pitkänkin matkan takaa ja nopeasti. Samalla oltiin luotu väline digitaalisen tiedon siirtämiseksi, väline, johon liitettiin myös tiedon varastoimisen funktio. Telex-päätteinä yleisesti käytetyssä teletypekirjoittimessahan tyypillisesti oli varusteena myös reikänauhan luku- ja lävistyslaite. Tietojärjestelmäarkkitehtuuria ei kuitenkaan vielä tuohon aikaan (ennen tietokoneita) täydentänyt tiedon käsittelytekniikan integroiminen tietojärjestelmiin. Tietojärjestelmä Vaikka ihmistyövoima muodosti keskeisen osan tietojärjestelmien prosessoinnin, talletuksen ja kommunikaation kapasiteetista, pystyttiin jo yllättävän varhain rakentamaan laajoja ja monimutkaisia tietojärjestelmiä. Suomen ensimmäinen laaja tietojärjestelmä lienee ollut Kustaa Vaasan 1500-luvulla perustama maanlaajuinen maarekisteri, joka tuli toimineeksi keskushallinnon valtaa lisäävästi, kun veronkanto tehostui ja väliportaiden mielivaltaa ja väärinkäytöksiä voitiin vähentää. Charles Babbageen teki voimakkaan vaikutuksen tutustuminen 1800-luvun alkupuolella maailman talouskeskuksessa Lontoossa toiminut Bankers Clearing House. Kun myös tämän kirjoittaja on ollut samoin vaikutettu, kuvataan tuon järjestelmän toimintaa seikkaperäisemmin: In a large room in Lombard Street, about thirty clerks from the several London bankers take their stations, in alphabetical order, at desks placed round the room; each having a small open box by his side, and the name of the firm to which he belongs in large characters on the wall above his head. From time to time other clerks from every house enter the room, and, passing along, drop into the box the checks due by that firm to the house from which this distributor is sent. Most of the day was spent be clerks exchanging checks with one another and entering the details in the ledgers. At four o clock in the afternoon, the settlements between the banks would begin. The clerk for each bank would total all the checks received from other banks for payment and all the checks presented for payment to other banks. The difference between these two numbers would then be either paid out or collected.

At five o clock the inspector of the clearing house took his seat on a rostrum in the center of the room. Then, the clerks from all the banks who owed money on that day paid the amount due in cash to the inspector. Next, the clerks of all the banks that were owe money collected their cash from the inspector. Assuming that no mistakes had been made (and an elaborate accounting system using preprinted forms ensured this did not happen very often), the inspector was left with a cash balance of exactly zero. The amount of money flowing through the Bankers Clearing House was staggering. In the year 1839, 954 million was cleared 250 billion in today s money... Reikäkorttijärjestelmät Keksintö ja kehittyminen Reikäkorttien keksiminen liittyy kiinteästi Yhdysvaltain väestölaskentaan, jota oli suoritettu vuodesta 1790 lähtien kymmenen vuoden välein. Pääasiallinen tarkoitus oli tuottaa tärkeät vaaliasiakirjat maassa, joka kasvoi nopeasti alueliitosten ja uudisasutuksen kautta. Vähitellen pääluvun laskentaan lisättiin sosiaalisia indikaattoreita, kuten ikä, sukupuoli, etninen tausta jne. Näin saatiin jokaisesta henkilöstä eräänlainen valokuva, jonka perusteella hänet voitiin profiloida moniin erilaisiin tilastoihin eri kokoisten alueitten suhteen. Kun valtakunnan väestön määrä vuonna 1790 oli 3,9 miljoonaa, oli se vuonna 1860 jo 31,4 miljoonaa. Väestölaskentaa suorittava henkilökunta oli vuonna 1840 28 hengen suuruinen, kun taas vuoden 1880 laskentaa oli suorittamassa 1495 henkeä. Kun laskennan tulos, 21000 sivun laajuinen raportti, valmistui vasta seitsemän vuoden työn jälkeen, oli sosiaalinen tilaus laskentaa tehostavalle tekniikalle todella olemassa, koska voitiin odottaa, että vuoden 1890 laskennan valmistuminen kestäisi yli kymmenen vuotta! Avainhenkilöksi tässä tilanteessa nousi nuori insinööri Herman Hollerith (1859-1929), joka kehitti toimivan reikäkorttitekniikan ja perusti sen varassa kaupallisesti toimivan yhtiön nimeltä Tabulating Machine Company (TMC, 1896). Yhtiö muodosti myöhemmin (1924) perustan tietojärjestelmien jättiläiselle, IBM:lle (International Business Machines) toimittuaan vuosina 1911-1924 nimellä Computing-Tabulating- Recording Company (C-T-R). Tuolloin johtoon oli jo astunut Thomas J, Watson, legendaarinen IBM-johtaja, jonka aikana vakiintui tunnuslause T-H-I-N-K. Tunnuslause ripustettiin kehystettynä työhuoneen seinälle tai asetettiin työpöydälle muistuttamaan työntekijöitä ajattelun tarpeellisuudesta. Reikäkortin perusajatus ei ollut mitenkään vallankumouksellisen uusi. Paperiin tehtyjä reikiä oli käytetty koneiden (tekstiiliteollisuus) toimintaa ohjaamaan, ja vastaavan kaltaisia paperinauhaan perustuvia ohjaimia oli käytetty myös erilaisten soittokoneiden kuten pianon ja posetiivin ohjelmiston tallentamiseen. Tekniikan soveltuvuuden väestölaskentaan Hollerith kertoi oivaltaneensa junamatkalla (villissä) lännessä, jossa konduktööri rei itti lippuun ennalta määritellyn koodin mukaisesti matkan etenemisen vaiheiden lisäksi myös matkustajan tuntomerkit (vaalea tukka, tummat silmät, iso nenä jne.). Menettelyn tarkoituksena lienee ollut pyrkimys estää yhden lipun kierrätys usean matkustajan välillä. Hollerith ajatteli tietenkin, että väestölaskennassa tehdään samalla tavalla muotokuva (punch photograph) jokaisesta kansalaisesta. Kaksi vuotta ennen väestölaskennan toimeenpanoa julistettiin tarjouskilpailu, jossa etsittiin menettelytapoja tuon valtavan projektin tehostamiseksi. Vuonna 1889 järjestettiin kolmen parhaana pidetyn ehdokkaan välille kilpailu, missä heidän tuli

käsitellä runsaan 10 000 henkilön suuruinen otos edellisestä laskennasta alusta loppuun asti. Kummallakin Hollerithin kilpailijoista oli manuaalinen järjestelmä: yksi oli käyttänyt eri muuttujia varten eri väristä mustetta, kun taas toisen ehdotus perustui eri väristen korttien käyttöön, näiden menettelyiden ajateltiin tehostavan manuaalista käsittelyä. Tiedon tallentamisesta Hollerith selviytyi niukasti kilpailijoitaan nopeammin, mutta varsinaisesta käsittelystä hänen ryhmänsä suoriutui kymmenesosassa toisten tarvitsemasta ajasta! Hollerith siis sai tehtäväkseen väestölaskennan 1890 suorittamisen. 700 lävistäjää tallensi tietoja ja sai lopulta aikaan runsaat 62 miljoonaa korttia, yhden jokaisesta kansalaisesta. Aineiston käsittely aloitettiin 56 lajittelu/laskurikoneella, mutta koneiden määrä jouduttiin pian nostamaan sataan. Tulokset olivat merkittävät: Kun edellinen laskenta oli kestänyt seitsemän vuotta, valmistui raportti nyt kahdessa ja puolessa vuodessa. Raportin laajuus oli paisunut yli 5000 sivun verran ja kustannukset (11,5 M$) olivat lähes kolmanneksen pienemmät kuin ne olisivat olleet ilman reikäkortteja. Hollerith oli antanut upean näytön. Reikäkortti tietovälineenä Seuraavassa kuvataan lyhyesti reikäkorttitekniikan perusteet. Kuvaus perustuu tekniikan kypsyneeseen vaiheeseen toisen maailmansodan jälkeisenä aikana. Vaikka itse kortit ja etenkin niiden käsittelylaitteet olivat tuolloin erilaisia kuin niiden syntyaikoina, olivat muutokset kuitenkin yllättävän pieniä, ja reikäkortin perusperiaate säilyi samana. Reikäkortti on rakenteeltaan suorakaiteen muotoinen ohut pahvinpala. Kulumisen vastustamiseksi sen kulmat on pyöristetty, ja jompikumpi yläkulma on usein leikattu pois viistosti eri korttityyppien erottamiseksi toisistaan. Suorakaiteen muotoinen alue on jaettu 80 pystysuoraan sarakkeeseen, joista jokaisen kohdalla on 12 vaakariviä. Mihin tahansa tämän 80*12 matriisin ruuduista voidaan lävistää pieni suorakaiteen muotoinen reikä, jonka tarkka sijainti on erilaisten käsittelylaitteiden avulla tunnistettavissa. Yhteen sarakkeeseen voidaan määrätyn koodin mukaisesti tallettaa yksi merkki. Kortti on usein esipainettu niin, että sarakkeiden numerointi ja vaakarivien tunnukset ovat selväkielisinä nähtävissä, huomaavainen piirre niitä käsitteleviä ihmisiä silmällä pitäen. Numeerisen tiedon koodaaminen on helppoa, koska kymmenen alinta vaakariviä on varattu numeroille nollasta yhdeksään ylhäältä alas lukien. Kun näihin numerokoodeihin yhdistettiin kahden ylimmän vaakarivin lävistyksiä (ns. ylälävistyksiä), saatiin koodit aakkostiedolle (kaksi rekisterikertaa kummastakin erikseen ja kolmas yhdistämällä ne). Joidenkin erikoismerkkien koodeissa saatettiin käyttää vielä nollan ja jonkin muun numeron yhdistelmää. Tietokenttä määriteltiin varaamalla tarpeellinen määrä vierekkäisiä sarakkeita. Kentän pituus saattoi tietysti olla yhden sarakkeen mittainen, näin lienee ollut usein esimerkiksi juuri väestölaskennassa, jossa monien muuttujien luokitteluun riitti 10 vaihtoehtoa. Kenttiä määrättäessä tuli noudattaa säästäväisyyttä, olihan kortilla tilaa vain 80 merkkiä varten. Kentän paikka kortilla oli kiinnitetty määrättyihin sarakkeisiin. Tietue saattoi parhaassa tapauksessa mahtua yhdelle kortille. Tällöin oli tarpeen varata yksi kenttä tietueen avainta varten, jonka tehtävänä oli tämän tietueen erottaminen saman tiedoston muista tietueista. Jos tietuekohtaisten kenttien ja/tai merkkien määrä oli niin suuri, että ne kaikki eivät mahtuneet yhdelle kortille, oli tarpeen jatkaa niitä toiselle, kolmannelle jne. kortille. Jotta tietueen osat voisivat löytää toisensa, oli tietueen avain lävistettävä jokaiseen korttiin, ja tietenkin samoihin sarakkeisiin.

Tämän lisäksi piti tietueen jokaisella kortilla olla oma tunnuksensa, tyypillisesti järjestysnumero, niin että saatettiin varmistaa, että mikään osa tietueesta ei puutu tai esiinny kahteen kertaan. Tiedosto muodostettiin sijoittamalla tietueet (monikorttiset tietueet yhteen koottuna) peräkkäin. Tietueet oli lajiteltu, niin kuin peräkkäistiedostoissa on tapana, tietueiden avainten mukaiseen järjestykseen. Peräkkäistiedostojen käsitteleminen eräkäsittelyperiaatteen mukaisesti on siis peräisin jo reikäkorttikoneiden aikakaudelta, ja näiden sääntöjen mukaisen tietojärjestelmän käsite oli siten valmiina sovellettavaksi, kun tietokonepohjainen tekniikka oli sitä varten riittävän kehittynyttä. Eräkäsittelyjärjestelmässä on kahdenlaisia tiedostoja. Pysyvissä tiedostoissa (esim. työntekijöiden harvoin muuttuvat perustiedot vaikkapa palkanmaksua varten) säilytetään tietovarastoja, jotka usein ilmaisevat (enemmän tai vähemmän tosiaikaisesti) jonkin asian tilan. Toinen tiedostotyyppi on tapahtumatiedosto (esim. palkkakauden tuntiraportit), jonka tietueet tyypillisesti saavat aikaan jonkin tapahtuman (palkan maksaminen) ja lisäksi muuttavat pysyvien tietojen tilaa. Reikäkorttitekniikassa tällaisten samaan olioon liittyvien tiedostojen avaimet pitää lävistää samoihin sarakkeisiin. Lisäksi niissä pitää olla varattu sarake tiedoston tunnistamiseksi. Monet organisaatiot pitivätkin kirjaa kaikista tiedostoista ja vahvistivat niille yksikäsitteiset tiedostotunnukset. Eräkäsittelyn logiikkaa valotetaan perusteellisemmin myöhemmin, kun kuvataan, miten reikäkorttipohjainen eräkäsittelyjärjestelmä toimi aikanaan tietokoneympäristössä. Tässä riittänee todeta, että yhteisten avainkenttien sekä tiedosto- ja korttilajitunnusten avulla saatiin tapahtumatiedoston tiedot kohdistetuksi pysyvän tiedoston oikeisiin tietueisiin. Ajot suoritettiin harvakseen määrävälein, ja jokaisen ajokerran yhteydessä syntyi kokonaan uusi versio pysyvästä tiedostosta. Pysyvien tiedostojen versioiden hallinta muodosti keskeisen osan tietojärjestelmästä ja sen käyttötoiminnasta. Tiedostojen koko oli usein tuhansia tai kymmeniä tuhansia kortteja, ja niiden pitäminen järjestyksessä ja mahdollisimman hyvin suojattuna (tulipalo, asiaankuulumaton käyttö tai vahingoittaminen) oli operaattorikaartin tärkeä tehtäväalue. Reikäkortin käsittelytekniikka Reiät reikäkorttiin lävistettiin lävistyskoneella, jossa kortti eteni lävistysterien ohitse sarake kerrallaan. Kohdalla olevaan sarakkeeseen saatiin lävistetyksi haluttu merkki painamalla oikeaa näppäintä kirjoituskonetta muistuttavalta näppäimistöltä. Kortin etenemistä ja lävistymistä voitiin ohjata ns. ohjauskortin avulla. Tabulaattorin tapaan voitiin tällöin päästä seuraavan kentän alkuun. Kentän vakiolävistys, esimerkiksi korttilaji, voitiin kopioida edelliseltä kortilta. Lävistetyt merkit oli mahdollista saada kirjoitetuksi luettavassa muodossa kortin yläreunaan. Lävistystyö oli suurta tarkkuutta vaativaa rutiininomaista työtä, jonka häviämistä kovin monet tuskin surevat, olihan myös melutaso usein kiusallisen korkea. Reikäkortin käyttökelpoisuus tietovälineenä perustui siihen, että reiän sijainti kortilla pystyttiin tunnistamaan tarkasti, toimihan kortin materiaali eristeenä, ja tunnistimen osuminen reiän kohdalle sai aikaan sähköpulssin. Mekaanisen kuljettamisen ja sähköisen tunnistamisen yhdistäminen kehittyivät Hollerithin perintönä IBM:n ydinosaamisalueeksi, joka tarjosi sille kilpailuedun vielä pitkälle 1970-luvulle asti. Rei itystä on käytetty erilaisten aineistojen käsittelyssä myös monella muulla tavalla. Esimerkiksi tehtiin korttiin sen reunaviivaa seuraavia reikiä. Kun sitten tehtiin sopiva lovi tiettyjen reikien kohdalle, voitiin näin (tietyn koodin mukaan) merkityt

kortit saada poimituksi melko isostakin aineistosta pujottamalla tarkoitusta varten valmistettu puikko halutusta reiästä lävitse. Puikon nostaminen erotteli aineiston kahteen osaan. Reikäkortti tarjosi mahdollisuuden vastaavaan erotteluun, mutta nyt se voitiin tehdä koneellisesti, ja koneen kanssa päästiin huomattavan suuriinkin nopeuksiin. Reikäkorttien käsittelyä varten kehitettiin monia laitteita, joita seuraavassa lyhyesti esitellään. Tärkein näistä oli epäilemättä lajittelukone. Lajiteltava korttitiedosto asetettiin syöttökaukaloon, mistä se laitteen käynnistämisen jälkeen kulki laitteen lävitse kortti kerrallaan. Tuloksena oli korttien jakautuminen valitun sarakkeen lävistyksen mukaisesti yhteen tuloslokeroista. Näitä lokeroita oli 10-12 kappaletta. Jos lajiteltava tiedosto oli vähänkin suurempi, oli operaattorilla täysi työ täydentää kortteja syöttökaukaloon ja tyhjentää tuloslokeroita sotkematta juuri saatua järjestystä. Monenlaisia hyllyjä ja lokerikkoja oli kehitetty tämän tehtävän helpottamiseksi. Jos tiedosto piti lajitella järjestykseen sellaisen kentän mukaan, jossa oli useampia sarakkeita, oli lajittelu aloitettava vähiten merkitsevästä sarakkeesta ja edettävä sitten enemmän merkitseviin niin että viimeksi lajiteltiin eniten merkitsevä sarake. On selvää, että väestölaskenta Amerikan Yhdysvalloissa edellisen vuosisadan vaihteen tienoilla hyötyi suuresti pelkän jo pelkän lajittelukoneen käyttömahdollisuudesta. Erityisesti, kun jokaisessa tuloslokerossa oli oma laskurinsa, saatiin väestötilastot tuotetuksi huomattavan tehokkaasti aikaisempaan manuaaliseen käytäntöön verrattuna. Tilastotieteilijät ovat tehneet muuttujiensa jakautumia ja ristiintaulukointeja lajittelukoneen avulla vielä pitkälle 1970-luvulle saakka, jolloin tietokoneilla suoritettavat monimuuttujamenetelmät tulivat muotiin. Kaksi tiedostoa, joilla on sama avainkenttä, voitiin yhdistää kollaattoriksi kutsutun laitteen avulla. Näin voitiin esimerkiksi pysyvä tiedosto ja tapahtumatiedosto yhdistää niin, että ne olivat avaimen mukaisessa järjestyksessä. Kumpikin tiedosto sijoitettiin omaan syöttökaukaloonsa, ja valittujen sarakkeiden mukaan luettiin kortteja kummastakin tiedostosta niin että ne tulivat yhteiseen tuloslokeroon järjestettyinä. Näin voitiin välttää varsinkin pitkien kenttien kohdalla suuritöinen lajittelu. Joskus oli tarpeen lävistää korteille johonkin kenttään vakiotieto tai siirtää jonkin tiedoston tietueiden kenttiä uusiin paikkoihin. Tällaista kahden syöttökaukalon ja kahden tuloslokeron laitetta kutsuttiin reproksi. Tiedostoista haluttiin usein tehdä listauksia. Se tehtiin tabulaattorin avulla. Näitä listauksia voitiin editoida sarakkeiden sijainnin ja järjestyksen puolesta. Listaukseen voitiin määritellä väli- ja loppusummia. Myös jonkin verran monimutkaisempia laskutoimituksia pystyttiin tekemään kalkulaattorin avulla. Reikäkorttikoneiden ydinkomponenttina oli matriisin muotoinen kytkintaulu, jossa määriteltiin korttien kentät ja muut kunkin ajon kannalta keskeiset parametrit sijoittamalla tauluun johtimia, jotka yhdistivät matriisin kaksi alkiota. Reikäkorttikoneiden avulla saatettiin suunnitella ja toteuttaa jo melko monimutkaisia järjestelmiä. Peräkkäistiedostot ja eräkäsittely tarjosivat mahdollisuuden yhdistää tiedon talletus ja käsittely integroiduksi kokonaisuudeksi, jonka oli tapahduttava keskitetysti yhdessä keskuksessa. Tiedon siirto oli siten fyysistä. Se tuotiin laskentakeskukseen lomakkeille koodattuna tai joskus valmiiksi lävistettynä. Tietotekniikan komponenteista tiedon siirtotekniikka oli alikehittynyttä, eivätkä sen käytettävissä olleet muodot kovin hyvin soveltuneet integroitaviksi reikäkorttijärjestelmien kanssa.

Eräkäsittelyjärjestelmä Tietokoneen synty: käsittelykone Vuonna 1946 syntyi ensimmäinen tietokone. Tai paremminkin voidaan sanoa, että useat rinnakkaiset projektit tuottivat tämän todennäköisesti vuosisadan tärkeimmän innovaation. Mikä sitten erotti tämän uuden keksinnön aikaisemmasta reikäkorttilaitteistosta. Tietokoneen tunnusmerkkinä voidaan pitää sen muistiin talletettua ohjelmaa. Tällöin ei ollut tarpeen jatkuvasti ulkopuolelta syöttää koneelle tietoa siitä, mitä sen tulisi seuraavaksi tehdä. Ohjelman suorituksen eteneminen oli tällä tavalla järjestettynä huomattavasti nopeampaa. Ainakin yhtä tärkeätä kuitenkin oli se, että ohjelma itse saatettiin nyt asettaa muutoksen kohteeksi niin että ohjelma muokkasi itseään. Hyvin pian tarjolla oli muistikapasiteettia niin paljon, että ohjelman laajuus saattoi olla huomattavan suuri verrattuna reikäkorttijärjestelmiin. Ensimmäiset tietokoneet saivat hyvällä syyllä englanninkielisen nimen Computer, sillä laskentaan ne soveltuivat paljon paremmin kuin tiedon hallintaan tai kommunikointiin. Sovellukset olivat aluksi sotilaallisia, kuten nimi Operations Research epäsuorasti antaa ymmärtää. Tosin laskentatehoa käytettiin myös sotatalouden suorituskyvyn optimointiin. Merkittävä keksintö oli transistorin keksiminen ja käyttöönotto vuonna 1951. Se oli paljon luotettavampi kuin tietokoneen prosessointiin aikaisemmin käytetyt elektroniputket. Tilantarve, energiankulutus ja lämmönmuodostus olivat olennaisesti pienemmät. Hyvin pian hintakin asettui tasolle, joka toi tietokoneet useiden yritysten ja organisaatioiden ulottuville. Kaupallis-hallinnollisiin tehtäviin tarkoitettujen tietokoneiden voittokulun voidaan hyvällä syyllä katsoa alkaneen IBM 1401 (1959) koneen myötä. Kone osoittautuikin kaupalliseksi menestykseksi. Yksi sen vahvuus kilpailijoihinsa verrattuna oli oheislaitteissa, reikäkortin lukijassa ja lävistimessä, rivikirjoittimessa ja magneettinauha-asemassa. Nämä muodostivat kokonaisuuden, jonka toimivuus toi esille tietojärjestelmän käsitteen: tietokone ei ollut enää pelkkä laskentakone. Reikäkorttitekniikan sulauttaminen Esimerkki yksinkertaisesta tietojärjestelmästä Seuraavassa tarkastelemme tuon ajan tyypillistä tietojärjestelmää. Se koostuu kahdesta osasysteemistä, varastokirjanpidosta ja laskutuksesta. Osasysteemit liittyvät yhteen sen kautta, että niissä käytetään samoja tapahtumatietoja, jotka kuvaavat tavaran luovutusta varastosta asiakkaalle. Tapahtuma on tyypillisesti dokumentoitu rahtikirjaan tai vastaavaan. Tarkastellaan ensin järjestelmää laitteistoympäristössä, jossa oheislaitteina on vain reikäkortinlukija ja lävistin ja rivikirjoitin. Tapahtumien kirjaaminen. Luovutustapahtuman yhteydessä kirjataan asiakkaalle toimitetut tavarat lomakkeelle, joka on siten suunniteltu, että tiedot voidaan siitä joustavasti lävistää reikäkortille, kukin tieto sille tarkoin määrättyyn kenttään. Jokaisesta tilausrivistä on määrä syntyä yksi kortti, josta käy ilmi asiakastunnus, tuotetunnus, tuotteen toimitettu määrä ja päivämäärä. Kullakin toimituksella voi olla oma tunnuksensa. Toimitusehdot ja maksuehdot on määritelty asiakaskohtaisesti tai asiakasryhmäkohtaisesti, ja ne saadaan asiakastiedostosta. Tapahtumien lävistäminen reikäkorteille. Tapahtumat lävistetään reikäkorteille. Työn suorittavat erityisen koulutuksen saaneet lävistäjät, jotka työskentelevät usein omissa tiloissaan laskentakeskuksen läheisyydessä. Työtä helpottavat monet

innovaatiot, kuten siirtyminen seuraavan kentän alkuun yhdellä näppäinlyönnillä ja jonkin kentän (tässä esim. asiakasnumeron) kopioiminen edelliseltä kortilta, mutta silti se oli yksitoikkoista ja sen tekijät kärsivät myös vakavasta meluhaitasta. - Yksi sarake on varattu korttilajia varten, jotta voidaan tunnistaa tämä kortti myyntitapahtumakortiksi. Korttien lajittelu tuotenumeron mukaan. Koska järjestelmän työnkulkukaavion mukaan varastokirjanpito suoritetaan ennen laskutusta, pitää kortit ensin lajitella tuotteittain, niin että kaikki yhteen tuotteeseen kohdistuvat muutokset voidaan käsitellä peräkkäin. Lajittelun suorittaa (reikäkortti)operaattori lajittelukoneella. Kortit ajetaan lävitse lajittelukoneesta niin monta kertaa kuin lajiteltavassa kentässä on merkkejä, alkaen vähiten merkitsevästä ja edeten sarake kerrallaan eniten merkitsevään. Lomitus tuotetiedoston kanssa. Metallisesta (palon varalta) arkistokaapista haetaan tuotetiedoston tuorein versio. Jokaisesta tuotteesta on yksi kortti, koska kaikki tarvittavat tiedot onneksi mahtuivat noihin 80 sarakkeeseen. On tärkeätä huomata, että tuotenumero on sijoitettu tarkalleen samoihin sarakkeisiin kuin tapahtumakorteissa. Korttien erottamiseksi tuotetiedoston korteissa on eri korttilajitunnus kuin tapahtumakorteissa. Tapahtumat lomitetaan nyt tuotetiedoston sekaan niin että ensin tulee pysyvän tiedoston kortti ja sitten kaikki siihen tuotteeseen kohdistuvat tapahtumat. Kaikkiin tuotteisiin ei tietenkään joka kerralla kohdistu lainkaan tapahtumia, mutta jos jollekin tapahtumalle ei tuotetiedostosta löydy sitä vastaavaa tuotetta, on kyseessä virhetilanne. Lomitus (merge) suoritetaan kollaattoriksi kutsutulla reikäkorttikoneella, jossa on kaksi syöttöaukkoa ja yksi tulostusaukko. Tietokoneajon valmistelu. (Tietokone)operaattori asentaa rivikirjoittimeen varastoraporttilomakkeen ja kortinlävistimeen tyhjiä kortteja uuden tuotetiedoston lävistämistä varten. Konsolikirjoittimessa on lomakepaperia, jolle kirjoitetaan virheilmoitukset. Sitten kortinlukijaan laitetaan reikäkorteille lävistetty konekielisenä latautuva varastokirjanpito-ohjelma, minkä jälkeen syöttötelineeseen sijoitetaan äsken lomitettu tiedosto. Painetaan load-nappia. Tietokoneajon suorittaminen. Ajon edistyessä rivikirjoittimella tulostuu ajan tasalle saatettu tuotetiedosto tuote kerrallaan. Yhdelle riville mahtuu tuotenumeron, nimen ja uuden varastosaldon lisäksi kumulatiivisia tunnuslukuja (kauden myynti yhteensä, vuoden alusta). Listaukseen voidaan sisällyttää välisummia, haluttaessa useammankin tasoisia, vaikkapa tuoteryhmittäin ja -perheittäin. Samalla kun näin saadaan tuotekohtainen tilanne päivitetyksi, lävistetään siitä uusi kortti; näistä muodostuu sitten uusi tuotetiedosto. Näistä voidaan tarvittaessa ottaa uusi listaus varastotilanteesta tämän päivityksen jälkeen. Käsiteltävät tiedostot voivat olla suuria (useita laatikollisia) ja operaattorin on pidettävä visusti huolta siitä, että kortit säilyvät järjestyksessä, onhan se eräkäsittelylogiikan perusvaatimus. Erottelu ja lomittaminen asiakastiedostoon. Tapahtumakortit erotetaan tuotetiedostosta lajittelemalla yhdistetty tiedosto korttilajin perusteella (operaattorin työtä usein helpotettiin käyttämällä eri värisiä kortteja eri korttilajeille). Sitten tapahtumakortit lajitellaan asiakastunnuksen mukaisesti vieläpä niin, että ne ovat aikajärjestyksessä ja yksi tilaus yhteen koottuna. Sitten ne lomitetaan asiakasrekisterin kanssa. Toimenpide on vain vähän monimutkaisempi sen takia, että asiakaskohtaista tietoa tarvitaan enemmän kuin tuotekohtaista (esim. laskutusosoite), minkä takia jokaisesta asiakkaasta onkin kolme korttia. Tietenkin niissä kussakin on asiakastunnus ja asiakaskortin identifioiva korttilaji omissa sarakkeissaan, jotka ovat näille kaikille samat. Näin asiakaskohtaiseen nippuun kuuluu kolme asiakaskorttia sekä nollasta useaan tilausta, joista kussakin on yhdestä useaan tilausriviä, kukin omalla kortillaan.

Laskutusajon valmistelu. Kortinlukuasemaan sijoitetaan ensin laskutusohjelma ja sen jälkeen äsken yhdistetty tiedosto, ja lävistimeen laitetaan valmiiksi tyhjiä kortteja (oikean värisiä) uuden asiakastiedostoversion tuottamista varten. Rivikirjoittimeen sijoitetaan laskulomakkeita, jotka ovat jatkolomakkeita, rei itys kummallakin sivulla. Konsolikirjoittimessa on normaalilomake virheilmoituksia varten. Laskutusajon suorittaminen. Sitten vain ladataan ohjelma ja suoritetaan se. Toisin kuin varastokirjanpidossa, tässä ei samalla kertaa saada asiakastilastoa, koska rivikirjoitin on varattu laskujen kirjoittamiseen. Tämä tilasto saadaan listatuksi myöhemmin eri ajossa nyt lävistettävästä uudesta asiakastiedostosta. Taitava operaattori asentaa uuden jatkolomakepakan sekä täydentää syötettäviä korttitiedostoja ja ottaa talteen läpiajettuja kortteja niin, että työn seisaukset ovat mahdollisimman lyhyet. Kaikissa laitteissa on tietenkin tunnistimet materiaalin loppumisesta (läpimenneiden tilan täyttymisestä), joka pysäyttää koneen toiminnan niin että ohjelma ei menetä lukuaan siitä, mihin vaiheeseen käsittelyssä jäätiin. Jälkitoimet. Listaukset toimitetaan niitä tarvitseville. Laskut postitetaan asiakkaille. Uusi tuotetiedosto ja asiakastiedosto talletetaan huolellisesti seuraavaa ajoa varten. Tapahtumat ja tiedostojen edelliset versiot arkistoidaan (esim. mahdollisten virheiden selvittelyä varten). Ohjelmien (mekaaninen) kunto tarkistetaan ja ne vaihdetaan tarvittaessa uuteen korttipakkaan, kun ensin on lävistetty uusi varmuuskopio. Yhteenveto Havaitsemme, että yllä kuvattu järjestelmä on ollut mahdollinen vain koska siinä toteutuu eräkäsittelyn ajatus. Automaattinen tietojenkäsittely on tuottavaa, koska useat yksittäiset tapaukset käsitellään samojen sääntöjen mukaan, jotka on onnistuttu muotoilemaan tietokoneohjelmaksi. Tiedon syöttäminen tietokoneeseen ja tulosten saaminen sieltä vaati aluksi kuitenkin paljon eri rooleissa toimivien ihmisten työtä. Tätäkin työtä onnistuttiin osittain automatisoimaan reikäkorttilaitteiden avulla. Näistä aiheutuva hyöty parantui kun nämä oheistoiminnot suoritettiin isolle tapahtumajoukolle yhdessä erässä. Tietokonejärjestelmän suorituskyky oli pitkälti riipppuvainen syöttö- ja tulostuslaitteiden nopeudesta. Esimerkiksi edellisissä sovelluksissa palvelukeskuksen kustannuslaskenta oli yksinkertaistettu siten, että yhteen ajoon tarvittava aika saatiin laskemalla käsiteltävien reikäkorttien ja tulostusrivien vaatima aika. Varsinainen tietojenkäsittely ehdittiin tehdä näiden toimenpiteiden kanssa osittain rinnakkain lomitettuna. Pääasiallisen välineen tiedon varastoimiseksi muodostivat reikäkortit. Tästä syntyi erityistä huolellisuutta vaativa operointitehtävä. Olihan meillä äskeisessä esimerkissä samassa kortinlukijan tuutissa kolme eri tiedostoa. Ensin koneen muistiin piti syöttää ohjelma. Sen jälkeen ohjelma luki yhteen olioesiintymään liittyvät tiedot kerrallaan. Nämä olivat peräisin kahdesta tiedostosta, ensin tulivat tuotetiedoston /asiakastiedoston kortit ja sitten myyntitapahtumatiedoston kortit. Tässä oli siis pysyvän tietovaraston ja tapahtumatiedoston kortit lomitettu toistensa sekaan. Tällaisen korttitiedoston pudottaminen konesalin lattialle oli melkoinen onnettomuus, vaikka toki siitä taitava operaattori selvisi lajittelemalla koko kasan uudestaan. Tiedon siirtoa tässä esimerkissä ei sanan nykymerkityksessä esiintynyt. Tai tietenkin tietoja lähetettiin reikäkorteilla tai lomakkeilla pitkiäkin matkoja. Jotkin organisaatiot ylläpitivät omaa kuljetuspalvelua, toiset taas käyttivät vastaavaa palvelua ulkoistettuna. Kuitenkin kaikki tiedon siirto tapahtui off-line.

Yhteenvetona voi lopuksi todeta, että järjestelmän peruslogiikka on peräisin tietokoneita edeltävältä kaudelta reikäkorttijärjestelmän aikakaudelta. Tietokoneen omaleimainen voima ja erityispiirteet eivät vielä tulleet näkyviin, koska nopein tie tietotekniikan tehokkaaseen soveltamiseen oli selvästikin löydettävissä tuttujen ja koeteltujen käsitteiden pohjalta. Tähän konseptiin kuuluu, että järjestelmät olivat enemmän tai vähemmän erillisiä kokonaisuuksia. Jokaisella järjestelmäyksiköllä, sovellutukseksi kutsutulla, oli omistaja, joka toimittaa ajettavan aineiston ja saa takaisin tulosteet. Eräkäsittelyjärjestelmän parannuksia Reikäkortit olivat vielä pitkään tärkein tietoväline tiedon syöttämiseksi tietokoneeseen. Mutta massamuistilaitteiden kehittyminen toi monia muutoksia järjestelmäkäsitykseen. Magneettinauhayksiköt ja levymuistiyksiköt auttoivat oikaisemaan monia hankaluuksia. Magneettinauhalle tietoa voitiin tallettaa paljon tiiviimmin kuin reikäkorteille. Nauhakelalla oli myös kompaktimpi ja helpommin käsiteltävä olomuoto. Eikä vähiten tärkeätä ollut olennaisesti suurempi siirtonopeus tietovälineeltä tietokoneen muistiin. Tämän vuoksi usein myös tapahtumatiedot siirrettiin ensin reikäkorteilta magneettinauhoille. Ohjelman ajaminen vaati myös paljon vähemmän operaattorin toimenpiteitä. Automaattisen tietojenkäsittelyn automaatioaste siten nousi. Nauha-asemia tarvittiin mielellään useita. Esimerkiksi suurten tiedostojen lajittelua voitiin paljon nopeuttaa nauhayksiköitä lisäämällä: tyypillinen patteri oli neljän yksikön suuruinen. Edellisen esimerkin rakennetta nauhayksikön käyttöön saaminen muuttaa siten, että ohjelma voidaan ladata muistiin kätevämmin ja nopeammin nauhayksiköltä. Suurempi muutos on kuitenkin siinä, että tapahtumatietoja ei enää tarvitse lomittaa pysyvien tiedostojen sekaan, koska syöttökanavia nyt on useita. Riittää, kun molemmat tiedostot on lajiteltu samaan järjestykseen. Silloin ohjelman logiikan avulla voidaan tapahtumat kohdistaa oikeisiin kohteisiin vaikkapa niin, että pysyvät tiedostot ovat nauhalla ja tapahtumat tulevat reikäkorteilta. Peräkkäistiedostosta (esimerkissämme tuotetiedosto tai asiakastiedosto) syntyy jokaisen ajon yhteydessä uusi versio. Sekä vanhalla että uudella versiolla pitää tietenkin olla oma nauha-asemansa. Versionhallinta ei kuitenkaan ole hankalampi kuin reikäkorttien tapauksessa, vieväthän arkistotiedot vähemmän tilaa ihan fyysisesti. Tapahtumatietojen lajittelu on tietenkin samalla tavalla välttämätön kuin aikaisemminkin. Jos tapahtumatiedot ovat nauhalla, tarvitaan nauhalajittelu. Järjestelmän käsitekin alkoi kehittyä magneettinauhamuistin myötä. Reikäkortti oli vaatinut äärimmäistä nuukuutta tietokenttien suhteen, johtihan vähäisempi nuukuus helposti siihen että tietueen tallettamista varten piti varata useampia kortteja kuin olisi ollut välttämätöntä. Nauhayksiköllä toimittaessa oli varaa olla huomattavasti vapaamielisempi. Siten syntyikin ns. kantatiedoston (master file) käsite. Kantatiedostoon koottiin kaikki tiettyyn olioluokkaan (esim. tuotteeseen tai asiakkaaseen) liittyvät tiedot, vaikka kaikkia näitä tietoja ei tietenkään tarvittu missään yksittäisessä sovelluksessa. Ajatuksena oli kuitenkin, että aina kun tarvittiin joitakin olioluokan tietoja, niin tuli käyttää tätä kantatiedostoa. Tässä ajatuksessa on jo nähtävissä modernin tiedonhallinnan perusajatus tiedosta organisaation yhteisenä resurssina. Tiedon tallettaminen vain yhteen kertaan ja sen järjestäminen sen olion ympärille, jonka attribuutiksi tuo tieto on katsottu, ovat periaatteita, jotka tulevat vastaan tiedon hallinnan historian (tietokannat, oliomallintaminen) myöhemmissä vaiheissa.

Vaikka organisaationlaajuisen tiedonhallinnan käsitteistämiseen vielä oli kuluva pitkä aika, alkoi integrointikehitys jo tämän kantatiedoston käsitteen varassa. Saattoi nimittäin tapahtua niin, että yhden sovelluksen omistaja sai tulokset rivikirjoitintulosteena ja toimitti nämä listaukset jollekin toiselle organisaatioyksikölle. Siellä nämä tiedot lävistettiin uudestaan reikäkorteille tämän toisen sovelluksen omistajan syöttötiedoiksi, vaikka ne hetkeä aikaisemmin jo olivat olleet tietokoneen luettavassa muodossa. Jos katsotaan tätä menettelyä liiketoimintaprosessina, on tietojen uudelleenlävistämistä pidettävä hyvin kyseenalaisena. Monenkertaisen tekemisen lisäksi on nimittäin onnistuttu luomaan ylimääräinen virhelähde. Tässä kohdassa kantatiedostoon kerätyt tiedot alkoivat nopeasti toimia niin, että tietokonekeskuksen haltuun kertyvät tiedostot vähitellen tekivät tarpeettomiksi äsken mainitut uudelleenlävistykset. Näin yksittäiset sovellukset alkoivat kasvaa yhteen, ja tietojärjestelmän organisaation laajuinen integrointi oli alkanut. Toinen merkittävä uutuus oli levymuistiyksiköiden kehittyminen. Se oli alku kehitykselle, jonka tuloksena päästiin ylittämään eräkäsittelyyn liittyvät rajoitukset. Lopulta mahdollisuus päästä käsiksi tietoon suoraan sen hakuavaimen perusteella riippumatta siitä, sattuuko se sijaitsemaan jonkin lajittelujärjestyksen alku- tai loppupäässä, on suorasaantimuistin (direct access) ominaisuus, joka nykyään otetaan itsestäänselvyytenä. Mutta tiedonsiirron ja käyttöjärjestelmien kehittyminen (on-line real-time) olisivat jääneet lähes merkityksettömiksi ellei suorasaantimuisteja olisi ollut. Kaupallis-hallinnollisessa tietojenkäsittelyssä levypakat olivat tavallisesti vaihdettavia. Siitä syntyi säästömahdollisuus (yhtä asemaa voidaan käyttää moneen tarkoitukseen), tarve versionhallintaan sekä yksinkertainen varmuuskopiointimahdollisuus). Tässä kohdassa on heti todettava, että eräkäsittely ei ole sinänsä huono asia ja että sillä on edelleenkin erittäin perusteltuja käyttötarpeita, koska monien toimintojen ja ilmiöiden luonne on eräkäsittelynomainen. Ajateltakoon vaikkapa vain kuukausittain tapahtuvaa palkanmaksua. Sen kuukausirytmi perustuu tehtyyn työsopimukseen eikä tietojärjestelmän teknisiin rajoituksiin. Edellinen eräkäsittelyjärjestelmä muuttuu nyt sillä tavalla, että on mahdollista suorittaa molemmat sovellukset tapahtumatiedoston läpikäymisellä. Pitää vain valita yksi kahdesta lajittelujärjestyksestä, toisen tiedoston päivitys voidaan hoitaa suorasaantiominaisuuden avulla. Tässä tapauksessa ensisijaiseksi järjestykseksi on syytä valita asiakastunnuksen mukainen, sillä rivikirjoittimeen asennettava laskutuslomake on hyvä saada ajon kuluessa valmiiksi, tuoteraportti on ikäänkuin helpompi tuottaa jälkikäteen erillisenä listausajona. Suorasaantimuistia käytettäessä ei tiedostosta tuoteta uutta versiota jokaisen ajokerran yhteydessä, vaan päivitykset tehdään vanhan version päälle. Näin vältytään niiden tietojen kopioinnilta, joihin tietyssä ajossa ei kohdistu lainkaan muutoksia. Myös versionhallinta muuttuu tietyssä mielessä yksinkertaisemmaksi, kun on vain yksi versio (ja toivottavasti sen varmuuskopio). Toisaalta mahdollisuus virheiden ja muiden poikkeusten jäljittämiseen heikkenevät, kun päivityshistoria tuhotaan päällekirjoittamalla. Levymuistien laajamittainen käyttöön ottaminen innosti keksimään uusia tapoja tiedostojen organisoimiseen. Täysin satunnaistetut (randomised) sijoittelut johtivat usein muistikapasiteetin huonoon täyttöasteeseen, eivätkä ne aina tarjonneet sujuvaa peräkkäiskäsittelyn mahdollisuutta. Suosituksi rakenteeksi muodostuikin ns. taulukoitu peräkkäisrakenne (Indexed Sequential). Tietueet sijoitettiin peräkkäin, kuitenkin niin, että määrätyn suuruisten lohkojen sisälle sijoitettiin indeksejä, jotka olivat monitasoisia. Suorasaantihaun kohde löytyi laajahkoissakin tiedostoissa 2-5 taulukkohaun avulla. Peräkkäiskäsittelyssä taas piti vain muistaa hypätä taulukkojen ja muiden

tiedoston hallintaan liittyvien osioiden yli. Lisäyksiä varten jätettiin myös ns. ylivuotoalueita (overflow), joihin voitiin lisätä uusia esiintymiä yksi- tai kaksisuuntaisesti linkityn listarakenteen avulla. Levypakat olivat usein monikerroksisia täytekakkuja, joissa tieto talletettiin magnetisoidun levyn pintaan. Jokainen pinta oli jaettu napakoordinaattien mukaan uriin, joista jokainen edelleen jakautui sektoreihin. Kun tällaisia levypintoja oli useita (esim. 10 pintaa) päällekkäin ja kun jokaisella pinnalla oli oma luku- ja kirjoituspäänsä, muodostui näiden pintojen samansäteisistä urista sylinteriksi kutsuttu osa levypakan muistiavaruutta, johon päästiin luku- ja kirjoituspäiden asemaa muuttamatta. Tietenkin tämä mekaaninen vaihe muodosti merkittävän ajanhukan levymuistin käytössä. Siksi osoitetaulukot ja ylivuotoalueet organisoitiin mielellään juuri näiden fyysisten yksiköiden mukaisesti tarpeettomia lukupään siirtoja välttäen. Suorasaantimahdollisuus tietenkin vahvisti mielikuvaa organisaation yhteisestä tietovarastosta. Magneettinauhalle talletettu kantatiedostohan erotti eri olioluokat toisistaan eri nauhakeloille talletettaviksi. Etsittävän tiedon löytäminen edellytti, että oikea kela (ja oikea versio!) oli asennettuna nauha-asemaan. Levymuistiyksikölle sitävastoin oli mahdollista sen kapasiteetin rajoissa sijoittaa useita kantatiedostoja, mikä on jo niin lähellä tietokanta-ajattelua, että sen oli suorastaan pakko pian murtautua esiin järjestelmätoimittajien tuotekehittäjien tietoisuudessa. Tietokannasta saatava hyöty oli kuitenkin hyvin rajallinen. Jos tiedon tarvitsijan piti kulkea tietokoneen luokse saadakseen tuon tiedon, ei pelkästä suorasaantimahdollisuudesta ollut kovin paljon hyötyä. Jonkin verran sujuvampi oli tietenkin soitto operaattorille, joka sitten olisi saattanut tuon kyselyn järjestelmän tietovarastoista hoitaa. Todellista kantavuutta tietokannan ajatus sai kuitenkin vasta, kun oltiin riittävästi edistytty kahdella muulla rintamalla: käyttöjärjestelmissä ja tiedon siirrossa. Levymuistiyksikkö oli oivallinen sijoituspaikka myös ohjelmille. Ohjelmat voitiin nyt jäsentää enemmän ja enemmän irrallisiksi niiden sovelluksista ja niiden tiedostoista. Tärkeimmät ohjelmat saatettiin pitää pysyvästi asennettuina yhteen levypakkaan, jolloin niiden jatkuva saatavuus oli hyvä. Tällaiselle systeemilevylle alkoi kertyä luonnollisesti monenlaista muutakin, erityisesti infratruktuurityyppistä aineistoa, kuten esimerkiksi kääntäjiä ja syöttö- ja tulostusrutiineja (Input-Output Control Systems). Viimeksimainittujen avulla määriteltiin tiedostojen ja tietueiden rakenteita ja niiden tarvitsemia muistivarauksia: näin helpotettiin näiden rutiinien suoritusta. On-Line tosiaikajärjestelmä Reikäkorttityöskentelystä päätetyöskentelyyn Edellä todettiin jo massamuistilaitteiden, magneettinauhan ja levy-yksiköiden merkitys järjestelmän rakenteen kannalta. Pysyvät kantatiedostot alkoivat kannatella järjestelmää niin, että kone ei enää ollut vain väline erillisten sovellusten suorittamiseksi, vaan se on jotakin enemmän. Mutta vielä oli kyse välineestä, jolla tehtiin yhtä asiaa yhdellä kerralla, ja tämä tehtiin valmiiksi asti ennen kuin seuraavaa tehtävää voitiin aloittaa. Lisäksi työskentely oli sidoksissa reikäkortteihin ja rivikirjoittimeen, jotka muodostivat tietokoneen käyttöliittymän. Samanaikaisesti tosin tapahtui suorituskyvyn kasvamista, joka ilmeni niin prosessorin nopeutena, syöttö- ja tulostuslaitteiden nopeutena ja muistikapasiteetin kasvuna niin keskusmuistin kuin massamuistien osalta. Pitkän aikaa oli vielä voimassa (itse asiassa hämmästyttävän hyvin) Groschin laki joka lausui, että tietokoneen suorituskyky kasvaa neliössä sen hintaan nähden. Siis sijoittamalla kaksinkertainen määrä rahaa yhteen tietokoneeseen ostaja saa nelinkertaisen tehon. Tällöin ei tietenkään

kannattanut ostaa kahta pienempää konetta. Jo tämä yksin oli riittävä syy sille, että järjestelmärakenteet organisaatioiden sisällä pitkään säilyivät huomattavan keskitettyinä. Kun organisaation tietovarastot alkoivat hahmottua omaksi resurssikseen, alkoi mielenkiinto niiden hyödyntämiseen kasvaa. Eräkäsittelyn logiikka ei enää palvellut näitä tarpeita. Jonoon asettuminen ja vuoron odottaminen ei tyydyttänyt malttamattomia päätöksentekijöitä ja asiantuntijoita. Käyttöjärjestelmän oli mitä ilmeisimmin kehityttävä joustavammaksi. Myös itse tietovarastojen organisointi ja hallinta odottivat edistysaskeleita, jotka toteutuivat tietokanta-ajattelun kehittymisenä ja erilaisten tiedonhallintaohjelmistojen tulon markkinoille. Käyttöjärjestelmät Keskusyksikön suorituskapasiteetti on varsin pitkään ollut tietotekniikan arvokkain resurssi. Hyvin varhain suorittimien nopeus on saavuttanut tason, johon verrattuna syöttö- ja tulostuslaitteiden nopeus oli vähäinen. Ilmiössä ei ole paljoa ihmettelemistä, koska syötössä ja tulostuksessa on elektronisten lisäksi aina myös mekaanisia osioita, joiden nopeudelle jo itse materiaali asettaa suurempia rajoituksia kuin elektronisesti suoritettaville. Tästä seurasi, että S/T-käskyn antamisen jälkeen prosessori joutui joutilaana odottamaan käskyn loppuunsuorittamista, ellei sille ollut tarjolla muuta tekemistä. Hyvin varhaisessa vaiheessa taitavat ohjelmoitsijat osasivat lomittaa S/Tkäskyjä päällekkäin sekä toistensa kanssa että varsinaisen käsittelyn kanssa, olihan eräkäsittelyn logiikassa normaalia tehtävissä monta jekkua, esimerkiksi: käynnistä seuraavan tietueen lukeminen ennenkuin kirjoitat edellistä koskevan rivin rivikirjoittimella. Silti jäi useasti prosessorikapasiteettia käyttämättä. Yksi keino sen talteen saamiseksi oli toiminnan porrastaminen kaksitasoiseksi niin, että tausta-ajona saatettiin tehdä jotakin yksinkertaista työtä, joka ei ollut aikakriittinen eikä vaatinut paljoa S/T laitteita, joita tarvittiin päätehtävän suorittamisessa. Jos oli rivikirjoitin vapaana, oli listausajo hyvä tehtävä taustatyönä tehtäväksi. Asia ei kuitenkaan ollut ihan näin yksinkertainen. Jos prosessorilla olikin aikaa muutamalle tausta-ajon käskylle sillä välin kun S/T-toimenpide päätehtävässä saadaan valmiiksi, niin mistä muistetaan takaisin tullessa mihin jäätiin. Tätä varten pitää olla keskeytyksen hallintajärjestelmää. Kumpikin tehtävistä pitää koteloida niin, että sujuvasti osataan jatkaa oikeasta kohdasta heti kun suoritinresurssia on käytettävissä. Kummallakin ohjelmalla tuli olla omat muistialueensa, jonne toisella ei ollut asiaa. Samoin tuli ohjelmien toiminta tehdä riippumattomaksi siitä, mihin kohtaan absoluuttisessa muistiavaruudessa se sijoitettiin. Tästä oli enää lyhyt matka siihen, että moniajoksi kutsutussa ympäristössä yhden koneen suorituskapasiteettia oli jakamassa useampia kuin kaksi ohjelmaa. Käyttöjärjestelmä piti kirjaa jokaisen suoritustilanteesta ja prosessorivuoroista, joita jaettiin prioriteettien mukaisesti. On kiinnostavaa havaita, että osituskäyttö oli mielekäs nimenomaan keskitetyssä ja koneen kokoa kasvattamaan pyrkivässä ympäristössä. Kun suoriteyksikön hinta laskee koneen koon (hinnan) kasvaessa, ei tunnu lainkaan mahdottomalta, että osa tästä lisäkapasiteetista voitaisiin käyttää moniajon vaatimiin liikennepoliisin tehtäviin, jotka sinänsä ovat tuottamattomia lisätehtäviä, eihän niiden suorituksen aikana etene minkään varsinaisen tehtävän suorittaminen. Moniajokäytäntö antoi tässäkin muodossa tervetulleen lisän tietokoneen käytön ohjattavuuteen. Jokin lyhyt ajo voitiin saada lävitse hyvinkin nopeasti, vaikka sen rinnalla olisi ollutkin työn alla muutama isotöinen tehtävä. Puhtaassa eräkäsittelyssä

tämä kiireinen pikkutyö olisi joutunut kiltisti odottamaan vuoroaan, kunnes sen edellä olleet isot työt olisi saatu valmiiksi. Varsinaiseen osituskäyttöön päästiin kuitenkin vasta kun tiedonsiirto oli kehittynyt niin paljon, että rinnakkaiskäyttäjien ei tarvinnut kulkea konehuoneeseen. Käytännössä osituskäyttö tosin oli kehittynyt jo huomattavasti aikaisemmin sotilaallisella sovellusalueella. Tehtävänä tuossa Whirlwind-projektissa oli integroida napavyöhykkeellä olevien tutka-asemien antamat havainnot yhtenäiseksi kokonaisuudeksi (vrt. the Battle of Britain 1940) Neuvostoliiton lentokoneiden avulla suorittaman ydinhyökkäyksen aikaiseksi tunnistamiseksi. Kun ballististen ohjusten kehitys teki tämän pyrkimyksen vanhentuneeksi juuri ennen järjestelmän täysimittaista käyttöönottoa, muuntui tämä ensimmäinen osituskäyttöjärjestelmä siviilikäyttöön ensimmäiseksi SABREnimiseksi lentokoneiden paikanvarausjärjestelmäksi. Osituskäytössä ei siten ole kysymys pelkästään tietokonekapasiteetin oikeudenmukaisesta jakamisesta, vaan parhaimmillaan siinä yhdistyy tarve integroida keskenään useita tiedonlähteitä reaaliaikaisesti ikäänkuin saman sovelluksen puitteisiin. Tietokannan hallintajärjestelmä Edellä jo päädyttiin master-tiedostojen kautta organisaation systemaattisen tiedonhallinnan ajatukseen. Suorasaantimuistien yleistyminen ja niiden kapasiteetin kasvu toivat fantasian yrityksen kaiken tiedon saatavilla olosta lähelle toteutumista. Osituskäyttö ja reaaliaikaiset pääteyhteydet toivat tämän yhtenäisesti järjestetyn tietomassan kaikkien päätteenhaltijoiden ulottuville, ainakin periaatteessa. Tietenkin matkan varrella oli monta mutkaa, ennenkuin tämä mahdollisuus saavutti riittävän kypsyyden asteen. Tiedon hallinnan keskeiseksi periaatteeksi muodostui master-tiedostojen kaudesta lähtien, että kukin tieto talletetaan vain yhteen kertaan. Kyseessä ei ole ensisijaisesti nuukuus kalliin muistitilan johdosta. Periaate tarjoaa nimittäin huomattavia etuja järjestelmäkokonaisuuden toiminnan kannalta. Tiedetään mistä etsiä. Tiedetään, että samasta tiedosta ei ole useita keskenään ristiriitaisia versioita. Jälkimmäinen etu oli voimassa ainakin niin kauan, kun tietojärjestelmän arkkitehtuuri alkoi saada hajautettuja piirteitä, ja järjestelmäverkon eri solmuissa oli replikoitu samojen tietojen esiintymiä. Kun kukin tieto oli vain yhdessä paikassa, edusti tämä käytäntö eräänlaista tietomonopolia: tiedon tarvitsijan oli pakko käyttää tätä ainokaista versiota tai olla kokonaan käyttämättä. Näitä tarvitsijoita oli kahta laatua: tietoa tarvitsevia käyttäjiä ja tietokoneohjelmia. Kumpaakin ryhmää varten oli tiukoin säännöin ohjattu, byrokraattinen käytäntö. Enää ei ollut sallittua kirjoittaa ohjelmia, joissa ohjelmoija suuntaa käskynsä suoraan johonkin fyysiseen levyosoitteeseen tai käy suorittamassa hakuja sylinteri- tai urahakemistoissa. Ainoa tapa päästä käsiksi tietoihin kulki virkatietä tietokantaohjelmiston kautta. Anomukset jätettiin tiukasti määrämuotoisina, ja ohjelmisto toteutti sen, jos se oli muodollisesti oikein ja jos pyyntö osoittautui lailliseksi. Päätekäyttäjällä oli oma kyselykielensä, joista elinvoimaisimmaksi ovat osoittautuneet vieläkin käyvät SQL ja Oracle. Vastaavalla tavalla oli ohjelmoijan osattava muotoilla omat tarpeensa etukäteen, vieläpä niin hyvin että sitä ei ollut tarvetta ajon aikana interaktiivisesti täydentää. Näiden tiedon käsittelyyn liittyvien kielten rinnalla tarvittiin kielet tietokannan määrittelyyn. Tämä kieli määräytyi tietenkin sen mukaan, minkälainen rakenne tietokannalle haluttiin. Ensimmäisenä liikkeellä oli luonnollisesti IBM, jonka tietokantarakenteet olivat aluksi luonteeltaan hierarkkisia. Laajan (IBM:n kilpailijoiden hallitseman)

CODASYL-yhteistyön tuloksena kehitettiin vaihtoehtoinen järjestelmä, joka noudatti verkkorakennetta. Sen katsottiin yleisesti paremmin vastaavan sitä todellisuutta, jota sen oli määrä kuvata, kun taas hierarkkisiin rakenteisiin sai suunnitelluksi tehokkaampia saantipolkuja. Kolmantena vaihtoehtona oli teoreettiseksi moitittu relaatiomalli. Sen katsottiin tuhlaavan niin suunnattomasti levytilaa ja olevan toiminnoiltaan niin hidas, että sitä ei vakavasti ajateltu kaupalliseen tuotantokäyttöön, vaikka se akateemisena askarteluna olikin kiehtovan tuntuinen harjoitus. Määrittelykielen ja käsittelykielen välinen ero sai rinnalleen abstraktioon perustuvan jaon käsitteelliseen ja esiintymätasoon. Käsitekaaviossa kuvattiin olioluokat ja niiden väliset suhteet, kun taas instanssit olivat niiden yksittäisiä esiintymiä. Käsitteellinen taso oli sopiva tietokannan rakennetta ja sisältöä suunniteltaessa samoin kuin kyselyiden hakemiston runkona. Tietokannan fyysinen taso noudatti tietenkin tämän tason määrittämää rakennetta, mutta tarkempi suunnittelu siitä, mitä minnekin päin talletetaan ja miten ne taas löydetään, vaati esiintymätason painottamista. Tietojärjestelmän arkkitehtuuri muuttui tietenkin perusteellisesti. Tietokannasta tuli järjestelmän ydin, jonka ympärille kaikki sovellukset ryhmittyivät. Kun nyt ryhdyttiin suunnittelemaan uutta järjestelmää, oletettiin että tietokanta on valmiina ja että siellä on valmiina paikat sovelluksen tiedoille. Muussa tapauksessa tietokantaa piti tarvittavilta osin täydentää. Tietokantaa perustettaessa piti aikaisemmat sovellukset korjata niin, että ne vanhojen tiedostojen sijasta nojautuivat uuteen tietokantaan. Kaukosiirto Tiedon siirtoa on ihmiskunnan historiassa esiintynyt vähintään yhtä kauan kuin sen tallentamistakin. Siirron nopeus osoittautui strategisesti tärkeäksi tavoitteeksi, ja optinen sekä sitten myös sähköinen lennätinjärjestelmä voitti pian kirjekyyhkyset, ellei aina nopeudessa, niin ainakin luotettavuudessa ja tiedon siirtokapasiteetin suhteen. Radioteitse lähetettävät Morsen signaalit olivat pitkän aikaa laajalti käytetyt erityisesti pitkän matkan viestintään. Tietotekniikan tarvitsema tiedonsiirron tarve ei siten lähtenyt liikkeelle tyhjästä. Oltiinpa siihen jo hyvin varhain valmistautuneita myös teoreettisesti. Shannon ja Weaver esittivät informaatioteoriaksi kutsumansa viitekehyksen, joka soveltui hyvin signaalien siirron analyysiin. He mittasivat siirrettävän informaation määrää odotusarvolla, joka ilmeni siten, että mitä vaikeampi oli aikaisempien perusteella oikein ennustaa seuraavaksi tulevia merkkejä, sitä enemmän informaatiota viestiin sisältyi. Siten esimerkiksi Beethovenin musiikki oli keskimäärin informaatiorikkaampaa kuin Mozartin, koska siinä oli enemmän odottamattomia yllätyksiä. Joka tapauksessa oli tavanomaista, että siirrettävä sanoma piti ensin koodata viestintäkanavalle sopivaksi, ja vastaanottajan piti (osata) vastaanotettu viesti dekoodata takaisin ymmärrettävälle kielelle. Morsen aakkosten kohdalla vaatimus on selvä, mutta sama ilmiö on myös esimerkiksi puheviestinnässä: koodaus (puhe) saattaa matkaan ääniaallon akustisessa tilassa, jonka vastaanottaja dekoodaa (kuulee ja ymmärtää). Vaikka signaalien virheetön siirtäminen onkin aivan eri asia kuin jonkun henkilön informoiminen jostakin asiasta, on se välttämätön osa myös oikeaa informaation kulkua. Ja kehitettäessä tiedon siirtoa tietojärjestelmien osana informaatio teorialla on ollut oma merkityksensä, eihän tarkoituskaan ollut, että vastaanottava tietokone ymmärtää viestin informaatiosisällön. Tiedon kaukosiirtoa käytettiin kaupallisestikin jo hyvin varhain. Etukäteen tilaamalla oli mahdollista saada kytketyksi tavanomaista laadukkaampia puhelinlinjoja, joita pitkin digitaalisessa muodossa olevaa tietoa voitiin siirtää pitkiäin matkoja. Hyvin pitkään nämä linjat olivat kahden pisteen välisiä (Point-to-Point). Mutta jos

tällä menettelyllä voitiin korvata jokaöinen tiedon (reikäkorteilla tai magneettinauhoilla) siirto autoilla ja lentokoneilla, oli etu merkittävä sekä ajassa että kustannuksissa mitattuna. Nämä kertaluonteiset yhteydet muuttuivat vähitellen kiinteästi kytketyiksi yhteyksiksi, jotka tekniikaltaan saattoivat olla tavallisia puhelinyhteyksiä eri paikkakunnilla toimivien yksiköiden välillä. Yhden rakennuksen sisällä oli tarkoituksenmukaista rakentaa erityiset linjayhteydet tiedonsiirtoa varten. Yrityksen sisällä tietoverkon rakenne oli aluksi tyypillisesti tähtimäinen. Keskipisteenä oli laskentakeskus keskustietokoneineen. Siihen voitiin kytkeä erilaisia päätteitä. Eräkäsittelypääte toimi ikäänkuin tietokoneen simulaattorina: sen kortinlukijasta voitiin lähettää kortin tiedot kerrallaan keskustietokoneeseen ja tulokset saatiin takaisin paikalliselle rivikirjoittimelle tai kortinlävistäjälle. Varsinaisesti osituskäytön edut saatiin kuitenkin reaaliaikaisesti toimivan kirjoitinpäätteen avulla. Kirjoittimet löytyivät lähes sellaisinaan valmiina käyttöönotettaviksi telex-tekniikasta: teletype päätteet olivat jo pitkään olleet käytössä puhelinlinjojen muodostamassa verkossa. Niissä oli jo valmiina reikänauhan luku- ja kirjoitusvalmius. (Toisen tulemisensa nämä valtion ylijäämävarastosta lähes ilmaiseksi löytyneet laitteet saivat ensimmäisten mikrojen käyttöliittymässä.) Kun käyttäjä sai yhteyden koneen osituskäyttöjärjestelmään, hän saattoi antaa koneelle käskyjä lähes samalla tavalla kuin ennen oli ollut mahdollista vain pääoperaattorille. Jos kaikki sujui onnellisesti, hän saattoi saada sen vaikutelman, kuin koko tietokone olisi ollut yksinomaan hänen käytössään. Näin tätä käyttötapaa ainakin mainostettiin. Työskentely ei ollut vielä kovin käyttäjäystävällistä, koska kirjoittavan päätteen kautta käyttäjä ei voinut saada reaaliaikaista palautetta työnsä tilanteesta. Editorit olivat riviorientoituneita. Muutosta tehdessä piti ensin ilmoittaa, mille riville sen haluaa tehdä. Sitten olikin usein yksinkertaisempaa kirjoittaa koko rivi uudestaan kuin yksilöidä muutoskohta ilmoittamalla monennestako merkistä alkaen muutosta tehdään ja montako merkkiä korvataan. Aluksi kuitenkin hyvin monet osituskäyttöpäätteiden käyttäjät olivat ohjelmoitsijoita, joiden laatimat tiedostot, ohjelmalistat, olivat luonnostaan riviorientoituneita. Liittyipä yhden ohjelmointikielen (BASIC) synty osituskäyttöympäristön käyttöön (Dartmouth 1961). Tältä pohjalta on helppo ymmärtää, miksi tuossa kielessä jokainen käsky on numeroitu. Näyttöpääte Vielä yksi mahdollistava tekijä tarvittiin, ennenkuin reaaliaikainen tietojärjestelmä oli laajalti otettavissa käyttöön: näyttöpääte. Meillä ei ole aihetta tässäkään kohdassa huvittuneesti hurskastella ratkaisujen primitiivisyyttä, kun näyttöpäätteen edeltäjänä, ja siis tämän esityksen kannalta relevanttina vertailukohteena oli kirjoittava pääte. Telex-tekniikan käyttämä teletype-päätettä tosin käytettiin huomattavasti kehittyneessä muodossa, kun kirjoitustelan ja siten myös rivin pituutta oli kasvatettu ja näille riveille saatiin sekä suuria että pieniä kirjaimia. Kirjasimien vakioleveydestä (sans serif) oli enemmän hyötyä kuin haittaa, kun editoinnissa tarvittava paikan tunnistus rivillä kävi tottuneelta käyttäjältä melkein silmämääräisestikin. Näyttöpääte perustui yleisimmin katodisädeputkeen, jossa elektronisuihkua voitiin ohjata niin, että se muodosti haluttuja merkkejä. Vastaavaa tekniikkaa oli käytetty aikaisemminkin oskilloskoopissa ja muissa elektroniikan ammattilaisten työvälineissä. Analogisena näyttölaitteena laite oli esiintynyt esimerkiksi tutkissa ja niistä rakennetuissa tietojärjestelmissä (Whirlwind). Televisioruutua käytettiin menestyksellä näyt-

tölaitteena, mutta kuvan vakaus ja resoluutio eivät tuolloin riittäneet vakavasti otettavaan tekstiorientoituneeseen työskentelyyn, vaikka pian esiin marssivat mikrotietokoneet mielellään hyödynsivät kodeissa usein valmiina olevaa tekniikkaa, varsinkin peleihin. Lisäarvona saatiin värien käyttömahdollisuus, jota näyttöpäätteisiin ei suinkaan heti alkuun saatu kohtuulliseen hintaan. Näyttöpääte oli aluksi rivi- ja merkkiorientoitunut. Sen tärkein ero kirjoittavaan päätteeseen verrattuna oli käyttäjän saamassa palautteessa. Merkin lisääminen, poistaminen tai muuttaminen ruudulla näkyvään osaan dokumentista tuli näkyviin saman tien, kun merkkikomento oli näppäimistöltä annettu. Esimerkiksi ohjelmalistan korjaus oli aikaisemmin pitänyt tehdä eräkäytön omaisesti niin, että muutokset merkittiin ensin listaukseen, mistä ne sitten korjattiin dokumenttiin. Toimenpiteen onnistuminen saatettiin sitten todeta oikoluettaessa seuraavaa listausta, ellei haluttu kirjoittaa ulos korjauksen kohteena ollutta riviä erikseen. Näyttöpäätteen tapauksessa erillistä kirjoituskäskyä ei ole lainkaan tarpeellista antaa, kun ruudun jokainen virkistys käyttää tuoreinta versiota ja korvaa siten erillisen kirjoitustoimenpiteen. Vaikka ikkunointitekniikka antoi vielä odottaa itseään hyvän aikaa, edusti näyttöruutu kokonaisuutena yhtä isoa ikkunaa työn kohteena olevaan dokumenttiin. Tämä rinnastus auttaa huomaamaan tietokoneen digitaalisen esitysmuodon kulttuurisen merkityksen. Ensimmäinen harppaus oli siirtyminen kuvakirjoituksesta merkkikirjoitukseen. Sen jälkeen ei ikkunasta katseltu todellisuutta esittäviä kuvia, vaan abstraktisia symboleja (diskreetisti määriteltyjä ja siten digitaalisia!). Ne oli kuitenkin kiinnitetty tietovälineeseen, paperiin (pergamenttiin, papyrukseen, jne.). Tietotekniikan avulla talletettu dokumentti on edelleen astetta abstraktisempi. Paperituloste on yksi näkymä siinä kuin ruudulla oleva, ikkunasta näkyvä osa dokumentista. Näyttöpääte muutti radikaalisti sitä tapaa, jolla käyttäjät tietotekniikkaa saattoivat hyödyntää. Syntyi tarve ja mahdollisuus suoraan osoittaa jotakin paikkaa kohdistimen, kursorin avulla. Merkkipohjaisella ruudulla kursorin liikutteluun riittivät hyvin nuolinäppäimet, joiden avulla sitä voitiin liikutella suhteellisesti molempien koordinaattien suhteen. Tämä oli omiaan jouduttamaan palautesilmukan toisen osapuolen, käyttäjän osuutta editointityössä. Käyttäjä pääsi nyt suoraan yhteyteen tietokoneen kanssa, kun hän aikaisemmin oli lähettänyt sanottavansa lomakkeilla reikäkorteille lävistettäviksi. Hän saattoi kirjata sattuneen tapahtuman välittömästi, eikä hänen tarvinnut odottaa eräkäsittelyn vaatimaa tapahtumien kertymistä. Käyttöliittymän käsite tuli siten ajankohtaiseksi myös varsinaisille käyttäjille, taisipa käyttäjänkin käsite syntyä tai ainakin vakiintua yleiseen käyttöön tämän suoran yhteyden syntymisen myötä. Käyttöliittymän kautta hoidettiin kahta asiaa: siinä esitettiin työn kohde ja tähän kohdistuvat toimenpiteet. Komentopohjaiset käyttöliittymät säilyivät paljolti tietotekniikan asiantuntijoiden omaisuutena. Käyttöjärjestelmätasolla vaadittavien yksinkertaisten komentojen lisäksi käyttäjille pyrittiin kehittämään vähemmän teknisiä käytön tapoja. Ruutu oli usein lomakkeen näköinen, ja suoritettavat toiminnot käyttäjä saattoi löytää tarjolla olevien vaihtoehtojen joukosta, jotka oli lueteltu valikossa. Järjestelmän suunnittelijan piti nyt entistä selvemmin miettiä myös tietokoneen käytön kulku. Työprosesseihin tuli mukaan vaiheita, jotka käyttäjän piti tehdä tietokoneella. Tai järjestelmän kannalta katsottuna: ohjelman suoritukseen tuli katkoksia, joissa piti jäädä odottamaan, että käyttäjää syöttää vaaditut tiedot tai muulla tavalla hoitaa oman osuutensa. Kun jälkimmäinen jäsentämistapa suunnittelijoiden keskuudessa oli luonnostaan vallitseva, ryhdyttiin puhumaan dialogista käyttäjän ja järjestelmän välillä. Usein kävi niin, että järjestelmänäkökulmasta katsottuna käyttäjän vuo-