• Ei tuloksia

2 JÄRJESTELMÄLTÄ VAADITTAVAT OMINAISUUDET

2.3 Sovelluskehitinominaisuudet

2.3.1 Yleistä

Sovelluskehittimille asetetaan nykypäivänä monia vaatimuksia. Kaupallisessa tuotteessa tärkeää on järjestelmän helppokäyttöisyys. Ohjekirjojen ja tietokonepohjaisten opasteiden tulee olla riitävän kattavia, helposti ymmärrettäviä ja houkuttelevasti toteutettuja, jotta ohjelmistotalo ottaisi uuden kehittimen käyttöönsä.

Sovelluskehittimellä tehdyiltä sovelluksilta odotetaan usein vielä enemmän kuin itse sovelluskehittimeltä. Sovellusten toimintavarmuus on asiakkaalle usein itsestäänselvyys. Toteutuksen tehokkuus tulee esille viimeistään muutaman kuukauden

käytön jälkeen. Sovelluksen käyttöikää lisäävät huomattavasti helppo ylläpidettävyys ja laajennettavuus. Sovelluskehittimen lopullinen menestys riippuu kuitenkin sen ilmaisuvoimasta, siitä minkälaisia sovelluksia sillä voidaan rakentaa ja mitkä asiat ovat mahdottomia.

2.3.2 Käyttöliittymä

Järjestelmän oman käyttöliittymän oli oltava graafinen. Käyttöliittymä oli toteutettava englanninkielisenä siten, että siitä voitaisiin tarvittaessa tehdä erilaisia kieliversioita.

Tuotteistetun järjestelmän tulisi sisältää myös kattavat englanninkieliset suoraopasteet.

Moniperinnän salliva luokkahierarkia oli voitava visualisoida käyttäjälle suunnattuna verkkona sopivan algoritmin mukaisesti piirrettynä. Yksittäisen luokan tietoja oli voitava tarkastella ja muuttaa tätä tarkoitusta varten rakennetuilla lomakkeilla.

Luokkakohtaisilta lomakkeilta oli pystyttävä helposti siirtymään ko. luokan instansseihin. Instanssin tiedot oli näytettävä vastaavantyyppisillä lomakkeilla.

Järjestelmän oli kyettävä visualisoimaan graafisesti instanssien välisiä linkkejä ja niiden avulla muodostettuja hierarkioita tai muita verkkoja. Graafien solmuina olevien instanssien kuvakkeiden avulla oli päästävä tarkastelemaan ko. instanssin sisältöä.

Kaikkia instansseja oli myös voitava tutkia taulukkomuotoisina esitystapoina, joissa jokaisella rivillä on yksi instanssin tietoalkio sekä sen arvo. Lukulista-tyyppisen arvon

yksittäiset alkiot oli näytettävä peräkkäisissä sarakkeissa.

Kaikkien näkymien oli päivityttävä automaattisesti mallin muuttuessa. Johdettujen attribuuttien invalidoituessa oli uudet arvot laskettava ja näytettävä avoinna olevissa näkymissä. Luokkahierarkiassa tapahtuvien muutosten oli päivityttävä heti avoinna olevaan luokkahierarkiaikkunaan.

2.3.3 Taulukkonäkymät

Järjestelmään oli rakennettava mekanismi, jonka avulla mielivaltaisia mallissa olevia tietoja voitiin näyttää taulukkomuotoisten raporttien soluissa. Yhteen taulukko- näkymään oli voitava kerätä tietoja useista eri olioinstansseista. Kaikkia näkymässä esitettäviä ei-laskettuja tietoalkioiden arvoja oli voitava muuttaa kirjoittamalla päälle uusi luku. Uuden arvon oli välittömästi päivityttävä malliin.

Taulukkonäkymien välille oli voitava määritellä siirtymiä siten, että käyttäjä voi nappia painamalla avata uuden näkymän ja sulkea vanhan. Näkymien oli myös sisällettävä mekanismit valintalistojen esittämiseksi käyttäjälle näkymässä näytettävien tietojen muuttamiseksi.

Taulukkonäkymien ulkoasun määrittelyjen tuli olla erittäin monipuolisia. Jokaiselle solulle oli voitava valita omat värit, kirjasinlajit ja -koot, reunukset ja taustakuviot.

Näkymiin oli myös voitava sijoittaa yritysgrafiikassa yleisiä pylväs-, viiva- ja piirakka- diagrammeja otsikkoineen. Näkymien graafisen ulkoasun esittäminen voitiin toteuttaa

muiden kaupallisten ohjelmistojen avulla, mikäli integrointi tuotteiden välille oli mahdollista rakentaa riittävän monipuoliseksi ja tehokkaaksi. Näkymien välisten siirtymien ja valintalistojen oli oltava käytössä myös ulkoisista sovelluksista.

Ulkoasultaan viimeisteltyjen näkymien, niiden välisten siirtymien ja valintalistojen avulla oli voitava rakentaa 'johtajatason' raportointisovelluksia. Virhetilanteiden käsittely tuli toteuttaa niin, että loppukäyttäjä vakuuttuu järjestelmän toiminnasta ja tietojen oikeellisuudesta.

2.3.4 Ylläpidettävyys

Järjestelmän avulla rakennettujen sovellusten tuli olla mahdollisimman helposti ylläpidettäviä ja laajennettavia. Tähän oli pyrittävä kaikilla mahdollisilla keinoilla.

Ensisijaisesti tuli kaikkiin sovelluskehitinominaisuuksiin etsiä deklaratiivista toteutus­

tapaa. Sovelluskohtaisen ohjelmakoodin määrä voidaan minimoida kuvaamalla halutut rakenteet ja toiminta. Deklaratiivisten ominaisuuksien tuli kattaa niin suuri osa tarvittavista toiminnoista, että sovellusten rakentaminen olisi mielekästä.

Kaikkien oliomallinnuksen toimintojen oli oltava mahdollisia myös valmiissa sovel­

luksessa. Sovelluksen sisältämien instanssien oli ajonaikaisesti muututtava luokkiin ja luokkahierarkiaan tehtyjen muutosten mukaisesti. Oliomallinnus nähtiin jatkuvana prosessina, jossa käsitemalli muuttuu jatkuvasti uusien vaatimusten ja tarkkuustasojen mukaisesti.

Järjestelmän tuli auttaa käyttäjää rakennetun sovelluksen dokumentoinnissa. Luokkiin ja attribuutteihin oli voitava liittää kuvaus. Rakennetusta sovelluksesta oli voitava luoda automaattisesti raportteja, jotka mahdollisimman pitkälle kattaisivat tarvittavat j ärj estelmädokumentit.

2.3.5 Sovellusaluekohtaiset vaatimukset

Tässä työssä rakennattava järjestelmä oli tarkoitettu yrityksissä tarvittavien suunnittelujärjestelmien tekemiseen. Vaikka strateginen suunnittelu olikin alusta asti ollut etusijalla, oli suunnittelujärjestelmiin havaittu sisältyvän hyvinkin erilaisia tarpeita.

Kilpailijaseuranta, ympäristövaikutusten arviointi, laatujohtaminen, johdon raportointi, kustannuslaskenta ja budjetointi ovat kaikki alueita, joiden tarpeisiin voidaan rakentaa suunnittelujärjestelmiä.

Sovellusalueiden perusteellinen esittely rajattiin tämän työn ulkopuolelle. Tässä kappaleessa annetaan lukijalle viitteitä muutamiin teoksiin, joissa esitetyjä ajatuksia on huomioitu järjestelmän suunnittelussa ja asiakaskohtaisten sovellusten toteutuksessa.

Strateginen suunnittelu

Richard G. Hamermesh jakaa kirjassaan Strategic Management [Hame90] strategisen suunnittelun menetelmät tai tyylit kolmeen ryhmään: reagoivaan, intuitiiviseen ja

systemaattiseen suunnitteluun. Tietokoneavusteinen strateginen suunnittelu on yleensä systemaattisen suunnitteluprosessin tukemista.

Gerry Johnson ja Kevan Scholes ovat esittäneet kattavan rungon strategisen suunnittelun prosessille kirjassaan Exploring Corporate Strategy [JoSc88]. Strateginen johtaminen voidaan kirjan mukaan jakaa nykytilanteen analysointiin, strategisten toimintavaihtoehtojen muodostamiseen ja valittujen vaihtoehtojen toteuttamiseen organisaatiotasolla.

Michael E. Porter on esittänyt muutamia strategisessa suunnittelussa yleisesti käytettäviä malleja kirjassaan Competitive Advantage, Creating and Sustaining Superior Performance [Port85], Toimialan houkuttelevuus määritellään ostajien, raaka- ainetoimittajien, korvaavien tuotteiden, uusien tulokkaiden ja toimialan sisäisen kilpailun perusteella. Yleismaailmallisina strategioina esitetään vaihtoehdot kilpailuedulle (alhainen hinta tai erikoistuminen) ja kilpailukohteelle (laajat tai suppeat markkinat). Samassa kirjassa käydään myös läpi yleisen arvoketjun periaate, jota voidaan pitää runkona materiaalivirtojen laskennassa.

Stratex-järjestelmän kehitykseen osallistuneet Auli Kumpulainen, Martti Paajanen ja Ilkka Tuomi ovat käsitelleet strategisen suunnittelun asettamia vaatimuksia tietämyspohjaisille suunnitteluvälineille artikkeleissaan STRATEX: Toiminnallinen kuvaus [KuPa89], A Knowledge-Based Planning Tool for Strategic Management [Kump90] ja Adding Value to the Strategy Process Using Object-Oriented Modeling and Software Support [PaTu92]. Erityisesti korostetaan reaalimaailmassa esiintyviä riippuvuuksia ja niiden toteuttamista olioiden välisinä linkkeinä. Luokkahierarkia ja sen avulla muodostettava käsitemalli nähdään ratkaisuna asiakaskohtaisten suunnittelu- mallien toteutukselle.

Outokumpu Metals & Resources ryhmän suunnittelutarpeita ovat kuvanneet Pentti Niskanen ja Martti Paajanen artikkelissaan Multinational Mining Company Simulation [NiPa93]. Rakennettu suunnittelumalli sisältää yli tuhat toisistaan laskennallisesti riippuvaa oliota. Tärkeäksi toiminnoksi koettiin simulointimahdollisuuksien tehokas toteuttaminen. Strategisia päätöksiä varten voitiin esitetyn mallin avulla laskea useita vaihtoehtoisia tulevaisuuden skenaarioita.

Suuryrityksen rahoituksen perusteita ovat käsitelleet Richard A. Brealey ja Stewart C.

Myers kirjassaan Principles of Corporate Finance [BrMy91]. Erityisesti kirjassa käydään läpi nykyarvolaskentaa, riskienhallintaa, budjetointia, rahoitusvaihtoehtoja, osinkopolitiikkaa ja pitkän tähtäimen rahoitussuunnittelua.